![]()
开源技术早已成为整个软件行业的基石和创新来源。开源技术的普惠性,有效降低了技术落地的门槛。ClickHouse 正是一款在大数据实时分析领域为大数据 OLAP 而生的优秀开源软件。
由于 ClickHouse 具有卓越的分析性能、极好的线性伸展和扩容性以及丰富的功能等,近些年,越来越多的企业开始将它作为实时分析引擎来使用。无论是在大数据领域还是在 DevOps 领域,只要涉及在线分析场景,ClickHouse 都能通过它那极致的性能占有一席之地。
ClickHouse 虽然年轻,但自开源以来,其社区一直保持着很高的活跃度,开发者与用户遍布全球各地。ClickHouse 是目前世界公认的 OLAP 数据库黑马,相信未来它会是大数据实时分析领域的主流选择。
![]()
ClickHouse 背后的研发团队是来自俄罗斯的 Yandex 公司。这是一家俄罗斯本土的互联网企业,于2011年在纳斯达克上市,它的核心产品是搜索引擎。根据最新的数据显示,Yandex 占据了本国47%以上的搜索市场,是现今世界上最大的俄语搜索引擎。Google 是它的直接竞争对手。
众所周知,在线搜索引擎的营收来源非常依赖流量和在线广告业务。所以,通常搜索引擎公司为了更好地帮助自身及用户分析网络流量,都会推出自家的在线流量分析产品,例如 Google 的Google Analytics、百度的百度统计。Yandex也不例外,Yandex.Metrica就是这样一款用于在线流量分析的产品(https://metrica.yandex.com)。
ClickHouse 就是在这样的产品背景下诞生的,伴随着 Yandex.Metrica 业务的发展,其底层架构历经四个阶段,一步一步最终形成了大家现在所看到的ClickHouse。纵观这四个阶段的发展,俨然是数据分析产品形态以及 OLAP 架构历史演进的缩影。通过了解这段演进过程,我们能够更透彻地了解 OLAP 面对的挑战,以及 ClickHouse 能够解决的问题。
![]()
ClickHouse 的初始设计目标是服务自己公司的一款名叫 Yandex.Metrica 的产品。Metrica 是一款 Web 流量分析工具,基于前方探针采集行为数据,然后进行一系列的数据分析,类似数据仓库的 OLAP 分析。而在采集数据的过程中,一次页面 click(点击),会产生一个 event(事件)。至此,整个系统的逻辑就十分清晰了,那就是基于页面的点击事件流,面向数据仓库进行 OLAP 分析。所以 ClickHouse 的全称是 Click Stream,Data WareHouse,简称ClickHouse,如图1所示。
![]()
![]()
因为 ClickHouse 在诞生之初是为了服务 Yandex 自家的 Web 流量分析产品Yandex.Metrica,所以在存储数据超过20万亿行的情况下,ClickHouse 做到了90%的查询都能够在1秒内返回的惊人之举。随后,ClickHouse 进一步被应用到 Yandex 内部大大小小数十个其他的分析场景中。可以说 ClickHouse 具备了人们对一款高性能 OLAP 数据库的美好向往,所以它基本能够胜任各种数据分析类的场景,并且随着数据体量的增大,它的优势也会变得越为明显。
ClickHouse 非常适用于商业智能领域(也就是我们所说的 BI 领域),除此之外,它也能够被广泛应用于广告流量、Web、App流量、电信、金融、电子商务、信息安全、网络游戏、物联网等众多其他领域。
![]()
ClickHouse 作为一款高性能 OLAP 数据库,虽然足够优秀,但也不是万能的。我们不应该把它用于任何 OLTP 事务性操作的场景,因为它有以下几点不足。
-
-
不擅长根据主键按行粒度进行查询(虽然支持),故不应该把 ClickHouse当作Key-Value数据库使用。
-
这些弱点并不能视为 ClickHouse 的缺点,事实上其他同类高性能的 OLAP 数据库同样也不擅长上述的这些方面。因为对于一款 OLAP 数据库而言,上述这些能力并不是重点,只能说这是为了极致查询性能所做的权衡。
![]()
除了 Yandex 自己以外,ClickHouse 还被众多商业公司或研究组织成功地运用到了它们的生产环境。欧洲核子研究中心(CERN)将它用于保存强对撞机试验后记录下的数十亿事件的测量数据,并成功将先前查找数据的时间由几个小时缩短到几秒。著名的 CDN 服务厂商 CloudFlare 将 ClickHouse 用于 HTTP 的流量分析。国内的头条、阿里、腾讯和新浪等一众互联网公司对 ClickHouse 也都有涉猎。
由于 ClickHouse 具有卓越的分析性能、极好的线性伸展和扩容性以及丰富的功能等,近些年,越来越多的企业开始将它作为实时分析引擎来使用。无论是在大数据领域还是在 DevOps 领域,只要涉及在线分析场景,ClickHouse 都能通过它那极致的性能占有一席之地。国内第一本全方位介绍关于 ClickHouse 的专业技术书《ClickHouse原理解析与应用实战》,这本书从用户视角出发,剖析了 ClickHouse 的内部运行原理,并且对其功能特性进行了详细讲解。对于想了解 ClickHouse 的开发者和用户来说,这将会是一本很不错的学习指导书。
本文摘编于《ClickHouse原理解析与应用实战》,经出版方授权发布。
#欢迎来留言#
留言点赞数量最多的前三名
CSDN携手【机械工业出版社】送出
《ClickHouse原理解析与应用实战》一本
截至7月2日18:00点
ClickHouse贡献者之一,ClickHouse布道者,资深架构师,腾讯云最具价值专家TVP,开源爱好者, 十多年IT从业经验,对大数据领域主流技术与解决方案有深入研究,擅长分布式系统的架构设计与整合。曾主导过多款大数据平台级产品的规划、设计与研发工作,一线实战经验丰富。现就职于远光软件股份有限公司,任大数据事业部平台开发部总经理。
![]()
![]()
更多精彩推荐
☞好莱坞科幻新片《b》,钦定 AI 机器人出演女主角!
☞外交部回应印度封杀中国APP;老干妈称从未与腾讯有过合作;Linux Mint 20 发布 | 极客头条
☞厉害!国内大学生计算机编程第一人,一人挑战一个队,百度最年轻 T10,现创业自动驾驶
☞牛!Python 也能实现图像姿态识别溺水行为了!
☞浅谈分布式存储中的网络通信
☞Balancer因通缩代币STA遭遇闪电贷攻击,价值50万美元资产被黑