Индексы в Neo4j - вопросы и сомнения - PullRequest
0 голосов
/ 10 сентября 2018

Единственные индексы, которые я знаю о них, это индексы свойств (эти индексы создаются на определенных метках (типах узлов)). Однако у меня есть некоторые сомнения.

  1. Существуют ли индексы ребер / отношений?
  2. Я часто читал, что Neo4j использовал индекс Lucene. Это все еще используется? Что такое цель?
  3. Существуют ли какие-либо другие признаки, кроме индексов свойств?

Заранее спасибо,

1 Ответ

0 голосов
/ 10 сентября 2018

Neo4j имеет две системы индексации.

Более современный называется «индексами схемы», и они являются автоматическими и применяются к свойствам заданной метки для быстрого поиска по этим свойствам, когда заданные свойства и метка предоставляются в запросе. В настоящее время это не поддерживает индексацию свойств отношений. Они начинались на основе lucene, но мы постепенно заменили реализацию на наше собственное решение для индексирования. Обсуждение этих вопросов, а также любая заслуживающая внимания информация и ограничения можно найти в нашей документации по конфигурации индекса .

Другая система индексации - это более старая ручная система, которая называется «явные индексы», хотя ранее она называлась «ручные индексы». Это также основано на lucene, но они не являются автоматическими - пользователь может вручную добавлять или удалять записи в индексе и обновлять их при изменении данных в базе данных. Это делает использование и обслуживание громоздким, и мы рекомендуем по возможности избегать использования этой системы.

Встроенные процедуры - это средства для создания и поиска с использованием явных индексов, поскольку они никогда не используются автоматически под капотом (в отличие от индексов схемы). Процедуры APOC также предлагает различные способы взаимодействия с явными индексами.

Основная причина, по которой можно использовать явные индексы, заключается в том, что вы можете создать индекс для отношений для свойств и получить быстрый поиск при запросе индекса. Это также позволяет выполнять полнотекстовый поиск по нескольким меткам и свойствам, если индекс настроен таким образом.

Отдельно от всего этого следует отметить, что использование меток само по себе является своего рода индексом, поскольку оно обеспечивает быстрый доступ ко всем узлам с данной меткой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...