
Flink实战
wuhulala
这个作者很懒,什么都没留下…
展开
-
【Flink博客阅读】 Flink 作业执行深度解析(WordCount) 读后实战总结
Flink 作业执行解析所有有关Flink作业执行的介绍都包含以下的这个流程,今天我们就是实战一些这些转换是如何完成的?CodeStreamGraphJobGraphExecutionGraph物理执行计划StreamGraph Class representing the streaming topology. It contains all the information necessary to build the jobgraph for the execution. 这个类表示流处理的拓扑原创 2020-06-21 17:47:00 · 976 阅读 · 0 评论 -
【Flink 异常】FlinkX 与 Flink java.lang.NoSuchMethodError: org.apache.flink.api.java.ExecutionEnvironment
java.lang.NoSuchMethodError: org.apache.flink.api.java.ExecutionEnvironment.(Lorg/apache/flink/core/execution/PipelineExecutorServiceLoader;Lorg/apache/flink/configuration/Configuration;Ljava/lang/ClassLoader;)V使用flinkx放入lib里面,发现了使用yarn-per-job的时候出现了以上错误原创 2020-06-21 03:03:16 · 3629 阅读 · 0 评论 -
Flink 实战(十二) Flink 多Sink的数据一致性验证
FlinkHbaseSink1kafkaSink2这种场景下面当hbase写入的失败的时候,不影响kakfa的写入。如何保证hbase和kafka都写入成功呢?原创 2020-06-18 19:36:49 · 4643 阅读 · 1 评论 -
【Flink博客阅读】 Flink Runtime 核心机制剖析-读后总结
Flink Runtime 核心机制剖析 读后总结从这篇文章里面可以主要解释了以下的问题:Flink整体是一个什么样的架构?master-slaveFlink 执行过程中有哪些组件?MasterDispatcher 负责接收用户提供的作业,并且负责为这个新提交的作业拉起一个新的 JobManager 组件。ResourceManager 负责资源的管理,在整个 Flink 集群中只有一个 ResourceManager。JobManager 负责管理作业的执行,在一个 Flink 集原创 2020-06-09 23:22:58 · 610 阅读 · 0 评论 -
Flink 实战(十一) Flink SideOutput 在风险预警场景下的应用
风险预警场景背景在风险预警的场景下,当预警消息需要发送给用户的时候,往往会根据不同的预警等级通过不同的渠道对用户进行内容的通知。预警等级预警渠道重大风险短信、钉钉一般风险短信、站内信提示风险站内信正常-一般我们会把预警信息流先进行分割,然后发送到不同的kafka topic里面或者数据库中,供发送程序处理。这里对发送的优先级以及模板不做过多的处理。示意图如下。如果我们使用Flink的话,需要把一个流进行分割的话,需要使用一个叫做Side原创 2020-06-06 13:30:19 · 1002 阅读 · 0 评论 -
Flink 应用场景资料整理
Flink最近flink的热度也越来越高,它是什么?参考官网(https://flink.apache.org)那么它能干什么是我们今天的重点。官方也提供了很好的学习环境和实战资料,但是对于资料没有更细粒度的划分,我基于Flink中文社区的应用场景资料,进行了整理,希望可以快速、全面的了解Flink的应用场景。看看各个大厂都基于Flink做了什么事情。社区应用场景以上资料是基于https://ververica.cn/corporate-practice/中的行业案例分析得出,大致分为以下原创 2020-06-03 22:15:50 · 491 阅读 · 0 评论 -
FlinkX脏值处理
FlinX脏值处理在大量数据的传输过程中,必定会由于各种原因导致很多数据传输报错(比如类型转换错误),这种数据DataX认为就是脏数据。 – by DataX配置实例"dir原创 2020-05-24 18:10:34 · 1964 阅读 · 1 评论 -
FlinkX流控实现
FlinkX流控实现流量控制防止并发性能过高对源数据库造成影响。在FlinkX中,流量控制是采用Byte为单位/s进行流量控制的。配置参数实例:{ “speed”: { "bytes": 0 }}当 bytes > 0 时,才会开启流量控制。整个计算的速率是根据整个系统中的指标,按照每秒的窗口,实时计算出限流的速率的。通过对读取记录的限流,但是没有背压。限流原理实现逻辑首先我们看一下读取器的初始化过程,InputFormat初始化publi原创 2020-05-24 10:35:39 · 2077 阅读 · 0 评论 -
FlinkX 分片读取原理
FlinkX 分片读取原理在数据同步工具中,将数据从源头读取到数据缓存是最重要的一环之一,算是左膀。所以在整个流程,从技术场景上,一定要支持数据的分片与并行读取、流控,从业务角度上,需要支持脏值处理与增量读取。而今天重点来探讨一下分片读取的原理。分片原理分片是将待读取的数据平均分配,尽量的使各个分片任务均衡,不会让数据倾斜从而导致个别节点的同步压力过大(硬件-网卡、cpu等)。下面是配置了一个读取通道为3的作业配置示例:"speed": { "channel": 3, "b原创 2020-05-23 23:38:28 · 1668 阅读 · 0 评论 -
Flink 数据同步先行者- FlinkX
Flink 数据同步先行者- FlinkX最近在学习Flink-Connector,并尝试使用一些小Demo。联想到之前的DataX与FlinkX,由感而发。从我个人的理解上,Connector就是为了数据通道而生的基础设施,而目前数据通道做的比较全的就是DataX。DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。DataX本身作为离线数据同步框架,将原创 2020-05-17 12:20:10 · 4828 阅读 · 2 评论 -
Flink番外(一) 搭建本地的flink官方文档
文章目录下载官方源码打开docs目录安装ruby配置 `_config.yml`执行安装命令挂载到nginx目录重启nginx访问 192.168.1.101/flink (ip填你自己的,本地就用localhost)目前Flink的官网 ci.apache.org 访问过慢,可能我这里没有科学上网导致的。看了下 ip在法国https://ci.apache.org/projects/fli...原创 2020-04-26 23:18:14 · 532 阅读 · 0 评论 -
Flink实战(十)Flink on Yarn模式
文章目录概述模式1 Yarn Per Job实践模式2 Yarn On Session实践参考资料概述FLink 如何执行在Yarn上面的呢?首先我们需要了解到Flink的底层执行流程,然后看哪一步与Yarn进行适配,执行。Flink底层执行流程:用户通过 DataStream API、DataSet API、SQL 和 Table API 编写 Flink 任务,它会生成一个J...原创 2020-04-02 21:59:33 · 2201 阅读 · 0 评论 -
Flink实战(九)Flink 开启历史服务器
今天突然发现所有作业的历史执行记录都没有了。所以找了一下flink的历史服务器怎么配置的。flink-conf.yaml配置task的存档目录# Directory to upload completed jobs to. Add this directory to the list of# monitored directories of the HistoryServer as w...原创 2020-03-08 21:22:30 · 1943 阅读 · 0 评论 -
Flink 事件、水印、计算的关系
看了好久的对水印的介绍,总结出以下的关系。水印:用于衡量事件时间进度的机制为了解决乱序事件输出正确的结果。事件、水印、计算的关系生成触发事件水印窗口计算事件生成水印的策略(1)递增式的水印生成,适合递增的数据,如果有不递增的数据,那么会被认为坏数据处理(2)周期计算,每次生成通过-周期大小,比如设置的周期是10s,那么2020-01-20 11:20:20 对应的水印是 2...原创 2020-01-27 17:48:34 · 457 阅读 · 0 评论 -
Flink实战(八)Flink 使用 Kafka Source & Kafka Sink
FlinkKafkaConnector该连接器提供对Apache Kafka服务的事件流的访问。Flink提供了特殊的Kafka连接器,用于从Kafka主题读写数据。 Flink Kafka Consumer与Flink的检查点机制集成在一起,以提供有且仅有一次的语义。为此,Flink不仅仅依赖于Kafka的消费者群体偏移量跟踪,还内部跟踪和检查这些偏移量。开发流程接一下以一个示例配置来介...原创 2019-10-20 17:53:51 · 8021 阅读 · 0 评论 -
Flink实战(七) Streaming(DataStreaming) 总览
文章目录Flink DataStream API Programming Guide示例程序数据源 Data Sources基于文件的基于Socket的自定义数据转换 (DataStream Transformations)数据接收器 Data Sinks写入文件终端打印写入Socket自定义接收器Iterations 迭代Execution ParametersFault Tolerance 容...原创 2019-10-20 09:32:34 · 1453 阅读 · 0 评论 -
Flink实战(六)Flink读取Hdfs文件
接一下以一个示例配置来介绍一下如何以Flink连接HDFS1. 依赖HDFSpom.xml 添加依赖 <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-compatibility_2.11</artifactId> &...原创 2019-10-11 21:39:46 · 23313 阅读 · 1 评论 -
Flink实战(五) Batch(DataSet) 运算的相关概念
文章目录1. 示例程序2. 转换函数3. 数据源配置CSV解析规则递归读取输入路径目录读取压缩文件4. 数据输出 (Sink)5. 迭代操作Bulk Iterations(**批量迭代**)Delta Iterations(**增量迭代**)在函数中操作数据对象Object-Reuse Disabled (DEFAULT)Object-Reuse EnabledDebuggingLocal Exe...原创 2019-09-22 17:03:36 · 1378 阅读 · 0 评论 -
Flink实战(四) Flink 基本概念
文章目录1. DataSet and DataStream2. 剖析 Flink程序3. 延迟计算4. key 的 定义方式定义元组的key使用字段表达式定义key使用KeySelector 定义Key5. 转换函数Implementing an interfaceAnonymous classesJava 8 LambdasRich functions6. 支持的数据类型7 累加器&计数...原创 2019-09-22 16:54:48 · 566 阅读 · 0 评论 -
Flink实战(三)开发过程中将程序提交到集群中执行
主要配置使用 createRemoteEnvironment()方法即可 // 配置服务地址与当前jar所在路径 final ExecutionEnvironment env = ExecutionEnvironment.createRemoteEnvironment("localhost", 8081, "D:\\01code\\personal\\flink\...原创 2019-09-22 16:50:33 · 1320 阅读 · 0 评论 -
Flink实战(二)开发一个简单的程序 WordCount
文章目录开发搭建开发环境启动应用程序1. 启动nc2. 启动程序开发搭建开发环境准备 pom.xml 文件<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven...原创 2019-09-22 16:48:22 · 756 阅读 · 2 评论 -
Flink实战(一) 开发环境安装
安装windows 安装https://flink.apache.org/zh/downloads.html#section启动flink-1.9.0\bin\start-cluster.batdocker 安装https://ci.apache.org/projects/flink/flink-docs-release-1.9/getting-started/tutorials/...原创 2019-09-22 16:36:11 · 635 阅读 · 0 评论