Aerospike
一、NoSql
NoSQL(Not Only Sql),泛指非关系型的数据库。传统项目网站访问量一般不大,单机版数据库就很不错, 随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。
常见NoSql有: Redis(K-V)、MongoDB(文本)、HBase(海量数据)、Cassandra(阿帕奇)、Memcached(K-V)
今天说的Aerospike和Redis一样都是开源的非关系型数据库,在性能表现上都非常优秀,但深挖还是有所区别。
- 从性能上来看,二者都是用C写的,Redis是单线程的,只支持内存方式,Aerospike是多线程的,支持内存+SSD+HDD的存储方式。
- 从数据存储上来看,二者都支持多种数据结构和操作,Redis的API是以数据结构为中心的,应用程序必须知道Redis节点且每节点最多有2的32次方个key,Aerospike所有操作都不是预定义的,应用程序不需要知道节点,每个名称空间最多有2^160个键。
- 从持久化方面来看,二者都支持持久化,Redis支持RDB和AOF,Aerospike本身支持内存+SSD模式,也结构化日志文件系统,且支持热重启。
- 从数据同步上来看,Redis需要主从手动配置,是异步复制方式,各节点完全是主或从节点。Aerospike主从自动分配,是同步复制方式,各节点既是主节点又是从节点。
- 从数据分片上来看,Redis需要应用程序分片,Aerospike支持自动分片,分区被分配给节点且自动平衡各节点数据。
- 从集群方式来看,Redis需要手动或脚本的方式形成集群,Aerospike基于组播自动集群,集群变化时自动重新平衡且重新平衡过程中允许的读/写操作。此外Aerospike自身还提供监控台,用于监视集群的活动。
二、Aerospike的安装
上传安装包到服务器,进行解压,解压命令
#解压
[root@local