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

百问求答(3)Flink专场!回答问题赢行李箱等好礼

已解决

Flink SQL的并行度如何单独设置,比如单独设置sink的并行度与其他不一致

展开
收起
1731446667249005 2023-11-30 10:12:27 59 0
2 条回答
写回答
取消 提交回答
  • 采纳回答

    在 Apache Flink 中,SQL API 支持设置整个作业的并行度。如果想要为个别算子(例如 Sink)设置不同的并行度,可以使用 SET 语句来覆盖全局设置。

    以下是一个示例:

    -- 设置全局并行度为4
    SET parallelism=4;
    
    -- 定义一个源表,并且指定其并行度为2
    CREATE TABLE MySource (
        ...
    ) WITH (
        'connector' = ...,
        'format' = ...,
        'parallelism' = '2'
    );
    
    -- 定义一个 sink 表,并且指定其并行度为1
    CREATE TABLE MySink (
        ...
    ) WITH (
        'connector' = ...,
        'format' = ...,
        'sink.parallelism' = '1'
    );
    
    -- 在 SELECT 查询中不指定并行度,则默认使用全局并行度
    INSERT INTO MySink
    SELECT * FROM MySource;
    

    在这个示例中,我们设置了全局并行度为4。然后,在创建源表和 sink 表时分别指定了并行度为2和1。最后,我们在 INSERT INTO 查询中没有指定并行度,因此它将使用全局并行度。

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

    这里的"setParallelism"方法只是单独设置了Sink的并行度,并没有对程序的其他部分进行修改。如果您想对整个程序的并行度进行调整,可以参考文档:https://help.aliyun.com/zh/flink/getting-started/ingest-log-data-into-data-warehouses-in-real-time
    image.png
    ---来自实时计算Flink版快速入门日志实时入仓快速入门文档

    2023-11-30 15:46:35
    赞同 1 展开评论 打赏

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

相关产品

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

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载