ClickHouse快速入门
1 安装ClickHouse(单机)
操作步骤
-
安装yum-utils工具包
yum install yum-utils
-
添加ClickHouse的yum源
yum-config-manager --add-repo https://repo.yandex.ru/clickhouse/rpm/stable/x86_64
-
安装ClickHouse的服务端和客户端
yum install -y clickhouse-server clickhouse-client
如果安装时出现
warning: rpmts_HdrFromFdno: Header V4 RSA/SHA1 Signature, key ID e0c56bd4: NOKEY
错误导致无法安装,需要在安装命令中添加—nogpgcheck
来解决。yum install -y clickhouse-server clickhouse-client --nogpgcheck
-
关于安装的说明
默认的配置文件路径是:
/etc/clickhouse-server/
默认的日志文件路径是:/var/log/clickhouse-server/
-
查看ClickHouse的版本信息
# 进入客户端 clickhouse-client -m --host 主机名 --user 用户名 --password 密码 # 查询版本 select version();
2 在命令行中操作ClickHouse
ClickHouse安装包中提供了clickhouse-client工具,这个客户端在运行shell环境中,使用TCP方式连接clickhouse-server服务。要运行该客户端工具可以选择使用交互式与非交互式(批量)两种模式:使用非交互式查询时需要指定--query
参数;在交互模式下则需要注意是否使用—mutiline
参数来开启多行模式。
clickhouse-client提供了很多参数可供使用,常用的参数如下表:
参数 | 介绍 |
---|---|
–host,-h | 服务端的 host 名称, 默认是 ‘localhost’。 您可以选择使用 host 名称或者 IPv4 或 IPv6 地址。 |
–port | 连接服务端的端口,默认值9000 |
–user,-u | 访问的用户名,默认default |
–password | 访问用户的密码,默认空字符串 |
–query,-q | 非交互模式下的查询语句 |
–database,-d | 连接的数据库,默认是default |
–multiline,-m | 使用多行模式,在多行模式下,回车键仅表示换行。默认不使用多行模式。 |
–multiquery,-n | 使用”,”分割的多个查询,仅在非交互模式下有效 |
–format, -f | 使用指定格式化输出结果 |
–vertical, -E | 使用垂直格式输出,即每个值使用一行显示 |
–time, -t | 打印查询时间到stderr中 |
–stacktrace | 如果出现异常,会打印堆栈跟踪信息 |
–config-file | 使用指定配置文件 |
–use_client_time_zone | 使用服务端时区 |
quit,exit | 表示退出客户端 |
Ctrl+D,Ctrl+C | 表示退出客户端 |
登录
clickhouse-client -m --host 主机名 --user 用户名 --password 密码
3 样例数据
以航班数据为例
创建ontime表:
CREATE TABLE `ontime` (
`Year` UInt16,
`Quarter` UInt8,
`Month` UInt8,
`DayofMonth` UInt8,
`DayOfWeek` UInt8,
`FlightDate` Date,
`UniqueCarrier` FixedString(7),
`AirlineID` Int32,
`Carrier` FixedString(2),
`TailNum` String,
`FlightNum` String,
`OriginAirportID` Int32,
`OriginAirportSeqID` Int32,
`OriginCityMarketID` Int32,
`Origin` FixedString(5),
`OriginCityName` String,
`OriginState` FixedString(2),
`OriginStateFips` String,
`OriginStateName` String,