开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

flink SQL在通过参数指定job name吗

image.png

展开
收起
游客6vdkhpqtie2h2 2022-09-27 09:52:22 2045 0
10 条回答
写回答
取消 提交回答
  • 在阿里云 Flink SQL 中,可以通过在 SQL 语句中使用参数来指定 Flink 任务的名称。具体来说,可以使用 ${} 语法来引用参数,并在提交 Flink 任务时通过 --job-name 参数来指定任务名称。

    例如,下面的示例代码演示了如何在 Flink SQL 中使用参数来指定任务名称:

    -- 参数定义
    DECLARE @jobName VARCHAR = 'my_job';
    
    -- SQL 语句
    SELECT *
    FROM my_source
    WHERE category = 'books';
    
    -- 提交任务
    flink-sql-client.sh embedded -e "SELECT * FROM my_source WHERE category = 'books'" --job-name ${jobName}
    

    在上面的代码中,首先使用 DECLARE 语句定义了一个名为 jobName 的参数,并将其赋值为 'my_job'。然后,在 SQL 语句中使用了 ${jobName} 引用了该参数。最后,在提交任务时使用 --job-name 参数来指定任务名称,并将其设置为 ${jobName}

    如果使用参数来指定任务名称,那么每次提交任务时都需要手动指定参数的值。如果需要自动化提交任务,并指定不同的任务名称,可以考虑使用脚本或者程序来实现。

    2023-05-07 23:55:24
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    在阿里云实时计算 Flink 中,Flink SQL 支持在提交任务的时候通过参数来指定 job name。通过指定 job name,可以方便地对任务进行标识和查询。

    具体操作步骤如下:

    1. 在 Flink SQL 中编写好 SQL 语句,例如:
    CREATE TABLE source_table (
      id BIGINT,
      name STRING
    ) WITH (
      'connector' = 'kafka',
      'topic' = 'input_topic',
      'properties.bootstrap.servers' = '<kafka_bootstrap.servers>',
      'properties.group.id' = 'input_group'
    );
    
    CREATE TABLE sink_table (
      id BIGINT,
      name STRING
    ) WITH (
      'connector' = 'kafka',
      'topic' = 'output_topic',
      'properties.bootstrap.servers' = '<kafka_bootstrap.servers>',
      'properties.group.id' = 'output_group'
    );
    
    INSERT INTO sink_table
    SELECT id, name FROM source_table;
    
    1. 在提交任务的时候通过命令行参数 -yn-yjm 来指定 job name,例如:
    ./bin/flink run -d -m yarn-cluster \
      -yn <job_name> \
      -yjm <job_manager_memory> \
      -ytm <task_manager_memory> \
      -c <entry_class> <flink_sql_jar> <sql_file>
    

    其中,-yn 参数指定 job name,可以通过指定不同的 job name 来区分不同的任务;-yjm 参数用于设置 JobManager 的内存大小;-ytm 参数用于设置 TaskManager 的内存大小;-c 参数用于指定应用程序入口类;<flink_sql_jar><sql_file> 分别是 Flink SQL 的 JAR 包和 SQL 文件路径。

    通过以上操作,即可在提交 Flink SQL 任务的时候指定 job name。

    2023-05-05 20:28:16
    赞同 展开评论 打赏
  • 是的,您可以在 Flink SQL CLI 中使用 -n 或 --name 参数为 Flink job 指定名称。具体操作如下: 1. 打开终端,启动 Flink SQL CLI。

    1. 在命令行中输入以下命令,并指定 Job 名称:
    ./bin/sql-client.sh embedded -name <YourJobName>
    

    例如,要将 Flink job 名称设置为 'MyFlinkJob',可以使用以下命令:

    ./bin/sql-client.sh embedded -name MyFlinkJob
    
    1. 运行命令后会进入 Flink SQL CLI,可以通过该界面执行 SQL 查询和其他操作。
    2. 当您提交基于 SQL 的 Flink 作业时,指定的名称将用作作业名称,可以在 Flink Web UI 中查看该名称。
    2023-05-02 07:51:45
    赞同 展开评论 打赏
  • 云端行者觅知音, 技术前沿我独行。 前言探索无边界, 阿里风光引我情。

    没错,是通过参数去设置job name的。你可以参考下官方手册,

    --name 其中, 是您指定的 Job 名称。例如,如果您想将 Job 名称设置为my-alibaba,则可以使用以下命令: ./bin/sql-client.sh embedded --name my-alibaba

    这个示例我们可以看到,我们使用--name参数将Job名称设置为my-alibaba。

    2023-04-27 16:53:34
    赞同 展开评论 打赏
  • 值得去的地方都没有捷径

    是的,Flink SQL 可以通过参数指定 Job Name。在 Flink 中,可以使用 SQL 客户端来提交 SQL 作业。以下是一个使用 SQL 客户端提交作业时指定 Job Name 的示例:

    ./bin/sql-client.sh embedded -e "SELECT * FROM orders" -n "My Flink Job" 在上面的命令中,-n 参数指定了 Job 的名称为 "My Flink Job"。您也可以通过 Flink Web UI 查看作业的名称,以及使用 Flink 的 REST API 来获取作业的信息,包括 Job Name。

    2023-04-26 12:34:20
    赞同 展开评论 打赏
  • 天下风云出我辈,一入江湖岁月催,皇图霸业谈笑中,不胜人生一场醉。

    在 Flink SQL 中,可以通过配置 table.exec.sink.table-name 参数来指定作业名称(job name)。具体来说,可以在 SQL 程序中的 DDL 语句中添加该参数,例如:

    sql

    CREATE TABLE sink_table ( id INT, name STRING, age INT, PRIMARY KEY (id) ) WITH ( 'connector.type' = 'jdbc', 'connector.url' = 'jdbc:mysql://localhost:3306/flinkdb', 'connector.table' = 'user_info', 'connector.username' = 'root', 'connector.password' = 'password', 'table.exec.sink.table-name' = 'my_job_name' );

    其中,table.exec.sink.table-name 参数的值即为作业名称。需要注意的是,该参数只对 JDBC、Elasticsearch 等支持直接输出到外部系统的 Sink 生效,对文件等其它 Sink 不生效。

    除此之外,也可以通过配置启动脚本中的 -ynm <job_name> 参数来指定作业名称,例如:

    ./bin/flink run -ynm my_job_name examples/jars/streaming/SocketWindowWordCount.jar --hostname localhost --port 9000

    以上命令将在 Flink 集群上启动一个名为 my_job_name 的作业。

    2023-04-25 13:38:10
    赞同 展开评论 打赏
  • 是的,Flink SQL 支持通过参数指定 job name,可以在提交 Flink SQL 作业时通过 -ynm 或 --yarnname 参数来设置作业名称。

    例如,使用以下命令提交 Flink SQL 作业到 YARN 集群,并指定作业名称为 my_job:

    flink run -m yarn-cluster -ynm my_job -yn 2 -ys 4 -yjm 1024m -ytm 2048m -ynl my_job.log -c com.example.MyJob /path/to/myjob.jar
    

    在上述命令中,-ynm 参数用于指定作业名称,即 my_job。当作业运行时,可以在 Flink Web UI 或日志中查看作业名称。

    Flink SQL 还支持通过配置文件设置作业名称。可以在 flink-conf.yaml 配置文件中添加如下配置项:

    execution.savepoint.name: "my_job"
    

    其中,execution.savepoint.name 参数用于设置作业名称,即 my_job。这样,在使用 Flink SQL 提交作业时,可以不再指定作业名称,而是从配置文件中读取。

    2023-04-24 13:41:15
    赞同 展开评论 打赏
  • 全栈JAVA领域创作者

    可以通过 SET execution.runtime.name = '<job_name>'; 命令在 Flink SQL 中指定 Job 名称。这个命令将在 Flink 1.14 版本中引入,并且可以用于为 Flink SQL 语句指定执行时的作业名称。

    在 Flink SQL 中执行此命令后,Flink 作业提交时会将 Job 名称设置为指定的值。例如,如果执行以下命令:

    Copy code

    SET execution.runtime.name = 'my_job_name';
    
    

    则提交的 Flink 作业的名称将被设置为 my_job_name。

    需要注意的是,目前该命令还不支持在 Flink 1.13 及更早版本中使用。如果您需要在 Flink 1.13 或更早版本中指定 Job 名称,可以考虑在提交作业时通过编程方式指定名称,或者使用 Flink 的 REST API 在提交作业时指定名称。

    2023-04-23 21:38:31
    赞同 展开评论 打赏
  • 热爱开发

    是的,Flink SQL 支持通过参数指定 job 名称(job name)。你可以在执行 Flink SQL 任务时使用 --name 参数来指定 job 名称。例如:

    flink-sql-client.sh embedded -e /path/to/sql/file.sql --name MyJobName 在上述命令中,使用 -e 参数指定要执行的 SQL 文件路径,使用 --name 参数指定 job 名称为 "MyJobName"。

    如果没有指定 job 名称,则 Flink 默认会使用 SQL 文件的名称作为 job 名称。但是,建议在执行 Flink SQL 任务时显式指定 job 名称,这样可以更方便地跟踪和管理多个任务。

    2023-04-23 17:24:04
    赞同 展开评论 打赏
  • Flink SQL 支持通过配置参数指定 Job 名称,可以使用 SET 命令来设置。

    具体地,您可以使用 execution.savepoint.name 参数来指定 Job 名称。例如,您可以在 Flink SQL 客户端中使用以下命令来设置 Job 名称为 "my_job_name":

    SET execution.savepoint.name='my_job_name';
    

    在提交 Flink SQL Job 时,Flink 将会自动使用该参数作为 Job 的名称。例如,如果您使用 Flink Yarn Session Cluster 来运行 Flink SQL Job,可以将 Job 名称指定为 {{execution.savepoint.name}},Flink 将会自动将其替换为实际的 Job 名称。

    2023-04-23 16:52:33
    赞同 展开评论 打赏
滑动查看更多

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    SQL Server 2017 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载