
clickhouse
文章平均质量分 67
ClickHouse是近年来备受关注的开源列式数据库,主要用于数据分析(OLAP)领域。
yyoc97
--
展开
-
clickhouse(十五、存储优化实践)
clickhouse存储优化,多种方式测试验证原创 2024-06-05 17:56:48 · 981 阅读 · 0 评论 -
clickhouse(十四、分布式DDL阻塞及同步阻塞问题)
验证处理clickhouse 分布式ddl和同步阻塞问题原创 2023-08-22 18:01:08 · 2413 阅读 · 0 评论 -
clickhouse(十三、JDBC引擎)
准备异常Caused by: java.sql.SQLException: No suitable driver found for jdbc:postgresql://dev-111:5432/report?user=dev&password=123456 at java.sql.DriverManager.getConnection(DriverManager.java:689) at java.sql.DriverManager.getConnection(原创 2020-12-18 18:33:51 · 1311 阅读 · 0 评论 -
clickhouse(十二、踩坑之路)
Q1DB::Exception: Cannot create table from metadata file /data/clickhouse/metadata/default/dwd_test.sql, error: DB::Exception: The local set of parts of table default.dwd_test doesn’t look like the set of parts in ZooKeeper: 65.88 million rows of 85.04 mi.原创 2020-09-14 13:37:53 · 22725 阅读 · 19 评论 -
clickhouse(十一、 实时分析优化AggregateFunction及物化视图 )
文章目录AggregateFunction物化视图原理AggregateFunctionAggregatingMergeTree就有些许数据立方体的意思,它能够在合并分区的时候,按照预先定义的条 件,聚合数据。同时,根据预先定义的聚合函数,计算数据并通过二进制的格式存入表内。将同一分组 下的多行数据,聚合成一行,既减少了数据行,又降低了后续聚合查询的开销。-- 建表语句CREATE TABLE agg_table( id String, city String, code Aggregate原创 2020-08-04 22:17:33 · 9382 阅读 · 0 评论 -
clickhouse(十、 特殊函数应用 )
文章目录分组取每组前n条分组、汇总同时计算表重命名分组取每组前n条数据分析分组展示N行想必大家都不陌生,clickhouse也很方便的提供了相关的查询语法:LIMIT n BY express,我们以系统表为例,用到的属性有数据库名、表名、表大小。-- 数据库分组取每个库下最大的三个表SELECT database, table, formatReadableSize(sum(data_compressed_bytes)) AS bytes FROM system.parts GR原创 2020-07-23 11:59:51 · 4155 阅读 · 0 评论 -
clickhouse(九、metabase链接及时区配置)
文章目录安装metabase配置clickhouse驱动metabase时区配置安装metabase# 选用docker方式,下载镜像docker pull metabase/metabase# 创建插件目录mkdir -p /data/docker/metabase/plugins# 启动容器,将目录挂载到容器/tmp 目录下docker run -d -v /data/docker/metabase/plugins:/tmp \ --name metabase \ meta原创 2020-07-13 10:36:14 · 6276 阅读 · 12 评论 -
ClickHouse之DBA运维宝典
ClickHouse 中有没有一些能够 “安家立命” 的运维 SQL 语句。我想对于这个问题很多朋友都会有兴趣,所以就在这里做一个简单的分享。在 ClickHouse 默认的 system 数据库下(databse),拥有众多的系统表。我们对 ClickHouse 运行状态的各种信息,就主要来自于这些系统表。接下来就列举一些常用的运维 SQL 语句。 当前连接数 众所周知,CH 对外暴露的原生接口分为 TCP和 HTTP 两类,通过system.metrics即可查询当前...转载 2020-06-30 09:50:44 · 1196 阅读 · 1 评论 -
clickhouse(八、特有存储结构和分布式表)
文章目录存储结构逻辑划分列式存储稀疏索引分布式表存储结构以下实例我们都以clickhouse最常用的*MergeTree(合并树)子类引擎来做介绍。逻辑划分以分布式表为例,那么ck数据存放于该集群下多个shard分片中。如果shard不在一个节点上,也就是数据会分散到多台机下。每个分片中的数据会根据建表时指定的partition在进行划分,而单个partition中,如果数据容量超过一定阈值又会重新拆分。# 表结构:${ck_data}/metadata/path_to_table/*.sql原创 2020-05-29 00:33:10 · 2124 阅读 · 0 评论 -
clickhouse(七、集群监控)
文章目录介绍chproxygrafanaprometheus安装配置chproxyprometheusgrafana监控配置配置DataSources导入模板查看效果结尾介绍集群监控对于一个生产应用的重要性不言而喻。今天我们就来看下clickhouse集群监控的实践。对于还不熟悉clickhouse相关组件的朋友,本节有必要先介绍一些工具。chproxy首先在使用ck集群时,通常我们通过会利用到 chproxy 这个开源的代理工具,主要用于负载均衡、并发控制、用户权限控制等操作。grafanag原创 2020-05-12 15:53:22 · 5381 阅读 · 11 评论 -
clickhouse(六、集群扩容)
文章目录背景方案复制配置权重测试结尾背景之前公司面临磁盘不足的问题、如果通过增加磁盘来缓解了。但是clickhouse金额集群扩容是发展迟早要面临的问题,所以尝试思考解决方案。ck不同于hadoop体系,hdfs当集群增减节点时可以通过balance命令去自动调节。但ck集群不能自动感知集群拓扑变化,也不能自动 balance 数据。当集群数据量较大,复制表和分布式表过多时、想做到表维度、或者...原创 2020-03-30 19:13:18 · 7695 阅读 · 7 评论 -
clickhouse(五、运维查看后台进程并杀死)
查看后台进程-- 这个命令和mysql是一样的show processlist;-- 如果进程太多,也可用通过查询系统表 processes,select * from system.processes;-- 指定主要关心字段select user,query_id,query,elapsed,memory_usagefrom system.processes;杀死后...原创 2019-11-17 19:06:14 · 15985 阅读 · 3 评论 -
clickhouse(四、运维查看数据库及表容量)
mysql数据库有information_schema.tables系统表记录表相关元数据,clickhouse对应的有system.parts表。下面是查看clickhouse数据库和表大小、行数及压缩率等方法。-- 查看数据库容量,以测试数据为参考select sum(rows) as "总行数", formatReadableSize(sum(data_uncompres...原创 2019-11-17 18:59:56 · 12941 阅读 · 2 评论 -
clickhouse(三、查询同步远程集群)
需求在使用ck时,我们难免会遇到跨集群的数据传输,比如数据备份,不同环境同步数据等。之前试过查询出来再写入,数据量少的情况还能接受,超过10w这样效率就显得很低了,而大数据环境下10w当然是不能接受的。所以ck也提供了一种比较高效的方式,直接跨集群传输,减少了io次数,进而大幅度提升效率。方案ck提供remote函数,允许我们去查询远程的服务。(这里要吐槽下ck的文档,目录结构的划分...原创 2019-09-18 14:53:10 · 4536 阅读 · 6 评论 -
clickhouse(二、高阶函数应用retention计算留存数)
文章目录前言准备查询结论前言clickhouse提供retention(cond1, cond2, …)函数方便计算用户留存率,当然也可以应用在其他需求上。准备建表CREATE TABLE login_log -- 用户登录日志(uid Int32, -- 用户唯一idlogin_time DateTime -- 用户登录时间) ENGINE = MergeTree P...原创 2019-06-22 23:51:16 · 6930 阅读 · 2 评论 -
clickhouse(一、 高阶函数应用实现hive分区设置行号row_number() )
文章目录前言准备逻辑代码结尾前言最近公司选用clickhouse体系作为数据解决方案,ck由于底层存储区别hadoop函数,导致hql一些很好用的特性无法按照之前的写法来实现,比如按分区设行号,first_value(),lag()等开窗函数也无法正常使用,这也直接影响了我们实现业务的效率,可能导致直接懵逼…这不趁着周末来研究一番ck特殊语法。以保证以后快速从ck中找出惯用的hql逻辑的替代方...原创 2019-06-22 19:14:08 · 9653 阅读 · 2 评论