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的使用经验,表示将持续关注行业变动并吸收优秀经验。
➡️