using-graph-databases
SKILL.md
Graph Databases
Purpose
This skill guides selection and implementation of graph databases for applications where relationships between entities are first-class citizens. Unlike relational databases that model relationships through foreign keys and joins, graph databases natively represent connections as properties, enabling efficient traversal-heavy queries.
When to Use This Skill
Use graph databases when:
- Deep relationship traversals (4+ hops): "Friends of friends of friends"
- Variable/evolving relationships: Schema changes don't break existing queries
- Path finding: Shortest route, network analysis, dependency chains
- Pattern matching: Fraud detection, recommendation engines, access control
Do NOT use graph databases when:
- Fixed schema with shallow joins (2-3 tables) → Use PostgreSQL
- Primarily aggregations/analytics → Use columnar databases
- Key-value lookups only → Use Redis/DynamoDB