参考文章:

ArangoDB原生多模型数据库(百科)

ArangoDB官网

ArangoDB数据库入门

arangodb-vs-cassandra

arangodb-vs-mongodb2

ArangoDB、Neo4j、OrientDB单机性能比较

ArangoDB简单实例介绍

ArangoDB之SQL/AQL-比较

SQL/AQL-比较(官网)

ArangoDB 的使用 -- 安装和配置

ArangoDB 学习笔记(1)入门篇

ArangoDB---存储引擎(RocksDB)

简介:

ArangoDB是一个开源NoSQL数据库,官网:https://www.ArangoDB.org/.

ArangoDB支持灵活的数据模型,比如文档Document、图Graph以及键值对Key-Value存储。ArangoDB同时也是一个高性能的数据库,它使用类SQL查询或JavaScript扩展来构建高性能应用。

ArangoDB的特性

1)多模型数据库

可以灵活的使用键值对、文档、图及其组合构建你的数据模型。

2)查询便利

ArangoDB有类SQL的AQL查询语言,还可以通过REST方式进行查询。

3)可通过JavaScript进行扩展

无语言范围的限制,可以从前端到后端都使用同一种语言。

4)高性能

ArangoDB速度极快

5)Foxx - 构建自己的API

用JavaScript和ArangoDB构建应用,Foxx运行在DB内部,可快速访问数据。

6)空间利用率高

跟其它文档型数据库相比,ArangoDB占用的存储空间更少,因为ArangoDB是模式自由的元数据模式。

7)简单易用

ArangoDB可以在几秒内启动运行,同时可使用图形界面来管理你的ArangoDB。

8)多OS支持

ArangoDB支持Windows、Linux和OSX等操作系统,还支持树莓派。

9)开源且免费

ArangoDB开源免费,它采用了Apache 2许可证协议。

10)复制

ArangoDB支持主从集群

ArangoDB 数据库模型

Document 文档

您可以在文档中存储海量数据(文件大小默认最大值为32MB,但可以根据实际需要进行配置)。ArangoDB功能强大,应用范围广泛,可用于查询和处理诸如JOINs、辅助索引或ACID事物之类的文档。您还可以在JOIN连接上实现水平扩展。

key/value 键/值

每个document文档里均有唯一的键和与其对应的值(键/值对)。如果您在document文件中存储一个值,那么ArangoDB可用作经典的、高度可扩展的键/值对存储,例如用户在电子商务平台上将商品临时存储在购物车里或物联网应用程序中的传感数据等。

Graph 图

ArangoDB包含了graph图形存储的完整功能集。例如模式匹配、最短路径、完全遍历等。与当前许多主流的图形处理方法相比,ArangoDB可以快速执行图形查询。以下具体介绍如何实现这一改进:

当使用ArangoDB存储graph图时,一种特殊类型的文档将会被创建用来表示其边和顶点。这些文档包含指向所连接文档的_to和_from属性(地址属性),因此在查询过程中,可以通过关联上述属性创建和使用边缘索引,实现图的高性能处理和查询。

ArangoDB数据库的独特之处在于如下两个方面:其一是这些边和顶点都包含复杂数据(嵌套属性),其二是所有的graph函数均被深入集成至我们的查询语言AQL中。这两个特征使得ArangoDB在性能上能与其他graph数据库一较高低。此外,ArangoDB还支持对graph图搭建数据库集群。 [3]

python库

另外大家可以学习下python的aerospike库。

  

# import the module
import aerospike # Configuration for the client
config = {
'hosts': [('127.0.0.1', 3000)]
} # Create a client and connect to the database
client = aerospike.client(config).connect() # Records are addressable via a tuple of (namespace, set, key)
key = ('test', 'demo', 'foo') # Write a record
client.put(key, {
'name': 'John Doe',
'age': 32
}) # Read a record
(key, metadata, record) = client.get(key) # Close Connection to Cluster
client.close()

  

性能比较

见 NoSQL 基准对比 Aerospike、Cassandra、Couchbase 和 MongoDB

整体看来 如果是充分利用内存提速的话 要比mongodb好!

