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,用来开发你的作业
  • 连接器和格式,以将你的作业与外部系统集成
  • 测试实用程序,以测试你的作业

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

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

你要使用的 API 你需要添加的依赖项
DataStream flink-streaming-java
DataStream Scala 版 flink-streaming-scala_2.12
Table API flink-table-api-java
Table API Scala 版 flink-table-api-scala_2.12
Table API + DataStream flink-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 应用程序容器镜像中,而无需修改发行版。

相关推荐
闲猫3 小时前
Spring AI 对接Deepseek ChatModel 聊天对话
java·前端·spring
自信的未来5 小时前
JSON 工具|Web Worker 工程化打包 + 语法自动修复 + 多语言代码生成实战
java·前端·json
Brookty5 小时前
【JavaEE】线程安全(一).4:写块串行保安全、CAS
java·开发语言·java-ee·多线程·线程安全
怕孤单的草丛6 小时前
缓存管理面临的主要问题
java·数据库·缓存
犀利豆8 小时前
AI in Harness(二)
java·人工智能·后端
沉静的小伙10 小时前
在微服务中使用领域事件
java·运维·微服务
程序员在囧途10 小时前
likeadmin-api API 算力超市怎么做供应商切换?统一鉴权、task_id 和 callback_url 才能稳交付
java·服务器·数据库·开放api·likeadmin-api·api算力超市
醇氧10 小时前
Spring 容器 Map 注入机制详解
java·后端·spring
ylscode11 小时前
Cloudflare Workers Cache 深度解析:边缘缓存如何重塑无服务器性能边界
java·spring·mybatis