当前位置: 首页 > news >正文

57、Flink 的项目配置概述

1)概览
1.开始

要开始使用 Flink 应用程序,请使用以下命令、脚本和模板来创建 Flink 项目。

可以使用如下的 Maven 命令或快速启动脚本,基于原型创建一个项目。

a)Maven 命令
mvn archetype:generate                \-DarchetypeGroupId=org.apache.flink   \-DarchetypeArtifactId=flink-quickstart-java \-DarchetypeVersion=1.19.0
b)快速启动脚本
curl https://flink.apache.org/q/quickstart.sh | bash -s 1.19.0
2.需要哪些依赖

要开始一个 Flink 作业,通常需要如下依赖项:

  • Flink API,用来开发你的作业
  • 连接器和格式,以将你的作业与外部系统集成
  • 测试实用程序,以测试你的作业

除此之外,若要开发自定义功能,还要添加必要的第三方依赖项。

3.Flink API

Flink 提供了两大 API:Datastream API 和 Table API & SQL,它们可以单独使用,也可以混合使用,具体取决于你的使用场景

你要使用的 API你需要添加的依赖项
DataStreamflink-streaming-java
DataStream Scala 版flink-streaming-scala_2.12
Table APIflink-table-api-java
Table API Scala 版flink-table-api-scala_2.12
Table API + DataStreamflink-table-api-java-bridge
Table API + DataStream Scala 版flink-table-api-scala-bridge_2.12
4.运行和打包

如果想通过简单地执行主类来运行作业,需要 classpath 里包含 flink-clients。对于 Table API 程序,还需要在 classpath 中包含 flink-table-runtimeflink-table-planner-loader

根据经验,建议将应用程序代码及其所有必需的依赖项打包进一个 fat/uber JAR [包含所有依赖项和代码的 JAR]中。这包括打包作业用到的连接器、格式和第三方依赖项;此规则不适用于 Java API、DataStream Scala API 以及前面提到的运行时模块,它们已经由 Flink 本身提供,不应包含在作业的 uber JAR 中。

可以把该作业 JAR 提交到已经运行的 Flink 集群,也可以轻松将其添加到 Flink 应用程序容器镜像中,而无需修改发行版。

http://www.lryc.cn/news/395173.html

相关文章:

  • 零基础自学爬虫技术该从哪里入手?
  • Vue.js 基础入门指南
  • 山泰科技集团陈玉东:争当数字化时代的知识产权卫士
  • WBCE CMS v1.5.2 远程命令执行漏洞(CVE-2022-25099)
  • 鸿蒙语言基础类库:【@ohos.url (URL字符串解析)】
  • 【AutoencoderKL】基于stable-diffusion-v1.4的vae对图像重构
  • 《警世贤文》摘抄:守法篇、惜时篇、修性篇、修身篇、待人篇、防人篇(建议多读书、多看报、少吃零食多睡觉)
  • vue2+element-ui新增编辑表格+删除行
  • Day05-组织架构-角色管理
  • 【LLM】二、python调用本地的ollama部署的大模型
  • 20240708 每日AI必读资讯
  • 为什么KV Cache只需缓存K矩阵和V矩阵,无需缓存Q矩阵?
  • VS code修改底部的行号的状态栏颜色
  • 【鸿蒙学习笔记】MVVM模式
  • 端、边、云三级算力网络
  • java —— JSP 技术
  • 【Python学习笔记】菜鸟教程Scrapy案例 + B站amazon案例视频
  • Pycharm的终端(Terminal)中切换到当前项目所在的虚拟环境
  • Nginx 高效加速策略:动静分离与缓存详解
  • Unity3D 游戏摇杆的制作与实现详解
  • 从nginx返回404来看http1.0和http1.1的区别
  • MySQL 代理层:ProxySQL
  • 异步主从复制
  • 论文解析——Full Stack Optimization of Transformer Inference: a Survey
  • selenium处理cookie问题实战
  • (十五)GLM库对矩阵操作
  • android中activity与fragment之间的各种跳转
  • 动态规划算法-以中学排课管理系统为例
  • 本安防爆手机:危险环境下的安全通信解决方案
  • 算法学习笔记(8)-动态规划基础篇