A Java-based workflow for creating and managing relationships between nodes in a Neo4j graph database, leveraging metadata exported from PostgreSQL. This project focuses on establishing standard meta-data relationships to enhance the graph structure after node insertion.
Features
- Automates relationship creation between various node types in Neo4j.
- Integrates PostgreSQL data exports with Neo4j graph database.
- Modular Java classes for relationship management.
- Uses Neo4j Java Driver for database connectivity.
- Logging support with SLF4J for process tracking and error handling.
Tech Stack
- Java
- Neo4j (Graph Database)
- PostgreSQL (Data source assumed)
- SLF4J (Logging)
Getting Started
Prerequisites
- Java Development Kit (JDK) 11 or higher
- Neo4j database instance
- PostgreSQL database with relevant data
- Maven or Gradle for dependency management (assumed)
Installation & Running
- Clone the repository:
git clone https://github.com/justin-napolitano/supreme-court-meta-relationships.git
cd supreme-court-meta-relationships
- Build the project (assuming Maven):
mvn clean install
-
Configure Neo4j connection settings in
Neo4jConnectionclass (not included in repo snippet). -
Run the
RelationshipCreatorclass to create relationships:
java -cp target/your-jar-file.jar com.supreme_court_transfer.RelationshipCreator
Project Structure
index.md- Documentation and explanation of the workflow.com.supreme_court_transfer.RelationshipCreator- Java class responsible for creating relationships between nodes in Neo4j.Neo4jConnection(assumed) - Utility class to manage Neo4j sessions.
Future Work / Roadmap
- Expand relationship creation to cover additional metadata types.
- Implement error recovery and retry mechanisms.
- Add configuration options for relationship types and properties.
- Provide detailed documentation and examples for integration.
- Automate data export from PostgreSQL to Neo4j within the workflow.
- Add unit and integration tests for relationship creation methods.
For more details, see the related repository for data transfer: supreme-court-transfer.