Я использую OrientDB 2.1.11, а rexster 2.6 и gremlin - основной язык запросов. Я использую через rexpro (и rextster REST). Моя проблема: как заставить индексы попадать из гремлина (я должен использовать gremlin not orient sql).OrientDB Gremlin - Retrieve Vertex для класса в gremlin, не попадающем в индексы
У меня есть класс вершины почтового индекс, который имеет 1 свойство zip_code определяется в схеме и индексируются в словаре:
zipcode.zip_code DICTIONARY ["zip_code"] SBTREE
Но когда я запрашиваю его с помощью гремлина, его медленно при записи вокруг> 25k (гавань» t с меньшими номерами). Чтобы дать правильный контекст, я сначала пытаюсь найти zipcode, если он не существует, тогда я создаю вершину для последующего использования. Найти запрос выглядит следующим образом:
g.V('@class', 'zipcode').has('zip_code','10018')
Вопрос:? Является ли ГВ («@ класс» ... ударяя индексы не собирается более 1000 тысяч объектов V Есть ли способ, чтобы написать лучше, чтобы быть более эффективными для моей вершины класса, т.е. почтовый индекс? Мне просто нужно, чтобы соответствовать свойство вершин в своем классе (ZipCode).
ли лучше использовать has('zip_code', '12345')
или filter {it.zip_code == '12345'}
? Какой бы попал в индекс, созданный?
что делать, если Я должен соответствовать более чем 1 свойствам в сравнении:
.has('zip_code', '12345').has('state','NY').has('city','NEW YORK')
будет иметь «хит-индексы или фильтр» {} '? пожалуйста, порекомендуйте.
Я даже использовал в студии, так же замедленность наблюдается, когда почтовый индекс вершина имеет только 8000 записей и zip_code в словаре индексируются:. ГВ («@ класс», «почтовый индекс») имеет («zip_code», «10018») Запрос выполнен в 1.936 сек. Возвращено 1 запись. Ограничение: 20 –
Дополнительная информация, когда я использую ориентир sql в студии, кажется, попадает в указатель: выберите * from zipcode где zip_code = '10018' Запрос выполнен в 0.047 секунд. Возвращено 1 запись. Ограничение: 20 ' Пожалуйста, помогите, как я могу попасть в индексы с помощью gremlin –