首页 > 代码库 > ArangoDB介绍——未知架构和底层原理

ArangoDB介绍——未知架构和底层原理

ArangoDB介绍

ArangoDB是一个开源NoSQL数据库,官网:https://www.ArangoDB.org/
技术分享
ArangoDB支持灵活的数据模型,比如文档Document、图Graph以及键值对Key-Value存储。ArangoDB同时也是一个高性能的数据库,它使用类SQL查询或JavaScript扩展来构建高性能应用。

ArangoDB值得称赞的一点,可以在树莓派上运行ArangoDB 1.4版。

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支持主从集群

 

简单说下Aerospike的安装,我这边有个服务器是Ubuntu的,那就用它了。 如果有Docker的话,那敢情好了。直接下载image,run一下就好了。 

wget -O aerospike.tgz http://aerospike.com/download/server/latest/artifact/ubuntu12
tar -xvf aerospike.tgz
cd aerospike-server-community-*-ubuntu12
sudo ./asinstall # will install the .rpm packages
sudo service aerospike start && sudo tail -f /var/log/aerospike/aerospike.log | grep cake

有时候自己手动启动。 

sudo /etc/init.d/aerospike start

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

 
# 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()

 

 性能比较见 http://www.infoq.com/cn/news/2013/04/NoSQL-Benchmark 整体看来 如果是充分利用内存提速的话 要比mongodb好!

ArangoDB介绍——未知架构和底层原理