北大邹磊:属性图数据模型与Cypher查询语言(第二讲)

这篇笔记来自于北大邹磊教授的知识图谱讲座

知识图谱的数据模型与查询语言(Data Models and Query Languages of Knowledge Graph)

视频地址:https://www.bilibili.com/video/BV1kv411i7A8?p=2

主要内容:

  • RDF图数据模型与SPARQL查询语言?
  • 属性图数据模型与Cypher查询语言
  • TinkerPop图计算框架与Gremlin图遍历语言及遍历机

2. 属性图数据模型与Cypher查询语言

背景介绍

Neo4j背景

  • Neo4j是由Neo4j公司开发的图数据库系统,其起源于2000年Neo4j的创始人开发的多媒体资产管理系统
  • 在这个多媒体资产管理系统中,数据模型经常会发生变化,而且数据结构以及访问控制机制非常复杂。为此,Neo4j选择了用图模型来存储“关系”并在此系统中实现了变长的遍历运算
  • 此外,该系统通过属性集合的方式来对图上的元素进行标记
  • 官网地址:https://neo4j.com

Cypher背景

  • Cypher是Neo4j系统所支持的面向Neo4j所存储属性图的查询语言
  • 目前的openCypher项目是一个开发平台,用于Cypher语言的标准化
  • openCypher项目目前形成了一系列成果,包括扩展巴科斯范式、ANTLR4语法、技术兼容性工具包等
  • 官网地址:http://www.opencypher.org

属性图模型简介

  • 属性图模型是一种不同于RDF三元组的一种图数据模型
  • 这个模型由点来表示现实世界中的实体,由边来表示实体与实体之间的关系。同时,点和边上都可以通过键值对的形式被关联上任意数量的属性和属性值
  • 在这种图模型中,关系被提到了一个和实体本身一样重要的程度
  • 从形式化的角度来看,属性图模型包含三种元素组成:值、图和表

属性图模型符号列表

值类型 表示单个值得符号 表示值集合的符号
属性键 k K
点标识符 n N
边标识符 r R
点标签 l L
关系标签 t T
函数 f F
v V

属性图模型组成元素——值

image.png

属性图模型组成元素——值

属性图模型组成元素——图

属性图示例

属性图示例

属性图模型组成的元素——表

属性图模型组成的元素——表
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容