ClickHouse服务部署
1、创建密文卷
创建clickhouse-pwd
密文卷、通过密文卷来配置CLICKHOUSE_ADMIN_PASSWORD
属性值
2、服务部署
部署服务,配置属性参考如下:
名称:clickhouse (自定义,该名称同时做为服务名)
Docker镜像:172.16.102.2:5000/library/bitnami/clickhouse:23.8.9
容器端口:8123(http端口)
环境变量:
CLICKHOUSE_ADMIN_USER:root(默认为
default
账号,可自行修改)CLICKHOUSE_ADMIN_PASSWORD:xxxx(root账号密码)
- 存储卷配置
配置PVC:
卷名:clickhouse-pvc
容器路径:/bitnami/clickhouse
- 配置完
启动
,验证是否成功
3、验证访问
通过dbeaver
或其他客户端工具进行连接测试,端口为8123
暴露出去的nodeport端口
4、基本操作
clickhouse的大部分操作都保持与标准的SQL一致,详细的参考官方文档
-- 创建DATABASE
CREATE DATABASE IF NOT EXISTS dcdw
-- 创建表
CREATE TABLE dcdw.my_first_table
(
user_id UInt32,
message String,
timestamp DateTime,
metric Float32
)
ENGINE = MergeTree()
PRIMARY KEY (user_id, timestamp)
-- 插入数据
INSERT INTO dcdw.my_first_table (user_id, message, timestamp, metric) VALUES
(101, 'Hello, ClickHouse!', now(), -1.0 ),
(102, 'Insert a lot of rows per batch', yesterday(), 1.41421 ),
(102, 'Sort your data based on your commonly-used queries', today(), 2.718 ),
(101, 'Granules are the smallest chunks of data read', now() + 5, 3.14159 )
-- 查询(跟sql查询一样)
SELECT * FROM dcdw.my_first_table
-- 删除表
DROP TABLE `dcdw`.my_first_table;
- 字段与类型说明
user_id
: UInt32
表示一个32位无符号整数;
message
:String
表示一个字符串数据类型,它取代了像VARCHAR, BLOB, CLOB和其他来自其他数据库系统的类型;
timestamp
: DateTime
表示一个DateTime值,它表示一个即时的时间
metric
: Float32
表示一个32位浮点数