资讯专栏INFORMATION COLUMN

clickhouse安装部署

IT那活儿 / 2960人阅读
clickhouse安装部署



简介



ClickHouse 是俄罗斯的 Yandex 于2016年开源的列式存储数据库(DBMS),主要用于在线分析处理查询(OLAP),能够使用SQL查询实时生成分析数据报告。它主要有如下特点:

  • 列式存储与数据压缩
  • 向量化执行引擎
  • 关系模型与SQL查询
  • 多样化的表引擎
  • 多线程与分布式
  • 多主架构
  • 数据分片与分布式查询

使用ClickHouse作为OLAP服务的常见的应用场景包括:

  • 大多数是读请求

  • 数据批写入

  • 不修改已添加的数据

  • 查询为多行少列

  • 存储宽表

  • 单查询行数较大

  • 无事务要求,对数据一致性要求低

  • 数据被过滤或聚合后能够被盛放在单台服务器的内存中

  • 处理单个查询时需要高吞吐量

  • 每一个查询除了一个大表外都很小



部署



1. 操作系统配置

1)CPU是否支持SSE 4.2

grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 not supported"

如果CPU不支持SSE4.2,需要进行源码安装

2)修改资源限制

#/etc/security/limits.conf在文件末尾添加:

* soft nofile 65536

* hard nofile 65536

* soft nproc 131072

* hard nproc 131072

3)取消SELINUX

#vi /etc/selinux/config

SELINUX=disabled

4)关闭防火墙

service iptables stop

service ip6tables stop

5)安装依赖

yum install -y libtool

yum install -y *unixODBC*

yum search libicu

yum install libicu.x86_64

6)创建系统用户及数据目录

#创建用户

useradd clickhouse

#创建clickhouse数据目录、配置文件目录、启动文件目录、日志目录

mkdir /data1/clickhouse/{cnf,data,bin,logs,tmp}

chown -R clickhouse.clickhouse /data1/clickhouse


2. Clickhouse部署

1)软件安装

本文件使用二进制文件进行安装,需从https://repo.clickhouse.tech/tgz/下载如下类型包:

  • clickhouse-common-static:安装ClickHouse编译的二进制文件

  • clickhouse-server:为clickhouse-server创建符号链接并安装默认服务器配置

  • clickhouse-client:为clickhouse-client和其他与客户端相关的工具创建符号链接。并安装客户端配置文件

  • clickhouse-common-static-dbg — 安装带有调试信息的ClickHouse编译的二进制文件

每个tgz包中都有一个doing.sh脚本,用于安装相应文件,把clickhouse配置文件存放至/etc下,并配置clickhouse开机自启动服务。

本文件采用手工方式安装软件,以便于日后单机部署多个clickhouse实例。

#解压tgz包

tar -xzf clickhouse*.tgz

#手工拷贝文件夹下文件至相应目录,除etc/install目录外,如

2)编辑配置文件
  • 拷贝配置文件

#拷贝clickhouse-server包下etc目录文件至/data1/clickhouse/cnf
cp etc/* /data1/clickhouse/cnf

#创建附加配置文件目录
mkdir /data1/clickhouse/cnf/{config.d,users.d}
  • 编辑clickhouse服务配置文件
    /data1/clickhouse/cnf/config.xml


#日志配置

#侦听配置

#数据、临时目录

  • 编辑clickhouse用户配置文件

##配置默认用户密码

xi /data1/clickhouse/cnf/users.d/default-password.xml


3. 创建启动脚本

  • 编辑clickhouse启动脚本

vi /data1/clickhouse/bin/ch.sh

  • 启动clickhouse

/data1/clickhouse/bin/ch.sh start


4. 创建数据库、普通用户
使用default用户登陆clickhouse

 创建数据库

创建用户

 使用新用户登陆


总结



Clickhouse做为OLAP数据库,使用列式及压缩存储数据,使用向量化执行查询,其性能非常高效,本文仅部署clickhouse单节点,以进行测试,但生产环境为了保证数据的高可用及性能,可使用分片、副本等方式构建高可用集群。


END


更多精彩干货分享

点击下方名片关注

IT那活儿

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129776.html

相关文章

  • 基于开源应用快速构建HTAP系统

    摘要:利用快速构建系统。构建系统和的安装本文不再赘述,直接开始动手构建系统。分别为和,用于读写组,用于只读组。最后配置的监控服务可选,非必须至此,一个全部基于开源应用的简易系统就构建好了。利用ProxySQL、MySQL、ClickHouse快速构建HTAP系统。1. 关于ClickHouse企业里随着数据量的增加,以及日趋复杂的分析性业务需求,主要适用于OLTP场景的MySQL压力越来越大。多年...

    Tecode 评论0 收藏0
  • k8s与审计-- 将clickhouse增加为 heapster sink

    摘要:前言在资源审计和计费这块,容器和虚机有很大区别。支持诸多输出,称为。所以本文主要讲如何为增加。实际上,基于增加并且更改,也可以做到,只不过需要装一些包指令,结果就是镜像变大。实际运行日志截图由于的出色的写入性能,运行非常稳定。 前言 在k8s资源审计和计费这块,容器和虚机有很大区别。相对虚机来讲,容器不容易实现。资源指标收集可以采用heapster,也可以用prometheus。之前文...

    tunny 评论0 收藏0
  • k8s与审计-- 将clickhouse增加为 heapster sink

    摘要:前言在资源审计和计费这块,容器和虚机有很大区别。支持诸多输出,称为。所以本文主要讲如何为增加。实际上,基于增加并且更改,也可以做到,只不过需要装一些包指令,结果就是镜像变大。实际运行日志截图由于的出色的写入性能,运行非常稳定。 前言 在k8s资源审计和计费这块,容器和虚机有很大区别。相对虚机来讲,容器不容易实现。资源指标收集可以采用heapster,也可以用prometheus。之前文...

    edagarli 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<