В первой версии с помощью класса Bind можно было создавать дополнительные для своей мапы, чтобы повысить скорость поиска, но тут этого нет. Разработчик либо еще не доделал базу, либо решил убрать данную возможность. Однако существует возможность поиска с помощью префикса:
Код
db.treeMap("",Serializer.BYTE_ARRAY,Serializer.BYTE_ARRAY)
.createOrOpen().prefixSubMap("item1".getBytes());
db.treeMap("",Serializer.BYTE_ARRAY,Serializer.BYTE_ARRAY)
.createOrOpen().subMap("item1".getBytes(),"item2".getBytes());
Однако использование B-дерева в данной базе данных для поиска по префиксу возможно только если известные значения для левой стороны, то есть если вы знаете значение первой части ключа, то вы сможете найти информацию, а если нет, то ничего не получиться. Следующий запрос не сработает, так как неизвестно значение первого поля ключа, что может привести к полному перебору всех записей в базе, так как
Код
db.treeMap("",new SerializerArray<Long>(Serializer.LONG),Serializer.BYTE_ARRAY)
.createOrOpen().prefixSubMap(new Long[] { null, 1L, 2L };);