使用 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_object 和 sys_dictionary 資料表讀取存取權的角色。
開始使用
若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:
使用 UI 建立 ServiceNow 的連結服務
使用下列步驟,在 Azure 入口網站 UI 中建立 ServiceNow 的連結服務。
前往 Azure Data Factory 或 Synapse 工作區的 [管理] 索引標籤,選取 [連結服務],然後按一下 [新增]:
搜尋 ServiceNow 並選取 ServiceNow 連接器。
設定服務詳細資料,測試連線,然後建立新的連結服務。
連接器設定詳細資料
下列各節提供屬性的相關詳細資料,這些屬性是用來定義 ServiceNow 連接器專屬的 Data Factory 實體。
連結服務屬性
以下是針對 ServiceNow 已連結服務支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | type 屬性必須設定為:ServiceNowV2 | Yes |
endpoint | ServiceNow 伺服器的端點 (http://<instance>.service-now.com )。 |
Yes |
authenticationType | 要使用的驗證類型。 允許的值為:Basic、OAuth2 |
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 連接器的步驟:
- 透過參考連結服務屬性來建立新的連結服務。
- 來源中的查詢會升級為查詢產生器,其使用方式與 ServiceNow 中的條件產生器相同。 了解如何進行設定以參照 ServiceNow 作為來源。
ServiceNow 與 ServiceNow (舊版) 之間的差異
ServiceNow 連接器提供新的功能,並與 ServiceNow (舊版) 連接器的大部分功能相容。 下表顯示 ServiceNow 與 ServiceNow (舊版) 之間的功能差異。
ServiceNow | ServiceNow (舊版) |
---|---|
連結服務中不支援 useEncryptedEndpoints、useHostVerification 和 usePeerVerification。 | 連結服務中支援 useEncryptedEndpoints、useHostVerification 和 usePeerVerification。 |
來源中支援查詢產生器。 | 來源中不支持查詢產生器。 |
不支援以 SQL 為基礎的查詢。 | 支援以 SQL 為基礎的查詢。 |
查詢產生器中不支援 sortBy 查詢。 | 查詢中支援 sortBy 查詢。 |
您可以在資料集中檢視架構。 | 您無法檢視資料集中的架構。 |
相關內容
如需複製活動支援作為來源和接收器的資料存放區清單,請參閱支援的資料存放區。