参考文章:

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. webservice传输文件的三种方式

    1, 在接口中不定义,直接以附件形式传输. 2, 在接口参数中定义byte[]类型,文件在xml中以base64编码传输. 3, 在接口参数中定义DataHandler类型,然后使用MTOM形式来进行 ...

  2. Vsftp服务-实战案例

    Vsftp 实验案例一:(本地用户) 试验版本:Linux7.X版本 公司内部现在有一台FTP 和WEB 服务器,FTP 的功能主要用于维护公司的网站内容,包括上传文 件.创建目录.更新网页等等.公司 ...

  3. HttpClient连接池的一些思考

    前言 使用apache的httpclient进行http的交互处理已经很长时间了,而httpclient实例则使用了http连接池,想必大家也没有关心过连接池的管理.事实上,通过分析httpclien ...

  4. 关于CSS的书写规范和顺序

    关于CSS的书写规范和顺序,是大部分前端er都必须要攻克的一门关卡,如果没有按照良好的CSS书写规范来写CSS代码,会影响代码的阅读体验.这里总结了一个CSS书写规范.CSS书写顺序供大家参考,这些是 ...

  5. 利用双重检查锁定和CAS算法:解决并发下数据库的一致性问题

    背景 ​ 最近有一个场景遇到了数据库的并发问题.现在先由我来抽象一下,去掉不必要的繁杂业务. ​ 数据库表book存储着每本书的阅读量,一开始数据库是空的,不存在任何的数据.当用户访问接口的时候,判断 ...

  6. Android NDK(一) ndk-build构建工具进行NDK开发

    本文目录 一.androidstudio环境 二.快捷键配置 三.新建项目 四.NDK开发 五.so文件编译 一. androidstudio的环境 在SDK Tools中安装NDK开发环境(File ...

  7. 定期从Docker上部署的MySQL备份数据

    前段时间公司停电,正巧赶上周一领导要开会要过一遍项目,然而项目所依赖的MySQL数据库是直接部署在宿主机,且因为各人部署方式不同的原因,花了很久才在开会前启动起来.于是开完会后,我第一件事就是把原先依 ...

  8. python编程基础之六

    运算符和表达式 +,-,*,/,     加减乘除 %, 模运算 **,  幂运算 //  整除 运算优先级方面:** >正负号(+,-)>//,%>*,/>+,- 模运算有一 ...

  9. 你的火狐很慢吗? - Firefox启动和运行速度优化

    最近刚开始体验firefox,发现了一些优势和缺点,无敌的扩展确实带来的是功能上的享受,可随之而来的问题便是太多的插件和主题导致ff启动如龟速,比起IE和TW都有不小的差距,因此特意搜集来一些关于启动 ...

  10. redis缓存+session 实现单点登录

    一.单点登录介绍 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系 ...