1. 背景
目前,在数据仓库领域,Hadoop已经是行业标准。包括 HDFS、MapReduce、Hive、Hbase、Impala、Spark 等等 非常多的组件,这些组件各司其职,相得益彰。但是,Hadoop生态的技术组件显得臃肿和复杂、且时效性也不强。
在这个背景下,Click House有了自己的用武之地。
OLAP(多维数据分析)是一个很成熟的技术了。 常见的OLAP的架构包含三类:
ROLAP(Relational OLAP,关系型OLAP)
MOLAP(Multidimensional OLAP,多维型OLAP)
HOLAP(Hybrid OLAP,混合架构的OLAP)
ROLAP是传统关系型数据模型建模,直接使用SQL语句对数据进行GROUP BY聚合。这种方式最为简洁、灵活。但是问题也显而易见,就是数据量大时,查询过程将耗时巨大。
MOLAP是以空间换时间的优化方式,类似于Kylin这类产品,预计算Cube,实现毫秒级的查询反馈。而这种方式问题也很明显,如果维度较多很容易造成数据膨胀爆炸,消耗大量的计算和存储资源。同时,数据在修改时,需要消耗大量精力做数据同步。
HOLAP是混合使用上边两种方式。
通过分析发现,上边几种方式都有自己的弱点,能否解决呢 ? ClickHouse就在解决这两个问题时应运而生。
2. 安装ClickHouse
2.1 tar.gz方式安装生产
2.2 测试安装成果
安装地址 : 120.92.35.156 (Local IP): 10.1.0.41
clickhouse的主站 : https://clickhouse.com/
tgz安装包的下载地址 : https://repo.yandex.ru/clickhouse/tgz/
安装这几个文件就行,解压执行脚本 :
-rw-r--r--@ 1 maning staff 125941 1 10 14:13 clickhouse-client-20.10.2.20.tgz
-rw-r--r--@ 1 maning staff 116855630 1 10 14:27 clickhouse-common-static-20.10.2.20.tgz
-rwxrwxrwx 1 maning staff 501580516 1 10 15:52 clickhouse-common-static-dbg-20.10.2.20.tgz
-rw-r--r--@ 1 maning staff 144091 1 10 14:27 clickhouse-server-20.10.2.20.tgz
# 测试安装完成,给出clickhouse的命令集合:
$ clickhouse --help
Use one of the following commands:
clickhouse local [args]
clickhouse client [args]
clickhouse benchmark [args]
clickhouse server [args]
clickhouse extract-from-config [args]
clickhouse compressor [args]
clickhouse format [args]
clickhouse copier [args]
clickhouse obfuscator [args]
clickhouse git-import [args]
clickhouse keeper [args]
clickhouse keeper-converter [args]
clickhouse install [args]
clickhouse start [args]
clickhouse stop [args]
clickhouse status [args]
clickhouse restart [args]
clickhouse static-files-disk-uploader [args]
clickhouse hash-binary [args]
2.2.1 常见重要的目录 :
执行目录,例如clickhouse命令在目录 usr/bin下。 /usr/bin/clickhouse
配置文件位置: /etc/clickhouse-server/
日志文件的位置 :/var/log/clickhouse-server
数据的存储目录 :/var/lib/clickhouse/data /var/lib/clickhouse/metadata
3.clickhouse使用:
创建数据库、展示数据库 :
dev-service :) create database core;
CREATE DATABASE core
Query id: 279c5c73-abb3-4cec-a0cf-fdd1d9b9eddb
Ok.
0 rows in set. Elapsed: 0.009 sec.
dev-service :) show create database core;
SHOW CREATE DATABASE core
Query id: aea587a2-6eab-417b-bf15-0b900f42f652
┌─statement───────────────────────────┐
│ CREATE DATABASE core
ENGINE = Atomic │
└─────────────────────────────────────┘
1 rows in set. Elapsed: 0.002 sec.