Aerospike

Aerospike是一个分布式,高可用的 K-V类型的NoSQL数据库。提供类似传统数据库的ACID操作。

优势

AS最大的卖点就是可以存储在SSD上,并且保证和Redis相同的查询性能。AS内部在访问SSD屏蔽了文件系统层级,直接访问地址,保证了数据的读取速度。 AS同时支持二级索引与聚合,支持简单的sql操作,相比于其他NoSQL数据库,有一定优势。

Namespaces

AS数据存储的最高层级,类比于传统的数据库的库层级,一个namespace包含记录(records),索引(indexes )及策略(policies)。

其中策略决定namespace的行为,包括:

​ 1.数据的存储位置是内存还是SSD。

​ 2.一条记录存储的副本个数。

​ 3.过期时间(TTL):不同于Redis的针对key设置TTL,AS可以在库的层级进行全局设置,并且支持对于已存在的数据进行TTL的设置,方便了使用。

Set

存储于namespace,是一个逻辑分区,类比于传统数据库的表。set的存储策略继承自namespace,也可以为set设置单独的存储策略。

Records

类比于传统数据库的行,包含key,Bins(value)和Metadata(元数据)。key全局唯一,作为K-V数据库一般也是通过key去查询。Bins相当于列,存储具体的数据。元数据存储一些基本信息,例如TTL等。

Key

提到key,有一个和key伴生的概念是摘要(Digests),当key被存入数据库,key与set信息一起被哈希化成一个160位的摘要。数据库中,摘要为所有操作定位记录。key主要用于应用程序访问,而摘要主要用于数据库内部查找记录。

Metadata

每一条记录包含以下几条元数据

1.generation:表示记录被修改的次数。该数字在程序度数据时返回,用来确认正在写入的数据从最后一次读开始未被修改过。

2.time-to-live(TTL):AS会自动根据记录的TTL使其过期。每次在对象上执行写操作TTL就会增加。3.10.1版本以上,可以通过设置策略,使更新记录时不刷新TTL。

3.last-update-time (LUT):上次更新时间,这是一个数据库内部的元数据,不会返回给客户端。

Bins

bins中的值决定。动态的数据类型提供了很好的灵活性。AS中每条记录可以由完全不同的bins组成。记录无模式,你可以记录的任何生命周期增加或删除bins。

在一个库中bins的名称最多包含32k,这是由内部字符串优化所致。(相比于HBase支持几百万列还是有一定差距,如果想直接将HBase表迁移到AS可能需要重新设计存储结构)

Aerospike学习相关推荐

  1. Aerospike学习笔记篇

    一.Aerospike概念 Aerospike 是一个分布式.可扩展的Nosql 数据库.以KV 键值进行存储,当然也支持文档存储模型,在国内的并没有广泛使用,而在国外却大多数用在广告行业,以存储大数 ...

  2. 史上最全的“大数据”学习资源

    2019独角兽企业重金招聘Python工程师标准>>> 资源列表: 关系数据库管理系统(RDBMS) 框架 分布式编程 分布式文件系统 文件数据模型 Key -Map 数据模型 键- ...

  3. 干货丨不可错过的大数据学习资源推荐

    今天为大家推荐一些翻译整理的大数据相关的非常棒的学习资源,希望能给大家一些帮助. 关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库: PostgreSQL:世界最先进的开源数据库: ...

  4. 最全的“大数据”学习资源

    关系数据库管理系统(RDBMS) 框架 分布式编程 分布式文件系统 文件数据模型 Key -Map 数据模型 键-值数据模型 图形数据模型 NewSQL数据库 列式数据库 时间序列数据库 类SQL处理 ...

  5. 大数据学习资源最全版本(收藏)

    资源列表: 关系数据库管理系统(RDBMS) 框架 分布式编程 分布式文件系统 文件数据模型 Key -Map 数据模型 键-值数据模型 图形数据模型 NewSQL数据库 列式数据库 时间序列数据库 ...

  6. 史上最全大数据学习资源整理

    史上最全大数据学习资源整理 ----------------------------------------------------------------------------------- 转载 ...

  7. 最全的大数据学习资料整理

    资源列表: 关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库; PostgreSQL:世界最先进的开源数据库; Oracle 数据库:对象-关系型数据库管理系统. 框架 Apach ...

  8. 最全大数据学习资源整理

    关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库; PostgreSQL:世界最先进的开源数据库; Oracle 数据库:对象-关系型数据库管理系统. 框架 Apache Hado ...

  9. 2019最全大数据学习资源整理(值得收藏)

    关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库; PostgreSQL:世界最先进的开源数据库; Oracle 数据库:对象-关系型数据库管理系统. 框架 Apache Hado ...

最新文章

  1. java opencv 图片放大缩小,角点检测和边缘检测(14)
  2. 什么是奇异值?奇异值分解是什么?SVD分解详解及实战
  3. linux ubuntu ssh,Linux(Ubuntu)安装ssh服务
  4. react api_使用Java EE 8中的React式API加速服务
  5. 真是,原来可以这样啊
  6. php获取扫码枪的数据,js 获取扫码枪输入数据的方法
  7. 管理动物园动物c++_中国动物园行业供需预测及投资潜力分析
  8. 详解RecyclerView下拉刷新与上拉更多
  9. Android JNI入门第六篇——C调用Java
  10. 【数据结构】DFS 代码模板
  11. Eclipse 下用Maven构建ssh框架web工程
  12. Hadoop CentOS 7 安装配置
  13. 什么是北京54坐标系
  14. 银行系统开发 经验谈
  15. 栈和队列有什么区别、以及他们的共同点
  16. CrateDB三机三节点部署(Docker Overlay网络)
  17. jpa vue管理系统_如何通过利用Java流获取类型安全和直观的Hibernate / JPA查询
  18. 我有好的东西和大家一起分享
  19. 小白看了直呼细节--CPP“引用”
  20. 测试apk-异常管控Gps攻击者开发

热门文章

  1. 如何备份sqlserver2000的数据库
  2. 毛坯新房验收注意事项
  3. C语言基础-程序员买房子问题
  4. 用DEVC++制作超好玩的坦克大战
  5. 【Python爬虫】利用BeautifulSoup处理html/xml格式古文数据库(论语、老子、庄子、韩非子等)并用pandas将其转换成csv格式
  6. gif文件在linux下怎么打开,gif文件扩展名,gif文件怎么打开?
  7. nginx 上传文件漏洞_文件上传漏洞,解析漏洞总结
  8. 编写一个python程序用来计算投资回收期_智慧职教Python程序设计基础题目答案
  9. CJBE-Continued Java Bytecode Editor (JAVA字节码编辑器推介)
  10. Redis在新浪微博中的应用