使用 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 整合執行階段 ② 自我裝載整合執行階段
如需支援做為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。
該服務會提供內建的驅動程式來啟用連線。 因此,您不需要使用此連接器來手動安裝任何驅動程式。
開始使用
若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:
使用 UI 建立 ServiceNow 的連結服務
使用下列步驟,在 Azure 入口網站 UI 中建立 ServiceNow 的連結服務。
前往 Azure Data Factory 或 Synapse 工作區的 [管理] 索引標籤,選取 [連結服務],然後按一下 [新增]:
搜尋 ServiceNow 並選取 ServiceNow 連接器。
設定服務詳細資料,測試連線,然後建立新的連結服務。
連接器設定詳細資料
下列各節提供屬性的相關詳細資料,這些屬性是用來定義 ServiceNow 連接器專屬的 Data Factory 實體。
連結服務屬性
以下是針對 ServiceNow 已連結服務支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | Type 屬性必須設定為:ServiceNow | 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 驗證的用戶端識別碼。 | No |
clientSecret | 用於 OAuth2 驗證的用戶端祕密。 將此欄位標記為 SecureString 以便安全儲存,或參考 Azure Key Vault 中儲存的祕密。 | No |
useEncryptedEndpoints | 指定是否使用 HTTPS 來加密資料來源端點。 預設值為 True。 | No |
useHostVerification | 指定在透過 TLS 連線時,是否要求伺服器憑證中的主機名稱符合伺服器的主機名稱。 預設值為 True。 | No |
usePeerVerification | 指定在透過 TLS 連線時,是否要驗證伺服器的身分識別。 預設值為 True。 | No |
範例:
{
"name": "ServiceNowLinkedService",
"properties": {
"type": "ServiceNow",
"typeProperties": {
"endpoint" : "http://<instance>.service-now.com",
"authenticationType" : "Basic",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
}
}
}
資料集屬性
如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供 ServiceNow 資料集所支援的屬性清單。
若要從 ServiceNow 複製資料,請將資料集的 type 屬性設定為 ServiceNowObject。 以下是支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 資料集的類型屬性必須設定為:ServiceNowObject | Yes |
tableName | 資料表的名稱。 | 否 (如果已指定活動來源中的「查詢」) |
範例
{
"name": "ServiceNowDataset",
"properties": {
"type": "ServiceNowObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<ServiceNow linked service name>",
"type": "LinkedServiceReference"
}
}
}
複製活動屬性
如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供 ServiceNow 來源所支援的屬性清單。
ServiceNow 作為來源
若要從 ServiceNow 複製資料,請將複製活動中的來源類型設定為 ServiceNowSource。 複製活動的 source 區段支援下列屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 複製活動來源的 type 屬性必須設定為:ServiceNowSource | Yes |
query | 使用自訂 SQL 查詢來讀取資料。 例如: "SELECT * FROM Actual.alm_asset" 。 |
否 (如果已指定資料集中的 "tableName") |
在查詢中指定 ServiceNow 的結構描述和資料行時,請注意下列內容,並參考有關複製效能含意的效能祕訣。
- 結構描述:在 ServiceNow 查詢中,將結構描述指定為
Actual
或Display
,而在呼叫 ServiceNow REST API 時,您可以將其視為sysparm_display_value
的參數 (True 或 False)。 - 資料行:
Actual
結構描述下實際值的資料行名稱為[column name]_value
,而Display
結構描述下顯示值的資料行名稱為[column name]_display_value
。 請注意,資料行名稱必須對應至要在查詢中使用的結構描述。
範例查詢:SELECT col_value FROM Actual.alm_asset
或 SELECT col_display_value FROM Display.alm_asset
範例:
"activities":[
{
"name": "CopyFromServiceNow",
"type": "Copy",
"inputs": [
{
"referenceName": "<ServiceNow input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "ServiceNowSource",
"query": "SELECT * FROM Actual.alm_asset"
},
"sink": {
"type": "<sink type>"
}
}
}
]
效能提示
要使用的結構描述
ServiceNow 有 2 個不同的結構描述,一個是 "Actual" (傳回實際的資料),另一個則是 "Display" (傳回資料的顯示值)。
如果您的查詢中有一個篩選,請使用 "Actual" 結構描述,此結構描述具有較好的複製效能。 針對 "Actual" 結構描述進行查詢時,ServiceNow 在擷取資料以便只傳回已篩選的結果集時原本就支援篩選,而在查詢 "Display" 結構描述時,ADF 會擷取所有資料並在內部套用篩選。
索引
ServiceNow 資料表索引可協助改善查詢效能,請參閱建立資料表索引 \(英文\)。
查閱活動屬性
若要了解屬性的詳細資料,請參閱查閱活動。
相關內容
如需複製活動支援作為來源和接收器的資料存放區清單,請參閱支援的資料存放區。