从Azure SQL数据库到Azure SQL数据仓库的ETL数据的推荐工具?

时间:2015-10-27 15:50:48

标签: sql-server azure ssis azure-sqldw azure-sql-database

我需要使用Azure SQL数据仓库构建数据仓库,该数据仓库来自单个Azure SQL数据库中的数据。看this article,似乎我有两个选择:

  • SSIS
  • Azure数据工厂

我的Azure SQL数据库已规范化,但我想以星型或雪花式架构格式构建我的Azure SQL数据仓库,因此它不是表的直接副本 - 肯定需要发生了一些转变。

鉴于SSIS在Azure SQL数据库上不受支持,并且要求我在其上运行带有SQL Server的VM以使我的进程完全保留在Azure中,Azure数据工厂是Azure SQL数据库之间ETL数据的推荐工具。 Azure SQL数据仓库?在这种情况下,一个选择与另一个选择是否会更加完整?

谢谢!

2 个答案:

答案 0 :(得分:4)

如果您希望将流程完全保留在云中而不是启动虚拟机,那么Azure数据工厂目前是数据移动的最佳选择。但是,在这个时间点,我可能会建议采用ELT方法而不是ETL方法。通过先加载数据然后在SQL数据仓库中完成转换,您的加载速度会更快,并且在转换数据时您将能够利用额外的计算能力。此外,听起来您熟悉SQL,因此您可能更容易在SQL数据仓库内编写转换,而不是使用Data Factory' JSON。

答案 1 :(得分:0)

查看创建外部表(在DW中)指向Azure SQL数据库是否会帮助您。有了这个,您可能会发布一些Create Table As(CTAS)命令来将结构更改为星星/雪花。

来自https://msdn.microsoft.com/en-us/library/dn935022.aspx

--Create an external data source for a remote database on Azure SQL Database
CREATE EXTERNAL DATA SOURCE data_source_name
    WITH ( 
        TYPE = RDBMS,
        LOCATION = '<server_name>.database.windows.net',
        DATABASE_NAME = 'Remote_Database_Name',
        CREDENTIAL = SQL_Credential
    )
[;]
相关问题