podman安装clickhouse

podman安装clickhouse

1.什么是ClickHouse

ClickHouse 是一款开源列式存储 OLAP 数据库,由 Yandex 开发,主打海量数据实时分析。它采用列式存储、向量化执行引擎、数据分片与并行计算,对聚合、过滤、统计类查询性能极强,适合日志、埋点、监控、金融流水等大宽表场景。支持 SQL 语法,兼容丰富数据格式,可批量高速写入。它不擅长高频单行更新与事务,优先面向读多写少的分析业务,常搭配 Kafka 做实时数仓。可单机、容器或集群部署,资源开销可控,广泛用于大数据实时看板、指标统计、用户行为分析。

2. 安装

本文安装的是clickhouse 26.9.19.9

2.1.拉取镜像

bash 复制代码
# 拉取镜像
podman pull clickhouse/clickhouse-server

2.2.创建容器

bash 复制代码
# 创建本地存放 clickhouse 数据、日志、配置目录
# 创建宿主机目录,将容器内的东西映射出来

mkdir -p /home/wengad/data/clickhouse/{data,logs,config.d,users.d}

# 创建容器
podman run -d \
  --name clickhouse \
  -p 8123:8123 \
  -p 9020:9000 \
  --ulimit nofile=262144:262144 \
  --cap-add=SYS_NICE \
  --cap-add=IPC_LOCK \
  -e CLICKHOUSE_PASSWORD="Click_HK999a" \
  -e CLICKHOUSE_USER=default \
  -v /home/wengad/data/clickhouse/data:/var/lib/clickhouse:Z \
  -v /home/wengad/data/clickhouse/logs:/var/log/clickhouse-server:Z \
  -v /home/wengad/data/clickhouse/config.d:/etc/clickhouse-server/config.d:Z \
  -v /home/wengad/data/clickhouse/users.d:/etc/clickhouse-server/users.d:Z \
  clickhouse/clickhouse-server

2.3.修改监听

在宿主机配置目录 /home/wengad/data/clickhouse/config.d/listen.xml
0.0.0.0

bash 复制代码
# 重启容器
podman restart clickhouse
bash 复制代码
# 测试下
curl http://127.0.0.1:8123 -u default:Click_HK999a

不修改,有可能通过dbeaver会报如下错误:

bash 复制代码
SQL 错误 [HY000]: Query request failed (attempt: 1, duration: 185ms, queryId: a30ce82a-b191-45ed-80bf-de09f9bbb31e)
Query request failed (attempt: 1, duration: 185ms, queryId: a30ce82a-b191-45ed-80bf-de09f9bbb31e)
Connection reset

2.4.DBeaver连接

报错:Invalid LZ4 magic byte: '-112'

SQL 错误 HY000: Invalid LZ4 magic byte: '-112'

Invalid LZ4 magic byte: '-112'

解决:关闭驱动侧 LZ4 压缩

2.5.WEB端连接

3.实践(表命名)

3.1.语法硬性规则

  1. 无引号表名正则:^[a-zA-Z_][a-zA-Z0-9_]*$,只能字母、下划线开头,后面字母 / 数字 / 下划线;不能数字开头、不能空格、中文、点、横杠、特殊符号ClickHouse
  2. 大小写敏感 :user_log 和 User_Log 是两张不同表
  3. 禁止直接使用 SQL 关键字;非要用关键字做表名,必须用 \`` 或 "` 包裹
  4. 带引号可以支持特殊字符,但不推荐,容易在 BI、JDBC 同步踩坑

3.2.工程推荐命名规范

  1. 全部小写 + 下划线分隔(蛇形),规避 DBeaver、BI 工具自动大小写转换问题
  2. 语义前缀区分类型:
    • ods_:原始层、dwd_明细层、dws_汇总层
    • local_本地表、dist_分布式表、tmp_临时表
  3. 带上业务域:ods_app_click_log、dws_order_day_stats
  4. 禁止连续下划线,名字简洁,一般不超过 64 字符
  5. 不要用 system、numbers 这类内置系统表名

3.3.不推荐写法

UserLog(驼峰,大小写坑)、app-click(短横线)、app.click(点号)、1_user_log(数字开头)、中文表名

示例标准表名:ods_web_access_log、dws_user_pv_uv_di

相关推荐
Flynn Liang7 小时前
Apache Superset 重要特性详解(三):语义层 / 权限 / 缓存 / 嵌入的实战最佳实践(2026 版)
大数据·clickhouse·数据可视化·架构设计·superset·数据分析平台
陈年老古董8 天前
ClickHouse 单机搭建记录
hive·笔记·学习·clickhouse·硬件架构
java_logo10 天前
Docker 部署 DPanel:轻松搭建轻量容器管理平台
运维·docker·容器·podman·容器管理·dpanel·轩辕镜像
pjj1985412 天前
ClickHouse 与 Doris 数据库技术梳理:看懂分析型数据库
数据库·clickhouse
SelectDB技术团队12 天前
ClickHouse 支持存算分离吗?Doris 社区版原生存算分离怎么落地
数据库·clickhouse·云原生·开源·apache doris·技术选型·存算分层
SelectDB技术团队13 天前
ClickHouse SQL 好学吗?从 MySQL 迁移 Doris 的完整兼容验证
人工智能·sql·mysql·clickhouse·开源·apache doris·增量计算
喵了几个咪14 天前
GoWind UBA 拆解:把 Doris UNIQUE KEY 翻译成 ClickHouse——读数正确性对齐实录
开发语言·后端·clickhouse·微服务·golang·gowind
爱吃火鸡面呀14 天前
MySQL、ClickHouse、Doris、Hive、Spark SQL、Flink SQL 选型对比:优点、缺点与面试话术
hive·mysql·clickhouse
SelectDB技术团队17 天前
SelectDB 架构演进与 ClickHouse 迁移指南
大数据·数据库·clickhouse·云原生·架构·数据分析·apache doris
ClickHouseDB18 天前
使用 ClickHouse 与 Massive 构建实时市场数据应用
clickhouse