Neo4j auf Debian installieren

20. Oktober 2013 freesh Datenbanken Schlagwörter: , , 0 Comments

Mysql ist eine ausgereifte und performante relationale Datenbank, jedoch müssen die Daten entsprechend beschaffen sein. In einem aktuellen Projekt mit sehr vielen Verknüpfungen unterschiedlichster Datensätze unter einander habe ich mich nun entschieden es mit einer Graphendatenbank zu probieren um den, bei einer relationalen Datenbank zu erwartenden, Performance-Abgründen schon zu Beginn entgegen zu wirken. Außerdem sind Graphen ohnehin ein Thema in das der moderne Entwickler von Welt mal reinschnuppern sollte.

Da Neo4j nicht in den Paketquellen von Debian steht, gibt es 2 Wege der Daten habhaft zu werden:

 

Falls man nach dem Starten folgende Meldung in der Shell entgegen geschmettert bekommt, kann man dies auf einfachem Wege beheben:

„neo4jWARNING: Max 1024 open files allowed, minimum of 40 000 recommended. See the Neo4j manual.“

In der Shell:

Folgede Zeilen einfügen:
neo4j soft nofile 40000
neo4j hard nofile 40000

Und dort folgende Zeile auskommentieren:

session required pam_limits.so

Danach das System neu Starten damit die Änderungen wirken können.
Beim Neustart sollte Neo4j dann auch direkt als Service von allein starten.

Um sicher zu gehen können wir den Status noch überprüfen:

 

Beim Aufruf von http://localhost:7474/webadmin/ sollten wir nun die Weboberfläche zu sehen bekommen.

Falls wir auf Neo4j nicht nur von der einen Maschine zugreifen wollen, müssen wir dies noch gestatten. Dazu müssen wir die Konfiguration anpassen:
Laut Doku sollen diese Konfigurationen unter conf/neo4j-server.properties liegen. Bei mir konnte ich die entsprechenden Files aber nur unter /etc/neo4j/ finden. Somit ist es also /etc/neo4j/neo4j-server.properties.

Dort angekommen sehen wir, dass folgende Zeile auskommentiert ist:

org.neo4j.server.webserver.address=0.0.0.0

Befreien wir diese Zeile von ihrem Dasein als Kommentar können wir mit 0.0.0.0 fest legen, dass von allen Servern zugegriffen werden darf, oder dass mit einer IP nur ein bestimmter Server in diesen Genuss kommen kann. Siehe dazu auch: Server Configuration

Viel Spaß damit.

Could not resolve host: urls.api.twitter.com