冯宏华在2013年的大数据技术大会上,针对HBase在小米的应用与扩展进行了深入分享。HBase作为一种开源的非关系型分布式数据库,基于Google Bigtable实现,适用于大规模数据集的随机实时读写访问。冯宏华主要围绕HBase在小米的运用现状、已经实施的改进与扩展以及未来计划中的改进进行了介绍。 小米的HBase集群规模达到了15个,其中9个作为在线服务集群、2个离线处理集群和4个测试集群。这些集群支撑了小米内部多个不同的业务,涉及的机器数量达到数百台,每个数据节点配置为24TB的存储空间(12块2TB的磁盘)。HBase在小米的应用场景非常广泛,包括小米云服务、米聊消息存储、小米推送服务、MIUI离线分析和多看阅读的离线分析等。 小米针对HBase进行了一些创新的改进和扩展,其中一项是对HBase的删除操作进行语义校正。在原始的HBase版本中,删除操作的语义存在问题,导致用户在成功写入数据后,可能无法立即读取到该数据,即使在读取过程中没有其他线程对该数据进行读写。冯宏华团队修正了这一语义问题,使得删除标记仅对写入该标记之前的数据有效,而不会影响到后续写入的数据,这一改进得到了 Apache 社区的认可,并记录在 JIRA 的 HBASE-8721 系统中。 除此之外,小米还改进了HBase的跨机房备份功能,解决了原生HBase只能在集群级别进行备份的问题。通过提供可配置的粒度控制,小米使得从主集群复制到备份节点的数据可以具体到每个表或列族(Column Family,简称CF)。这种改进不仅使备份更加灵活,还减少了机房间的网络带宽消耗,该改进也已被记录在 JIRA 的 HBASE-8751 系统中。 小米还针对HBase的写吞吐性能进行了优化,引入了新的写模型,使得性能得到了显著提升,优化后的性能是优化前的3.4倍。这些性能测试的具体结果也在JIRA的 HBASE-8755 系统中有所记录。 冯宏华还介绍了小米在HBase方面的其他扩展,包括Minos工具的开发,该工具主要用于HBase的自动化部署、监控和报警系统,实现了对HBase的集中监控、分类展示以及表级指标聚合。此外,小米还进行了Failover测试,使用ChaosMonkey+工具,可以配置并随机选择执行动作,并在动作前后进行数据正确性验证,确保动作或任务可以重现。通过这些测试,HBase的稳定性和可靠性得到了增强。小米还对HBase进行了压力测试和可用性测试,以确保其在生产环境中的稳定运行。 通过冯宏华的演讲,我们可以看到HBase作为一个优秀的开源数据库,在小米这样的大型互联网公司中的实际应用是非常广泛的,并且为了适应业务需求,小米也做出了相应的改进和扩展。这些工作的成果不但服务于小米内部的多种业务,也通过开源的方式贡献给了整个HBase社区,对于推动HBase发展和大数据技术的普及具有非常积极的意义。
剩余31页未读,继续阅读
- jqmtony2014-08-25看了,不过对我的项目没有什么大的帮助
- 粉丝: 95
- 资源: 196
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- YOLOv8完整网络结构图详细visio
- LCD1602电子时钟程序
- 西北太平洋热带气旋【灾害风险统计】及【登陆我国次数评估】数据集-1980-2023
- 全球干旱数据集【自校准帕尔默干旱程度指数scPDSI】-190101-202312-0.5x0.5
- 基于Python实现的VAE(变分自编码器)训练算法源代码+使用说明
- 全球干旱数据集【标准化降水蒸发指数SPEI-12】-190101-202312-0.5x0.5
- C语言小游戏-五子棋-详细代码可运行
- 全球干旱数据集【标准化降水蒸发指数SPEI-03】-190101-202312-0.5x0.5
- spring boot aop记录修改前后的值demo
- 全球干旱数据集【标准化降水蒸发指数SPEI-01】-190101-202312-0.5x0.5