【问题标题】:How to create a Range partition in Azure SQL Data Warehouse?如何在 Azure SQL 数据仓库中创建 Range 分区?
【发布时间】:2019-03-18 05:25:25
【问题描述】:

我正在将 Oracle 12c 迁移到 Azure SQL 数据仓库,我目前正在创建 Oracle 表的 DDL。 我的问题是,如何在 Azure SQL DW 中按日期创建“范围分区”? 如何将 Oracle 中的现有代码转换为 Azure SQL DW?

PARTITION BY RANGE ("LOG_DATE") INTERVAL (NUMTODSINTERVAL(1, 'DAY')) (PARTITION "PART_01"  VALUES LESS THAN (TO_DATE(' 2018-10-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')) SEGMENT CREATION IMMEDIATE

感谢您提供的任何帮助。

【问题讨论】:

  • 我不会自动在 SQL DW 中对表进行分区,因为它是在 Oracle 中分区的。 SQL DW 已经在节点上创建了 60 个数据分布。首先,我会确保根据该表的任何谓词或常见连接选择正确的分布。

标签: azure-sqldw


【解决方案1】:

我理解此声明是将 2018-10-02 之前的任何日期移动到一个分区中,然后在收到行时为每一天动态创建新分区。

Azure SQL 数据仓库中没有此语法的直接等效项。

似乎可以满足您需求的技术是动态分区管理,如以下文档中所述:

https://docs.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-tables-partition#table-partitioning-source-control

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    • 1970-01-01
    • 2018-05-04
    • 2016-02-10
    • 2018-12-31
    • 1970-01-01
    • 2016-06-30
    相关资源
    最近更新 更多