MySQL 到 TiDB:vivo 的 Hive Metastore 横向扩展之路

💡 原文中文,约9300字,阅读约需22分钟。
📝

内容提要

本文介绍了vivo在大数据元数据服务横向扩展方案上的探索历程,选择TiDB方案替代原MySQL存储引擎,TiDB方案在性能表现、水平扩展、运维复杂度及机器成本上都优于Waggle Dance方案。作者分享了整个扩展方案流程、实施遇到的问题及解决方案,以及在使用TiDB过程中遇到的一些问题及解决方案。最后,作者总结了使用TiDB的经验,并表示将持续关注行业内的变动,吸收更多优秀经验应用到生产环境中来。

🎯

关键要点

  • vivo在大数据元数据服务横向扩展方案上进行了探索,选择TiDB替代MySQL存储引擎。
  • TiDB在性能、水平扩展、运维复杂度和机器成本上优于Waggle Dance方案。
  • HMS存储的元数据随着业务发展增长到亿级别,MySQL面临性能瓶颈。
  • 为解决HMS性能问题,团队调研了多种横向扩展方案,最终选择了TiDB。
  • Waggle Dance方案通过多个MySQL实例分担压力,但TiDB方案在多个维度上表现更优。
  • TiDB支持在线事务处理与在线分析处理,具备高可用性和水平扩展能力。
  • 切换到TiDB时需完全停服HMS服务,并确保数据一致性。
  • TiDB在HQL兼容性、查询性能和资源使用上表现优异。
  • 在切换过程中遇到主键冲突、索引选择、内存突增等问题,并提出了解决方案。
  • 通过优化查询和调整配置,TiDB的性能得到了显著提升。
  • 总结了TiDB的使用经验,表示将持续关注行业变动并吸收优秀经验。
➡️

继续阅读