【问题标题】:Azure SQL Data WarehouseAzure SQL 数据仓库
【发布时间】:2016-06-30 12:59:41
【问题描述】:

如果我知道将数据加载到 Azure SQL 数据仓库的各种方法,那就太好了。

我可以在我的 Ubuntu 机器上使用 JDBC 连接到 Azure SQL DW。

  1. 有没有不使用 Azure 数据工厂直接从 Azure Blob 存储加载到 Azure SQL DW 的方法?

  2. 将数据从 Ubuntu 加载到 Azure SQL DW 的方法。

  3. 与 Azure 对话的 Java API。

  4. 直接将数据从 HDInsights 加载到 SQL DW。

谢谢

【问题讨论】:

  • “与 Azure 对话的 Java API”?专门连接到 Azure SQL DW 并运行查询?或者在 Azure 中执行管理任务?你能澄清一下什么任务吗?

标签: java sql azure azure-sqldw


【解决方案1】:

这个提示有点疯狂,但它会起作用。获取本地 sql server vm 并配置 Azure SQL DB 事务复制。 -> https://channel9.msdn.com/Shows/Data-Exposed/Azure-SQL-DB-Transactional-Replication

这样做会填满你的 azure sql db。您必须连接 ubuntu(JDBC) 才能将所有内容插入 sql server。这会将您的数据复制到 azure sql db。 azure sql db 可以通过两个步骤轻松迁移到 azure sql dw ;-)

https://azure.microsoft.com/en-us/documentation/articles/sql-data-warehouse-get-started-provision/

您的优势在于,您可以以低延迟连接到本地 sql 服务器,然后等待事务复制完成。 ;-)

问候 帕特里克

【讨论】:

  • 谢谢帕特里克。关于 HDInsights 和 SQL DW - 我找不到连接两者的文档。
  • @Lambo-Fan 您是在进行一次性迁移还是每天刷新?我不确定这种方法是否适合每日刷新。
【解决方案2】:

将数据加载到 Azure SQL DW 的最佳和最快方法是使用 Polybase 加载位于 Azure Blob 存储中的分隔平面文件。请参阅 Polybase 描述的 here

对于从 HDInsight 加载,我想您可以使用 SQOOP(虽然我还没有尝试过加载 Azure SQL DW),但最好的方法是让 HDInsight 写入平面文件(例如通过插入到外部Hadoop 中的表),然后使用 Azure SQL DW 中的 Polybase 读取文件。

抱歉,对于您有关 Java 和 Ubuntu 的其他问题,我无能为力。

【讨论】:

  • Sqoop 不适用于 Azure SQL 数据仓库。原因是 Sqoop 尝试设置其映射器的事务隔离级别,同时尝试从 Azure SQL 数据仓库读取/写入到 READ COMMITTED,这在 Azure SQL 数据仓库中不受支持,因此会出错。
猜你喜欢
  • 1970-01-01
  • 2016-10-26
  • 2016-02-06
  • 2021-03-04
  • 2016-05-07
  • 2020-05-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多