Aerospike数据库实战(一) -- Aerospike是大数据时代互联网广告专用数据库,为RTB而生
2017-01-06 17:59
507 查看
本人原创作品,转载注明出处:http://blog.csdn.net/yanshu2012/article/details/54140429
长久以来互联网广告为了解决跨域cookie识别问题,数据精准营销等问题,处于整个交易链的中下游的Ad exchange 平台,DSP平台需要一款高性能的缓存数据库。尤其在RTB领域,整个竞价流程需要控制在100ms以内。媒体,Ad exchange ,DSP之间还存在天然的物理上的网络延迟,所以实际留给Ad exchange 平台,DSP平台从缓存数据库里读取数据的时间很少,一般需要控制在5ms内。为了应对这部分需求,Ad exchange ,DSP平台通常使用开源的Redis数据库。由于Redis数据库是内存型数据库,性能上基本上可以满足需求。但是同时带来了一个问题:需要大量内存来存储cookie映射关系,用户标签等,内存很贵,这部分存储成本非常高。进入大数据时代,大量使用内存导致的成本问题,尤为突出。在这种背景下Aerospike数据库应运而生。
Aerospike数据库相比于Redis有以下几个方面的优势:
根据Aerospike官方文档,计算出存储1亿cookie耗费:
[[http://www.aerospike.com/docs/operations/plan/capacity/]]
内存:64Byte*2(备份因子)*100000000 = 11G
硬盘:128Byte*2(备份因子)*100000000 = 22G
对比线上Redis持久化方案:
16G 内存(4.5G硬盘)
Aerospike Databases 双备份方案理论上比Redis持久化单备份方案成本小20%左右。
用Aerospike Databases 双备份方案存储50亿cookie,需要内存:11G*50/0.8(冗余系数) = 687.5G 硬盘: 22G*50/0.8(冗余系数) = 1375G
Redis持久化方案每一个key->value只存了一份,使用Aerospike ssd存储方案每一个key->value存储了两份
Aerospike 的value是存储到ssd中的。在一个key多个value的场景下,Aerospike 比Redis成本上的优势会更加明显。
具体性能对比可以参照下面文章:
AerospikeDB与Redis性能比较:在AWS上的NoSQL基准测试
Aerospike 官网:http://www.aerospike.com/
本人原创作品,转载注明出处:http://blog.csdn.net/yanshu2012/article/details/54140429
长久以来互联网广告为了解决跨域cookie识别问题,数据精准营销等问题,处于整个交易链的中下游的Ad exchange 平台,DSP平台需要一款高性能的缓存数据库。尤其在RTB领域,整个竞价流程需要控制在100ms以内。媒体,Ad exchange ,DSP之间还存在天然的物理上的网络延迟,所以实际留给Ad exchange 平台,DSP平台从缓存数据库里读取数据的时间很少,一般需要控制在5ms内。为了应对这部分需求,Ad exchange ,DSP平台通常使用开源的Redis数据库。由于Redis数据库是内存型数据库,性能上基本上可以满足需求。但是同时带来了一个问题:需要大量内存来存储cookie映射关系,用户标签等,内存很贵,这部分存储成本非常高。进入大数据时代,大量使用内存导致的成本问题,尤为突出。在这种背景下Aerospike数据库应运而生。
Aerospike数据库相比于Redis有以下几个方面的优势:
1. Aerospike 成本低廉
Aerospike通过内存+SSD的方案代替Redis纯内存的方案,成本上有巨大优势。根据Aerospike官方文档,计算出存储1亿cookie耗费:
[[http://www.aerospike.com/docs/operations/plan/capacity/]]
内存:64Byte*2(备份因子)*100000000 = 11G
硬盘:128Byte*2(备份因子)*100000000 = 22G
对比线上Redis持久化方案:
16G 内存(4.5G硬盘)
Aerospike Databases 双备份方案理论上比Redis持久化单备份方案成本小20%左右。
用Aerospike Databases 双备份方案存储50亿cookie,需要内存:11G*50/0.8(冗余系数) = 687.5G 硬盘: 22G*50/0.8(冗余系数) = 1375G
Redis持久化方案每一个key->value只存了一份,使用Aerospike ssd存储方案每一个key->value存储了两份
Aerospike 的value是存储到ssd中的。在一个key多个value的场景下,Aerospike 比Redis成本上的优势会更加明显。
2.Aerospike 读写性能优异
Aerospike 有与Redis匹敌的读性能,在某些场景下更好。Aerospike 写性能也不错。具体性能对比可以参照下面文章:
AerospikeDB与Redis性能比较:在AWS上的NoSQL基准测试
3. Aerospike 运维方便,官方文档很齐全
Aerospike 有社区版本和商业版本,由于是从商业版本开源而来,所以在运维方面(包括集群部署,扩容,升级)都非常方便。同时官方文档整理的非常好。Aerospike 官网:http://www.aerospike.com/
本人原创作品,转载注明出处:http://blog.csdn.net/yanshu2012/article/details/54140429
相关文章推荐
- Aerospike数据库实战(四) -- Aerospike 安装部署
- Aerospike数据库实战(三) -- Aerospike数据库压力测试报告
- Aerospike数据库实战(五) -- Aerospike C Client 开发
- 大数据时代的 9 大Key-Value存储数据库
- 大数据时代的数据存储,非关系型数据库MongoDB(一)
- 解析大数据时代的数据库集群技术
- 内存数据库:大数据时代数据管理新宠
- 大数据时代的 9 大Key-Value存储数据库
- Aerospike实战之UDF(用户自定义函数)
- 大数据时代:基于微软案例数据库数据挖掘知识点总结(Microsoft 神经网络分析算法原理篇)
- 大数据时代的数据存储,非关系型数据库MongoDB
- Aerospike 宣布开源其内存中的 NoSQL 数据库
- 内存数据库:大数据时代数据管理新宠
- 【数据库设计总结】数据库设计的重要性不言而喻,何况如今的大数据时代
- Aerospike NoSQL 数据库介绍
- 大数据时代的数据存储,非关系型数据库MongoDB
- 网站分析实战——如何以数据驱动决策,提升网站价值(大数据时代的分析利器)
- 网站分析实战——如何以数据驱动决策,提升网站价值(大数据时代的分析利器)
- Spark视频第13期:Spark亚太研究院决胜大数据时代公益大讲坛:Tachyon内核解析及Spark与Tachyon操作实战
- 大数据时代的数据存储,非关系型数据库MongoDB(一)(转)