自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Flink自定义实现端到端的exactly-once语义(java版本)

Flink 中有两个 Exactly-Once 语义实现,一个是 Kafka,另一个是 StreamingFileSink。参考他们实现的逻辑,来自定义实现MySQLSink的端到端exactly-once语义。分析:Flink的checkpoint机制(通过Chandy-Lamport):JobManager的CheckpointCoordinator通过在stream中添加barrier,当barrier前的数据的所有operator的checkpoint都操作完成并返回Checkpoi

2022-02-10 12:12:09 4486 1

原创 Flink BroadCastState实现事件流、广播流 双流connect(java版本)

需求:事件流(kafka中):userID,eventTime,eventType,productID广播流(mysql中):userID,userName,userAge根据广播流中的用户数据将事件流中的数据补全,修改广播流中的数据,结果实时更新:userID,eventTime,eventType,productID,userName,userAge实现方法:1.flink消费kafka数据,用mapfunction处理数据时直接查询mysql中的数据进行补全,性能差,因为每次新到一

2022-02-08 21:30:36 3691 4

原创 Flink消费kafka数据实时写入Clickhouse(java版本)

Flink消费kafka数据实时写入Clickhouse(java版本)

2022-01-30 16:49:06 4337

原创 Clickhouse之ReplicatedMergeTree原理详解

ReplicatedMergeTree作为Clickhouse(下文简称CK)复制表系列的基础表引擎,包涵了CK数据副本最核心的逻辑,本文详细介绍了ReplicatedMergeTree的核心原理,以便于更好地去使用ReplicatedMergeTree系列的表引擎。在ReplicatedMergeTree的核心逻辑中,大量使用了ZooKeeper分布式协同的能力,来实现多个ReplicatedMergeTree副本实例之间的协同,包括主副本选举、副本状态感知、操作日志分...

2022-01-17 10:19:42 10240

原创 Clickhouse projection(物化视图增强版)

clickhouse materialize view的增强版,构建lazy模式的projection,空间换时间,解决物化视图查询可能不一致的问题,构建projection,上层应用无感知,查询会自动匹配最优projection进行计算。参考:https://mp.weixin.qq.com/s/X5yoBF7ePwdkEIXTpuxubw...

2021-09-01 17:45:52 1007

转载 SQL语句性能优化

1, 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2,应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特殊的值,如0,-1作为默 认值。3,应尽量避免在 where 子句中使用!=或<>操作符, MySQL只有对以下操作符才使用索引:<,<=,=,>,>=,BETWEEN,IN,以及某些时候的LIKE。

2021-08-26 17:42:53 328

原创 Clickhouse使用经验之谈(持续更新)

1.OLAP工具。2.适合大宽表,读大量行但是少量列,结果集小。3.不更新或少更新(延迟高、代价大)。4.避免热点、数据倾斜,对写入数据预处理,将数据均匀分散到各shard的各块盘。5.集群限流方案:并发高导致集群瘫痪 大查询导致集群瘫痪(包括:查询请求不合理导致集群负载过高,扫描数据量过大,join使用不规范等)避免对集群安全性造成影响,需要提前做预判。6.集群统一调度方案:队列有优先级控制,ad-hoc查询优先级高,同步查询,大部分查询对于使用者来说感觉不到异步。

2021-08-26 11:49:23 914

原创 Clickhouse MergeTree底层存储(二进制文件)分析

本文从二进制文件的角度出发,重点介绍ck的MergeTree表引擎下的数据是如何在硬盘上存储的,以便于更好地去理解MergeTree表引擎的原理。首先创建一个MergeTree的基础表,如下:注:将索引粒度置为2,并且按行限制索引粒度。导入一些测试数据,如下:数据文件在硬盘上的存储如下:对上述各文件进行分析:checksums.txt校验文件,使用...

2021-08-04 21:09:42 1163

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除