Sobes.tech
Senior
24

Что такое property graph модель (Neo4j, Cypher)?

Компании, где спрашивали
ИннотехИннотех
СамокатСамокат

Ответ от нейросети

sobes.tech AI

Property graph — это модель графовой базы данных, где данные представлены в виде узлов (вершин) и рёбер (связей), при этом и узлы, и рёбра могут иметь наборы свойств (пар ключ-значение). В Neo4j, популярной графовой базе данных, используется именно эта модель.

В этой модели:

  • Узлы представляют объекты или сущности (например, человек, продукт).
  • Рёбра отражают отношения между узлами (например, "друг", "купил").
  • Свойства позволяют хранить дополнительную информацию, например, у узла "человек" это может быть имя, возраст, а у ребра "друг" — дата начала дружбы.

Cypher — это декларативный язык запросов для работы с property graph в Neo4j. Он позволяет легко создавать, читать, обновлять и удалять узлы и связи, используя понятный синтаксис, похожий на SQL, но адаптированный под графы.

Пример запроса на Cypher, который находит всех друзей пользователя с именем "Алекс":

MATCH (a:Person {name: 'Алекс'})-[:FRIEND]->(friend)
RETURN friend.name

Здесь Person — метка узла, FRIEND — тип ребра, а свойства используются для фильтрации и возврата данных.