下载PDF
ClickHouse > 实例探究 > Instabug 成功迁移到 ClickHouse 以增强 APM 性能
ClickHouse Logo

Instabug's Successful Migration to ClickHouse for Enhanced APM Performance

技术
  • 应用基础设施与中间件 - 数据可视化
  • 应用基础设施与中间件 - 数据库管理和存储
适用行业
  • 水泥
  • 建筑与基础设施
适用功能
  • 产品研发
  • 质量保证
用例
  • 基础设施检查
  • 时间敏感网络
服务
  • 数据科学服务
  • 测试与认证
挑战
Instabug 是一个 SDK,它提供了一套用于在整个移动应用程序开发生命周期中监控和调试性能问题的产品,它面临着性能指标的重大挑战。这些指标严重依赖于频繁且大量的事件,这给接收和有效存储这些事件带来了挑战。此外,性能事件的原始格式对用户来说没有用,需要大量的业务逻辑来进行查询和数据可视化。 Instabug 的后端规模庞大,API 平均每分钟约有 200 万个请求,每天有 TB 的数据进出其服务。在构建应用程序性能监控 (APM) 时,他们意识到这将是他们数据规模最大的产品。他们每天以每分钟约 200 万个事件的速度存储约 30 亿个事件。他们还必须提供复杂的数据可视化服务,这些可视化很大程度上依赖于过滤大量数据并快速计算复杂的聚合以获得用户体验。最初,他们像其他产品一样设计 APM,但遇到了 Elasticsearch 的性能问题,尤其是读取方面,而且写入速度也不够快,无法处理其负载。
关于客户
Instabug 是一个 SDK,提供了一套产品,用于在整个移动应用程序开发生命周期中监控、优先级排序和调试性能和稳定性问题。 Instabug SDK 提供崩溃报告和应用程序性能监控 (APM),允许用户监控应用程序性能的各个方面,例如崩溃、处理异常、网络故障、UI 挂起、启动和屏幕加载延迟,以及设置自定义跟踪的能力监视关键代码部分。 Instabug 还通过规则和警报引擎提供工作流程自动化,该引擎与 Jira、Opsgenie、Zendesk、Slack、Trello 等其他项目和事件管理工具集成。他们的后端规模很大,API 平均每分钟约有 200 万个请求,每天有 TB 的数据进出其服务。
解决方案
Instabug 决定尝试不同的数据存储,以寻找 APM 的 Elasticsearch 替代方案,并发现了 ClickHouse。在测试 ClickHouse 并发现其读写性能更好后,他们决定迁移到 ClickHouse。然而,他们无法冻结产品工作以迁移到新的数据存储,并且没有操作 ClickHouse 的经验,因此他们决定使代码和基础设施具有足够的通用性,以允许增量部署和实验。他们重构了代码以抽象处理数据存储,允许它根据一些动态提供的配置读取和写入不同的数据存储。这使他们能够将所有新数据写入 ClickHouse 和 Elasticsearch 以最大程度地减少迁移工作,让特定用户从 ClickHouse 写入/读取数据,而所有其他用户从 Elasticsearch 写入/读取数据,并为 Elasticsearch 和 ClickHouse 添加新功能。迁移到 ClickHouse 大约花了 5 个月的时间,他们在迁移过程中构建的可配置和多功能基础设施仍在使用中,允许他们运行多个集群并根据需要将不同的事件指标数据托管到不同的数据库或集群中。
运营影响
  • The migration to ClickHouse has significantly improved Instabug's operational efficiency. ClickHouse's columnar database design for heavy analytics matched Instabug's use case, enabling them to achieve much better response times than with Elasticsearch. ClickHouse's support for Materialized Views (MVs) was crucial for achieving good response times, as they never query the original raw tables but always read from MVs, which are much smaller in size and have the data already aggregated. ClickHouse's support for a family of MergeTree table engines, known for their good write throughput, was also crucial for handling their high write throughput. ClickHouse's data compression feature helped save at least 30% in disk space. The SQL-like query interface of ClickHouse made re-writing their Elasticsearch queries into ClickHouse easier. ClickHouse's aggregate functions also helped them write new features into ClickHouse. The migration to ClickHouse has been serving them well for almost a year and is expected to continue to serve them well in the future.
数量效益
  • Improved response times by 10x
  • Reduced storage requirements by 30%
  • Reduced the number of machines required, leading to significant cost savings

相关案例.

联系我们

欢迎与我们交流!

* Required
* Required
* Required
* Invalid email address
提交此表单,即表示您同意 IoT ONE 可以与您联系并分享洞察和营销信息。
不,谢谢,我不想收到来自 IoT ONE 的任何营销电子邮件。
提交

Thank you for your message!
We will contact you soon.