可塑的骸骨

拯救过去的论调在今天看来无疑充满了荒诞色彩,人们也很轻易给这种穿越时空的辩证法打上“不可能”的标签。 往昔已逝,人们对过往的懊悔常深陷“要是当初…就好了”的执念,面对主体面对其符号性失败最直白的哀悼, 世俗的智慧总以“过去无法改变”来劝人“向前看”,这宛如一道温和的赦令,将人从对实在界创伤的无望凝视中拉开。 ...

阅读更多

大数据流上的Heavy Hitters

看了一些Flink RocksDB状态后端热key探测的研究,其中不可避免地要解决Heavy Hitters问题,简单记录。 Heavy Hitters(频繁项)以及它衍生出来的Top-K(前K最高频项)是大数据和流式计算领域非常经典的问题,并且在海量数据+内存有限+在线计算的前提下,传统的HashMap + ...

阅读更多

Flink反压的一些总结项

反压机制: 1:数据接受速率 大于 数据输出速率,压力往上游一步步传导,直到source 2:压力传递的细节: 1 输出缓冲区:resultpartition -> local bufferpool -> network bufferpool 2 输入缓冲区:inputgate...

阅读更多

记录一个监控Flink热点key的可行解法

背景抽象: 在物流系统中,上游业务系统向消息队列发送的运单和包裹数据可能存在: 短时间内(1秒或几秒)产生万级重复数据,维度关联导致笛卡尔积倍增,形成”大包裹数据” 导致下游Flink作业消费时出现数据倾斜,卡CP、OOM等问题。 需要在各作业中监控热点key以实现预警功能。 卡点: 通常会将每条数据...

阅读更多

基于 Binlog + Flink 实现多表数据同构 异构方案

数据异构 使用MySQL 的 Binlog 日志实时采集、统一分发、消息订阅和监控服务进行数据异构,即通过订阅 MySQL 的 Binlog 日志,通过接收 MQ 进行数据异地构建存储。 数据异构主要有两种方式,一种是顺序消费、另一种是并行消费。其中,在进行订单、订购的数据异构时是要求保证严格的顺序性的,因为...

阅读更多

nginx+lua+redis实现灰度发布

这里主要是简单记录使用nginx+lua+redis实现灰度 灰度方案: 常见的灰度实现方案: 1.请求路由:通过请求中的标识(如用户ID、设备ID、请求头等)来决定是否将请求路由到灰度环境。可以使用反向代理(如Nginx、Envoy)或API网关(如Kong、Apigee)来实现路由规则。 2.权重控制:...

阅读更多

Flink Runtime架构及部署模式

整体架构 JobManager 管理节点,每个集群至少一个(可以选择设置多个以保证集群高可用),管理整个集群计算资源,Job管理于调度执行,以及Checkpoint协调。 主要行动及组件: Checkpoint Coordinato...

阅读更多

kubernetes volume

Container(容器)中的磁盘文件是短暂的,当容器崩溃时,kubelet会重新启动容器,但最初的文件将丢失,Container会以最干净的状态启动。另外,当一个Pod运行多个Container时,各个容器可能需要共享一些文件。Kubernetes Volume可以解决这两个问题。 1 卷的类型 K...

阅读更多