два вопроса об использовании Cypher и новых (2.0) индексов:Neo4j 2.0.0M04, используя Cypher и новые индексы
The only queries that the manual lists для индексов являются
DROP/CREATE INDEX ON
запросами. Есть ли способ (используя Cypher) для запроса всех существующих индексов? Я знаю, что в консоли вы можете сделатьindex --indexes
, но это только возвращает устаревшие индексы (или так мне кажется). Изменить: еще более полезно, я нашел консольную команду «schema», которая, по крайней мере, дает список индексов.Я видел, что можно хотя бы найти all the indexes associated to a label in REST, но я надеялся на способ сделать это в Сайфере.
Запрос
START
кажется абсолютно неприемлемым, если вы не используете устаревшие индексы и не ссылаетесь на узлы по их идентификатору (что, по-видимому, показало, что документы - плохая идея). Так в neo4j 2.0, есть ли какая-либо польза дляSTART
? не
Можете ли вы уточнить, где документы указывают, что использование «START n = node (id)» - это плохая идея? –
Конечно - на [странице руководства для 'START'] (http://docs.neo4j.org/chunked/2.0.0-M04/query-start.html) есть примечание под 14.1.1, в котором говорится, что «Neo4j повторно использует свои внутренние идентификаторы, когда узлы и отношения удаляются, а это означает, что это неверная практика, чтобы ссылаться на них таким образом. Вместо этого используйте приложения, созданные идентификаторами». –
Я думаю, что это немного вводит в заблуждение и сильно зависит от вашей модели данных. Все, что они говорят на самом деле, это Id, которые повторно используются, когда узлы удаляются из системы. Например, у меня есть узлы, которые действуют как указатели на конкретные данные. Я мог бы вручную создать индекс для этих узлов, но мне гораздо проще просто захватить Id и использовать его для различных запросов. –