关注微信公共号:小程在线

关注CSDN博客:程志伟的博客

 ClickHouse server version 21.6.6

创建分区表

示例一:函数式分区

dblab-VirtualBox :) create table visits(userid int,visitdate date,website String) engine=MergeTree() PARTITION BY toYYYYMM(visitdate) order by userid;

CREATE TABLE visits
(
    `userid` int,
    `visitdate` date,
    `website` String
)
ENGINE = MergeTree
PARTITION BY toYYYYMM(visitdate)
ORDER BY userid

Query id: 96c69dce-dcdf-4a19-8faf-ffdbff0fe8ac

Ok.

0 rows in set. Elapsed: 0.111 sec. 
示例二:字段直接分区

dblab-VirtualBox :) create table test.user_action_log (    `event_time` DateTime,    `user_id` String,    `user_name` String,    `school_id` String,    `school_name` String,    `stay_time` Float64,    `create_time` DateTime,    `student_id` String,    `grade` String,    `date_key` String ) ENGINE = MergeTree() PARTITION BY (date_key) ORDER BY (user_id,student_id,school_id) PRIMARY KEY (user_id) SETTINGS index_granularity = 8192;

CREATE TABLE test.user_action_log
(
    `event_time` DateTime,
    `user_id` String,
    `user_name` String,
    `school_id` String,
    `school_name` String,
    `stay_time` Float64,
    `create_time` DateTime,
    `student_id` String,
    `grade` String,
    `date_key` String
)
ENGINE = MergeTree
PARTITION BY date_key
PRIMARY KEY user_id
ORDER BY (user_id, student_id, school_id)
SETTINGS index_granularity = 8192

Query id: 41fa5885-328c-4c64-bf21-42c87d353766

Ok.

0 rows in set. Elapsed: 0.008 sec.

注:在创建表时一定要指定排序键,这一点非常重要,在批量插入数据时也可以对数据提前进行排序

表插入数据

insert into visits(userid,website,visitdate) values(100,'www.baidu.com','2020-06-01'),(100,'www.google.com','2020-07-02'),(100,'www.toutiao.com','2020-08-03');

select * from visits where visitdate='2020-07-02';

 clickhouse想对于hive没有show partitions xxx来展示分区的操作我们可以通过查询数据库中的system.parts表来查看想要的信息。

dblab-VirtualBox :) select database,table,partition,partition_id,name ,path from system.parts where table='visits';

SELECT
    database,
    table,
    partition,
    partition_id,
    name,
    path
FROM system.parts
WHERE table = 'visits'

 删除分区:

alter table visits drop partition 202007 ;

 重置分区:

alter table visits CLEAR column website in partition 202007;

卸载和装载分区|数据块: 

alter table visits DETACH  partition 202007; --将分区数据移动到 detached ,并且忘记它
 

alter table visits ATTACH  partition 202007; --将detached 目录中的分区重新添加到表中.

clickhouse PARTITION操作相关推荐

  1. ClickHouse函数操作大全

    官址学习文档:https://clickhouse.yandex/docs/zh/ 零.检测函数类型(clickhouse中数据的类型) SELECT toTypeName(0);-- UInt8(三 ...

  2. ClickHouse 更新操作

    clickhouse 更多应用在 查询select  和写入insert  上. 提供部分更新操作,但相比其他各大数据库的更新操作来说,效果已经很好了,下面来详细介绍一下 更新这一块. 更新: 1. ...

  3. 【clickhouse】clickhouse 原生监控

    文章目录 1.概述 1.硬件资源的使用: 2. clickhouse 服务的监控: 2.1系统表: 2.1.1. metrics: 2.1.2.events: 2.1.3.asynchronous_m ...

  4. ClickHouse基础知识及与MySQL性能对比

    文章目录 ClickHouse介绍 如何理解OLTP和OLAP 如何理解行式存储和列式存储 ClickHouse应用场景 ClickHouse引擎 Log系列引擎 MergeTree系列表引擎 Col ...

  5. ClickHouse 创建数据库/建表/视图/字典 SQL

    1.1. ClickHouse SQL之数据定义语言 DDL  本节介绍 ClickHouse 中进行数据库.表结构的定义和管理. 1.1.1. 概述 在SQL中,数据定义语言( DDL ) 用来创建 ...

  6. ClickHouse 备份与恢复

    我们评估一款数据库产品,除了稳定性和易用性外,数据安全也十分重要,备份与恢复往往是最后一道安全门. 但如果备份策略不完善.恢复手段无效,一旦发生数据误删除就真的抢救无效-扑街了. 目前Clickhou ...

  7. clickhouse分区操作实践

    目录 1 分区表 2 创建分区表 2.1不指定分区 2.2 使用函数创建分区 2.3 使用现有字段直接分区 3 分区操作 3.1 删除分区 3.1.1 删除前分区信息如下 3.1.2 删除前磁盘数据目 ...

  8. ClickHouse 数据删除更新

    ClickHouse删除/更新数据(UPDATE/DELETE/DROP)与普通的sql语法有点不一样,故记录一下. 一.删除表 DROP table db.视图表 ON CLUSTER cluste ...

  9. zabbix db partition

    在做zabbix的性能优化时,有时候在db的数据量比较大的时候,需要对表进行partition操作,这样可以在数据查询减少用时.并且由于使用了partition,我们可以自己实现历史数据的删除操作,这 ...

最新文章

  1. HDU - 6082 度度熊与邪恶大魔王(背包变式)
  2. MYSQL主从同步故障一例及解决过程
  3. 蓝桥杯 迷宫与陷阱 BFS
  4. 【Java】函数式编程思想-Lambda表达式
  5. 欧框语言框架标准C2,CEFR欧洲语言共同参考框架
  6. Django复习:模型与管理网站
  7. session对象的使用
  8. 问题处理:VMware Workstation和Device / Credential Guard不兼容
  9. c#中对xml文件的基本操作
  10. 论文查重报告橙色和红色是什么意思?
  11. GPS 入门 7 —— GPS定位、LSB基站定位、wifi定位区别
  12. 社区中无法创建帖子chatter
  13. 洛谷(P3373)线段树加乘混合模板
  14. resultful接口开发
  15. 超时空智慧办公白皮书(2023)
  16. mysql插入成功返回主键_MyBatis + MySQL返回插入成功后的主键id
  17. Ubuntu 1804 升级内核
  18. Leetcode 组合总和II
  19. 使用GNURadio和RTL-SDR搭建FM广播接收机
  20. 数据中心蓄冷时间的确定-孙长青

热门文章

  1. Zabbix以trapper方式监控MySQL备份文件
  2. 【白话理解神经网络中的“损失函数”——最小二乘法和极大似然估计法】
  3. 计算机如何回到桌面,电脑系统教程:win10怎么返回到桌面状态
  4. 通过OpenCv的HoughCircles函数获取图片中的圆形
  5. gcc for arm 工具链使用(一)
  6. java编程基础笔记_Java编程基础阶段笔记 day01 Java语言概述
  7. 中文真伟大!竟然有只能看,不能读的文章
  8. python一键批量制作word邀请函
  9. linux 命令:which详解
  10. 解决每次新建word都有页眉和页脚