表引擎

MergeTree

主键

clickhouse主键特点:可以重复不是唯一的。

partition by 分区(可选)

1)作用
分区的目的主要是降低扫描的范围,优化查询速度
2)如果不填
只会使用一个分区。
3)分区目录
MergeTree 是以列文件+索引文件+表定义文件组成的,但是如果设定了分区那么这些文
件就会保存到不同的分区目录中。
4)并行
分区后,面对涉及跨分区的查询统计,ClickHouse 会以分区为单位并行处理。
5)数据写入与分区合并
任何一个批次的数据写入都会产生一个临时分区,不会纳入任何一个已有的分区。写入
后的某个时刻(大概 10-15 分钟后),ClickHouse 会自动执行合并操作(等不及也可以手动
通过 optimize 执行),把临时分区的数据,合并到已有分区中。
optimize table xxxx final;

MergeTree表引擎的文件结构

ClickHouse各文件目录:bin/    ===>  /usr/bin/ conf/   ===>  /etc/clickhouse-server/lib/    ===>  /var/lib/clickhouse log/    ===>  /var/log/clickhouse-serverPartitionId_MinBlockNum_MaxBlockNum_Level
分区值_最小分区块编号_最大分区块编号_合并层级=》PartitionId数据分区ID生成规则数据分区规则由分区ID决定,分区ID由PARTITION BY分区键决定。根据分区键字段类型,ID生成规则可分为:未定义分区键没有定义PARTITION BY,默认生成一个目录名为all的数据分区,所有数据均存放在all目录下。整型分区键分区键为整型,那么直接用该整型值的字符串形式做为分区ID。日期类分区键  (直接存储为日期类型效率更高)分区键为日期类型,或者可以转化成日期类型。其他类型分区键String、Float类型等,通过128位的Hash算法取其Hash值作为分区ID。=》MinBlockNum最小分区块编号,自增类型,从1开始向上递增。每产生一个新的目录分区就向上递增一个数字。=》MaxBlockNum最大分区块编号,新创建的分区MinBlockNum等于MaxBlockNum的编号。=》Level合并的层级,被合并的次数。合并次数越多,层级值越大。bin文件:数据文件
mrk文件:标记文件标记文件在 idx索引文件 和 bin数据文件 之间起到了桥梁作用。以mrk2结尾的文件,表示该表启用了自适应索引间隔。
primary.idx文件:主键索引文件,用于加快查询效率。
minmax_create_time.idx:分区键的最大最小值。
checksums.txt:校验文件,用于校验各个文件的正确性。存放各个文件的size以及hash值。

数据库数据默认存储目录:

/var/lib/clickhouse/data



不指定分区都存在一个目录里面,名字为all

分区目录中的文件:

data.bin文件:数据文件
data.mrk文件:标记文件
标记文件在 idx索引文件 和 bin数据文件 之间起到了桥梁作用。
以mrk2结尾的文件,表示该表启用了自适应索引间隔。
primary.idx文件:主键索引文件,用于加快查询效率。
minmax_create_time.idx:分区键的最大最小值。
checksums.txt:校验文件,用于校验各个文件的正确性。存放各个文件的size以及hash值。

集群模式

clickHouse集群多副本模式,数据同步重度依赖zk, kafka 副本数据同步不依赖zk

