ClickHouse是什么?ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。由Yandex公司从一个自身开发的专门用于聚合数据的系统Metrage发展而来。 clickHouse以卓越的查询性能著称,目前在大数据的存储和分析领域有广泛应用。ClickHouse不单是一个数据库, 它是一个数据库管理系统。因为它允许在运行时创建表和数据库、加载数据和运行查询,而无需重新配置或重启服务。列式数据库是以列相关存储架构进行数据存储的数据库,主要适合于批量数据处理和即时查询。列式数据库把一列中的数据值串在一起存储起来,然后再存储下一列的数据。本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
在传统的行式数据库系统中,把一行中的数据值串在一起存储起来,然后再存储下一行的数据。数据存储顺序如下图,处于同一行中的数据总是被物理的存储在一起。常见的行式数据库系统有:MySQL、Postgres和MS SQL Server。本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
常见的列式数据库有: Vertica、 Paraccel (Actian Matrix,Amazon Redshift)、 Sybase IQ、 Exasol、 Infobright、 InfiniDB、 MonetDB (VectorWise, Actian Vector)、 LucidDB、 SAP HANA、 Google Dremel、 Google PowerDrill、 Druid、 kdb+。本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
OLAP联机分析场景的关键特征
绝大多数是读请求
数据以相当大的批次(> 1000行)更新,而不是单行更新;或者根本没有更新。
已添加到数据库的数据不能修改。
对于读取,从数据库中提取相当多的行,但只提取列的一小部分。
宽表,即每个表包含着大量的列
查询相对较少(通常每台服务器每秒查询数百次或更少)
对于简单查询,允许延迟大约50毫秒
列中的数据相对较小:数字和短字符串(例如,每个URL 60个字节)
处理单个查询时需要高吞吐量(每台服务器每秒可达数十亿行)
事务不是必须的
对数据一致性要求低
每个查询有一个大表。除了他以外,其他的都很小。本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
查询结果明显小于源数据。换句话说,数据经过过滤或聚合,因此结果适合于单个服务器的RAM中。本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
ClickHouse是真正的列式数据库管理系统,数据压缩,数据的磁盘存储,多核心并行处理,多服务器分布式处理,支持SQL,ClickHouse可以在任何具有x86_64,AArch64或PowerPC64LE CPU架构的Linux,FreeBSD或Mac OS X上运行。官方预构建的二进制文件通常针对x86_64进行编译,并利用SSE 4.2指令集,因此,除非另有说明,支持它的CPU使用将成为额外的系统需求。要在不支持SSE 4.2或AArch64,PowerPC64LE架构的处理器上运行ClickHouse,应该通过适当的配置调整从源代码构建ClickHouse。本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
下面是检查当前CPU是否支持SSE 4.2的命令:本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
$ grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"本文地址:http://www.04007.cn/article/1054.html,未经许可,不得转载.
本文地址:http://www.04007.cn/article/1054.html 未经许可,不得转载. 手机访问本页请扫描右下方二维码.
![]() |
![]() |
手机扫码直接打开本页面 |