腾讯进一步拥抱开源:主导Apache社区新一代分布式存储系统Ozone 1.0.0发布

刚刚获悉 , 由腾讯云大数据团队主导的Ozone1.0.0版本在ApacheHadoop社区正式发布 。 据了解 , 经过2年多的社区持续开发和内部1000+节点的实际落地验证 , Ozone1.0.0已经具备了在大规模生产环境下实际部署的能力 。
Ozone是ApacheHadoop社区推出的新一代分布式存储系统 , 它的出现满足了大量小文件的存储问题 , 解决了Hadoop分布式文件系统在可扩展性上的缺陷 。 作为Hadoop生态圈的一款新的对象存储系统 , 能够支持百亿甚至千亿级文件规模的存储 。
腾讯云大数据团队Ozone项目负责人陈怡表示 , 作为大数据领域的领导厂商 , 腾讯是国内一线互联网公司中最早加入社区的 , 目前已经在Ozone项目上已经主导完成了集群网络拓扑感知的开发 , 以及数据写入Multi-RaftPipeline功能的开发 。 同时 , 主导的StorageContainerManager(SCM)高可用HA功能也正在开发中 。
腾讯进一步拥抱开源:主导Apache社区新一代分布式存储系统Ozone 1.0.0发布
文章图片
Ozone架构图
以集群网络拓扑感知来说 , 在传统的大数据构架下 , 有了网络拓扑结构 , 计算引擎的调度器可以将任务调度到离数据最近的节点来获取“数据的局部性” 。 即便是新兴的计算存储分离构架 , 同样也需要集群网络拓扑信息 , 来保证数据的故障容错能力和高可用性 。
陈怡进一步介绍说 , 在Ozone的Alpha发布后 , 腾讯内部的大数据平台上线了Ozone生产集群 , 承接了一部分业务的数据存储 。 随着数据服务体量的增加 , 逐渐发现Ozone写入性能显现出了一定的波动和瓶颈 。 基于这个发现 , 腾讯Ozone项目组设计并开发了数据写入Multi-RaftPipeline功能 , 显著的提升了Ozone的写入吞吐量和性能 。
此外 , 为了测试Ozone整体的稳定性和性能 , 作为部署应用的先锋小队 , 腾讯内部部署了一个1000个数据节点的集群 。 进行了长达几个月的稳定性和压力测试 。 期间团队遇到并解决了各种OOM、节点Crash、性能低于预期等问题 。 经过全面的优化之后 , 单集群1000个节点现已能长时间稳定运行 , 并且所有的数据都校验确认正确无误 。
【腾讯进一步拥抱开源:主导Apache社区新一代分布式存储系统Ozone 1.0.0发布】除了1000个节点集群的测试 , 1.0.0版本还进行10亿个元数据对象的测试和优化 , 进一步解决长期困扰HDFS的大量小文件问题 。 目前Ozone1.0.0能够轻松支持10亿个10KB小对象的写入 , 同时元数据节点内存使用不超过64GB 。
为了确保Ozone和Hive、Spark、Impala等计算框架的无缝对接 , Ozone1.0.0进行了和HiveLLAP、Spark以及Impala的集成测试 。 TPC-DS的测试表明 , 在100GB和1TB两种数据量大小下 , Ozone总体比HDFS有3.5%的优势 。
经过不断的测试和优化 , 升级后的Ozone1.0.0在版本功能上有了质的跨越 。 除了支持HadoopCompatibleFileSystem、Hadoop2.x以及Hadoop3.x环境 , Ozone1.0.0还兼容Hadoop生态的Kerberos认证体系 , 支持数据的用户无感知加密存放和Ranger授权集成、GDPR“RighttoErasure”以及网络构架感知 。
未来 , 腾讯云大数据还将发挥自身技术优势和积累 , 在Ozone的基础上开发基于SCM的新一代高性能分布式文件系统 , 并持续推进Ozone在更多腾讯内外部业务的实践落地 , 部署更大规模的生产集群 。 同时 , 进一步拥抱开源 , 深度参与Hadoop社区 , 提高Ozone的可靠性、稳定性和性能 , 将其打造成新一代大数据文件和对象混合存储系统 。
值得一提的是 , 腾讯大数据团队除了在Ozone项目上的贡献之外 , 近年来在开源领域的贡献正在逐步加速 , 目前已完成了大数据核心能力全开源 。 同时 , 还结合实际业务场景推动开源技术加速落地 , 通过技术实践和创新持续回馈社区贡献开源 。 在Apache基金会的大数据项目上 , 腾讯已经为主流的Hadoop、Spark、Flink等项目贡献了大量的特性和patch 。


    推荐阅读