一款分布式、可水平扩展的开源图数据库,支持 OpenCypher 兼容查询。
- Star
- 21,821
- Fork
- 1,610
- 未关闭 Issue
- 114
- 最近提交
- 昨天
这是什么?
Dgraph 是一款用 Go 编写的分布式图数据库,提供 ACID 事务、一致性复制和线性一致读取。数据在磁盘上按图结构组织,以减少集群内的磁盘寻道和网络调用。查询采用受 GraphQL 启发的语法,结果可以 JSON 或 Protocol Buffers 格式通过 gRPC 或 HTTP 返回。
它适合数据稀疏、关联复杂、用 SQL 表加外键难以优雅建模的场景。系统支持分布式 join、图遍历、过滤和聚合,并原生提供全文检索、正则表达式和地理位置搜索。
官方支持 Linux 的 amd64 与 arm64 架构,推荐使用 Docker 部署,同时提供 Docker Compose 和 Kubernetes 的安装方式。团队维护了多个官方客户端库,社区也贡献了非官方客户端。
核心功能
- 01分布式 ACID 事务,支持一致性复制与线性一致读取。
- 02采用受 GraphQL 启发的查询语言,返回 JSON 或 Protocol Buffers。
- 03支持通过 gRPC 和 HTTP 访问。
- 04原生支持全文检索、正则表达式和地理位置搜索。
- 05集群内分片再平衡时自动迁移数据。
适用场景
- 查询关系、推荐或知识图谱等高度关联的数据。
- 用灵活的 schema 替代通过外键相连的大量 SQL 表。
- 在海量结构化数据上提供实时用户查询服务。
快速上手
- 1
拉取官方 Docker 镜像
docker pull dgraph/dgraph:latest - 2
运行快速单机集群
docker run -it -p 8080:8080 -p 9080:9080 -v ~/dgraph:/dgraph dgraph/standalone:latest
使用前须知
- 仅正式支持 Linux/amd64 和 Linux/arm64;2021 年已停止对 Mac 和 Windows 的官方支持。
- 从源码构建需要 Go 1.27 或更高版本。
收录于专题
标签
#graph-database#graphql#distributed-systems#acid#database-cluster#go#database#distributed#knowledge-graph
常见问题
- dgraph 是什么?
- 一款可水平扩展的分布式图数据库,原生支持 GraphQL 查询与 ACID 事务。 Dgraph 是一款用 Go 编写的分布式图数据库,提供 ACID 事务、一致性复制和线性一致读取。数据在磁盘上按图结构组织,以减少集群内的磁盘寻道和网络调用。查询采用受 GraphQL 启发的语法,结果可以 JSON 或 Protocol Buffers 格式通过 gRPC 或 HTTP 返回。
- dgraph 可以免费使用吗?用的什么许可证?
- dgraph 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- dgraph 还在维护吗?
- 活跃维护中。dgraph 最近一次提交是在 2026年11月5日。
- dgraph 适合用来做什么?
- 查询关系、推荐或知识图谱等高度关联的数据。 用灵活的 schema 替代通过外键相连的大量 SQL 表。 在海量结构化数据上提供实时用户查询服务。
- dgraph 怎么安装和运行?
- 拉取官方 Docker 镜像: docker pull dgraph/dgraph:latest 运行快速单机集群: docker run -it -p 8080:8080 -p 9080:9080 -v ~/dgraph:/dgraph dgraph/standalone:latest
- 在哪里获取 dgraph?
- 源代码和安装说明在 GitHub 上:https://github.com/dgraph-io/dgraph
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
1.2万1343C++Apache-2.0更新于 2个月前
一款基于稀疏矩阵存储邻接关系、支持 OpenCypher 查询的图数据库,面向 LLM 知识图谱与 GraphRAG 场景。
1.1万602RustOther更新于 16小时前
用 Rust 编写的分布式 SQL 数据库教学项目,包含 Raft 共识、MVCC 事务和 SQL 接口。
7304+2 本周625RustApache-2.0更新于 上个月
用 Rust 编写的多模型数据库,统一支持文档、图、关系、时序和键值数据,并内置实时查询与权限控制。
3.3万+34 本周1403RustOther更新于 4天前
用 Rust 编写的开源图数据库,在对象存储上统一存储图、向量与全文数据,支持 Rust、TypeScript、Go、Python 调用。
6270+15 本周395RustApache-2.0维护活跃更新于 17小时前
开源的自建知识图谱数据库,由 AI 智能体持续填充和维护结构化、带类型的数据,用于流程自动化与决策。
1688+4 本周125TypeScriptOther更新于 16小时前