共用方式為


使用 Azure Data Factory 或 Synapse Analytics 從 ServiceNow 複製資料

適用於:Azure Data Factory Azure Synapse Analytics

提示

試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用

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

重要

新的 ServiceNow 連接器提供改良的原生 ServiceNow 支援。 如果您在解決方案中使用舊版 ServiceNow 連接器,建議您 儘早升級 ServiceNow 連接器 。 如需舊版與最新版本之間差異的詳細資料,請參閱本節

支援的功能

此 ServiceNow 連接器支援下列功能:

支援的功能 IR
複製活動 (來源/-) (1) (2)
查閱活動 (1) (2)

① Azure 整合執行階段 ② 自我裝載整合執行階段

如需支援做為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。

該服務會提供內建的驅動程式來啟用連線。 因此,您不需要使用此連接器來手動安裝任何驅動程式。

請使用實際值,而不是 ServiceNow 中的顯示值。

先決條件

若要使用此連接器,您必須擁有至少具有 ServiceNow 中 sys_db_objectsys_dictionary 資料表讀取存取權的角色。

開始使用

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

使用 UI 建立 ServiceNow 的連結服務

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

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

  2. 搜尋 ServiceNow 並選取 ServiceNow 連接器。

    螢幕擷取畫面:ServiceNow 連接器。

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

    螢幕擷取畫面:ServiceNow 的連結服務設定。

連接器設定詳細資料

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

連結服務屬性

以下是針對 ServiceNow 已連結服務支援的屬性:

屬性 描述 必要
type type 屬性必須設定為:ServiceNowV2 Yes
endpoint ServiceNow 伺服器的端點 (http://<instance>.service-now.com)。 Yes
authenticationType 要使用的驗證類型。
允許的值為:BasicOAuth2
Yes
username 用來連線到 ServiceNow 伺服器以進行 Basic 和 OAuth2 驗證的使用者名稱。 Yes
password 對應至用於進行 Basic 和 OAuth2 驗證之使用者名稱的密碼。 將此欄位標記為 SecureString 以便安全儲存,或參考 Azure Key Vault 中儲存的祕密 Yes
clientId 用於 OAuth2 驗證的用戶端識別碼。 適用於 OAuth 驗證
clientSecret 用於 OAuth2 驗證的用戶端祕密。 將此欄位標記為 SecureString 以便安全儲存,或參考 Azure Key Vault 中儲存的祕密 適用於 OAuth 驗證
grantType 指定用戶端應用程式用來存取權杖的 OAuth2.0 流程類型。 預設值為密碼。 適用於 OAuth 驗證

範例:

{
    "name": "ServiceNowLinkedService",
    "properties": {
        "type": "ServiceNowV2",
        "typeProperties": {
            "endpoint" : "http://<instance>.service-now.com",
            "authenticationType" : "Basic",
            "username" : "<username>",
            "password": {
                 "type": "SecureString",
                 "value": "<password>"
            }
        }
    }
}

資料集屬性

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

若要從 ServiceNow 複製資料,請將資料集的 type 屬性設定為 ServiceNowV2Object。 以下是支援的屬性:

屬性 描述 必要
type 資料集的類型屬性必須設定為:ServiceNowV2Object Yes
tableName 資料表的名稱。 Yes

範例

{
    "name": "ServiceNowDataset",
    "properties": {
        "type": "ServiceNowV2Object",
        "typeProperties": {
            "tableName": "<table name>"
        },
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<ServiceNow linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

複製活動屬性

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

ServiceNow 作為來源

若要從 ServiceNow 複製資料,請將複製活動中的來源類型設定為 ServiceNowV2Source。 複製活動的 source 區段支援下列屬性:

屬性 描述 必要
type 複製活動來源的 type 屬性必須設定為:ServiceNowV2Source Yes
expression 使用運算式來讀取資料。 您可以在查詢產生器中設定運算式, 其使用方式與 ServiceNow 中的條件產生器相同。 如需使用方式的指示,請參閱這篇文章。 您也可以 使用表示式參數 No
expression
type 運算式類型。 值可以是常數(預設值)、一元、二進位、欄位和 Nary。 No
value 常數值。 是,當運算式類型為 Constant 或 Field 時
運算子 運算子值。 如需運算子的詳細資訊,請參閱這篇文章中的「Operators available for choice fields containing strings」一節。 是,當運算式類型為 Unary 或 Binary 時
運算元 套用運算子的運算式清單。 是,當運算式類型為 Unary 或 Binary 時

範例:

"activities": [
    {
        "name": "CopyFromServiceNow",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<ServiceNow input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "ServiceNowV2Source",
                "expression": {
                    "type": "Nary",
                    "operators": [
                        "<"
                    ],
                    "operands": [
                        {
                            "type": "Field",
                            "value": "u_founded"
                        },
                        {
                            "type": "Constant",
                            "value": "2000"
                        }
                    ]
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

使用表達式參數

您可以選取 [新增動態內容],在 [查詢產生器] 中設定表達式參數。 參數類型應該是 Object,而值應該遵循下列範例 JSON 所示的格式:

 {
	"type": "Nary",
	"operators": [
		"="
	],
	"operands": [
		{
			"type": "Field",
			"value": "col"
		},
		{
			"type": "Constant",
			"value": "val"
		}
	]
}

以下是使用表達式參數的來源 JSON 範例:

"activities": [
    {
        "name": "CopyFromServiceNow",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<ServiceNow input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "ServiceNowV2Source",
                "expression": {
                    "type": "Expression",
                    "value": "@pipeline().parameters.expressionParameter"
                }
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

查閱活動屬性

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

升級 ServiceNow 連接器

以下是可協助您升級 ServiceNow 連接器的步驟:

  1. 透過參考連結服務屬性來建立新的連結服務。
  2. 來源中的查詢會升級為查詢產生器,其使用方式與 ServiceNow 中的條件產生器相同。 了解如何進行設定以參照 ServiceNow 作為來源

ServiceNow 與 ServiceNow (舊版) 之間的差異

ServiceNow 連接器提供新的功能,並與 ServiceNow (舊版) 連接器的大部分功能相容。 下表顯示 ServiceNow 與 ServiceNow (舊版) 之間的功能差異。

ServiceNow ServiceNow (舊版)
連結服務中不支援 useEncryptedEndpoints、useHostVerification 和 usePeerVerification。 連結服務中支援 useEncryptedEndpoints、useHostVerification 和 usePeerVerification。
來源中支援查詢產生器 來源中不支持查詢產生器
不支援以 SQL 為基礎的查詢。 支援以 SQL 為基礎的查詢。
查詢產生器中不支援 sortBy 查詢。 查詢中支援 sortBy 查詢。
您可以在資料集中檢視架構。 您無法檢視資料集中的架構。

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