随笔分类 -  clickhouse数据库

使用以及分析
摘要:一、MergeTree order by执行计划 1)没有order by的执行计划: + + | explain | + + | Expression ((Projection + Before ORDER BY)) | | Aggregating | | Expression ((Before 阅读全文
posted @ 2022-07-22 16:19 渐逝的星光 阅读(2135) 评论(0) 推荐(0) 编辑
摘要:一、ckman简介 通过网页端的可视化界面,ckman可以非常便捷的完成集群的导入、部署、节点的增删以及性能指标的监控等功能,可以大大简化集群部署的操作流程,从而起到事半功倍的效果。 二、ckman架构 ckman支持多中心部署,使用nacos进行配置同步,可以对多个集群进行管理,在集群的每个节点下 阅读全文
posted @ 2022-07-21 17:45 渐逝的星光 阅读(1707) 评论(0) 推荐(1) 编辑
摘要:主要分为两种安装方式 1)rpm安装 rpm -ivh grafana-8.5.4-1.x86_64.rpm --nodeps #忽略额外插件安装 systemctl start grafana-server.service #启动服务 systemctl status grafana-server 阅读全文
posted @ 2022-07-21 17:20 渐逝的星光 阅读(838) 评论(0) 推荐(0) 编辑
摘要:一、系统表含义介绍 system库系统表相关释义: 1)系统表用于实现系统的部分功能,并提供对有关系统如何工作的信息的访问。 2)不能删除系统表(但可以执行DETACH)。 3)系统表在磁盘上没有数据或元数据的文件。服务器在启动时创建所有系统表。 4)系统表是只读的。 5)它们位于 ‘system’ 阅读全文
posted @ 2022-07-06 11:24 渐逝的星光 阅读(3420) 评论(0) 推荐(1) 编辑
摘要:推荐运行环境 python 3.8.3 clickhouse_driver==0.2.3 clickhouse_sqlalchemy==0.2.0 sqlalchemy==1.4.32 一、clickhouse_driver连接的两种方式 注意端口都使用tcp端口9000 1.Client from 阅读全文
posted @ 2022-06-30 11:54 渐逝的星光 阅读(11427) 评论(0) 推荐(0) 编辑
摘要:加速查询 加速查询通过增加线程数。 加速查询通过减少读取。 查询的效率趋于I/O的扩展。 使用prewhere语句来帮助过滤非索引字段数据。 确保最优的分区数。不是分区数越多越好!分区数过多,不仅在clickhouse启动服务时增加load data parts的时间,同时对于replicatedM 阅读全文
posted @ 2022-06-28 14:36 渐逝的星光 阅读(915) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ 表引擎可以让你:①发布或订阅数据流。②在数据流可用时进行处理。 一、创建表​ CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] ( name1 [type1] [DEFAULT|MATERIALIZE 阅读全文
posted @ 2022-06-21 15:41 渐逝的星光 阅读(1016) 评论(0) 推荐(0) 编辑
摘要:hostName 返回一个字符串,其中包含执行此函数的主机的名称。对于分布式处理,这是远程服务器主机的名称,如果该功能是在远程服务器上执行的。如果它在分布式表的上下文中执行,那么它会生成一个普通列,其中包含与每个分片相关的值。否则它会产生一个常数值。 SELECT hostName() Query 阅读全文
posted @ 2022-04-29 15:28 渐逝的星光 阅读(758) 评论(0) 推荐(0) 编辑
摘要:加密方式有三种 clickhouse密码可以可以设置 SHA256 ,SHA1和明文三种方式。 1)SHA256 通过下面命令生成密码,-c表示要生成的长度; PASSWORD=$(base64 < /dev/urandom | head -c14); echo "$PASSWORD"; echo 阅读全文
posted @ 2022-04-25 14:06 渐逝的星光 阅读(4905) 评论(0) 推荐(0) 编辑
摘要:缓冲要写入 RAM 的数据,定期将其刷新到另一个表。在读操作期间,同时从缓冲区和另一个表中读取数据。 Buffer(database, table, num_layers, min_time, max_time, min_rows, max_rows, min_bytes, max_bytes) 表 阅读全文
posted @ 2022-04-07 11:01 渐逝的星光 阅读(2047) 评论(0) 推荐(0) 编辑
摘要:FINAL关键字 ClickHouse会在返回结果之前完全合并数据,从而执行给定表引擎合并期间发生的所有数据转换。 注意: 1.select语句+final的话,会对表的order字段进行排序去重。注意主键要加上分区字段(虽然跨分区不会去重,但select会合并结果)(试验过)。 2.在大多数情况下 阅读全文
posted @ 2022-04-06 16:06 渐逝的星光 阅读(6286) 评论(0) 推荐(0) 编辑
摘要:一、概述 分布式存储要保证高可用,就必须有数据冗余——即副本(replica)。ClickHouse依靠ReplicatedMergeTree引擎族与ZooKeeper实现了复制表机制,成为其高可用的基础。 在实际操作中,为了最大化性能与稳定性,分片和副本几乎总是一同使用。 仅 MergeTree 阅读全文
posted @ 2022-04-06 15:27 渐逝的星光 阅读(4703) 评论(0) 推荐(0) 编辑
摘要:具有分布式引擎的表不存储自己的任何数据,但允许在多个服务器上进行分布式查询处理。读取是自动并行的。在读取期间,将使用远程服务器上的表索引(如果有的话)。 一、创建表 CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] ( 阅读全文
posted @ 2022-04-06 14:53 渐逝的星光 阅读(3124) 评论(9) 推荐(0) 编辑
摘要:Clickhouse是个分析型数据库。这种场景下,数据一般是不变的,因此Clickhouse对update、delete的支持是比较弱的,实际上并不支持标准的update、delete操作。 1.Clickhouse通过alter方式实现更新、删除,它把update、delete操作叫做mutati 阅读全文
posted @ 2022-03-25 10:24 渐逝的星光 阅读(3232) 评论(0) 推荐(0) 编辑
摘要:一.概述 为了能够增强数据的实时性,利用 binlog 将数据写入到 ClickHouse。然而为了能够监听 binlog 事件,需要用到类似 canal 这样的第三 方中间件,这无疑增加了系统的复杂度。 ClickHouse 20.8.2.3 版本新增加了 MaterializeMySQL 的 d 阅读全文
posted @ 2022-03-25 09:26 渐逝的星光 阅读(1779) 评论(0) 推荐(0) 编辑
摘要:以(CounterID, Date)主键为例。在这种情况下,排序和索引可以说明如下: Whole data: [ ] CounterID: [aaaaaaaaaaaaaaaaaabbbbcdeeeeeeeeeeeeefgggggggghhhhhhhhhiiiiiiiiikllllllll] Date 阅读全文
posted @ 2022-03-17 16:56 渐逝的星光 阅读(3876) 评论(0) 推荐(0) 编辑
摘要:表由按主键排序的数据部分组成 1.将数据插入表中时,会创建单独的数据部分,并且每个部分都按主键按字典顺序排序。例如,如果主键是(CounterID, Date),则部分中的数据按 排序CounterID,每个中的数据按CounterID排序Date。 2.属于不同分区的数据被分成不同的部分。Clic 阅读全文
posted @ 2022-03-17 14:29 渐逝的星光 阅读(786) 评论(0) 推荐(0) 编辑
摘要:CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] ( name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1] [TTL expr1], name2 [type2] [DEFAU 阅读全文
posted @ 2022-03-17 14:16 渐逝的星光 阅读(1188) 评论(0) 推荐(0) 编辑
摘要:1.通用编码 None:无压缩 LZ4:默认的压缩算法,缺省值也是使用默认的压缩算法 LZ4HC[(level)]:z4高压缩率压缩算法版本, level默认值为9,支持[1~12],推荐选用[4~9] ZSTD[(level)]:zstd压缩算法,level默认值为1,支持[1~22] 2.特殊编 阅读全文
posted @ 2022-03-17 11:33 渐逝的星光 阅读(1617) 评论(0) 推荐(0) 编辑
摘要:一、分区设计 1.使用类型 1)不指定分区键 如果建表时不指定分区键,则数据默认不分区,所有数据写到一个默认分区all里面。 2)使用整型 如果分区键取值属于整型且无法转换为日期类型YYYVYMMDD格式,则直接按照该整型的字符形式输出作为分区ID的取值。 3)使用日期类型 如果分区键取值属于日期类 阅读全文
posted @ 2022-03-17 11:08 渐逝的星光 阅读(9618) 评论(0) 推荐(0) 编辑