Company
Date Published
Author
Ross Gabay
Word count
1037
Language
English
Hacker News points
None

Summary

Neo4j is being used to model a simple business process, where a requestor submits a request, an approver reviews it and either approves or rejects it. The data nomenclature involved includes request, request state, lifecycle events, metadata associated with these events, actors involved in the process, roles assigned to actors, and the process itself. A graph is built based on this nomenclature to answer various questions such as finding all requests in a certain state, checking if a specific request can be approved or rejected, and seeing what comments were provided when a request was rejected. The use of indexes and relationships allows for efficient querying of the data, with some queries returning results in just one database hit. As the business process becomes more complex, Neo4j's graph structure allows for easy modification by adding new nodes and relationships without affecting existing ones.