我们如何构建 ClickHouse 内部的数据仓库【Part1】

图片

本文字数:7791;估计阅读时间:20 分钟

作者:Dmitry Pavlov

本文在公众号【ClickHouseInc】首发

图片

在 ClickHouse,我们的使命是为客户和用户提供一个高性能的云分析数据库,既用于内部分析,也面向客户的分析需求。ClickHouse Cloud 让客户能够存储和处理海量数据,帮助他们在决策中依赖数据而非假设。对如今的成功企业来说,基于事实做出决策至关重要。

同样,我们的团队在内部也遵循这一理念。开发和运营我们的云数据库产品会生成大量数据,这些数据用于容量规划、定价、深入了解客户需求和财务报告。我们目前处理来自数十个数据源的数百TB数据,服务约一百名 BI 和临时查询用户……正如你所猜的,我们也是用 ClickHouse Cloud 来完成这些工作的 :)

在这篇文章中,我将分享我们是如何构建内部数据仓库(DWH)的,介绍所使用的技术栈,以及未来几个月内 DWH 的发展方向。

DWH 的需求和数据源

我们于 2022 年 5 月发布了 ClickHouse Cloud 私有预览版,同时意识到需要更深入地了解客户的使用情况:他们如何使用我们的服务,遇到了哪些挑战,我们如何为他们提供帮助,并制定合理的定价方案。为此,我们需要整合多个内部数据源,包括数据平面 (Data Plane),负责管理客户的数据库节点;控制平面 (Control Plane),负责客户界面和数据库操作;以及 AWS 计费,提供我们运行客户工作负载的成本数据。

在早期阶段,产品副总裁 Tanya Bragin 曾一度通过 Excel 每日手动分析客户的工作负载。作为一名前数据仓库架构师,我看到这种情况后决定打造一个内部数据仓库系统,从而诞生了第一个版本的概念。

我们在设计 DWH 时,目标是满足内部各团队的关键需求,以下是部分任务列表:

内部团队 任务
产品团队 跟踪转换率、留存率、功能使用、服务数量和规模,发现最常见的问题,并进行深入的临时分析。
运营团队 跟踪收入预估,并为公司大部分团队提供 Salesforce 数据的只读访问权限。
销售团队 查看客户的设置与使用情况:服务数量、数据量、常见问题等。
工程团队 优化自动扩展,跟踪查询错误率和数据库功能的使用情况。
支持团队 查看客户的设置:服务数量、使用情况、数据量等。
市场团队 跟踪漏斗顶部的转换率、客户获取成本及其他营销指标。
成本优化团队 分析云服务提供商 (CSP) 的成本,并主动优化 CSP 的使用承诺。
CI-CD 团队 监控 CI-CD 成本。

请注意:在内部数据仓库中,我们不会收集、存储或处理客户的任何数据(大部分是加密的),例如表数据、查询文本、网络数据等。我们只收集查询相关的元信息,如使用的函数列表、查询运行时间、内存使用情况等,而不会涉及查询数据或文本内容。

为了实现这一目标,我们计划从数十个数据源中摄取数据,主要包括以下内容:

数据源 类型与大小 数据内容
控制平面 (Control Plane)  DocumentDB ~5 个集合,每小时约 500 Mb 包含数据库服务的元信息,如类型
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值