-
Notifications
You must be signed in to change notification settings - Fork 154
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Как опрашивать вторичный индекс? #157
Comments
Привет. София автоматически не поддерживается вторичные индексы. Аналогичный функционал можно получить, если создавать и обновлять две (или больше) базы в одной транзакции. Есть пример в тестах: https://github.com/pmwkaa/sophia/blob/master/test/generic/secondary_index.test.c То есть создаем две базы, одна как primary index с одним набором ключей. И secondary со своим набором ключей + ключи из primary index. В таком случае мы сами решаем, что и где хранить. К сожалению питоновский драйвер делался не мной, сложно сходу сказать. |
Так то да, этажерки можно строить произвольной вложенности. |
Скорее ближе к документному хранилище. Здесь нет отдельных key/value, есть именованные типизированные поля. Можно делать составные ключи по нескольким полям. Так же их можно и опрашивать частично. Получить ключ по значению, кажется это задача для вторичного индекса. Для вторичного индекса должна быть теже поля, но другие ключи + ключи primary (чтобы обеспечить уникальность). |
Частично это как раз в случае если лежат в разных базах? |
Например мы храним документы в такой схеме {name, address}. Хотим индекс по name и отдельно по address: Для primary: {name key(0), address}. Здесь key() говорит, что поле будет ключем а число - порядок. |
А на питоне это будет выглядеть так: schema = Schema(key_parts=[StringIndex('key,key(0)'), StringIndex('predicate,key(1)')], value_parts=[StringIndex('value,key(2)'), BinaryIndex('bin,key(3)')]) Или в драйвере питона это не имплементировано? Посмотрел код.. вроде так не получится. там только имя индекса задаётся. |
Привет! Никак не пойму как опрашивать первичный индекс без вторичного...
К примеру, на питоне имеем схему:
Как опросить первичный индекс без вторичного?
Можно ли опросить вторичный индекс без первичного?
Можно ли опросить по значению value - оно тоже ведь индексируется?
Можно ли выбрать какое значение возвращать value или bin?
Ведь если индекс нельзя опрашивать - он бесполезен.
The text was updated successfully, but these errors were encountered: