Docker容器化急速部署ClickHouse

简介: Docker容器化急速部署ClickHouse

1.ClickHourse入门简介

(1)什么是行存储

  • 传统的OLTP关系型数据库 都是行存储
  • 一行中的数据在存储介质中以连续存储形式存在
  • 适合随机的增删改查操作 或者 在行中选取所有属性的查询操作,结合索引提升性能
  • 缺点
  • 查询的全部记录的某几个字段,但由于这些字段在各行数据单元中,而整个行特别大(字段特别多),程序必须不断读取每一条的行记录取对应的字段,使得读取效率大大降低
  • 例子:找某个订单的话,就很方便,订单的全部信息都能获取; 但找全部订单总金额就需要遍历多个数据
user_name product_name order_id tatal_amount
李祥 六位地黄丸 20220123343485 4999
张三 苹果13手机 20220121347880 1699

(2)什么是列式存储

  • 存储结构化数据时,在底层的存储介质上,数据是以列的方式来组织的
  • 存储完若干条记录的首个字段后,再存储这些记录的第二个字段,然后再第三个字段、第四个字段…
  • 查询时只有涉及到的列会被读取,而不需要全表扫描,可以显著减少IO消耗,并降低查询响应时间
  • 例子:查询全部成交额,只需要把订单金额拿出来即可
李祥 张三
六味地黄丸 苹果13手机
20220123343485 20220121347880
4999 1699
  • 总结
  • 描述的是底层存储介质上,数据的组织形式,哪种组织对应哪种业务需求
  • 列存储在聚合、统计等操作性能会优于行存储
  • 列存储将多行记录的列连续存储在一起,一列接着一列
  • 列式存储是同个数据类型,会进行数据压缩率更高,更省空间
  • 列存储数据更新成本较高,一般适合读多写少的场景,适合 OLAP 分析型系统

(3)什么是ClickHouse

  • ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的用于在线分析处理查询(OLAP :Online Analytical Processing)MPP架构列式存储数据库(DBMS:Database Management System),能够使用 SQL 查询实时生成分析数据报告。ClickHouse的全称是Click Stream,Data WareHouse。
  • clickhouse可以做用户行为分析,流批一体。
  • 线性扩展和可靠性保障能够原生支持 shard + replication。
  • clickhouse没有走hadoop生态,采用 Local attached storage 作为存储。

(4)ClickHouse的特点和应用场景

  • 不依赖Hadoop 生态、安装和维护简单
  • 擅长对列的聚合、计数等统计操作性能强劲
  • 对列存储和压缩的采用更好的算法,更好节省成本
  • 拓展性强,在生产中经过实战测试,从单服务器部署到具有数千个节点的集群的线性水平可扩展性
  • 具有企业级安全功能和故障安全机制,可防止数据因应用程序错误和人为错误而损坏
  • 支持主流的大部分SQL语法和函数
  • 吞吐能力强,官方测试支持,支持多种存储引擎,满足多数业务场景
  • 广泛应用:互联网电商、在线教育、金融等领域用,户行为数据记录和分析,搭建数据可视化平台
  • 0db813306d31488f977ed4e55a6b2b03.jpg
  • (5)整体架构

76ce3bb9c3394070a0e86632235defa1.jpg

2.Docker部署ClickHouse

(1)Docker部署ClickHouse

提前在有docker环境的centos7系统下执行命令:
docker run -d --name clickhouse --ulimit nofile=262144:262144 \
-p 8123:8123 -p 9000:9000 -p 9009:9009 --privileged=true \
-v /usr/local/clickhouse/log:/var/log/clickhouse-server \
-v /usr/local/clickhouse/data:/var/lib/clickhouse clickhouse/clickhouse-server:22.2.3.5

fa36bf51b18b4483ae6ddafa83df1fc2.jpg

  • 默认http端口是8123,tcp端口是9000, 同步端口9009
  • web可视化界面:http://ip:8123/play ip为你当前机器的ip地址

89b5ff81f93f4d2890d94dca5fba399e.jpg

注意:

  • 在任何其他情况下不能将ClickHouse服务器暴露给公共互联网
  • ClickHouse体验平台界面实际上是通过ClickHouse 的HTTP API接口实现的
  • 确保它只在私有网络上侦听,并由正确配置的防火墙监控

3.DBeaver连接ClickHouse



accb31400869470d9360cb2502fd8256.jpg



6abf1b13edfd40e9ab053feb1b2bbf68.jpg


efb0e3e20b674ebfa1f31f824d90f527.jpg


相关文章
|
5天前
|
关系型数据库 MySQL API
|
5天前
|
Java 应用服务中间件 Linux
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
本文主要讲解了Docker的安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库以及Docker容器虚拟化与传统虚拟机比较。
【Docker容器化技术】docker安装与部署、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
|
11天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
48 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
1天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
1天前
|
Cloud Native 持续交付 Docker
Docker容器化技术:从入门到实践
Docker容器化技术:从入门到实践
|
1天前
|
运维 持续交付 Docker
深入理解Docker容器化技术
深入理解Docker容器化技术
|
7天前
|
JavaScript 持续交付 Docker
解锁新技能:Docker容器化部署在微服务架构中的应用
【10月更文挑战第29天】在数字化转型中,微服务架构因灵活性和可扩展性成为企业首选。Docker容器化技术为微服务的部署和管理带来革命性变化。本文探讨Docker在微服务架构中的应用,包括隔离性、可移植性、扩展性、版本控制等方面,并提供代码示例。
36 1
|
9天前
|
Docker 容器
docker 修改容器内的系统时间
【10月更文挑战第27天】docker 修改容器内的系统时间
159 2
|
15天前
|
Web App开发 iOS开发 Docker
Docker 容器的日志
【10月更文挑战第31天】
26 5
|
13天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
35 2
下一篇
无影云桌面