neo4j
1
总安装量
1
周安装量
#43022
全站排名
安装命令
npx skills add https://github.com/g1joshi/agent-skills --skill neo4j
Agent 安装分布
mcpjam
1
claude-code
1
replit
1
junie
1
zencoder
1
Skill 文档
Neo4j
Neo4j is a native graph database. It stores data as nodes and relationships, not tables or documents. It is essential for “connected data” problems where relationships are as important as the data itself.
When to Use
- Knowledge Graphs: Connecting silos of data (Users, Docs, Concepts).
- Fraud Detection: Finding “Rings” of users sharing IDs/Devices.
- Recommendation Engines: “People who bought X also bought Y” (Collaborative Filtering).
- GraphRAG (2025): Enhancing LLM context by traversing a knowledge graph instead of just vector similarity.
Quick Start (Cypher)
-- Create nodes and relationships
CREATE (alice:Person {name: 'Alice'})
CREATE (bob:Person {name: 'Bob'})
CREATE (alice)-[:KNOWS {since: 2024}]->(bob);
-- Query friends of friends
MATCH (p:Person {name: 'Alice'})-[:KNOWS]->(friend)-[:KNOWS]->(fof)
RETURN fof.name;
Core Concepts
Cypher
The SQL of Graphs. It uses ASCII-art patterns (node)-[RELATIONSHIP]->(node).
Index-Free Adjacency
In Neo4j, every node physically points to the next node. “Joins” are pre-computed pointers. Traversing 1 million relationships is O(1) per step, not O(Log N) like B-Trees.
Graph Data Science (GDS)
Library for algorithms like PageRank, Louvain (Community Detection), and Path Finding.
Best Practices (2025)
Do:
- Use GraphRAG: Combine Vector Search (Semantic) with Graph Traversal (Structural) for better AI answers.
- Model Relationships Richly: Put properties on relationships (e.g.,
[:REVIEWED {rating: 5, date: ...}]). - Use Labels: Always label nodes (
:Person) to optimize scans.
Don’t:
- Don’t create Supernodes: A node with 1 Million edges (e.g.,
(Justin Bieber)-[:FOLLOWED_BY]->(...)) hurts traversal performance. - Don’t use it for simple lookups: If you just need
ByKeyorRange, use a K-V store.