导入并配置Flink SpringBoot样例工程
该章节内容适用于MRS 3.3.0及之后版本。
操作场景
为了运行FusionInsight MRS产品Flink组件的SpringBoot接口样例代码,需要完成下面的操作。当前支持GaussDB(DWS)样例工程。
该章节以在Linux环境下开发GaussDB(DWS) SpringBoot方式连接Flink服务的应用程序为例。
执行GaussDB(DWS)样例需提前登录GaussDB(DWS)所在节点创建用于接受数据的空表“test_lzh1”,创建命令如下:
create table test_lzh1 (id integer not null);
操作步骤
- 安装包含Flink服务的客户端。
以在集群内节点安装客户端为例:
- 登录Manager,在“主页”单击“下载客户端”,弹出“下载集群客户端”信息提示框。
- 选择“完整客户端”,选择与待安装节点架构相匹配的平台类型,勾选“仅保存到如下路径”,单击“确定”开始生成客户端文件。
文件生成后默认保存在主管理节点“/tmp/FusionInsight-Client”。
客户端软件包名称格式为:“FusionInsight_Cluster_集群ID_Services_Client.tar”。本章节仅以集群ID为1进行介绍,请以实际集群ID为准。
- 以客户端安装用户登录将要安装客户端的服务器。
- 进入安装包所在目录,执行如下命令解压软件包。
tar -xvf FusionInsight_Cluster_1_Services_Client.tar
- 执行如下命令校验解压得到的文件,检查回显信息与sha256文件里面的内容是否一致,例如:
sha256sum -c FusionInsight_Cluster_1_Services_ClientConfig.tar.sha256
- 解压获取的安装文件。
- 进入安装包所在目录,执行如下命令安装客户端到指定目录(绝对路径),例如安装到“/opt/hadoopclient”目录。
cd /tmp/FusionInsight-Client/FusionInsight_Cluster_1_Services_ClientConfig
./install.sh /opt/hadoopclient
- 配置安全认证及加密。可参考“组件操作指南”的“从零开始使用Flink”。
- 参考获取MRS应用开发样例工程,获取样例代码解压目录中“src\springboot\flink-examples”目录下的样例工程文件夹“flink-dws-sink-example”。
- 导入样例工程到IntelliJ IDEA开发环境中。
- 在IntelliJ IDEA的菜单栏中,选择“File > Open...”,显示“Open File or Project”对话框。
- 在弹出窗口选择文件夹“flink-dws-sink-example”,单击“OK”。
- 设置IntelliJ IDEA的文本文件编码格式,解决乱码显示问题。
- 在IntelliJ IDEA的菜单栏中,选择“File > Settings”,弹出“Settings”窗口。
- 在左边导航上选择“Editor > File Encodings”,在“Project Encoding”和“Global Encoding”区域,设置参数值为“UTF-8”,单击“Apply”后,单击“OK”,如图1所示。
- 设置工程JDK。
- 在IntelliJ IDEA的菜单栏中,选择“File > Settings”,弹出“Settings”窗口。
- 选择“Build, Execution, Deployment > Compiler > Java Compiler”,在“Project bytecode version”右侧的下拉菜单中,选择“8”。修改“flink-dws-sink-example”的“Target bytecode version”为“8”。
- 单击“Apply”后单击“OK”。
- 在IntelliJ IDEA的菜单栏中,选择“File > Project Structure...”,弹出“Project Structure”窗口。
- 选择“SDKs”,单击加号选择“JDK”。
- 在弹出的“Select Home Directory for JDK”窗口,选择对应的JDK目录,然后单击“OK”。
- 完成JDK选择后,单击“Apply”。
- 选择“Project”,在“SDK”的下拉菜单中选择在“SDKs”中添加的JDK,在“language level”下的下拉菜单中选择“8 - Lambdas, type annotations etc.”。
- 单击“Apply”。
- 选择“Modules”,在“Source”页面,修改“Language level”为“8 - Lambdas, type annotations etc.”。
在“Dependencies”页面,修改“Module SDK”为“SDKs”中添加的JDK。
- 单击“Apply”,单击“OK”。
- 配置Maven。
- 参考配置华为开源镜像仓章节描述,增加开源镜像仓地址等配置信息到本地Maven的“setting.xml”配置文件。
- 修改完成后,在IntelliJ IDEA选择“File > Settings > Build, Execution, Deployment > Build Tools > Maven”,勾选“User settings file”右侧的“Override”,并修改“User settings file”的值为当前“settings.xml”文件放置目录,确保该目录为“<本地Maven安装目录>\conf\settings.xml”。
图2 “settings.xml”文件放置目录
- 单击“Maven home directory”右侧的下拉菜单,选择Maven的安装路径。
- 单击“Apply”并单击“OK”。
- 在“src\main\resources”路径下找到“application.properties”配置文件,在该文件中新增以下内容:
- 执行GaussDB(DWS)样例
spring.datasource.dws.url=jdbc:postgresql://dws节点IP地址:8000/postgres spring.datasource.dws.username=dbadmin spring.datasource.dws.password=dbadmin的密码 spring.datasource.dws.driver=org.postgresql.Driver
- 执行GaussDB(DWS)样例