ArangoDB图数据库--总参的更多相关文章

  1. 主流图数据库Neo4J、ArangoDB、OrientDB综合对比:架构分析

    主流图数据库Neo4J.ArangoDB.OrientDB综合对比:架构分析 YOTOY 关注 0.4 2017.06.15 15:11* 字数 3733 阅读 16430评论 2喜欢 18 1: 本 ...

  2. 主流开源分布式图数据库 Benchmark

    本文由美团 NLP 团队高辰.赵登昌撰写 首发于 Nebula Graph 官方论坛:https://discuss.nebula-graph.com.cn/t/topic/1377 1. 前言 近年 ...

  3. 高性能内存图数据库RedisGraph(一)

    作为一种简单.通用的数据结构,图可以表示数据对象之间的复杂关系.生物信息学.计算机网络和社交媒体等领域中产生的大量数据,往往是相互连接.关系复杂且低结构化的,这类数据对传统数据库而言十分棘手,一个简单 ...

  4. OPPO 图数据库平台建设及业务落地

    本文首发于 OPPO 数智技术公众号,WeChat ID: OPPO_tech 1.什么是图数据库 图数据库(Graph database)是以图这种数据结构存储和查询的数据库.与其他数据库不同,关系 ...

  5. Neo4j图数据库管理系统开发笔记之一:Neo4j Java 工具包

    1 应用开发概述 基于数据传输效率以及接口自定义等特殊性需求,我们暂时放弃使用Neo4j服务器版本,而是在Neo4j嵌入式版本的基础上进行一些封装性的开发.封装的重点,是解决Neo4j嵌入式版本Emb ...

  6. 图数据库(graph database)资料收集和解析 - daily

    Motivation 图数据库中的高科技和高安全性中引用了一个关于图数据库(graph database)的应用前景的乐观估计: 预计到2017年,图数据库产业在数据库市场的份额将从2个百分点增长到2 ...

  7. Neo4j图数据库管理系统开发笔记之三:构建安全的RMI Service(Server)

    RMI Server(服务端)主要包括以下功能:远程用户权限验证管理.远程服务接口实现类.Neo4j实体映射转换等.项目目录结构如下图所示: 3.2.1 远程用户权限验证管理 3.2.1.1 用户权限 ...

  8. Neo4j图数据库管理系统开发笔记之二:管理系统Server端界面一览

    最近在neo4j java api和rmi的基础上,设计了一套neo4j管理工具,分为server端和client端,中间用rmi进行通信.基本功能包括图数据库基本信息维护管理(创建.编辑.删除.统计 ...

  9. Neo4j图数据库简介和底层原理

    现实中很多数据都是用图来表达的,比如社交网络中人与人的关系.地图数据.或是基因信息等等.RDBMS并不适合表达这类数据,而且由于海量数据的存在,让其显得捉襟见肘.NoSQL数据库的兴起,很好地解决了海 ...

随机推荐

  1. Spring 梳理 - @Autowired VS @Resource

    Autowired @Autowired顾名思义,就是自动装配,其作用是为了消除代码Java代码里面的getter/setter与bean属性中的property.当然,getter看个人需求,如果私 ...

  2. 性能测试的基础知识--QPS和TPS

    基本概念: QPS:Queries Per Second意思是“每秒查询率” ,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准. TPS:Transa ...

  3. APP设计与开发(ui篇)

    这篇文章是我个人在开发与设计APP的所用的一些设计思路,仅用于和大家分享知识并不是什么设计标准之类的.主要说明App的开发中是如何来开发与组织UI部分. UI模块结构 在项目中建立ui包用于存放ui类 ...

  4. vs code编码设置

    在使用vs code(版本1.35.0)打开文件时,出现乱码问题,可通过如下方式设置: 1.针对单个文件 点击右下角的编码按钮(图中为UTF-8),然后选择操作,通过编码重新打开(Reopen wit ...

  5. wordpress访问速度慢

    可能是google字体的原因 1.找到wordpress目录下wp-includes/script-loader.php这个文件 2.查找open_sans_font_url这个字段,把后面的font ...

  6. docker 使用及基本命令

    一.docker简单使用 a.列出镜像 docker images b.从docker hub拉取最新版本镜像 docker pull xxx 错误: Error response from daem ...

  7. Kotlin编译时注解,简单实现ButterKnife

    ButterKnife在之前的Android开发中还是比较热门的工具,帮助Android开发者减少代码编写,而且看起来更加的舒适,于是简单实现一下ButterKnife,相信把下面的代码都搞懂,看Bu ...

  8. 创建新镜像-从已创建的容器中更新镜像并提交镜像(以Nginx为例)

    目标:现在我们主要是修改nginx的index.html,然后做一个新镜像 1.基于nginx:1.12运行一个容器 docker run -d -p 8080:80 --name nginx ngi ...

  9. Spring Boot 2.X(二):集成 MyBatis 数据层开发

    MyBatis 简介 概述 MyBatis 是一款优秀的持久层框架,支持定制化 SQL.存储过程以及高级映射.它采用面向对象编程的方式对数据库进行 CRUD 的操作,使程序中对关系数据库的操作更方便简 ...

  10. 深入理解SpringCloud之Gateway

    虽然在服务网关有了zuul(在这里是zuul1),其本身还是基于servlet实现的,换言之还是同步阻塞方式的实现.就其本身来讲它的最根本弊端也是再此.而非阻塞带来的好处不言而喻,高效利用线程资源进而 ...