flink

Flink读取Kafka数据Sink到MySQL和HBase数据库

萝らか妹 提交于 2020-01-28 13:53:04
Flink读取Kafka数据Sink到MySQL和HBase数据库 Flink将流数据Sink到数据库,一般需要自己自定义Sink的实现。下面示例,演示Sink到MySQL和HBase示例。在这里插入代码片 maven依赖 < dependencies > < ! -- https : / / mvnrepository . com / artifact / org . apache . flink / flink - scala -- > < dependency > < groupId > org . apache . flink < / groupId > < artifactId > flink - scala_2 . 11 < / artifactId > < version > 1.9 .0 < / version > < / dependency > < ! -- https : / / mvnrepository . com / artifact / org . apache . flink / flink - streaming - scala -- > < dependency > < groupId > org . apache . flink < / groupId > < artifactId > flink - streaming - scala_2 .

flink-1.9.1单机版环境的搭建

可紊 提交于 2020-01-28 01:52:59
Flink基础环境 本次安装Flink版本为flink-1.9.1,可以点击此链接直接下载 https://www.apache.org/dyn/closer.lua/flink/flink-1.9.1/flink-1.9.1-bin-scala_2.11.tgz 前提条件 1.安装JDK [ root@CentOSA ~ ] # rpm -ivh jdk-8u191-linux-x64.rpm warning: jdk-8u191-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY Preparing .. . ########################################### [100%] 1:jdk1.8 ########################################### [100%] Unpacking JAR files .. . tools.jar .. . plugin.jar .. . javaws.jar .. . deploy.jar .. . rt.jar .. . jsse.jar .. . charsets.jar .. . localedata.jar .. . [ root@CentOSA ~ ] # java

(二)flink的DataSet:广播变量的使用

喜夏-厌秋 提交于 2020-01-27 03:33:44
文章目录 广播变量允许您将数据集提供给的operator所有并行实例,该数据集将作为集合在operator中进行访问 注意:由于广播变量的内容保存在每个节点的内存中,因此它不应该太大,常见使用在一些字典映射的环境中 package batch ; import org.apache.flink.api.common.functions.MapFunction ; import org.apache.flink.api.common.functions.RichMapFunction ; import org.apache.flink.api.java.DataSet ; import org.apache.flink.api.java.ExecutionEnvironment ; import org.apache.flink.api.java.operators.MapOperator ; import org.apache.flink.api.java.tuple.Tuple2 ; import org.apache.flink.configuration.Configuration ; import java.util.ArrayList ; import java.util.HashMap ; import java.util.List ; public class

企业实践 | 如何更好地使用 Apache Flink 解决数据计算问题?

霸气de小男生 提交于 2020-01-24 07:42:33
业务数据的指数级扩张,数据处理的速度可不能跟不上业务发展的步伐。基于 Flink 的数据平台构建、运用 Flink 解决业务场景中的具体问题等随着 Flink 被更广泛的应用于广告、金融风控、实时 BI、实时数仓、实时推荐等多种业务场景,在生产实践中已有丰富的案例与优秀的经验。 Flink Forward Asia 倒计时 28 天 ,企业实践专题大会邀请了 字节跳动、滴滴出行、快手、Bilibili、网易、爱奇艺、中国农业银行、奇虎360、贝壳找房、奇安信 等不同行业一线技术专家分享 Apache Flink 与大数据基础平台建设进展和实践,详细解读大数据相关技术在各行业的应用与落地,包括应用场景、业务痛点、面临挑战、如何破局等宝贵实践经验。 点击下方链接可提前了解更多有趣议程: https://developer.aliyun.com/special/ffa2019-conference?spm=a2c6h.13239638.0.0.21f2795503PjxQ 部分精彩议题 《Apache Flink 在字节跳动的实践与优化》 Speaker:张光辉@字节跳动 主要介绍字节跳动最近在 Flink 上做的相关实践与优化工作,主要分 6 个部分来介绍,分别是: 1.Flink SQL 的应用和扩展 ; 2.Flink 负载均衡调度,分两个阶段,分别在 Yarn 分配

flink on yram 任务管理

点点圈 提交于 2020-01-24 04:01:04
FLINK ON YRAM flink on yram 提交流程 yarn-session提供两种模式 会话模式(适合大量的小任务不用重新调度) 分离模式(适合大任务) flink on yram 提交流程 flink运行在YARN上,可以使用 yarn-session 来快速提交作业到YARN集群。我们先来看下Flink On Yarn模式,Flink是如何和Yarn进行交互的。 上传jar包和配置文件到HDFS集群上 申请资源和请求AppMaster容器 Yarn分配资源AppMaster容器,并启动JobManager JobManager和ApplicationMaster运行在同一个container上。 一旦他们被成功启动,AppMaster就知道JobManager的地址(AM它自己所在的机器)。 它就会为TaskManager生成一个新的Flink配置文件(他们就可以连接到JobManager)。 这个配置文件也被上传到HDFS上。 此外,AppMaster容器也提供了Flink的web服务接口。 YARN所分配的所有端口都是临时端口,这允许用户并行执行多个Flink 4.申请worker资源,启动TaskManager yarn-session提供两种模式 会话模式(适合大量的小任务不用重新调度) 使用Flink中的yarn-session(yarn客户端)

Flink Weekly | 每周社区动态更新 - 20200107

