Docker安装Clickhouse详细教程

简介

ClickHouse是一种列式数据库管理系统,专门用于高性能数据分析和数据仓库应用。它是一个开源的数据库系统,最初由俄罗斯搜索引擎公司Yandex开发,用于满足大规模数据分析和报告的需求。

特点

  • 开源的列式存储数据库管理系统,支持线性扩展,简单方便,高可靠性
  • 容错跑分快:可处理的数据级别达到10亿级别
  • 功能多:支持数据统计分析各种场景,支持类SQL查询,异地复制部署

优点

  • 真正的面向列的DBMS,不是一个单一的数据库,它允许在运行时创建表和数据库、加载数据和运行查询,而无需重新配置和重新启动服务器
  • 使用数据压缩,提高了性能
  • 磁盘存储数据
  • 多核并行处理:多核多节点并行化大型查询
  • 在多个服务器上分布式处理:数据可以驻留在不同的分片上,每个分片都可以用于容错的一组副本,查询会在所有分片上进行处理
  • SQL支持:基本语法跟SQL语法兼容
  • 向量化引擎:数据不仅按列式存储,而且由矢量-列的部分进行处理,这使得开发者能够实现高CPU性能
  • 实时数据更新:为了快速执行对主键范围的查询,数据使用合并数(MergeTree)进行递增排序
  • 支持近似计算
  • 数据复制和对数据完整性的支持:使用异步多主复制,写入任何可用的副本后,数据将分发到所有剩余的副本。系统在不同的副本上保持相同的数据,数据在失败后自动恢复

缺点

  • 没有完整的事务支持,不支持Transaction
  • 缺少完整Update/Delete操作,缺少高频率、低延迟的修改或删除已存在数据的能力,仅用于批量删除或修改数据
  • 聚合结果必须小于一台机器的内存大小
  • 支持有限操作系统
  • 不适合Key-value存储,不支持Blob等文档型数据库

安装

1.创建目录

复制代码
#创建目录
mkdir -p /opt/clickhouse/conf /opt/clickhouse/data /opt/clickhouse/log

2.启动临时容器

复制代码
docker run --rm -d --name temp-clickhouse clickhouse/clickhouse-server

3.拷贝配置文件到主机

复制代码
docker cp temp-clickhouse:/etc/clickhouse-server/users.xml /opt/clickhouse/conf/users.xml
docker cp temp-clickhouse:/etc/clickhouse-server/config.xml /opt/clickhouse/conf/config.xml

4.编辑主机配置文件

复制代码
vim config.xml

增加如下内容

复制代码
   <listen_host>::1</listen_host>
   <listen_host>127.0.0.1</listen_host>

然后继续编辑

复制代码
vim users.xml 

增加密码配置(原来是空)

复制代码
<password>123456</password>

5.重启创建并启动容器

复制代码
docker run -d --name=clickhouse-server -p 8123:8123 -p 19000:9000 -v /opt/clickhouse/conf/config.xml:/etc/clickhouse-server/config.xml -v /opt/clickhouse/conf/users.xml:/etc/clickhouse-server/users.xml -v /opt/clickhouse/data:/var/lib/clickhouse clickhouse/clickhouse-server

体验

直接使用dbeaver链接即可

默认账户名是:default

示例:

相关推荐
honder试试19 小时前
Springboot实现Clickhouse连接池的配置和接口查询
spring boot·后端·clickhouse
Mr_wilson_liu20 小时前
通过DBeaver22.0.5 连接数据库ck(clickhouse)、pg(postgres)
数据库·clickhouse
波波仔863 天前
clickhouse表存储引擎
clickhouse·表存储引擎
波波仔863 天前
clickhouse存储和分区
clickhouse·排序·分区
波波仔863 天前
clickhouse insert与update区别
clickhouse·insert·update
波波仔863 天前
clickhouse简介
数据库·clickhouse
深色風信子3 天前
ClickHouse 快速入门
clickhouse·列式存储
波波仔863 天前
行存储与列存储的区别
数据库·clickhouse·行存储·列储存
吃喝不愁霸王餐APP开发者3 天前
霸王餐用户行为埋点:Kafka Connect+ClickHouse实时OLAP分析
分布式·clickhouse·kafka
honder试试4 天前
客户端连接Clickhouse连不上解决方案
java·clickhouse