尚硅谷 clickHouse相关推荐

  1. 尚硅谷YYDS (课件资料)

    面试大保健 链接:https://pan.baidu.com/s/1duUHb4AwOnW9jycDnUCRVA 提取码:undf 尚硅谷大数据技术之 StarRocks 链接:https://pan ...

  2. Mybatis-plus尚硅谷跟学课堂笔记

    一.MyBatis-Plus 1.简介 MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBa ...

  3. 02Flink实时数仓(尚硅谷)- DWD层数据准备

    文章目录 第1章 需求分析及实现思路 1.1 分层需求分析 1.2 每层的职能 1.3 DWD 层数据准备实现思路 第2章 功能 1:环境搭建 第3章 功能 2:准备用户行为日志 DWD 层 3.1 ...

  4. 尚硅谷谷粒学院2020 高级篇代码_尚硅谷联合KubeSphere ,共同打造企业级云原生课程!...

    原作者姓名:尚硅谷教育 原出处:尚硅谷公众号 原文链接:尚硅谷联合KubeSphere ,共同打造企业级云原生课程! 近日,尚硅谷与KubeSphere 达成合作,在"大厂学院:拥抱云原生& ...

  5. 尚硅谷Docker---1、docker杂记

    尚硅谷Docker---1.docker杂记 一.总结 一句话总结: ~ php用的homestead就相当于docker,javaee一般都是用docker,php也可以用docker ~ dock ...

  6. 尚硅谷SpringCloud(H版alibaba)框架开发教程(大牛讲授spring cloud) 最详细的。

    尚硅谷SpringCloud(H版&alibaba)框架开发教程(大牛讲授spring cloud) 一. 从2.2.x和H版开始说起 二.关于Cloud各种组件的停更/升级/替换 三.微服务 ...

  7. JavaScript(基础、高级)笔记汇总表【尚硅谷JavaScript全套教程完整版】

    目   录 前言 JavaScript(基础+高级)配套资料下载 JavaScript 基础 学习地址 学习笔记 day 05(P001-P006)[2016.11.22] day 06(P007-P ...

  8. promise的状态以及api介绍_Promise从入门到自定义 | 尚硅谷Promise新版视频发布!

    尚硅谷发布全新升级版前端课程,推出"5+100+3"人才培养新模式,5.5个月系统学习+100课时进阶课程+3年谷粒学院VIP课程,为技术成长持续赋能,打造前端架构师!预知详情,猛 ...

  9. 总结尚硅谷的视频springboot视频

    这16个章节也就讲个大概,更多内容需要你自己去学习. 第1章尚硅谷SpringBoot入门 P01.尚硅谷_SpringBoot_入门-课程简介 P02.尚硅谷_SpringBoot_入门-Sprin ...

最新文章

  1. Struts2的概述和入门
  2. python无师自通配套资源_Python Tkinter Pack布局管理器(超级详细,看了无师自通)...
  3. 表情显示服务器异常,MySqlmoji表情引发的存储异常微信昵称
  4. Shell脚本(学习笔记1)
  5. 主题图标_Avada主题网站favicon图标设置详细图文教程
  6. Codeup-问题 A: 最长公共子序列
  7. 初识Android应用程序的五大基本组件
  8. AtCoder Grand Contest 013 题解
  9. 2017 到 2018,PWA 技术到底经历了什么
  10. PHP设计模式——概述
  11. win7动态壁纸_电脑桌面美化,高清动态壁纸
  12. 【MIMO通信】基于matlab MIMO_OFDM通信系统仿真【含Matlab源码 314期】
  13. AutoCAD启动自动加载程序的研究
  14. 潍坊市计算机培训机构,潍坊电脑培训中心办公软件
  15. 计算机方向键不能使用,电脑键盘中的数字按键不能用是什么原因?
  16. 判断奇数和偶数不常见的方法
  17. 后端使用thymeleaf模板生成页面转pdf,结果客户现场中文不显示
  18. 计算机培训word,计算机培训word2010.pptx
  19. 《高效能人士的七个好习惯》读书笔记
  20. 被缠上了,小王问我怎么在 Spring Boot 中使用 JDBC 连接 MySQL

热门文章

  1. char ch= 中 什么意思java_问一下java里的char到底是什么
  2. linux 嵌入式 远程升级,嵌入式设备远程固件升级方法与流程
  3. 成为互联网企业家的10个理由
  4. 三维地图之cesium轨迹回放(有代码)
  5. 乐固加固APP后无法启动
  6. AMiner发布:2022年人工智能全球最具影响力学者榜单AI 2000
  7. Vuex基本使用的总结
  8. MySQL的下载与安装详细教程
  9. jointJS系列之一:jointJS的的初步使用
  10. 据说,这四招能提高你的打字速度 快来试试