初识图数据库:neo4j
图数据库是什么
在计算机科学中,图数据库(英语:graph database,GDB)是一个使用图结构进行语义查询的数据库,它使用节点、边和属性来表示和存储数据。
图数据库是一种非关系型数据库,以解决现有关系数据库的局限性。图模型明确地列出了数据节点之间的依赖关系,而关系模型和其他NoSQL数据库模型则通过隐式连接来链接数据。图数据库从设计上,就是可以简单快速地检索难以在关系系统中建模的复杂层次结构的。
– 图数据库wiki
应用
- 百度自主研发的原生图数据系统(BGraph),在百度的知识图谱系统中应用和实践多年,支撑数以亿计的实体并支撑数以万计的查询 QPS,用于知识问答、搜索推荐和知识推理等。
- 全历史查询历史人物的关系图谱,分析两个历史文化名词之间的联系途径
开源数据库
Neo4J
开源,支持ACID,具有用于企业部署的高可用性集群,并附带基于Web的管理工具,包括完整事务支持和可视节点链接图浏览器;可以使用其内置的REST Web API接口从大多数编程语言访问,以及使用官方驱动程序的专有Bolt协议;截至2019年1月最受欢迎的图数据库
Cypher
- Cypher4.0 is a graph query language that is used to query the Neo4j Database. Just like you use SQL to query a MySQL database, you would use Cypher to query the Neo4j Database.
查询示例
1 | # 查询“发行时间在2010后的影片及与其关系为执导的人物信息” |
1 | # 前二十个 人物节点 |
更多查询语句见 Cypher4.0 文档