学习一门新的编程语言时,往往会从"hello world"程序开始,而接触一套新的大数据计算框架时,则一般会从WordCount案例入手,下面以大数据中最经典入门案例WordCount为例,来编写Flink代码,Flink底层源码是基于Java代码进行开发,在Flink编程中我们除了可以使用Java语言来进行编写Flink程序外,还可以使用Scala、Python语言来进行编写Flink程序,在后文章中我们将会主要使用Java和Scala来编写Flink程序。下面来准备下Flink开发环境。
本套课程中我们采用Flink最新版本1.16.0,Flink1.16.0版本官方文档地址:
【资料图】
https://nightlies.apache.org/flink/flink-docs-release-1.16/
Flink核心模块均采用Java开发,所以运行环境需要依赖JDK,Flink可以基于类UNIX 环境中运行,例如:Linux、Max OS、Windows等,在这些系统上运行Flink时都需要配置JDK环境,Flink 1.16.0版本需要JDK版本为JDK11,目前版本也支持使用JDK8,后续版本对JDK8的支持将会移除。
考虑到Flink后期与一些大数据框架进行整合,这些大数据框架对JDK11的支持并不完善,例如:Hive3.1.3版本还不支持JDK11,所以本课程采用JDK8来开发Flink。对JDK8安装及配置不再详述。
附:JDK11 下载地址如下:
https://www.oracle.com/java/technologies/javase-jdk11-downloads.html
我们可以选择IntelliJ IDEA或者Eclipse作为Flink应用的开发IDE,Flink开发官方建议使用IntelliJ IDEA,因为它默认集成了Scala和Maven环境,使用更加方便,我们这门课使用IntelliJ IDEA开发工具,具体安装步骤不再详述。
通过IntelliJ IDEA进行开发Flink Application时,可以使用Maven来作为项目jar包管理工具,需要在本地安装Maven及配置Maven的环境变量,需要注意的是,Maven版本需要使用3.0.4及以上,否则编译或开发过程中会有问题。这里使用Maven 3.2.5版本。
Flink开发语言可以选择Java、Scala、Python,如果用户选择使用Scala作为Flink应用开发语言,则需要安装Scala执行环境。
在Flink1.15之前版本,如果只是使用Flink的Java api ,对于一些没有Scala模块的包和表相关模块的包需要在Maven引入对应的包中加入scala后缀,例如:flink-table-planner_2.11,后缀2.11代表的就是Scala版本。在Flink1.15.0版本后,Flink添加对opting-out(排除) Scala的支持,如果你只使用Flink的Java api,导入包也不必包含scala后缀,你可以使用任何Scala版本。如果使用Flink的Scala api,需要选择匹配的Scala版本。
从Flink1.7版本往后支持Scala 2.11和2.12版本,从Flink1.15.0版本后只支持Scala 2.12,不再支持Scala 2.11。Scala环境可以通过本地安装Scala执行环境,也可以通过Maven依赖Scala-lib引入,如果本地安装了Scala某个版本,建议在Maven中添加Scala-lib依赖。Scala2.12.8之后的版本与之前的2.12.x版本不兼容,建议使用Scala2.12.8之后版本。
Flink可以操作HDFS中的数据及基于Yarn进行资源调度,所以需要对应的Hadoop环境,Flink1.16.0版本支持的Hadoop最低版本为2.8.5,本课程中我们使用Hadoop3.3.4版本。关于Hadoop3.3.4版本搭建,后续文章会手把手进行搭建。
标签:
学习一门新的编程语言时,往往会从 "helloworld "程序开始,而接...
1、战国楚宋玉《对楚王问》:“客有歌於郢中者,其始曰《下里巴人》...
来源:人民日报(一)在结核病防治领域,她写下了重要一笔。如今年...
否认3个月成交278元!曹曦月方:拿证据说话!网友晒证据打脸,曹颖,...
欢迎观看本篇文章,小勉来为大家解答以上问题。韩寒的作品有哪些,...
1、陈子昂(约公元661~公元702),唐代文学家,初唐诗文革新人物之...
1、德兴市时代房地产开发有限公司是一家以房地产开发为主的公司。2...
1、只要符合报考资格。2、2022年会计初级职称考试报名时间一般为每...
1、德克控股(深圳)有限公司于2019年07月29日成立。2、法定代表人丁...
1、 痛经是女性在生理期经常会出现的现象,那么女性痛经该吃什么...
截至2023年3月17日(美国东部时间)收盘,上海电气(ADR)(SIELY US)...
一、题文才在农易两族断才在农易两族断中国古人称金星为“太白金星...
四川经济网讯(实习记者李露萍)四川是林草资源大省,森林草原防灭...
中国人民银行决定于2023年3月27日降低金融机构存款准备金率0 25个...
欢迎观看本篇文章,小勉来为大家解答以上问题。怎么说好普通话的方...
3月17日,以“心花怒放,奔跑垫江”为主题的国瑞·2022-2023重庆垫...
一、国内2名专家已前往美国照料丫丫3月13日,@顶端新闻记者在美国联...
欧洲中央银行当地时间3月16日召开货币政策会议,决定将欧元区三大...
1、 日常生活中,便秘是一件很痛苦的事情,每当大家有便秘情况的...
大家好,我是爽哥,本期分享的是3本精品好书,一本画家文,一本都市...
正视“孔乙己文学”背后的焦虑今天的热度非常高,现在也是在热搜榜...
参考消息网3月16日报道据新加坡《联合早报》网站3月15日报道,中国...
1、月亮的故事主要就是嫦娥奔月的故事,还有吴刚伐桂的故事等等,另...
瑞士信贷发布声明:将从瑞士央行借款500亿瑞士法郎,瑞士央行,瑞士法...
1、adulterated,英语单词,主要用作形容词、动词,作形容词时译为...
03月16日09时云南临沧疫情数据阳了以后为什么会腰疼?应该怎么办?...
1、ANYCALL三部曲-ANYCLUB,ANYMOTION,ANYSTAR(这三首是三星手机广告曲)KISS-san
临汾尧都交警:聚力为民服务护航企业发展
悦赏|不到巴彦淖尔怎知春色如许