你好,游客 登录 注册 搜索
背景:
阅读新闻

Aerospike-Architecture系列之大数据类型

[日期:2015-04-29] 来源:CSDN博客  作者:来留去送 [字体: ]

Large Data Types(大数据类型)

大数据类型的bin可以存储大量的对象集合。对象的类型可以是Integer/String/Map/List。Aerospike的单个记录可以包含许多这样的bin,这样的bin允许在单独的记录中包含大量的数据,其限制基于存储能力,记录没有最大值限制。

Aerospike LDT使用的存储类型,我们叫做子记录( sub-records)。子记录与Aerospike常规记录很相似,不同之处在于他们与父记录连接。记录与父记录共享分区ID和内部记录锁,所以在迁移时与父记录一起移动,与父记录一起通过一样的隔离机制保护。

LDT中的对象并不与其关联的记录连续存储,而是分成子记录(sub-records)(尺寸大约2kb到200kb,由写入块的大小来决定)。子记录被一起连接和索引,通过用户定义函数(UDFs)进行数据库内部管理。使用子记录意味着访问LDT中的某一对象只影响几个子记录而不是整个记录。

Large Ordered List(大型有序列表)

大型有序列表类型(llist) 管理大规模排序的列表。有序列表中的对象可以是原始类型(例如,integer, string, blob)或者是复杂数据类型(比如,map, list

 
图 5a
大型有序列表操作

物理上,大型由序列表由B+树实现。树的节点和叶就是子记录(sub-records)。B+树的根驻留在父记录。

 
图 5b
大型有序列表物理层

B+树结构没有深度限制,因此大型有序列表中存储的对象数目也没有限制。

LLIST控制结构中包含所有关于大型有序列表的元数据信息。例如,包括以下信息:

  • key的类型
  • 存储配置及限制
  • 根,节点和叶的数量。
  • 存储状态及阀值
  • 根值和节点指针数组(B+树根节点)

Useful Links

  • LDT Feature Guide

原文链接: <http://www.aerospike.com/docs/architecture/ldt.html>





收藏 推荐 打印 | 录入:Cstor | 阅读:
本文评论   查看全部评论 (5)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款