Knotenmodul für Neo4j

8

Meine App hat Knoten JS. Ich versuche NodeJS und Neo4j miteinander zu verbinden. Kann mir jemand sagen, wie man beide verbindet? Meine Abfragen müssen mit Labels auf Neo4j arbeiten. Bitte lassen Sie mich wissen, welches Modul ich in Knoten Js verwenden soll, um dies zu erreichen? Ich habe viel Zeit mit Glück verbracht.

    
user4654 19.02.2014, 00:32
quelle

2 Antworten

17

Zuletzt habe ich überprüft, dass es mindestens 4 populäre und aktiv entwickelte Module von node.js gibt (geordnet nach Anzahl der Sterne):

Sie alle unterstützen den Cypher-Endpunkt, der für meine Aufnahme erforderlich war. Ein Schlüsselmerkmal, das sich von der Liste abhebt, ist, dass philippkueng / node-neo4j der einzige ist, der über transaktionale API-Unterstützung verfügt. Eine weitere Möglichkeit ist die Abfrage von Knotenbezeichnungen, die nur von seraph und philippkueng / node-neo4j unterstützt werden. (Normalerweise können Sie vermeiden, dass Sie nach Labels eines Knotens fragen müssen, wenn Sie Ihre Cypher-Abfrage explizit nach Labels fragen lassen, wodurch eine Anfrage hin und her vermieden wird)

Auf der anderen Seite ist es wirklich nicht schwer, nur ein paar HTTP-Anfragen zu implementieren und direkt auf die Cypher- oder Transactional Cypher-Endpunkte zuzugreifen und die Ergebnisse so zu massieren, wie Sie es für Ihre Anwendung für richtig halten.

Eine weitere coole neue Entwicklung, die ich kürzlich gesehen habe, war Ссылка , die einen Strom von Ergebnissen von Cypher aussendet, Streaming-JSON-Parsing aktivieren, was eine weitere leistungsorientierte Funktion ist, die von den vier oben genannten fehlt.

Bearbeitung: 03/2016 Es gibt einen neuen offiziellen JS-Treiber für das neue Bolt-Protokoll (binär). Bei Neuentwicklungen sollte dies unbedingt berücksichtigt werden. Bolt ist für die Veröffentlichung in Neo4j 3.0 geplant. Ссылка

    
Eve Freeman 19.02.2014 01:17
quelle
1

Veröffentlicht im September 2016 schau dir das koa-neo4j Framework an, es benutzt den offiziellen neo4j-Treiber unter der Haube. Man kann native Cypher (als .cyp files) auf dem neuesten stable neo4j schreiben (3.0.3 zum Zeitpunkt des Schreibens), was unter anderem die Abfrage von Labels ermöglicht.

Ссылка

Ссылка

  

In einer Neo4j-fähigen Anwendung ist die direkte Ausführung von Abfragen direkt von der Clientseite möglicherweise nicht die beste Wahl:

     
  • Die Datenbank ist dem Client zugänglich, es sei denn, ein expliziter Sicherheitsmechanismus ist vorhanden. man kann die Innereien der Datenbank nach View page source sehen
  •   
  • Es gibt keinen einen Server, um alle zu regeln , Abfragen sind Strings, die um verschiedene Clients verteilt sind (Web, Mobile, etc.)
  •   
  • Drittanbieter-Entwickler kennen Cypher möglicherweise nicht
  •   

koa-neo4j behebt alle oben genannten Probleme:

     
  • Steht als mittlere Schicht zwischen Clients und Datenbank
  •   
  • Gibt Ihrer Serverlogik eine Struktur in Form eines dateibasierten Projekts; endlich ein Zuhause für Cypher! Alle Clients können dann mit einer Instanz dieses Servers sprechen
  •   
  • Konvertiert Cypher-Dateien in REST-Routen, einen plattformübergreifenden Web-Standard, mit dem Entwickler vertraut sind, und zwar auf dem weit verbreiteten Koa-Server, der für weitere Anpassungen geeignet ist
  •   
    
Keyvan 06.09.2016 22:19
quelle

Tags und Links