clickhouse入门

clickhouse

1 课程介绍

复制代码
和hadoop无关,俄罗斯,速度快

3 介绍&特点

1 列式存储

复制代码
在线分析处理。
使用sql进行查询。

列式存储
	更适合查询分析的场景。新增时候有一个寻址的过程。
	更容易进行压缩

行式存储。
	增删改查都需要的时候。

2 DBMS功能

复制代码
包括ddl,dml和各种函数,用户权限管理,数据备份恢复。

3 多样化引擎

复制代码
innodb 提供了事务。
合并树,日志,接口等二十多种引擎。

4 高吞吐写入能力

复制代码
LSM tree
数据写入后定期在后台合并。
更新,老的数据新的数据都在,新增字段作为标记,版本号(大代表新的数据)

在数据写入时是顺序写。
merge sort
合并期间不能对外提供服务。

5 数据分区与线程级并行

复制代码
partition->index->多个cpu核心分别处理其中一部分实现并行数据处理。
单条查询能利用整机的所有cpu。
极强的并行处理能力,对于高qps并不强(query per second 每秒查询次数)
cpu是一个瓶颈。

不适合做初始的存储
适合处理过的数据,大量宽表。(指的是都已经关联好了的表)
尽量避免做join,和底层实现原理有关。
多表对性能影响很大的。
右边那种表加载到内存。
分布式,一张表存在多个节点,影响更大。

4 准备工作

复制代码
关闭防火墙
ulimit -a  系统的一些限制
open files
max user processes

用户最大进程数
文件数(同时打开)
安装要细致。

centos取消 selinux
来源美国国家安全局。

内核级别的更改,需要分发,重启才能生效。

5 单机安装

复制代码
cannel 同步数据
默认没有密码,演示环境,直接回车,

6 数据类型

1、整型

复制代码
byte  8bit  Int8
short
int 
long

2、浮点型

复制代码
尽可能用整数形式存储
存钱 decimal

3、布尔型

复制代码

4、decimal

复制代码
有符号的浮点数

5、字符串

复制代码
String
FixedString(N) 固定长度N的字符串。

6、枚举类型

复制代码
create table t_enum
(
	x Enum8('hello'=1,'world'=2)
)
ENGINE=TinyLog;

insert into t_enum values ('hello'),('world');

7、时间类型

复制代码
Date 年月日
Datetime
Datetime64

8、数组

复制代码
array

7 表引擎介绍

1、介绍

复制代码
决定了如何存储表的数据
数据存储位置和方式,从哪里读,从哪里写?  磁盘
并发数据访问,可以多线程执行一条查询。
索引使用,如果存在?
引擎名称大小写敏感。
大驼峰。

2、TinyLog

复制代码
列形式保存在磁盘,不支持索引,没有并发控制。
测试环境用的。

3、memory

复制代码
基于内存,重启数据丢失。
简单查询性能表现好。

4、MergeTree

复制代码
最强大的表引擎。
支持索引和分区。
相当于innodb至于mysql

clickhouse直接映射到mysql表,
并不真正拥有数据,但是可以查询。
可以对远程在mysqld 的数据进行select查询。

8 MergeTree简单使用

复制代码
primary key(id) 不唯一。

建表语句
create table t_order_mt(
	id UInt32,
	sku_id String,
	create_time Datetime
)engine=MergeTree
partition by to

下载dbever
驱动,自己去下载。添加文件。

9 分区详解

10 主键

16 开发中引擎的选择

复制代码
幂等性,
重复写入,
replaciongMergeTree 
存储完全继承了mergetree,多了一个去重的功能。

17 update和delete

复制代码
虽然可以实现修改和删除,但是是一种很重的操作,不支持事务。
更新:插入一条新的数据,version+1,查询时候加上一个过滤条件,where version最大。

只是提供一个思路。

18 查询和函数介绍

复制代码
支持子查询

19 多维分析函数

复制代码
相关推荐
重生之绝世牛码1 天前
Linux软件安装 —— ClickHouse单节点安装(rpm安装、tar安装两种安装方式)
大数据·linux·运维·数据库·clickhouse·软件安装·clickhouse单节点
麦兜和小可的舅舅1 天前
Spark to ClickHouse由于DNS问题导致Stage重试的Task竞态分析和问题解决过程
clickhouse·spark
重生之绝世牛码1 天前
Linux软件安装 —— ClickHouse集群安装(集成Zookeeper)+ chproxy负载均衡
大数据·linux·数据库·clickhouse·软件安装·clickhouse集群安装·clickhouse负载均衡
无级程序员3 天前
clickhouse创建用户,登录出错的问题,code 516
linux·服务器·clickhouse
billy_gisboy4 天前
01-Windows+DockerDesktop部署ClickHouse
windows·clickhouse
billy_gisboy4 天前
02-Windows DockerDesktop部署ClickHouse,解决指定磁盘数据持久化问题与WSL2调优
windows·clickhouse
hkNaruto4 天前
【运维】低配服务器ClickHouse Docker部署故障复盘与优化配置指南
运维·服务器·clickhouse
有梦想有行动5 天前
ClickHouse的Partition和Part概念
linux·数据库·clickhouse
l1t5 天前
利用DeepSeek辅助翻译clickhouse SQL为DuckDB 格式求解Advent of Code 2025第10题 电子工厂 第二部分
数据库·人工智能·sql·clickhouse·duckdb
l1t5 天前
对clickhouse给出的二分法求解Advent of Code 2025第10题 电子工厂 第二部分的算法理解
数据库·算法·clickhouse