菜单

cuilinsu
cuilinsu
发布于 2025-11-20 / 5 阅读
0

mem0 支持的图形数据库

综合对比

特性

Neo4j

Memgraph

Neptune

Kuzu

默认状态

✅ 默认

数据库类型

企业级图形数据库

高性能图形数据库

AWS 云服务图形数据库

嵌入式图形数据库

部署方式

云服务(Aura)或自托管

Docker 容器部署

AWS 托管服务

进程内嵌入

连接协议

Bolt 协议

Bolt 协议

HTTP/HTTPS

本地文件

必需配置

​url​
username​
password​

​url​
username​
password​

​endpoint​

​db​(可选)

可选配置

​database​
base_label​

-

​app_id​
base_label​
collection_name​

-

URL 格式

​neo4j://​ 或 neo4j+s://​

​bolt://localhost:7687​

​neptune-db://<host>​
neptune-graph://<graphid>​

文件路径或 :memory:​

适用场景

• 企业级应用
• 生产环境
• 需要高可用性

• 本地开发
• 高性能需求
• Docker 环境

• AWS 生态系统
• 大规模数据
• 云原生应用

• 本地开发/测试
• 单机应用
• 轻量级需求

优势

• 成熟稳定
• 丰富的工具生态
• 支持 APOC 插件
• 云服务(Aura)可用

• 高性能
• 易于部署(Docker)
• 支持 Mage 扩展
• 内存优化

• AWS 托管
• 自动扩展
• 高可用性
• 与 AWS 服务集成

• 零配置
• 轻量级
• 内存模式快速
• 无需额外服务

劣势

• 自托管需要维护
• 资源消耗较大

• 社区版功能有限
• 需要 Docker 环境

• 仅限 AWS
• 成本较高
• 需要 IAM 配置

• 不适合生产环境
• 数据持久化需注意
• 单机限制

特殊功能

• 支持多数据库
• APOC 插件支持
• Cypher 查询语言

• Mage 扩展
• Schema introspection
• 实时查询

• 两种模式:
- Neptune DB Cluster
- Neptune Analytics

• 内存模式(:memory:​)
• 自动清理(进程退出)

推荐使用

生产环境、企业应用

开发测试、高性能场景

AWS 云原生应用

快速原型、本地开发

安装难度

⭐⭐⭐ (自托管)
⭐ (Aura)

⭐⭐ (Docker)

⭐⭐⭐ (AWS 配置)

⭐ (零配置)

成本

中等(Aura 有免费层)

低(开源)

高(AWS 按量计费)

极低(免费)

配置示例对比

Neo4j:

graph_store = {
    "provider": "neo4j",
    "config": {
        "url": "neo4j+s://<HOST>",
        "username": "neo4j",
        "password": "<PASSWORD>",
        "database": "neo4j"  # 可选
    }
}

Memgraph:

graph_store = {
    "provider": "memgraph",
    "config": {
        "url": "bolt://localhost:7687",
        "username": "memgraph",
        "password": "password"
    }
}

Neptune:

# Neptune Analytics
graph_store = {
    "provider": "neptune",
    "config": {
        "endpoint": "neptune-graph://g-xxxxxxxxxx"
    }
}

# Neptune DB
graph_store = {
    "provider": "neptunedb",
    "config": {
        "endpoint": "neptune-db://<host>",
        "collection_name": "<VECTOR_COLLECTION_NAME>"
    }
}

Kuzu:

graph_store = {
    "provider": "kuzu",
    "config": {
        "db": "/tmp/mem0.kuzu"  # 或 ":memory:" 表示内存模式
    }
}

选择建议

  • 需要生产级稳定性和企业支持 → Neo4j

  • 本地开发且需要高性能 → Memgraph

  • 运行在 AWS 且需要自动扩展 → Neptune

  • 快速原型或轻量级测试 → Kuzu

所有图形数据库都支持 threshold​ 参数(默认 0.7),用于控制节点匹配的严格程度。

私有化部署 + 高可用 + 免费图形数据库对比

核心结论

数据库

私有化部署

高可用性

免费

综合评分

Neo4j 社区版

⭐⭐

Neo4j 企业版

⭐⭐⭐⭐

Memgraph 开源版

⚠️ 部分支持

⭐⭐⭐

Neptune

⭐⭐

Kuzu

详细分析

1. Neo4j 社区版(部分符合)

特性

说明

私有化部署

✅ 支持,可 Docker 部署

高可用性

❌ 社区版不支持集群和高可用

免费

✅ GPLv3 开源免费

集群功能

❌ 不支持

主从复制

❌ 不支持

故障转移

❌ 不支持

适用场景

开发、测试、单机生产

结论:免费且可私有化,但不支持高可用。

2. Neo4j 企业版(不符合免费要求)

特性

说明

私有化部署

✅ 支持

高可用性

✅ 支持 Causal Cluster

免费

❌ 需商业许可

集群功能

✅ 支持

主从复制

✅ 支持

故障转移

✅ 自动故障转移

成本

需购买许可证

结论:功能完整,但需付费。

3. Memgraph 开源版(最接近)

特性

说明

私有化部署

✅ 支持,Docker 部署

高可用性

⚠️ 开源版功能有限,可用外部方案实现

免费

✅ 开源免费

集群功能

⚠️ 开源版不支持原生集群,需自行设计

主从复制

⚠️ 可能需要外部方案

故障转移

⚠️ 需自行实现

性能

