ArangoDB 学习笔记(一)

发布于:2022-10-19 ⋅ 阅读:(679) ⋅ 点赞:(0)

1. DB-Engines Ranking of Graph DBMS

This is a partial list of the complete ranking showing only graph DBMS.

网址:DB-Engines Ranking - popularity ranking of graph DBMS

 2. 对比 Neo4j 和 ArangoDB 两种图数据库

(参考https://www.jianshu.com/p/de220e08bb13

Neo4j ArangoDB
数据库类型 图数据库 多模数据库
相关网址 官网官方文档 官网官方文档
目前排名 第一 第四
主要实现语言 Java C++
生态 起步较早,社区活跃,文档丰富,使用体验较好 社区较活跃、文档较非富,使用体验略差
存储系统 原生图结构 RockDB
存储模式 仅支持图存储模式 支持键值对、文档、图存储模式,可混合使用
查询语言 Cypher AQL
收费情况 商业版需付费使用,社区版功能限制较多,比如仅支持十亿级数据存储、单机存储等,见官网社区版与商业版对比 商业版需付费使用,但社区版功能已足够非富
开源情况 社区版开源 开源
事务 ACID ACID
性能(参考:1. ArangoDB、Neo4j、OrientDB单机性能比较;2. Nebula 与 Neo4j、ArangoDB 等图数据库的 Benchmark 数据导入性能较优,查询性能略差,深度查询性能较差 数据导入性能较差,查询性能略优,深度查询性能较优

结合上述对比,Neo4j 有着更棒的生态、更好的使用体验。但社区版对数据规模和单机存储的限制,是其严重的缺陷。

而 ArangoDB 虽然生态和体验稍差,但查询性能较优,功能限制少。同时,支持多种存储模式,可简化技术栈。

3. 传统的知识图谱存储方式 

(参考https://www.jianshu.com/p/de220e08bb13

  • 关系型数据库。成熟稳定、使用广泛、文档丰富,但并不擅长处理复杂“关系”。
  • RDF 三元组存储。由 W3C 制定的标准,具有强大的语义表达能力,但空间开销大、更新维护代价大。
  • 图数据库。与知识图谱结构天然匹配,关系查询性能高,但数据更新复杂,大节点处理开销高。

4. ArangoDB 基本概念

参考:ArangoDB Getting Started

在 ArangoDB 中,有 DatabaseCollectionDocument 三类基本概念。Database 是 Collection 的集合,Collection 中存储着数据记录,数据记录也就是 Document。

对比关系数据库:

  • Database 与关系数据库中的数据库概念、作用相同,用于权限控制、界限划分,ArangoDB 中默认的 Database 称为 _system

  • Collection 相当于关系数据库中的

  • Document 则相当于表中的,但不同于关系数据库,Document 中列不固定,每个 Document 都包含着随机的任意数量的键值对。每个 Document 都有一个默认属性 _key ,它是独一无二的、不可更改的、可自动生成的,Document 还有另一个默认属性 _id ,它等于 <collection name>/<document _key>

ArangoDB 提供网页可视化界面,如下是在 test 数据库中创建的 user 集合。

如下是在 user 集合中的文档数据,每个文档相当于一条 json 形式的数据记录,除了默认三个属性,其它都可不必相同。

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到