Aerospike学习
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学习相关推荐
- Aerospike学习笔记篇
一.Aerospike概念 Aerospike 是一个分布式.可扩展的Nosql 数据库.以KV 键值进行存储,当然也支持文档存储模型,在国内的并没有广泛使用,而在国外却大多数用在广告行业,以存储大数 ...
- 史上最全的“大数据”学习资源
2019独角兽企业重金招聘Python工程师标准>>> 资源列表: 关系数据库管理系统(RDBMS) 框架 分布式编程 分布式文件系统 文件数据模型 Key -Map 数据模型 键- ...
- 干货丨不可错过的大数据学习资源推荐
今天为大家推荐一些翻译整理的大数据相关的非常棒的学习资源,希望能给大家一些帮助. 关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库: PostgreSQL:世界最先进的开源数据库: ...
- 最全的“大数据”学习资源
关系数据库管理系统(RDBMS) 框架 分布式编程 分布式文件系统 文件数据模型 Key -Map 数据模型 键-值数据模型 图形数据模型 NewSQL数据库 列式数据库 时间序列数据库 类SQL处理 ...
- 大数据学习资源最全版本(收藏)
资源列表: 关系数据库管理系统(RDBMS) 框架 分布式编程 分布式文件系统 文件数据模型 Key -Map 数据模型 键-值数据模型 图形数据模型 NewSQL数据库 列式数据库 时间序列数据库 ...
- 史上最全大数据学习资源整理
史上最全大数据学习资源整理 ----------------------------------------------------------------------------------- 转载 ...
- 最全的大数据学习资料整理
资源列表: 关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库; PostgreSQL:世界最先进的开源数据库; Oracle 数据库:对象-关系型数据库管理系统. 框架 Apach ...
- 最全大数据学习资源整理
关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库; PostgreSQL:世界最先进的开源数据库; Oracle 数据库:对象-关系型数据库管理系统. 框架 Apache Hado ...
- 2019最全大数据学习资源整理(值得收藏)
关系数据库管理系统(RDBMS) MySQL:世界最流行的开源数据库; PostgreSQL:世界最先进的开源数据库; Oracle 数据库:对象-关系型数据库管理系统. 框架 Apache Hado ...
最新文章
- java opencv 图片放大缩小,角点检测和边缘检测(14)
- 什么是奇异值?奇异值分解是什么?SVD分解详解及实战
- linux ubuntu ssh,Linux(Ubuntu)安装ssh服务
- react api_使用Java EE 8中的React式API加速服务
- 真是,原来可以这样啊
- php获取扫码枪的数据,js 获取扫码枪输入数据的方法
- 管理动物园动物c++_中国动物园行业供需预测及投资潜力分析
- 详解RecyclerView下拉刷新与上拉更多
- Android JNI入门第六篇——C调用Java
- 【数据结构】DFS 代码模板
- Eclipse 下用Maven构建ssh框架web工程
- Hadoop CentOS 7 安装配置
- 什么是北京54坐标系
- 银行系统开发 经验谈
- 栈和队列有什么区别、以及他们的共同点
- CrateDB三机三节点部署(Docker Overlay网络)
- jpa vue管理系统_如何通过利用Java流获取类型安全和直观的Hibernate / JPA查询
- 我有好的东西和大家一起分享
- 小白看了直呼细节--CPP“引用”
- 测试apk-异常管控Gps攻击者开发
热门文章
- 如何备份sqlserver2000的数据库
- 毛坯新房验收注意事项
- C语言基础-程序员买房子问题
- 用DEVC++制作超好玩的坦克大战
- 【Python爬虫】利用BeautifulSoup处理html/xml格式古文数据库(论语、老子、庄子、韩非子等)并用pandas将其转换成csv格式
- gif文件在linux下怎么打开,gif文件扩展名,gif文件怎么打开?
- nginx 上传文件漏洞_文件上传漏洞,解析漏洞总结
- 编写一个python程序用来计算投资回收期_智慧职教Python程序设计基础题目答案
- CJBE-Continued Java Bytecode Editor (JAVA字节码编辑器推介)
- Redis在新浪微博中的应用