
技术
文章平均质量分 83
Answer_Ball
这个作者很懒,什么都没留下…
展开
-
Clickhouse学习之路(六)-- Java链接clickhouse
clickhouse 有两种 JDBC 驱动实现。官方驱动:<dependency> <groupId>ru.yandex.clickhouse</groupId> <artifactId>clickhouse-jdbc</artifactId> <version>0.1.52</version></dependency>三方提供的驱动:<dependency>原创 2021-08-16 18:59:53 · 3752 阅读 · 1 评论 -
Clickhouse学习之路(五)-- 集群方案研究
方案一:MergeTree + Distributed架构图架构解析:MergeTree + Distributed的分布式架构方案,利用的是Distributed表的特性+MergeTree表的特性,分布式表不存储数据,数据来自本地表,将分布式表的数据分为3个shard,每台节点存储三分之一的数据,用户查询的时候是从分布式表所在的节点聚合从Ck1,CK2,CK3的查询结果,然后返回用户,写入数据可以写入分布式表,当然这样的写入方式问题很多,一般是禁止写入分布式表的,那么选择写入本地表的化,需要将数原创 2021-08-16 18:59:08 · 1911 阅读 · 0 评论 -
Clickhouse学习之路(四)-- 单库启动并远程链接、操作举例
单库启动,并远程链接一.ClickHouse Server启动前需要注意几点:ClickHouse Server服务本身依赖三个端口,这三个端口的默认值是9000(TCP协议)、8123(HTTP协议)和9009(集群数据复制),映射到宿主机的时候尽可能一一对应,所以需要确保宿主机的这三个端口没有被占用,可以使用Docker的参数-p指定容器和宿主机的端口映射。ClickHouse Server正常使用需要修改容器系统的文件句柄数量配置ulimit nofile,可以使用Docker参数–ulimi原创 2021-08-09 17:22:17 · 694 阅读 · 0 评论 -
Clickhouse学习之路(三)-- 分布式表、索引原理
一.Clickhouse分布式表(引擎)的概念及举例1.ClickHouse分布式表的本质并不是一张表,而是一些本地物理表(分片)的分布式视图,本身并不存储数据。2.支持分布式表的引擎是Distributed,建表DDL语句示例如下,_all只是分布式表名比较通用的后缀而已。3.分布式(Distributed)表引擎是分布式表的代名词,它⾃身不存储任何数据,⽽是作为数据分⽚的透明代理,能够⾃动的路由数据⾄集群中的各个节点,即分布式表需要和其他数据表⼀起协同⼯作。分布式表会将接收到的读写任务,分发到各个原创 2021-08-09 17:21:21 · 1485 阅读 · 0 评论 -
Clickhouse学习之路(二)-- 分区、分片原理
一.Clickhouse分区的概念1.分区是表的分区,具体的DDL操作关键词是 PARTITION BY,指的是一个表按照某一列数据(比如日期)进行分区,对应到最终的结果就是不同分区的数据会写入不同的文件中。2.ClickHouse支持PARTITION BY子句,在建表时可以指定按照任意合法表达式进行数据分区操作,比如通过toYYYYMM()将数据按月进行分区、toMonday()将数据按照周几进行分区、对Enum类型的列直接每种取值作为一个分区等。3.数据Partition在ClickHouse中原创 2021-08-05 19:07:57 · 8142 阅读 · 1 评论 -
Clickhouse学习之路(一)-- 功能简介
Clickhouse是一个简单化和统一化的大数据分析平台。一.版本介绍企业应用建议使用LTS版本,LTS版本是为企业应用推出的稳定版本,差不多6个月一个版本。二.功能概述1. 真正的面向列的DBMS在一个真正的面向列的DBMS中,没有任何“垃圾”存储在值中。例如,必须支持定长数值,以避免在数值旁边存储长度“数字”。例如,十亿个UInt8类型的值实际上应该消耗大约1 GB的未压缩磁盘空间,否则这将强烈影响CPU的使用。由于解压缩的速度(CPU使用率)主要取决于未压缩的数据量,...原创 2021-08-05 19:04:43 · 439 阅读 · 0 评论