网易游戏大数据平台上云架构设计( 四 )


根据这些规则,我们会对数据执行压缩、合并、转换、归档、或删除等不同的生命周期管理操作,并将它们分发到调度器去执行 。数据生命周期管理工具 BTS 提供了以下能力:

  • 数据重组织,将小文件合并为大文件,优化 EC 存储的效率和 namenode 压力;
  • 表存储和压缩方式的转换:异步将表从 Text 存储格式转换为 ORC 或 Parquet 存储格式,并将压缩方式从 None 或 SnAppy 转换为 ZSTD,可以提高存储和性能效率 。BTS 支持按分区进行异步表转换;
  • 异构数据迁移,将数据异步在不同架构的存储之间迁移,为数据分层提供组织能力 。
存储分层架构我们简单地分为三层:
性能最好的是 HDFS on JuiceFS(热),3 副本;
其次是 HDFS on JuiceFS EC 的模式(温热)1.5 副本;
再次是 Alluxio on S3(低频冷数据)1 副本;
在所有数据消亡之前,它们都会被归档到 Alluxio on S3 并变为单副本 。
网易游戏大数据平台上云架构设计

文章插图
(存储分层架构)目前,数据生命周期治理效果如下:
  • 60% 冷, 30% 温热, 10% 热;
  • 平均的副本数 (70% * 1 + 20% * 1.5 + 10% * 3) = 1.3 在归档这样对性能要求不高的场景,我们能够实现约 70% 的数据 。使用 EC 副本时,大约 20% 的数据,而使用三副本时约为 10% 的 。我们整体上控制了副本的数量,平均副本数维持在约 1.3 个 。
03. 出海新架构的上线效果
在测试中,JuiceFS 在大文件的读写方面能够达到相当高的带宽 。特别是在多线程模型下,大文件读取的带宽接近客户端的网卡带宽上限 。
在小文件场景下,随机写入的 IOPS 性能较好(得益于 gp3 磁盘作为缓存),而随机读的 IOPS 性能相比之下较低,大约差了 5 倍 。
网易游戏大数据平台上云架构设计

文章插图
(JuiceFS 社区版读写性能测试结果)EBS 方案与 JuiceFS+S3 方案在业务实测的对比,测试用例为我们生产环境下的业务 SQL,可以看出 JuiceFS+S3 基本与 EBS 差别不大,部分 SQL 甚至更优 。所以 JuiceFS+S3 能够替换掉全量 EBS  。
网易游戏大数据平台上云架构设计

文章插图
(性能测试:EBS vs JuiceFS+S3)使用基于 JuiceFS 的 S3+EBS 混合分层的存算分离方案替换原来的 EBS 方案,通过数据治理和数据分层,从原来的 Hadoop 三副本的机制下降到平均 1.3 个副本,节省 55% 的多副本成本,整体存储成本下降 72.5% 。
网易游戏大数据平台上云架构设计

文章插图
(成本对比:EBS+JuiceFS+S3 vs EBS)通过智能动态伸缩实现了 85% 集群使用率和使用 95% 的 Spot 实例替换了按需节点,总体计算成本对比优化前优化超过 80%
网易游戏大数据平台上云架构设计

文章插图
(Yarn 队列 Allocated 内存监控)04. 总结与展望:迈向云原生
相比原生的 JuiceFS 方案,Hadoop+JuiceFS 使用额外的副本实现了储性能优化和实现兼容性与高可用的支持 。DN 只写一个副本的方案, 依赖 JuiceFS 在可靠性上的迭代优化 。
虽然已经在不同云上实现一套多云兼容、对比 EMR 更好的方案,但是对于混合多云和云原生的方案还需要更多的迭代 。
对于未来大数据云原生场景的展望,目前我们采取的解决方案并非终极版本,而是一个过渡性方案,旨在解决兼容性和成本问题 。未来,我们计划采取以下措施:
推进业务向更云原生的方案迁移,实现 Hadoop 环境的解耦,并将数据湖和云上计算紧密结合在一体 。
推动更高层次的混合多云计算和混合存储方案,实现真正的整合,而不仅仅是现在的兼容性 。这将为上层业务部门带来更多的价值和灵活性 。
作者介绍
柯维鸿,网易互娱数据与平台服务部、数据服务组离线业务负责人 。负责离线数据平台的整体构建和技术演进,提供数据治理、存储、查询和上层数据产品构建,支撑网易互娱游戏数据分析业务 。QCon 广州 2023 明星讲师 。
关于网易互娱:网易 2001 年正式成立在线游戏事业部,经过 20 多年的快速发展,网易已跻身全球七大游戏公司之一 。自 2018 年以来,网易游戏全球影响力进一步提升,多次登顶中国发行商出海收入排行榜首 。




推荐阅读