鞍山制作网站,看动漫什么网站好,zencart wordpress,hostinger wordpressClickHouse基础部分详解 一、ClickHouse简介二、ClickHouse单机版安装2.1、ClickHouse安装前准备环境2.2、ClickHouse单机安装2.3、ClickHouse一些默认路径2.4、ClickHouse端口说明 三、ClickHouse数据类型四、ClickHouse的表引擎4.1 MergeTree4.1.1 partition by 分区 五、Cli… ClickHouse基础部分详解 一、ClickHouse简介二、ClickHouse单机版安装2.1、ClickHouse安装前准备环境2.2、ClickHouse单机安装2.3、ClickHouse一些默认路径2.4、ClickHouse端口说明 三、ClickHouse数据类型四、ClickHouse的表引擎4.1 MergeTree4.1.1 partition by 分区 五、ClickHouse遇到的一些奇葩问题1、ClickHouse服务起不来 一、ClickHouse简介 对于其他乱起八糟的简介我就不写了只写干货. ClickHouse总结一个字快 1、ClickHouse是列式数据库特别适合大数据量对列的聚合计数求和等统计操作原因优于行式存储 数据量可以大到10亿到百亿级别。 2、真正的列式数据库管理系统ClickHouse不单单是一个数据库 它是一个数据库管理系统。因为它允许在运行时创建表和数据库、加载数据和运行查询而无需重新配置或重启服务。 3、常见列式数据库HBaseBigTableCassandraHyperTable。在这些列式数据库中你可以得到每秒数十万的吞吐能力但是无法得到每秒几亿行的吞吐能力。 4、数据压缩由于某一列的数据类型都是相同的针对于数据存储更容易进行数据压缩每一列选择更优的数据压缩算法大大提高了数据的压缩比重由于数据压缩比更好一方面节省了磁盘空间另一方面对于 cache 也有了更大的发挥空间。 5、ClickHouse会使用服务器上一切可用的资源从而以最自然的方式并行处理大型查询。高性能自然需要高配服务器。 点击进入: ClickHouse官网文档 二、ClickHouse单机版安装
2.1、ClickHouse安装前准备环境 2.1.1、Centos 取消打开文件数限制
vim /etc/security/limits.conf
vim /etc/security/limits.d/20-nproc.conf
##编辑上面两个文件添加下面内容记得两个文件都添加在文件末尾添加
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 1310722.1.2、安装ClickHouse依赖环境
yum install -y libtool
yum install -y *unixODBC*2.1.3、CentOS 取消 SELINUX
#修改/etc/selinux/config 中的 SELINUXdisabled
vim /etc/selinux/config2.2、ClickHouse单机安装 2.2.1、安装包准备 可自行去官网把下图中的四个安装包下载下来, 下载地址http://repo.red-soft.biz/repos/clickhouse/stable/el7/ 2.2.2、安装 上传到centos中的某一目录中在目录中执行如下命令。
rpm -ivh *.rpm安装过程中出现下面情况是让你输入默认密码的自己随便输入一般输入root即可。也可以不设置密码直接按回车键即可 查看安装情况
sudo rpm -qa|grep clickhouse 2.2.3、修改配置文件
把 listen_host::/listen_host 的注释打开这样的话才能让 ClickHouse 被除本机以外的服务器访问
vim /etc/clickhouse-server/config.xml2.2.4、启动clickhouse 注意启动clickhouse是开机自启的。
systemctl start clickhouse-server#使用该命令是禁制clickhouse开机自启不过一般我们都是需要开机自启
#所以不执行下面这条命令了
systemctl disable clickhouse-server2.2.4、终端链接clickhouse
#如果在上面没设置默认密码执行clickhouse-client -m即可
clickhouse-client -m
#如果在上面设置了默认密码执行clickhouse-client --password然后输入密码就可以进入了
clickhouse-client --password2.3、ClickHouse一些默认路径
bin/ /usr/bin/ #可执行文件路径
conf/ /etc/clickhouse-server #配置文件路径
lib/ /var/lib/clickhouse #数据存放路径
log/ /var/log/clickhouse #日志路径2.4、ClickHouse端口说明 1、9000是clickhouse-client使用的端口一般咱们通过命令行链接使用9000端口。 2、8123是HTTP连接clickhouse使用的端口一般用第三方工具比如java客户端或者DBever客户端连接都用8123端口。 3、记得一定要关闭centos防火墙哦。
#查看防火墙状态
systemctl status firewalld.service
#暂时关闭防火墙
systemctl stop firewalld.service
#永久关闭防火墙
systemctl disable firewalld.service三、ClickHouse数据类型 和其他语言的数据类型都相似我就不一一说了官方文档上写的很好参考下官网 https://clickhouse.com/docs/zh/sql-reference/data-types
四、ClickHouse的表引擎
4.1 MergeTree MergeTree 引擎是ClickHouse中最常用的地位相当于mysql的innodb,下面介绍下MergeTree引擎的一些特性 4.1.1 partition by 分区
分区是ClickHouse中非必选的属性。分区后面对涉及跨分区的查询统计ClickHouse 会以分区为单位并行处理 即一个线程处理一个分区内的数据说明ClickHouse在高性能的同时是需要高服务器的分区粒度根据业务特点决定不宜过粗或过细。一般选择按天分区也可以指定为Tuple()以单表一亿数据为例分区大小控制在10-30个为最佳。 那些有相同分区表达式值的数据片段才会合并。这意味着 你不应该用太精细的分区方案超过一千个分区。否则会因为文件系统中的文件数量过多和需要打开的文件描述符过多导致 SELECT 查询效率不佳。 还有就是一般我们都是使用的是日期作为分区键同一分区内有序不同分区不能保证有序。
五、ClickHouse遇到的一些奇葩问题
1、ClickHouse服务起不来
开机后发现clickHouse服务起不来具体查看了下日志信息如下图所示 日志说是/var/lib/clickhouse/store/f66/f66f1f2e-cc4d-47ea-b33d-f0cabf63aa63/202304_93_93_0目录损坏了
处理方法
进入到损坏的目录 cd /var/lib/clickhouse/store 执行mv f66/ f66_bak命令不用担心/f66目录下的文件clickhouse会重新生成个f66目录的然后clickhouse就正常启动了