使用 Azure Data Factory 或 Synapse Analytics,從 IBM Informix 複製資料或將資料複製到該處

適用於:Azure Data Factory Azure Synapse Analytics

本文概述如何使用 Azure Data Factory 或 Synapse Analytics 管線中的複製活動,從 IBM Informix 資料存放區複製資料。 本文是根據複製活動概觀一文,該文提供複製活動的一般概觀。

支援的功能

支援在下列活動中使用這個 Informix 連接器:

您可以將資料從 Informix 來源複製到任何支援的接收資料存放區,或從任何支援的來源資料存放區複製到 Informix 接收器。 如需複製活動所支援作為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。

必要條件

若要使用這個 Informix 連接器,您必須:

  • 設定一個「自我裝載 Integration Runtime」。 如需詳細資料,請參閱自我裝載 Integration Runtime 一文。
  • 下載 64 位元 Informix 用戶端 SDK,為 Integration Runtime 電腦上的資料存放區建立 ODBC 連線。 如需 SDK 下載和設定,請參閱這篇文章以取得詳細資料,或連絡 IBM 支援小組以取得驅動程式安裝指引。

開始使用

若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:

使用 UI 建立連至 Informix 的連結服務

使用下列步驟,在 Azure 入口網站 UI 中建立連至 Informix 的連結服務。

  1. 瀏覽至 Azure Data Factory 或 Synapse 工作區中的 [管理] 索引標籤,並選取 [連結服務],然後按一下 [新增]:

  2. 搜尋 Informix,然後選取 Informix 連接器。

    Screenshot of the Informix connector.

  3. 設定服務詳細資料、測試連線,然後建立新的連結服務。

    Screenshot of linked service configuration for Informix.

連接器設定詳細資料

下列各節提供屬性的相關詳細資料,這些屬性是用來定義 Informix 連接器專屬的 Data Factory 實體。

連結服務屬性

以下是 Informix 連結服務的支援屬性:

屬性 描述 必要
type type 屬性必須設定為:Informix
connectionString 不包含認證部分的 ODBC 連接字串。 您可以指定連接字串,或使用您在 Integration Runtime 電腦上設定的系統 DSN (資料來源名稱) (仍需要據此指定連結服務中的認證部分)。
您也可以將密碼放在 Azure Key Vault 中,並從連接字串中提取 password 設定。 如需詳細資訊,請參閱在 Azure Key Vault 中儲存認證
authenticationType 用來連接到 Informix 資料存放區的驗證類型。
允許的值為:Basic (基本) 和 Anonymous (匿名)。
userName 如果您要使用 Basic 驗證,請指定使用者名稱。
密碼 指定您為 userName 指定之使用者帳戶的密碼。 將此欄位標記為 SecureString 以將其安全地儲存,或參考 Azure Key Vault 中儲存的祕密
認證 (credential) 以驅動程式特定「屬性-值」格式指定之連接字串的存取認證部分。 請將此欄位標示為 SecureString。
connectVia 用來連線到資料存放區的 Integration Runtime。 如必要條件所述,必須要有一個「自我裝載 Integration Runtime」。

範例︰

{
    "name": "InformixLinkedService",
    "properties": {
        "type": "Informix",
        "typeProperties": {
            "connectionString": "<Informix connection string or DSN>",
            "authenticationType": "Basic",
            "userName": "<username>",
            "password": {
                "type": "SecureString",
                "value": "<password>"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

資料集屬性

如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供 Informix 資料集支援的屬性清單。

若要從 Informix 複製資料,以下是支援的屬性:

屬性 描述 必要
type 資料集的 type 屬性必須設定為:InformixTable
tableName Informix 中的資料表名稱。 就來源而言為非必要 (如果已指定活動來源中的「查詢」);
就接收器而言為必要

範例

{
    "name": "InformixDataset",
    "properties": {
        "type": "InformixTable",
        "linkedServiceName": {
            "referenceName": "<Informix linked service name>",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "tableName": "<table name>"
        }
    }
}

複製活動屬性

如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供 Informix 來源支援的屬性清單。

Informix 作為來源

若要從 Informix 複製資料,複製活動的 [source] 區段支援下列屬性:

屬性 描述 必要
type 複製活動來源的 type 屬性必須設定為:InformixSource
查詢 使用自訂查詢來讀取資料。 例如: "SELECT * FROM MyTable" 否 (如果已指定資料集中的 "tableName")

範例︰

"activities":[
    {
        "name": "CopyFromInformix",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<Informix input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "InformixSource",
                "query": "SELECT * FROM MyTable"
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

Informix 作為接收器

若要將資料複製到 Informix,複製活動的 [sink] 區段支援下列屬性:

屬性 描述 必要
type 複製活動接收器的 type 屬性必須設定為:InformixSink Yes
writeBatchTimeout 在逾時前等待批次插入作業完成的時間。
允許的值為:時間範圍。 範例:「00:30:00」(30 分鐘)。
writeBatchSize 當緩衝區大小達到 writeBatchSize 時,將資料插入 SQL 資料表中
允許的值為:整數 (資料列數目)。
No (預設值為 0 - 自動偵測)
preCopyScript 指定一個供「複製活動」在每次執行時將資料寫入到資料存放區前執行的 SQL 查詢。 您可以使用此屬性來清除預先載入的資料。
 maxConcurrentConnections 活動執行期間,建立與資料存放區的並行連線上限。 僅在想要限制並行連線時,才需要指定值。  否

範例︰

"activities":[
    {
        "name": "CopyToInformix",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<Informix output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "<source type>"
            },
            "sink": {
                "type": "InformixSink"
            }
        }
    }
]

查閱活動屬性

若要了解關於屬性的詳細資料,請參閱查閱活動

後續步驟

如需複製活動支援做為來源和接收器的資料存放區清單,請參閱支援的資料存放區