Company
Date Published
Author
Aseem Kishore
Word count
3085
Language
English
Hacker News points
None

Summary

Aseem Kishore, a developer at FiftyThree, a New York-based startup, shares his experience with Neo4j, a graph database. He discusses the importance of consistency in reading and writing queries, particularly in handling transient errors and ensuring strong consistency. Aseem explains how he implemented Per-User Read-After-Write Consistency by tracking the last write timestamp and fetching data from the master node for strong consistency. He also addresses issues like race conditions, double-check blocking, and transactional queries to ensure data integrity. The article highlights the importance of considering multiple factors when designing a graph database system, including HA configurations, pull interval, push factor, strategy, and contention awareness. Aseem concludes by emphasizing the need for a balance between simplicity and caution in query design, highlighting his company's approach to abstracting complexity and tackling specific issues as they arise.