当前位置: 首页 > article >正文

Docker 部署 ClickHouse 教程

Docker 部署 ClickHouse 教程

背景
ClickHouse 是一个开源的列式数据库管理系统(DBMS),主要用于在线分析处理(OLAP)。它专为大数据的实时分析设计,支持高速的查询性能和高吞吐量。ClickHouse 以其高效的数据压缩技术和高性能的查询处理能力,广泛应用于大数据分析、日志处理、监控数据存储等场景。

ClickHouse 的主要特点:

  • 列式存储:
    ClickHouse 使用列式存储数据,优化了读取性能,尤其适合分析型查询。
    这种存储方式使得读取特定列的数据更加高效,特别是在执行大数据量的聚合、筛选等操作时。
  • 高性能:
    ClickHouse 可以处理数百 TB 甚至 PB 级别的数据,并且支持低延迟的查询处理。
    它通过多核并行计算和数据压缩技术,大幅提升了查询性能。
  • 分布式架构:
    ClickHouse 支持分布式部署,能够横向扩展,适应大规模的数据处理需求。
    可以通过集群进行负载均衡和数据分布,实现高可用性。
  • SQL 支持:
    ClickHouse 支持 SQL 语法,因此用户可以像使用传统的关系型数据库一样使用 SQL 进行查询。
    其 SQL 语法扩展了许多适用于 OLAP 查询的功能,比如窗口函数、分组聚合等。
  • 数据压缩:
    ClickHouse 提供多种数据压缩算法,大大降低了存储成本。
    它可以有效地将数据压缩到更小的体积,从而减少磁盘空间的使用。
  • 实时数据处理:
    ClickHouse 支持高吞吐量的数据导入,可以处理实时数据流。
    它能够快速处理日志、监控指标等数据,适用于需要实时分析的场景。

另外根据 https://db-engines.com/en/rankinghttps://db-engines.com/en/ranking 数据库排名网站

在这里插入图片描述


文章目录

  • Docker 部署 ClickHouse 教程
    • 1. 拉取 ClickHouse 镜像
    • 2.运行 ClickHouse 容器
    • 3. 验证容器是否启动成功
    • 4. 连接到 ClickHouse 实例
    • 5. 停止和删除容器
  • 设置密码
    • 7.总结


要使用 Docker 安装 ClickHouse,以下是一个简单的步骤指南:

1. 拉取 ClickHouse 镜像

首先,你需要从 Docker Hub 拉取官方的 ClickHouse 镜像。你可以使用以下命令:

docker pull yandex/clickhouse-server

在这里插入图片描述

2.运行 ClickHouse 容器

一旦镜像被拉取下来,你可以使用以下命令启动一个新的 ClickHouse 容器:

docker run -d --name clickhouse-server \
  -p 8123:8123 \
  -p 9000:9000 \
  -p 9009:9009 \
  -v /path/to/your/data:/var/lib/clickhouse \
  yandex/clickhouse-server

这里的参数说明:

  • -d:以后台模式运行容器。
  • –name clickhouse-server:给容器指定一个名称(可以自定义)。
  • -p:将容器内的端口映射到主机的端口。
    • 8123:HTTP接口端口。
    • 9000:TCP接口端口。
    • 9009:用于复制的端口。
  • -v /path/to/your/data:/var/lib/clickhouse:挂载一个本地目录用于存储 ClickHouse 数据(根据你的需求修改路径)。
  • yandex/clickhouse-server:指定使用的镜像。

在这里插入图片描述

3. 验证容器是否启动成功

你可以通过以下命令检查容器的状态

docker ps

在这里插入图片描述
如果容器运行正常,你将看到类似 clickhouse-server 容器的条目。

4. 连接到 ClickHouse 实例

你可以通过以下命令连接到 ClickHouse 实例:
在这里插入图片描述
在这里插入图片描述

你将进入到 ClickHouse 客户端,可以执行 SQL 查询等操作。

在这里插入图片描述

5. 停止和删除容器

如果需要停止并删除容器,可以使用以下命令:
停止容器:

docker stop clickhouse-server

删除容器:

docker rm clickhouse-server

设置密码

由于Docker 部署 ClickHouse 默认用户名是 default ,是没有密码的
需要设置密码就需要设置 点 /etc/clickhouse-server/users.xml 的文件 。

在这里插入图片描述

如果发现 vi 命令不能就需要安装 vi软件

在这里插入图片描述

具体分2步

apt-get update
apt-get install vim

在这里插入图片描述
最后编辑密码

vi users.xml

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

创建一个数据库

CREATE DATABASE IF NOT EXISTS class;

查看 版本

select version();

在这里插入图片描述

7.总结

通过以上步骤,你可以轻松地使用 Docker 安装并运行 ClickHouse。根据自己的需求,进一步配置数据存储路径、端口映射和其他设置。


http://www.kler.cn/a/531436.html

相关文章:

  • Node.js常用知识
  • 树莓派pico入坑笔记,故障解决:请求 USB 设备描述符失败,故障码(43)
  • 自制虚拟机(C/C++)(三、做成标准GUI Windows软件,扩展指令集,直接支持img软盘)
  • Linux - 进程间通信(3)
  • 【自然语言处理(NLP)】深度学习架构:Transformer 原理及代码实现
  • 3 [通用GITHUB投毒免杀工具安装木马攻击活动的详细分析]
  • 搜索插入位置(35)
  • SpringBoot整合Mybatis|入门级增删改查|2025
  • Chromium132 编译指南 - Android 篇(五):获取源码
  • 八. Spring Boot2 整合连接 Redis(超详细剖析)
  • 自动化软件测试的基本流程
  • Ubuntu20安装docker
  • 【DeepSeek论文精读】6. DeepSeek R1:通过强化学习激发大语言模型的推理能力
  • coze扣子新一代AI应用开发平台
  • 利用matlab寻找矩阵中最大值及其位置
  • 详解分布式锁
  • 在K8S中,有哪几种控制器类型?
  • 深度学习 Pytorch 基础网络手动搭建与快速实现
  • 【Linux】24.进程信号(1)
  • Array.prototype 方法在复杂数据处理中的应用
  • 深入解析 posix_spawn():高效的进程创建方式(中英双语)
  • Spark的基本概念
  • 如何选择Spring AOP的动态代理?JDK与CGLIB的适用场景?
  • 42【文件名的编码规则】
  • linux运行级别
  • 深入理解 `box-sizing: border-box;`:CSS 布局的利器