加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Aerospike:保持数据为blob还是使用’bins’?

发布时间:2020-12-13 13:30:56 所属栏目:百科 来源:网络整理
导读:我需要在Aerospike中保存数据.这个引擎支持’bins'(‘bin’就像记录中的行或字段中的列).另一方面,我可以将我的记录保存为序列化blob.记录以原子方式从数据库中提取.也就是说,我不需要获取记录的某些“列”,我需要完全记录. 问题是:在性能方面保持此类方案
我需要在Aerospike中保存数据.这个引擎支持’bins'(‘bin’就像记录中的行或字段中的列).另一方面,我可以将我的记录保存为序列化blob.记录以原子方式从数据库中提取.也就是说,我不需要获取记录的某些“列”,我需要完全记录.

问题是:在性能方面保持此类方案数据的最有效方法是什么?保持它不反序列化并使用’bins’来描述所有记录的字段,或将其存储为1列中的序列化blob?

如果您确定您唯一的用例是获取完整记录,而不是单个bin,则最好将其存储为单个bin值. (在内部,多个bin将需要超出大小限制的多个malloc).事实上,您可以设置命名空间配置选项’single-bin true’,这将进一步优化事物.请注意,一旦设置了此配置选项,即使重新启动节点也不会取消设置.如果要更改此配置,则必须清理驱动器.如果命名空间在内存中,显然,此限制不适用.

在将来,如果有可能访问垃圾箱的子集,则存储为垃圾箱更好.因为它将节省网络I / O,这将比malloc开销大得多.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读