01-图数据库 Nebula Graph 简介
最近已经有将近三个月没有写博客了, 为啥呢! 这么说吧, 我上王者了, 大家应该都懂得!
其实还是最近工作挺忙的, 并且每个周六都得去医院, 所以就搁置了, 抱歉
什么是图?
图数据库? 什么是图数据库, 我也是才真正接触到这个领域, 之前也只是听说过,最近我们要做一个知识图谱, 经过讨论在决定采用图数据库.
经过调研应为性能和查询效率的问题决定使用 Nebula Graph
那么, 什么是图呢? 柱状图? 折线图? 这么说吧, 应该很多人都玩过王者荣耀
没错, 这个就是图, 可以用来表示关系
从数学角度来说,图论是研究建模对象之间关系结构的学科。但是从工业界使用的角度,通常会对基础的图模型进行扩展,称为属性图模型。属性图通常由以下几部分组成:
- 节点,即对象或实体,通常简称为点(Vertex)。
- 节点之间的关系,通常简称为边(Edge)。通常边是有方向或者无方向的,以表示两个实体之间有持续的关系。
- 在节点和边上,还可以有属性(properties)。
图也是区分方向的, 可以分为无向图和有向图
什么是图数据库?
从图延伸到图数据库:
不同的图数据库在术语方面可能会略有不同,但是归根结底都是在讲点、边和属性。至于更多的功能,例如标签、索引、约束、TTL、长任务、存储过程和UDF等这些高级功能,在不同图数据库中,会存在明显的差异。
图数据库用图来存储数据,而图是最接近高度灵活、高性能的数据结构之一。图数据库是一种专门用于存储和检索庞大信息网的存储引擎,它能够高效地将数据存储为点和边,并允许对这些点边结构进行高性能的检索和查询。我们也可以为这些点和边添加属性。
图数据库几乎适用于存储所有领域的数据。因为在几乎所有领域中,事物之间都是由某种相关联的。图数据库支持存储实体之间的丰富关系,并且能够将这些关系完美地呈现出来,而无需像其他建模方式那样,将关系也当成实体存储。因此图数据库能够以最接近对数据直观认知的形式存储数据。
下面使用 docker + docker-compose 的方式安装 nebula-graph 及 nebula-graph Studio。