人盡茶涼 提交于 2020-01-23 23:00:19
本文为 Flink Weekly 的第三期,由 Tang Yun 整理,主要内容包括:Flink 1.10.0 的发布进展,将 blink planner 设置为 SQL client 默认 planner 的讨论,以及如何支持 SQL client gateway 的 FLIP。 作者:唐云(茶干) 大家好,2020 年转眼就来了,先恭喜大家新年快乐,Flink 社区也会在新的一年中继续陪伴大家,一起将 Flink 做大做好。 本文为 Flink Weekly 的第三期,由 Tang Yun 整理,主要内容包括:Flink 1.10.0 的发布进展,将 blink planner 设置为 SQL client 默认 planner 的讨论,以及如何支持 SQL client gateway 的 FLIP。 Flink 开发进展 [Release] Yu 分享了目前 Flink-1.10 发布的喜人进展,release-1.10 分支刚被拉出来时有 46 个 blocker,11 个 critical 级别的 issue,目前已经下降到只有 12 个 blocker 级别的 issue,一个 RC 版本有望于近期发布,可以访问下面的链接一睹为快: http://apache-flink-mailing-list-archive.1008284.n3.nabble.com

Flink进阶教程:如何在两个DataStream上进行Join操作

别来无恙 提交于 2020-01-22 07:52:34
批处理经常要解决的问题是将两个数据源做关联Join操作。比如,很多手机APP都有一个用户数据源User,同时APP会记录用户的行为,我们称之为Behavior,两个表按照userId来进行Join。在流处理场景下,Flink也支持了Join,只不过Flink是在一个时间窗口上来进行两个表的Join。 目前,Flink支持了两种Join:Window Join(窗口连接)和Interval Join(时间间隔连接)。 Window Join 从名字中能猜到,Window Join主要在Flink的窗口上进行操作,它将两个流中落在相同窗口的元素按照某个Key进行Join。一个Window Join的大致骨架结构为: input1.join(input2) .where(<KeySelector>) <- input1使用哪个字段作为Key .equalTo(<KeySelector>) <- input2使用哪个字段作为Key .window(<WindowAssigner>) <- 指定WindowAssigner [.trigger(<Trigger>)] <- 指定Trigger(可选) [.evictor(<Evictor>)] <- 指定Evictor(可选) .apply(<JoinFunction>) <- 指定JoinFunction 下图展示了Join的大致过程

Flink笔记(二):Flink环境搭建(standalone模式)

北战南征 提交于 2020-01-21 17:18:36
1.Flink环境搭建 1.1 架构说明(standalone模式) standalone 是 Flink 自带的一个分布式集群,它不依赖其他的资源调度框架、不依赖 yarn 等。Spark也有一个自带的分布式资源调度模型,也叫作 standalone。 standalone模式进程名介绍: JobManager------->进程名字: StandaloneSessionClusterEntrypoint 我们又叫它: Master TaskManager----->进程名字: TaskManagerRunner 我们又叫它: Worker 1.2 机器分布 机器名(hosts) IP 角色 master 192.168.204.210 JobManager slave01 192.168.204.211 TaskManager slave02 192.168.204.212 TaskManager 1.3 安装 Flink 集群前提 已安装 JDK。如需了解安装教程,请点击链接: CentOS 7 安装 JDK8 】 关闭防火墙【 或者开放指定端口号 (点击链接: Linux 开放制定端口 )---- 线上环境不建议关闭防火墙 】 1.4 搭建步骤 安装路径:/usr/local/env 下 下载 Flink 安装包,请点击链接下载: 我是下载地址 ( Flink版本选择

实时平台-Flink篇

妖精的绣舞 提交于 2020-01-20 18:50:05
Flink任务统一通过实时平台统一管理的好处不用多说,这里简单介绍下实时平台-Flink模块的功能以及实现。 主要分为两大块 一、任务管理 任务管理主要包括任务的提交、暂停、下线、重启、历史版本回滚、checkpoint/savepoint管理、监控信息以及任务自动拉起等功能。运行的每个任务信息(AppId,JobId等)都会被保存起来,所以,任务重启的时候可以很轻松的根据自己的业务需求选择从哪个任务的哪个CheckPoint开始启动。 二、任务保障 任务保障主要从三个方面入手 1.Flink应用程序日志 从事过Java应用开发的人员一定知道,应用中的日志对于任务运行状况、错误排查有着至关重要的作用,对于Flink分布式应用来说,如果能将日志和Java应用一样输出,那绝对可以减少很多排查问题的时间和缩短获取任务异常的时间,具体实现可以参考 这篇文章 2.监控Kafka Group Lag和Status 大部分应用都是消费Kafka消息,对于消费组的堆积情况和运行状况预警是很有必要的,这里开发人员可以根据Topic的QPS和CheckPoint时间进行预估两次提交大概会有多大的Lag,然后进行设置Lag超过多大的阈值进行企微和邮件告警,必要的可以电话告警,主要分为信息的采集和平台告警两部分,具体实现可以参考 这篇文章 3.Flink任务监控信息

ambari HDP2.6.5 安装FLINK1.9

若如初见. 提交于 2020-01-20 01:28:56
ambari HDP2.6.5 安装FLINK1.9 ambari HDP2.6.5 安装FLINK1.9 要下载Flink服务文件夹,请运行以下命令 VERSION=`hdp - select status hadoop - client | sed 's/hadoop-client - \([0-9]\.[0-9]\).*/\1/' ` sudo git clone https: / / github . com / abajwa - hw / ambari - flink - service . git / var / lib / ambari - server / resources / stacks / HDP / $VERSION / services / FLINK 重新启动Ambari ambari - server restart flink 是1.8版本修改成1.9 修改configuration/flink-ambari-config.xml <property> <name>flink_download_url</name> <value>http://X.X.151.15/Package/flink-1.9.0-bin-scala_2.11.tgz</value> <description>Snapshot download location.