Flink
菲橙
专注于大数据,分布式,云计算领域
展开
-
Flink 整合 Nacos实现动态服务配置功能Demo
1 前言当我们开发Flink程序的时候一些配置或一些规则可能需要根据系统要求或需求发生变更,一般常见的做法我们可以开启通过将配置或规则存储到数据库(如MYSQL,REDIS),然后通过在程序中我们自己通过JDBC连接的方式去读取规则。这样做比较麻烦,我们可以通过阿里开源的NACOS来协助我们实现这样的功能,NACOS 官网是如下定义的:Nacos 致力于帮助您发现、配置和管理微服务。Na...原创 2020-02-26 21:54:18 · 2955 阅读 · 0 评论 -
Flink SQL快速构建实时计算平台
1 描述利用FLINK SQL 构建一个数据实时分析平台,主要包含以下两个需要实现的需求点1 FLINK SQL 从KAFKA消费数据,并将数据写入到ES 通过KIBANA查询2 FLINK SQL 从KAFKA消费数据,计算每十分钟用户独立数据(UV)2 系统版本1 Java 8+2 flink 1.10 +3 elasticsearch 6+4 kibana 6...原创 2020-02-25 13:58:09 · 1934 阅读 · 1 评论 -
利用Flink迁移MYSQL数据Demo
环境1 Flink 1.4.12 java 1.8+3 mysql 5.7+Demo需求利用Flink从MYSQL数据库迁移数据并对数据进行处理后将数据迁移到另一个MYSQL库案例代码package com.bigdata.flink.java.demo;import com.bigdata.flink.scala.Constants;import ...原创 2020-02-22 12:01:01 · 1198 阅读 · 1 评论 -
一文搞懂 Flink 的 Exactly Once 和 At Least Once【总结】
一文搞懂 Flink 的 Exactly Once 和 At Least Oncehttps://mp.weixin.qq.com/s/ZbDzxDgd9phmNIVhNhXImwBarrir总结1 Source会自动的插入一个Barrir 跟随Kafka消息一同发送到下游Operator算子2 当Operator1接收到Barrair(b1)后将触发checkpoint触发器...原创 2019-08-09 16:43:25 · 2338 阅读 · 0 评论 -
Streaming(DataStream API): 概念介绍
Streaming(DataStream API)原文参考:https://ci.apache.org/projects/flink/flink-docs-release-1.6/dev/datastream_api.html#collection-data-sources Overview Flink DataStream Api 编程指南 在Flink中的DataSt...翻译 2018-09-20 00:11:09 · 3223 阅读 · 0 评论 -
Flink 原理与实现:内存管理
如今,大数据领域的开源框架(Hadoop,Spark,Storm)都使用的 JVM,当然也包括 Flink。基于 JVM 的数据分析引擎都需要面对将大量数据存到内存中,这就不得不面对 JVM 存在的几个问题:Java 对象存储密度低。一个只包含 boolean 属性的对象占用了16个字节内存:对象头占了8个,boolean 属性占了1个,对齐填充占了7个。而实际上只需要一个bit(1/8字节)...转载 2018-09-06 16:49:53 · 1786 阅读 · 0 评论 -
Flink 原理与实现:如何处理反压问题
流处理系统需要能优雅地处理反压(backpressure)问题。反压通常产生于这样的场景:短时负载高峰导致系统接收数据的速率远高于它处理数据的速率。许多日常问题都会导致反压,例如,垃圾回收停顿可能会导致流入的数据快速堆积,或者遇到大促或秒杀活动导致流量陡增。反压如果不能得到正确的处理,可能会导致资源耗尽甚至系统崩溃。目前主流的流处理系统 Storm/JStorm/Spark Streaming...转载 2018-09-06 10:19:39 · 3732 阅读 · 1 评论 -
Flink 原理与实现:理解 Flink 中的计算资源
本文所讨论的计算资源是指用来执行 Task 的资源,是一个逻辑概念。本文会介绍 Flink 计算资源相关的一些核心概念,如:Slot、SlotSharingGroup、CoLocationGroup、Chain等。并会着重讨论 Flink 如何对计算资源进行管理和隔离,如何将计算资源利用率最大化等等。理解 Flink 中的计算资源对于理解 Job 如何在集群中运行的有很大的帮助,也有利于我们更透彻...转载 2018-09-03 22:24:02 · 1014 阅读 · 0 评论 -
Flink 原理与实现:如何生成 StreamGraph
继上文Flink 原理与实现:架构和拓扑概览中介绍了Flink的四层执行图模型,本文将主要介绍 Flink 是如何根据用户用Stream API编写的程序,构造出一个代表拓扑结构的StreamGraph的。 StreamGraph 相关的代码主要在 org.apache.flink.streaming.api.graph 包中。构造StreamGraph的入口函数是 StreamGraph...转载 2018-09-02 17:33:11 · 1940 阅读 · 0 评论 -
Flink 原理与实现:Window 机制
Flink 认为 Batch 是 Streaming 的一个特例,所以 Flink 底层引擎是一个流式引擎,在上面实现了流处理和批处理。而窗口(window)就是从 Streaming 到 Batch 的一个桥梁。Flink 提供了非常完善的窗口机制,这是我认为的 Flink 最大的亮点之一(其他的亮点包括消息乱序处理,和 checkpoint 机制)。本文我们将介绍流式处理中的窗口概念,介绍 F...转载 2018-09-04 23:35:54 · 747 阅读 · 0 评论 -
Flink 原理与实现:架构和拓扑概览
架构要了解一个系统,一般都是从架构开始。我们关心的问题是:系统部署成功后各个节点都启动了哪些服务,各个服务之间又是怎么交互和协调的。下方是 Flink 集群启动后架构图。当 Flink 集群启动后,首先会启动一个 JobManger 和一个或多个的 TaskManager。由 Client 提交任务给 JobManager,JobManager 再调度任务到各个 TaskManager...转载 2018-09-02 00:44:42 · 893 阅读 · 0 评论