Какой язык запросов в OrientDB обеспечивает самое быстрое решение: SQL или Gremlin? Гремлин очень привлекателен, потому что он универсален для других библиотек графов, однако для этого требуется большой перевод в OrientDB или вообще ничего (что такое латентность)?OrientDB SQL vs Gremlin
3
A
ответ
1
EDIT Как отметил @decebal, это не очень хороший сценарий. Пожалуйста, отбросьте приведенные ниже тесты.
мощность базы данных графа происходит от отношений, эти запросы явно смещены в сторону простых структур, что отражает только вывод, что если вы хотите, простые структуры данных, вы лучше из с использованием документов, а не графики ... Нельзя сравнивать яблоки с грушами
========
Я провел несколько тестов и SQL заметно быстрее. Код я использовал:
long startTime = System.currentTimeMillis();
// Object ret = orientGraph.command(new OCommandGremlin("g.v('9:68128').both().both()")).execute();
String oSqlCommand = "SELECT expand(out().out()) FROM V where user_id='9935'";
Object ret = orientGraph.command(new OCommandSQL(oSqlCommand)).execute();
Iterable<Vertex> vertices = (Iterable<Vertex>) ret;
long endTime = System.currentTimeMillis();
long operationTime = endTime - startTime;
System.out.println("Operation took " + operationTime + " ms");
Я только wikitalk набор данных. Команда Gremlin заняла около 42541 секунды, тогда как команда SQL в среднем составляла всего 1831 мс.
Испытания проводились на 64-разрядной ОЗУ Linux на 64-битной ОС Linux, 1024 МБ кучи, 2048 МБ диск-кэша.
Смежные вопросы
- 1. OrientDB PHP/Gremlin Bridge
- 2. Создание транзакций с OrientDB-Gremlin
- 3. OrientDB: поиск текста с использованием gremlin
- 4. is OrientDB, используя индекс в gremlin-java?
- 5. OrientDB: Gremlin Count query чрезвычайно медленный
- 6. Как создать пользовательские классы в orientdb с помощью Gremlin
- 7. Опыт OrientDB vs Neo4j
- 8. Запрос в Gremlin-Server REST API медленнее vs Gremlin Shell
- 9. OrientDB Gremlin - Retrieve Vertex для класса в gremlin, не попадающем в индексы
- 10. OrientDB: Edges vs LinkList vs Linkmap
- 11. MongoDB + Neo4J vs OrientDB vs ArangoDB
- 12. Как выводить наборы в Gremlin через Orientdb REST API?
- 13. Tinkerpop 3.1 на OrientDB?
- 14. OrientDB SQL recursivness
- 15. orientdb sql update edge?
- 16. NO SQL, ORIENTDB
- 17. OrientDB: OrientEdge vs OrientEdgeType и OrientVertex vs OrientVertexType
- 18. Консоль Tremerpop Gremlin не работает
- 19. OrientDB: Учебник по фильмам
- 20. Gremlin: Blazegraph Remote
- 21. Создайте вершину с меткой в Gremlin
- 22. Цитата Orientdb в SQL-запросе
- 23. OrientDB Traverse Эффективность SQL-запросов
- 24. batch orientdb sql in php
- 25. OrientDB SQL - Обновление с подзапросом
- 26. Преобразование Gremlin или SQL для Cypher
- 27. Запрос Gremlin как оператор SQL IN?
- 28. Запуск запросов gremlin вне оболочки gremlin
- 29. Невозможно установить gremlin-neo4j через оболочку gremlin
- 30. Проблемы при подключении gremlin к серверу gremlin
действительно? это такой плохой тест, мощь базы данных графа происходит из отношений, эти запросы, очевидно, предвзяты к простым структурам, что отражает единственный вывод о том, что, когда вам нужны простые структуры данных, вы лучше используете документы, а не графики ... не можете сравнить яблоки с грушами – decebal
Спасибо, хотя этот вопрос 2 года. Это может быть вопрос, который новые пользователи могут наткнуться. Позже в своих исследованиях по базам данных Graph я обнаружил, что это не самый идеальный тестовый пример. – Casper