Azure Synapse 数据库往返 Netezza - 最有效的方法

问题描述

我们希望使用 Qlik 从 Netezza 将数据加载到 Azure Synapse(云),反之亦然,但我们发现性能不可接受。实现这一目标的最快方法是什么?

我们有一些用 Java 编写的内部工具来执行此任务,但我不知道如何在本机云环境中运行此代码,或者这是否可行。

我对 Cloud 没有太多经验,因此我们将不胜感激任何有关如何花时间更快实现目标的指导。

解决方法

在 Netezza 中,最快的是“创建外部表作为选择...”。

如果您的 Netezza 足够新 (CP4D),您甚至可以在云上引用文件位置,否则您可能需要在 Azure 和本地部署(快速)文件存储

一点阅读: https://docs.microsoft.com/en-us/azure/synapse-analytics/sql/develop-tables-external-tables?tabs=hadoop

https://www.ibm.com/docs/en/SSULQD_7.2.1/com.ibm.nz.load.doc/c_load_create_external_tbl_syntax.html

基本上,您需要使用 UTF8(在 Netezza 上也称为“内部”)并选择 5 个特殊字符:

  1. 一个转义字符(通常是“\”)
  2. 列分隔符(通常是 TAB 字符)
  3. 行分隔符(通常是换行符)
  4. 一个字符串分隔符(通常是双引号'“')
  5. 空指示符(通常是星号“*”)

在两端选择相同的 5 个字符,并进行某种二进制文件传输(xFTPx、HTTP 或某种专用的 Azure 复制工具),你应该很好:)