Query Languages
Интерактивное демо «Query Languages» — раздел Энциклопедия · Основы.
Один запрос — разные языки
Как модель данных определяет синтаксис: SQL, Lucene, Elasticsearch, Cypher, SPARQL
Намерение: Найти друзей друзей пользователя "Тимур" и посчитать, сколько общих друзей у каждого.
Модель: Граф (Neo4j)
MATCH (u:User {name: "Тимур"})-[:FRIEND]->(friend)-[:FRIEND]->(fof)
RETURN fof.name, COUNT(*) AS common_friends
ORDER BY common_friends DESCПаттерн пути — базовая единица; связи именованы и направлены.
Конвейер обработки (любой язык)
Парсинг → валидация → оптимизация плана → выполнение на движке → сериализация результата (таблица, JSON, поток). Язык задаёт что, движок — как.