【问题标题】:How to append the dataframe data into dedicated SQL pool through Spark pool of synapse?如何通过 Synapse 的 Spark 池将数据帧数据附加到专用的 SQL 池中?
【发布时间】:2021-12-07 06:25:09
【问题描述】:

如何通过突触的Spark pool将数据框数据追加到专用的SQL池中?

【问题讨论】:

    标签: azure-synapse


    【解决方案1】:

    synapsesql.read 方法(描述为 here)目前不支持追加到专用 SQL 池表,但您可以通过分区切换或使用 CTAS 来组合原始表和新数据来模拟该行为。

    分区模式:

    CTAS 模式:

    CREATE TABLE dbo.yourNewTable
    WITH (
        DISTRIBUTION = ROUND_ROBIN, -- or HASH(someColumn)|REPLCIATE
        CLUSTERED COLUMNSTORE INDEX -- or CLUSTERED INDEX|HEAP
    )
    AS
    SELECT *
    FROM dbo.someTable_part1
    UNION ALL
    SELECT *
    FROM dbo.someTable_part2;
    

    可能能够使用 JDBC 连接进行附加,但我可能不会在 Synapse 中这样做。您也可以尝试saveAsTable 方法,记住这附加到 Spark 表而不是专用 SQL 池表,例如:

    df.write.saveAsTable('yourTable', mode='append')
    

    【讨论】:

      猜你喜欢
      • 2022-11-30
      • 2021-06-06
      • 2021-12-25
      • 2021-10-11
      • 2022-06-30
      • 2021-12-11
      • 2021-09-19
      • 2021-06-01
      • 2021-03-14
      相关资源
      最近更新 更多