「用户故事」 从 Thanos 到 GreptimeDB,我们实现了 Prometheus 高效长期存储
随着 GreptimeDB 逐渐成为一款强大的开源时序数据库,越来越多的用户和我们分享了他们从其他现有数据库解决方案迁移到 GreptimeDB 的故事。对于企业来说,进行数据基础设施的迁移是一个复杂且重要的决定,因此,许多用户想更了解这一过程的真实体验,以及切换到 GreptimeDB 后带来的实际好处。为此,我们采访了 DeepXplore 的创始人,使用 GreptimeDB 之前,他使用 Thanos 进行时序数据管理,但是遇到了一些卡点和挑战。
DeepXplore:https://deepxplore.io/
(图 1 :Stephan Stiefel, CEO @ DeepXplore)
下文是翻译后的访谈内容,以便读者更清晰地了解他的迁移经历。
我和我的团队正在构建 DeepXplore,这是一家专注于 AI 驱动的性能测试自动化的科技初创公司。
在迅速变化的软件开发领域,性能测试通常是瓶颈,它既复杂又耗时,还难以被自动化。我们正致力于开发一种创新的 AI 驱动解决方案,简化测试流程,加速问题发现和解决。我们的目标是让性能测试变得更智能、更高效,甚至具有预测性,从而为软件质量保障设立新的标杆。
一直以来,我对通过 DevOps、GitOps 和容器化技术实现自动化充满热情。但当我们追求更高效的解决方案时,我们面临着一个重大挑战:如何高效地管理 Prometheus 的长期数据存储。
我们的 AI 模型训练依赖于 Prometheus 的长期数据。起初,我们使用 Thanos 管理这些数据,但遇到了许多问题,在调研了市面上多种数据存储方案后,我们最终决定切换到 GreptimeDB。接下来,我将分享我们选择 GreptimeDB 的原因及迁移的整个过程。
Thanos 的痛点
作为一名拥有十多年一线研发经验的资深 DevOps 工程师,我曾大量使用过 Thanos 用于 Prometheus 数据的长期存储。虽然 Thanos 功能强大,但在 Kubernetes 环境中使用时也带来了一系列挑战,特别是在集群的安装和维护上,过程往往复杂且耗时,并且需要较大的运维成本。
(图 2 :Thanos 架构)
我们希望将精力从管理基础设施转移到更重要的工作上,也就是开发和扩展产品,与其把时间和精力浪费在维护 Thanos 上,不如投入到创新和为客户打造新功能上,以提升用户体验,这促使我们去寻找更高效的替代方案。
为什么选择 GreptimeDB
几年前,我在观看某投资机构展示的项目企划时,首次接触到了 GreptimeDB。GreptimeDB 专注于解决时序数据长期存储和分析的垂直市场需求,尤其是在 Prometheus 长期存储解决方案方面,给我留下了深刻印象。
GreptimeDB 的简单性和灵活性,以及非常流畅的安装过程,让它立刻从一众解决方案中脱颖而出。与 Thanos 相比,GreptimeDB 的运维开销大大减少,尤其是通过 GreptimeDB Operator 实现的管理功能,正好符合我们的需求。因此,我决定更深入地了解 GreptimeDB,并开始数据迁移以进行试用。
GreptimeDB Operator: https://github.com/GreptimeTeam/greptimedb-operator
(图 3 :GreptimeDB 架构)
迁移历程
当我们决定尝试 GreptimeDB 时,起初我曾担心可能会遇到停机或复杂的集成问题。然而,GreptimeDB 很顺利地融入了我们的现有基础设施。只需将 Grafana Alloy 中的远程写入 URL 替换为 GreptimeDB 的端点,整个过程非常简单。使用 PromQL 查询 Prometheus 数据的服务同样无需额外调整,只需更换端点即可。
编者注: GreptimeDB 完全兼容 Prometheus Remote Storage 协议。
经过一些配置微调(如表分区和缓存优化),GreptimeDB 的性能超出了我们的预期。此前在 Thanos 上运行缓慢的查询,现在在 GreptimeDB 上大幅提速。
GreptimeDB 超出预期的意外惊喜
整个迁移到 GreptimeDB 的过程比预期顺利,最终它成为了一个功能强大且高效的 Prometheus 指标长期存储解决方案。
以下是我们在使用 GreptimeDB 过程中的一些惊喜时刻:
简化的设置和维护:与 Thanos 相比,GreptimeDB 的安装和集群管理过程更加简便。GreptimeDB 依赖的组件更少——仅需 etcd 和可选的 Kafka,降低了我们基础设施的复杂性。通过 GreptimeDB Operator,我们简化了集群维护和升级工作。这种简化让团队可以专注于核心产品功能,而不必花费大量时间管理存储后台。
出色的查询性能:通过少量配置调整,GreptimeDB 提供了卓越的查询性能,成为 Prometheus 长期存储解决方案领域中的强大竞争者。
对象存储集成:GreptimeDB 支持对象存储,消除了传统数据备份的繁琐操作,显著降低了运维成本。我们只需备份小体积的 etcd 数据即可,简化了备份流程。
优秀的技术支持:GreptimeDB 团队为我们提供了卓越的技术支持,帮助我们优化性能、扩展集群,使得整个迁移过程更加顺畅。
对于那些在管理大型 Thanos 集群时遇到复杂问题的团队来说,GreptimeDB 是一个极具吸引力的替代方案。它不仅简化了安装和维护流程,还为 Prometheus 的长期存储带来了卓越的性能表现。
尽管 GreptimeDB 仍是一个相对年轻的项目,但它已经展现出巨大的潜力,期待 GreptimeDB 在未来持续发展。
关于 Greptime
Greptime 格睿科技专注于为可观测、物联网及车联网等领域提供实时、高效的数据存储和分析服务,帮助客户挖掘数据的深层价值。目前基于云原生的时序数据库 GreptimeDB 已经衍生出多款适合不同用户的解决方案,更多信息或 demo 展示请联系下方小助手(微信号:greptime)。
欢迎对开源感兴趣的朋友们参与贡献和讨论,从带有 good first issue 标签的 issue 开始你的开源之旅吧~期待在开源社群里遇见你!添加小助手微信即可加入“技术交流群”与志同道合的朋友们面对面交流哦~
Star us on GitHub Now: https://github.com/GreptimeTeam/greptimedb
Twitter: https://twitter.com/Greptime
Slack: https://greptime.com/slack
评论