印度金融科技公司 Juspay 使用 ClickHouse 为其端到端支付解决方案和实时商家仪表盘提供 A/B 测试和监控支持。Juspay 每天为亚马逊、谷歌和沃达丰等客户处理超过 5000 万笔交易,选择 ClickHouse 是因为它能够处理海量数据。
Juspay 已成为支付行业领域的先驱,始终推动着该领域的创新。Juspay 致力于简化商家的在线支付流程,充当支付提供商和商家系统之间的中间人。
为了确保企业拥有无缝的交易环境,Juspay 必须提供监控和分析服务,以保证支付系统按预期运行。Juspay 需要一个能够帮助他们做出数据驱动决策的解决方案。
面对众多商家及其不断变化的需求,Juspay 必须跟上频繁的发布节奏,通常每天发布多次,无论是分阶段发布还是全面发布。因此,他们需要一个监控解决方案,使他们能够保持快速的发布速度,同时确保最新发布不会影响正在运行的支付系统。
Juspay 使用 ClickHouse 改善 A/B 测试的历程
ClickHouse 被选中作为为 Juspay 的关键 A/B 测试和监控需求提供支持的解决方案。作为支付协调器,Juspay 有数千个与支付、支付网关和不同支付方式相关的参数。因此,新版本对各个维度的潜在影响是巨大的。
ClickHouse 使 Juspay 能够比较版本 A 和版本 B 之间的成功率百分比,并通过显示较低的成功率来确定较新版本是否性能不佳。在这种情况下,会进行回滚操作,这在预期新版本会提高性能但最终影响其他服务的情况下尤其有用。
传统的关联数据库由于 A/B 测试产生的海量数据而无法执行此级别的分析。这些测试涵盖过去七天的交易,每天产生的数据量约为 600GB,相当于大约 4TB。使用 ClickHouse,Juspay 可以按所有低基数字段的列进行分组,每天 5000 万笔交易可能最多包含 10,000 个维度。
使用 ClickHouse 进行 A/B 测试和监控
为了进行监控和 A/B 测试,Juspay 使用了 Kafka、ClickHouse 和 Grafana 的组合。他们在 Kafka 中监控活动日志并执行转换,然后利用 Kafka 队列通过 Kafka 引擎将数据传输到 ClickHouse。
Grafana 用于可视化和分析 A/B 测试数据
使用 ClickHouse 实现实时商家仪表盘
Juspay 还需要一个解决方案来为其商家提供实时分析和系统性能的实时视图。使用 ClickHouse,商家可以轻松跟踪其交易并实时监控其成功或失败状态。
ClickHouse 的架构涉及使用 bash 脚本 CRON 作业进行 ETL(提取、转换、加载)流程,将数据导入系统。然后使用这些数据创建用于实时分析的自定义仪表盘。
使用 ClickHouse 创建的商家实时分析仪表盘
切换到 ClickHouse 后运营成本降低 10 倍
Juspay 之前一直在使用 GCP 的 BigQuery,但数据扫描的成本迅速增加,每天超过一千美元。因此,为了降低成本,他们寻求了一种更具成本效益的解决方案。
通过将此工作负载切换到 ClickHouse,他们将运营成本降低了 10 倍。BigQuery 仍然用于某些类型的查询,例如,在报告特定 ID 以及需要对 ID 进行联接时。但是,对于所有聚合和实时分析,他们都使用 ClickHouse。ClickHouse 不仅以令人印象深刻的效率解决了他们的问题,而且与 BigQuery 相比,它还需要更少的基础设施投资。
“ClickHouse 以一小部分基础设施成本高效地解决了我们的大多数问题。这在我们的账面上是一个巨大的优势,”该项目软件开发工程师 Tamil Selvan 说道。
最大化 ClickHouse 的优势
ClickHouse 是一个高性能数据平台,提供汇总和视图,允许对原始数据进行受控访问。这有助于防止数据使用错误,例如联接高基数字段,并有效地管理资源。
“ClickHouse 具有许多优势;但是我们建议不要将其视为黑盒。虽然您可以运行任何类型的查询并获取数据,但最好以正确的方式使用 ClickHouse 以充分利用所有优势。如果您遵循文档,就不会出错,”Selvan 说道。
通过选择 ClickHouse,Juspay 能够降低运营成本并继续为其商家提供尽可能好的体验。ClickHouse 先进的数据处理能力和高效的成本结构使其成为明智之选。