Copiare dati da ServiceNow tramite Azure Data Factory o Synapse Analytics
SI APPLICA A: Azure Data Factory Azure Synapse Analytics
Suggerimento
Provare Data Factory in Microsoft Fabric, una soluzione di analisi all-in-one per le aziende. Microsoft Fabric copre tutto, dallo spostamento dati al data science, all'analisi in tempo reale, alla business intelligence e alla creazione di report. Vedere le informazioni su come iniziare una nuova prova gratuita!
Questo articolo illustra come usare l'attività Copy nelle pipeline di Azure Data Factory e Synapse Analytics per copiare dati da ServiceNow. Si basa sull'articolo di panoramica dell'attività di copia che presenta una panoramica generale sull'attività di copia.
Importante
Il nuovo connettore ServiceNow offre un supporto di ServiceNow nativo migliorato. Se si usa il connettore ServiceNow legacy nella soluzione, è consigliabile aggiornare il connettore ServiceNow prima di tutto. Per informazioni dettagliate sulla differenza tra la versione legacy e quella più recente, vedere questa sezione.
Funzionalità supportate
Questo connettore ServiceNow è supportato per le funzionalità seguenti:
Funzionalità supportate | IR |
---|---|
Attività Copy (origine/-) | (1) (2) |
Attività Lookup | (1) (2) |
① Azure Integration Runtime ② Runtime di integrazione self-hosted
Per un elenco degli archivi dati supportati come origini o sink, vedere la tabella Archivi dati supportati.
Il servizio fornisce un driver predefinito per abilitare la connettività. Non è pertanto necessario installare manualmente un driver tramite questo connettore.
Usare il valore effettivo anziché il valore visualizzato in ServiceNow.
Prerequisito
Per usare questo connettore, è necessario avere un ruolo con almeno l'accesso in lettura alle tabelle sys_db_object e sys_dictionary in ServiceNow.
Introduzione
Per eseguire l'attività di copia con una pipeline, è possibile usare uno degli strumenti o SDK seguenti:
- Strumento Copia dati
- Il portale di Azure
- .NET SDK
- SDK di Python
- Azure PowerShell
- API REST
- Modello di Azure Resource Manager
Creare un servizio collegato a ServiceNow tramite l'interfaccia utente
Usare la procedura seguente per creare un servizio collegato a ServiceNow nell'interfaccia utente del portale di Azure.
Passare alla scheda Gestisci nell'area di lavoro di Azure Data Factory o Synapse e selezionare Servizi collegati, quindi fare clic su Nuovo:
Cercare ServiceNow e selezionare il relativo connettore.
Configurare i dettagli del servizio, testare la connessione e creare il nuovo servizio collegato.
Dettagli di configurazione del connettore
Le sezioni seguenti riportano informazioni dettagliate sulle proprietà che vengono usate per definire entità di Data Factory specifiche per il connettore ServiceNow.
Proprietà del servizio collegato
Per il servizio collegato ServiceNow sono supportate le proprietà seguenti:
Proprietà | Descrizione | Richiesto |
---|---|---|
type | La proprietà type deve essere impostata su ServiceNowV2 | Sì |
endpoint | Endpoint del server ServiceNow (http://<instance>.service-now.com ). |
Sì |
authenticationType | Tipo di autenticazione da usare. I valori consentiti sono Basic, OAuth2 |
Sì |
username | Nome utente usato per la connessione al server di ServiceNow per l'autenticazione di base e OAuth2. | Sì |
password | Password corrispondente al nome utente per l'autenticazione di base e OAuth2. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro oppure fare riferimento a un segreto archiviato in Azure Key Vault. | Sì |
clientId | ID client per l'autenticazione OAuth2. | Sì per l'autenticazione OAuth |
clientSecret | Segreto client per l'autenticazione OAuth2. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro oppure fare riferimento a un segreto archiviato in Azure Key Vault. | Sì per l'autenticazione OAuth |
grantType | Specifica il tipo di flusso OAuth2.0 usato dall'app client per accedere al token. Il valore predefinito è la password. | Sì per l'autenticazione OAuth |
Esempio:
{
"name": "ServiceNowLinkedService",
"properties": {
"type": "ServiceNowV2",
"typeProperties": {
"endpoint" : "http://<instance>.service-now.com",
"authenticationType" : "Basic",
"username" : "<username>",
"password": {
"type": "SecureString",
"value": "<password>"
}
}
}
}
Proprietà del set di dati
Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione di set di dati, vedere l'articolo sui set di dati. Questa sezione presenta un elenco delle proprietà supportate dal set di dati di ServiceNow.
Per copiare dati da ServiceNow, impostare la proprietà type del set di dati su ServiceNowV2Object. Sono supportate le proprietà seguenti:
Proprietà | Descrizione | Richiesto |
---|---|---|
type | La proprietà type del set di dati deve essere impostata su: ServiceNowV2Object | Sì |
tableName | Nome della tabella. | Sì |
Esempio
{
"name": "ServiceNowDataset",
"properties": {
"type": "ServiceNowV2Object",
"typeProperties": {
"tableName": "<table name>"
},
"schema": [],
"linkedServiceName": {
"referenceName": "<ServiceNow linked service name>",
"type": "LinkedServiceReference"
}
}
}
Proprietà dell'attività di copia
Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline. Questa sezione presenta un elenco delle proprietà supportate dall'origine ServiceNow.
ServiceNow come origine
Per copiare dati da ServiceNow, impostare il tipo di origine nell'attività di copia su ServiceNowV2Source. Nella sezione origine dell'attività di copia sono supportate le proprietà seguenti:
Proprietà | Descrizione | Richiesto |
---|---|---|
type | La proprietà type dell'origine dell'attività Copy deve essere impostata su: ServiceNowV2Source | Sì |
expression | Usare l'espressione per leggere i dati. È possibile configurare l'espressione in Generatore di query. Ha lo stesso utilizzo del generatore di condizioni in ServiceNow. Per istruzioni sull'uso di questi ruoli, vedere questo articolo. È anche possibile usare parametri di espressione. | No |
Si trova inexpression |
||
type | Tipo di espressione. I valori possono essere Costanti (impostazione predefinita), Unario, Binario, Campo e Nary. | No |
value | Valore della costante. | Sì quando il tipo di espressione è Costante o Campo |
operatori | Valore dell'operatore. Per altre informazioni sugli operatori, vedere la sezione Operatori disponibili per campi di scelta contenenti stringhe in questo articolo. | Sì quando il tipo di espressione è Unario o Binario |
operandi | Elenco di espressioni su cui viene applicato l'operatore. | Sì quando il tipo di espressione è Unario o Binario |
Esempio:
"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>"
}
}
}
]
Uso dei parametri di espressione
È possibile configurare il parametro di espressione in Generatore query selezionando Aggiungi contenuto dinamico. Il tipo di parametro deve essere Object e il valore deve seguire il formato illustrato nell'esempio JSON seguente:
{
"type": "Nary",
"operators": [
"="
],
"operands": [
{
"type": "Field",
"value": "col"
},
{
"type": "Constant",
"value": "val"
}
]
}
Di seguito è riportato un esempio del codice JSON di origine usando il parametro expression:
"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>"
}
}
}
]
Proprietà dell'attività Lookup
Per altre informazioni sulle proprietà, vedere Attività Lookup.
Aggiornare il connettore ServiceNow
Ecco i passaggi che consentono di aggiornare il connettore ServiceNow:
- Creare un nuovo servizio collegato facendo riferimento alle Proprietà del servizio collegato.
- La query nell'origine viene aggiornata a Generatore di query che ha lo stesso utilizzo del generatore di condizioni in ServiceNow. Informazioni su come configurarla facendo riferimento a ServiceNow come origine.
Differenze tra ServiceNow e ServiceNow (legacy)
Il connettore ServiceNow offre nuove funzionalità ed è compatibile con la maggior parte delle funzionalità del connettore ServiceNow (legacy). La tabella seguente illustra le differenze di funzionalità tra ServiceNow e ServiceNow (legacy).
ServiceNow | ServiceNow (legacy) |
---|---|
useEncryptedEndpoints, useHostVerification e usePeerVerification non sono supportati nel servizio collegato. | Supporto di useEncryptedEndpoints, useHostVerification e usePeerVerification nel servizio collegato. |
Supporto di Generatore di query nell'origine. | Generatore di query non è supportato nell'origine. |
Le query basate su SQL non sono supportate. | Supportare delle query basate su SQL. |
Le query sortBy non sono supportate in Generatore di query. | Supporto delle query sortBy in Query. |
È possibile visualizzare lo schema nel set di dati. | Non è possibile visualizzare lo schema nel set di dati. |
Contenuto correlato
Per un elenco degli archivi dati supportati come origini e sink dall'attività Copy, vedere Archivi dati supportati.