cayley README

The project's README from github.com/cayleygraph/cayley. As one markdown file: README.md.

Cayley

Tests

Cayley is an open-source database for Linked Data. It is inspired by the graph database behind Google's Knowledge Graph (formerly Freebase).

Get it from the Snap Store

Documentation

Features

Performance

Rough performance testing shows that, on 2014 consumer hardware and an average disk, 134m quads in LevelDB is no problem and a multi-hop intersection query -- films starring X and Y -- takes ~150ms.

Community

cayley (cayleygraph/cayley)

Searching Database…

15.1K ·GitHub
Что это?Cayley — графовая база данных с открытым кодом для связанных данных (Linked Data), созданная по образцу графовой базы, которая стоит за Knowledge Graph от Google (ранее Freebase).
Это сервер, который я запускаю, или библиотека, которую я встраиваю в свой код?Это сервер базы данных, который вы запускаете, но он намеренно модульный — в README отдельно подчёркивается, что его легко подключать к вашим любимым языкам программирования и хранилищам данных.
Как его запустить?В репозитории лежит Dockerfile, поэтому Docker — самый быстрый путь; иначе можно собрать из исходников с помощью Go. Когда всё поднято, работа идёт через встроенный редактор запросов, визуализатор или REPL.
Нужно ли ставить какое-то другое ПО вместе с ним?Нет — это самодостаточная программа на Go, которая сама управляет своим хранилищем, так что заранее настраивать отдельный движок базы данных или брокер не придётся.
Есть ли подводные камни или ограничения, о которых стоит знать?В README никаких жёстких ограничений не указано, там сказано, что Cayley готова к продакшену, хорошо протестирована и используется в продакшене разными компаниями — но опубликованные данные о производительности получены на потребительском железе 2014 года.
Когда выбрать её вместо обычной SQL-базы?Когда данные у вас строятся вокруг связей — связанные данные в духе базы знаний, где вы идёте по связям между сущностями, как в графе Freebase, который она повторяет, — а не по строкам в таблицах.
Он работает только на Linux-серверах или у меня тоже на ноутбуке?Везде, где собирается Go — Linux, macOS и Windows; обычно его размещают на своём сервере, Dockerfile есть в репозитории, а редактор запросов открывается прямо в браузере.
Как запрашивать данные?Внутри уже три языка запросов: Gizmo, вдохновлённый Gremlin; язык в духе GraphQL; и MQL — упрощённая версия для поклонников Freebase.
Сколько данных он выдержит?По приблизительным замерам, 134 миллиона квадов хранились в LevelDB, а поиск с пересечением на несколько переходов — фильмы с участием X и Y — занимал около 150 мс на обычном диске.
Что такое квад, если по-простому?Утверждение из мира связанных данных из четырёх частей — субъект, предикат, объект и одно дополнительное значение, например контекст. Именно в таких единицах Cayley хранит факты своего графа.
What are similar projects?dgraph, nebula, neo4j, gun, surrealdb, FalkorDB, arangodb, flowsint
Size
20 MB
Stars
15.1K
Age
12y
Commits · 90 Days