Context Graph relies on the Neo4j Graph Database management system. This procedure assumes that Spectrum Technology Platform and Neo4j Graph Database Server are installed in stand-alone instances. To install either in a clustered architecture, see Clustered Architecture.
- While adding modules to Spectrum Technology Platform 2023.1, select to install the Context Graph module.
-
Install Neo4j Graph Database Server as a stand-alone instance.
For more information, see Installation (Neo4j Operations Manual).
-
Configure the Neo4j Graph Database Server instance to work with Context Graph.
- Copy the apoc jar file from Neo4jDirectory/labs/ to Neo4jDirectory/plugins/.
- Open the Neo4jDirectory/conf/neo4j.conf file in a code editor.
-
Uncomment and configure the Bolt and HTTP connector port numbers as shown here:
# Bolt connector server.bolt.enabled=true #server.bolt.tls_level=DISABLED server.bolt.listen_address=:7700 server.bolt.advertised_address=:7700 # HTTP Connector. There can be zero or one HTTP connectors. server.http.enabled=true server.http.listen_address=:7474 server.http.advertised_address=:7474
Important: Port 7474 is used by the Neo4j server instance embedded in Spectrum. If you install the stand-alone instance of Neo4j Graph Database Server on the same machine as Spectrum, you must therefore specify a different port number, such as 7475, for the two HTTP connector port settings. -
Uncomment and configure the following two property settings as follows:
dbms.security.procedures.unrestricted=apoc.* dbms.security.procedures.allowlist=apoc.*
-
Uncomment and configure the routing port number as shown here:
server.routing.listen_address=:7788 server.routing.advertised_address=:7788
-
Add the following setting (you can insert in the
# Miscellaneous configuration
section):dbms.cypher.forbid_shortestpath_common_nodes=false
- Optional:
Add the following setting:
dbms.db.timezone=SYSTEM
By default, the Neo4j Graph Database Server logs and monitoring use UTC time. This setting specifies the local system time zone, which you may find easier to use. - Optional:
Uncomment and configure the following lines depending on available memory:
server.memory.heap.initial_size=512m server.memory.heap.max_size=8192m #server.memory.pagecache.size=10g
Increasing the first two values (for example, to2048M
and4096M
respectively) can enhance performance. The thirddbms.memory.pagecache.size
setting assumes by default that the machine is dedicated to running Neo4j, so it is heuristically set to 50% of RAM minus the Java heap size. For more information, see Memory recommendations (Neo4j Operations Manual).
You may choose to configure additional properties depending on your system architecture. -
Configure Context Graph to work with the Neo4j Graph Database Server instance.
- Confirm that the Neo4j Graph Database Server is running in a console or as a service.
- Sign into the Spectrum Management Console and click Resources > Context Graph Repository Configuration.
- If a user name and password are required to connect to the Neo4j Graph Database Server, choose Basic for Authentication type, then enter the User name and Password.
- Optional:
You would select Secured connection if the Neo4j Graph Database Server is configured to use HTTPS.
For more information, see Use SSL to communicate with Neo4j Graph Database Server.
-
Click the Add address button + to specify the IP address or host name and Bolt connector port for the Neo4j Graph Database Server instance.
If the Neo4j Graph Database Server instance runs on the same host machine as Spectrum localhost:7700 will be used as the default connection.Note: If the Neo4j Graph Database Server instance is on a different server than Spectrum you will then need to create a new connection based on the hostname or IP address and Bolt connector port for the remote instance. Certificates should be created based on the machine name where the Neo4j Graph Database Server instance is installed.
- Click the Test button to test the connection settings.
- Click Save to save the configuration settings.