✅ 高性能,内存优先设计

适用场景

高性能场景,可接受有限 HA

实现高可用的可选方案:

  • 使用负载均衡器(如 HAProxy/Nginx)

  • 应用层故障转移

  • 数据库级别的备份与恢复策略

  • 使用外部复制工具

结论:免费开源,性能好,但需自行实现高可用。

4. Neptune(不符合私有化要求)

特性

说明

私有化部署

❌ AWS 托管服务

高可用性

✅ 托管服务提供

免费

❌ 按量计费

结论

不符合私有化部署要求

5. Kuzu(不支持高可用)

特性

说明

私有化部署

✅ 嵌入式

高可用性

❌ 单机嵌入式

免费

✅ 开源免费

结论

不支持高可用

推荐方案

方案一:Memgraph 开源版 + 自行实现高可用(推荐)

适合对成本敏感,且愿意自行实现高可用的场景。

优势:

  • ✅ 完全免费开源

  • ✅ 支持私有化部署

  • ✅ 高性能

  • ✅ 可自行实现高可用方案

实现方式:

# docker-compose.yml 示例
version: '3.8'
services:
  memgraph-master:
    image: memgraph/memgraph-mage:latest
    ports:
      - "7687:7687"
    volumes:
      - memgraph_data:/var/lib/memgraph
    restart: unless-stopped
  
  memgraph-replica:
    image: memgraph/memgraph-mage:latest
    ports:
      - "7688:7687"
    volumes:
      - memgraph_replica_data:/var/lib/memgraph
    restart: unless-stopped
  
  haproxy:
    image: haproxy:latest
    ports:
      - "7687:7687"
    volumes:
      - ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
    depends_on:
      - memgraph-master
      - memgraph-replica

配置示例:

from mem0 import Memory

config = {
    "graph_store": {
        "provider": "memgraph",
        "config": {
            "url": "bolt://haproxy:7687",  # 通过负载均衡器
            "username": "memgraph",
            "password": "password"
        }
    }
}

memory = Memory.from_config(config_dict=config)

方案二:Neo4j 社区版 + 应用层高可用(备选)

适合已使用 Neo4j 生态,但预算有限。

优势:

  • ✅ 免费

  • ✅ 成熟稳定

  • ✅ 社区支持好

限制:

  • ❌ 不支持原生集群

  • ⚠️ 需在应用层实现故障转移

实现方式:

  • 部署多个 Neo4j 实例

  • 应用层实现连接池和故障转移

  • 定期数据同步

最终建议

如果必须满足“私有化 + 高可用 + 免费”,推荐 Memgraph 开源版 + 自行实现高可用:

  1. 成本:完全免费

  2. 性能:高性能,适合实时场景

  3. 灵活性:可自行设计 HA 方案

  4. 部署:Docker 部署简单

注意事项:

  • 需要具备运维能力

  • HA 方案需要自行维护和测试

  • 可能需要额外的监控和告警

如果预算允许:Neo4j 企业版是最稳妥的选择,原生支持高可用集群,且有官方支持。

需要我提供具体的 Memgraph 高可用部署配置吗?

查找这些图形数据库的企业版定价信息:

[3 tools called]

继续查找更详细的定价信息:

[2 tools called]

以下为图形数据库企业版定价对比(价格可能变动,建议联系官方获取最新报价):

图形数据库企业版定价对比

定价概览表

数据库

定价模式

参考价格

定价依据

获取方式

Neo4j 企业版

年许可费

19.9万/年

服务器数量和核心数

联系销售团队

Memgraph 企业版

定制报价

未公开

部署规模和支持级别

联系销售团队

AWS Neptune

按需付费

15+/小时

实例类型和存储

AWS 定价页面

Kuzu

-

无企业版

-

开源免费

详细定价信息

1. Neo4j 企业版

定价模式:年许可费(按服务器数量和配置)

参考价格(美元/年):

1 台服务器,每台 4 核:    $36,000  (约 ¥26万)
2 台服务器,每台 4 核:    $68,000  (约 ¥49万)
3 台服务器,每台 4 核:    $99,000  (约 ¥71万)
3 台服务器,每台 8 核:    $199,000 (约 ¥143万)

包含功能:

  • ✅ 因果集群(Causal Clustering)

  • ✅ 高可用性和负载均衡

  • ✅ 在线热备份

  • ✅ 时间点恢复

  • ✅ 细粒度访问控制(RBAC)

  • ✅ 数据加密

  • ✅ 审计日志

  • ✅ LDAP/AD 集成

  • ✅ 企业级支持

其他选项:

  • Neo4j Aura(云服务):从 0.09/小时)

  • 免费许可:开发、初创公司、学术用途

  • 评估许可:免费试用

联系方式:

  • 官网:https://neo4j.com/pricing

  • 中文社区:https://neo4j.com.cn/pricing

2. Memgraph 企业版

定价模式:定制报价(未公开)

定价因素:

  • 部署规模(节点数量)

  • 支持级别(SLA)

  • 功能需求

  • 部署方式(云/本地)

包含功能(通常):

  • ✅ 集群部署

  • ✅ 数据复制

  • ✅ 高可用性

  • ✅ 企业级支持

  • ✅ 高级安全特性

获取报价:

  • 官网:https://memgraph.com/enterprise

  • 需要联系销售团队获取定制报价

特点:

  • 价格不公开,需要定制

  • 通常根据实际需求报价

  • 可能提供试用期