图数据建模基础

Graph data modeling basics

我现在已经在 orientdb 上玩了很长时间了。在我的大部分项目中,我都在处理来自交通网络的 GIS 和 ITS 数据...所以我认为对于真实世界的图形,什么是比图形数据库更好的数据存储?

所以我写了一个python脚本来将多模式交通网络图从关系数据库迁移到orientdb。基本数据模型(交通网络 nodes/crossings 和 edges/ways)很简单,我还利用 orientdbs 空间数据类型来实际存储它们的真实世界表示。但是现在我很难正确理解图数据建模的原理。

在现实世界中,nodes/crossings 并不是很有趣...大多数属性都位于边缘(道路类型、车道、宽度等...)。在图数据模型中,图用于关联实体,因此节点承载了大部分属性,而边仅用于将节点相互关联。

您将如何以正确的方式在图形数据模型中对真实世界的交通网络图形进行建模,具体而言,您将如何对车道或街道涂层等方面进行建模,以达到网络图形边缘。

P.S。一条边的车道和属性应该是它们自己的 类,因为它们应该只被引用到网络图边,因为一条边可以承载多种类型的交通(火车、街道、人行道、自行车道等... )

阅读以下文章,它们处理建模问题(搜索google学者)

Bordoloi, S. 和 Kalita, B. (2013a)。从现有的关系数据库设计图形数据库模型。国际计算机应用杂志,74(1).

Bordoloi, S. 和 Kalita, B. (2013b)。使用参考图将 ER 模型转换为数据库模式的抽象数学模型。国际工程研究与发展杂志,e-ISSN,第 51–60 页。

De Virgilio, R.、Maccioni, A. 和 Torlone, R. (2014)。 Model-driven 图数据库的设计。在概念建模中,第 172–185 页。施普林格

Park, Y.、Shankar, M.、Park, B.-H. 和 Ghosh, J.(2014 年)。 large-scale 医疗保健系统的图形数据库:高效数据管理和数据服务的框架。在数据工程研讨会 (ICDEW),2014 年 IEEE 第 30 届国际会议上,第 12-19 页。 IEEE.