2016-04-18 5 views
0

Ich habe die Leistung von neo4j und mysql auf einem einfachen Crud-Prozess getestet, ich frage mich immer noch, warum es auf neo4j länger dauert als auf mysql. bei select process erfahre ich auch das selbe ergebnis, wobei neo4j etwas länger dauert als mysql. Ich frage mich, ob ich die Dinge nicht richtig mache.Neo4j MySql Benchmark

----- ----- Neo4j

profile match (n:User{name:"kenlz"}) set n.updated = "2016-04-18 10:00:00" using index n:User(name) 

Gesamtaktualisierungszeit für spesific Benutzer (3 Datensätze gefunden): 3139 Millisekunden

profile match (n:User{enabled:1}) set n.updated = "2016-04-18 10:00:00" using index n:User(name) 

Gesamtaktualisierungszeit für alle Benutzer beschränken 1116961: 27563 Millisekunden

----- ----- MySql

update tbl_usr set updated = now() where name = 'kenlz'; 

Gesamtaktualisierungszeit für spesific Benutzer (3 Datensätze gefunden): 1170 Millisekunden

update tbl_usr set updated = now() where enabled = 1; 

Gesamtaktualisierungszeit für alle Benutzer begrenzen 1116961: 5579 Millisekunden

Antwort

0

Ihre Operationen vernünftig aussehen.

Aber bitte beachten Sie, dass die Macht einer Graphdatenbank wie neo4j mit der Lokalität von Daten zunimmt. I.e. so genannte graph-traversals (z. B. Besuch aufeinander folgenden Kanten und Knoten auf einem Pfad), die wirklich schlecht in einem relationalen dbms wie mysql durchführen.