Yes, the BTree depends on sort order. The BTree is a replacement for sorted arrays, so it depends on sort order as any sorted array. When you add new element, the place for it is selected using comparisions with existing elements. And these comparisons depends on sort rule. So different sort rules produces different BTrees on the same input. If you just want get element by key, you can use any BTree above. But BTree allows get elements by range (start < x < end) - here sort order is important.