Copiare dati da ServiceNow usando Azure Data FactoryCopy data from ServiceNow using Azure Data Factory

Questo articolo illustra come usare l'attività di copia in Azure Data Factory per copiare dati da e in ServiceNow.This article outlines how to use the Copy Activity in Azure Data Factory to copy data from ServiceNow. Si basa sull'articolo di panoramica dell'attività di copia che presenta una panoramica generale sull'attività di copia.It builds on the copy activity overview article that presents a general overview of copy activity.

Funzionalità supportateSupported capabilities

Questo connettore ServiceNow è supportato per le attività seguenti:This ServiceNow connector is supported for the following activities:

È possibile copiare dati da ServiceNow a qualsiasi archivio dati di sink supportato.You can copy data from ServiceNow to any supported sink data store. Per un elenco degli archivi dati supportati come origini/sink dall'attività di copia, vedere la tabella relativa agli archivi dati supportati.For a list of data stores that are supported as sources/sinks by the copy activity, see the Supported data stores table.

Azure Data Factory offre un driver predefinito per consentire la connettività, pertanto non è necessario installare manualmente alcun driver usando questo connettore.Azure Data Factory provides a built-in driver to enable connectivity, therefore you don't need to manually install any driver using this connector.

Inizia oraGetting started

È possibile usare l'attività di copia con una pipeline tramite uno degli strumenti o degli SDK seguenti.You can use one of the following tools or SDKs to use the copy activity with a pipeline. Per istruzioni dettagliate, selezionare un collegamento:Select a link for step-by-step instructions:

Le sezioni seguenti riportano informazioni dettagliate sulle proprietà che vengono usate per definire entità di Data Factory specifiche per il connettore ServiceNow.The following sections provide details about properties that are used to define Data Factory entities specific to ServiceNow connector.

Proprietà del servizio collegatoLinked service properties

Per il servizio collegato ServiceNow sono supportate le proprietà seguenti:The following properties are supported for ServiceNow linked service:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà type deve essere impostata su ServiceNow.The type property must be set to: ServiceNow Yes
endpointendpoint Endpoint del server ServiceNow (http://<instance>.service-now.com).The endpoint of the ServiceNow server (http://<instance>.service-now.com). Yes
authenticationTypeauthenticationType Tipo di autenticazione da usare.The authentication type to use.
I valori consentiti sono Basic, OAuth2Allowed values are: Basic, OAuth2
Yes
Nome utenteusername Nome utente usato per la connessione al server di ServiceNow per l'autenticazione di base e OAuth2.The user name used to connect to the ServiceNow server for Basic and OAuth2 authentication. Yes
passwordpassword Password corrispondente al nome utente per l'autenticazione di base e OAuth2.The password corresponding to the user name for Basic and OAuth2 authentication. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. Yes
clientIdclientId ID client per l'autenticazione OAuth2.The client ID for OAuth2 authentication. NoNo
clientSecretclientSecret Segreto client per l'autenticazione OAuth2.The client secret for OAuth2 authentication. Contrassegnare questo campo come SecureString per archiviarlo in modo sicuro in Azure Data Factory oppure fare riferimento a un segreto archiviato in Azure Key Vault.Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. NoNo
useEncryptedEndpointsuseEncryptedEndpoints Specifica se gli endpoint dell'origine dati vengono crittografati tramite HTTPS.Specifies whether the data source endpoints are encrypted using HTTPS. Il valore predefinito è true.The default value is true. NoNo
useHostVerificationuseHostVerification Specifica se è necessario che il nome host nel certificato del server corrisponda al nome host del server per la connessione tramite SSL.Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. Il valore predefinito è true.The default value is true. NoNo
usePeerVerificationusePeerVerification Specifica se verificare l'identità del server durante la connessione tramite SSL.Specifies whether to verify the identity of the server when connecting over SSL. Il valore predefinito è true.The default value is true. NoNo

Esempio:Example:

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

Proprietà del set di datiDataset properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione di set di dati, vedere l'articolo sui set di dati.For a full list of sections and properties available for defining datasets, see the datasets article. Questa sezione presenta un elenco delle proprietà supportate dal set di dati di ServiceNow.This section provides a list of properties supported by ServiceNow dataset.

Per copiare dati da ServiceNow, impostare la proprietà type del set di dati su ServiceNowObject.To copy data from ServiceNow, set the type property of the dataset to ServiceNowObject. Sono supportate le proprietà seguenti:The following properties are supported:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà Type del set di dati deve essere impostata su: ServiceNowObjectThe type property of the dataset must be set to: ServiceNowObject Yes
tableNametableName Nome della tabella.Name of the table. No (se nell'origine dell'attività è specificato "query")No (if "query" in activity source is specified)

EsempioExample

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

Proprietà dell'attività di copiaCopy activity properties

Per un elenco completo delle sezioni e delle proprietà disponibili per la definizione delle attività, vedere l'articolo sulle pipeline.For a full list of sections and properties available for defining activities, see the Pipelines article. Questa sezione presenta un elenco delle proprietà supportate dall'origine ServiceNow.This section provides a list of properties supported by ServiceNow source.

ServiceNow come origineServiceNow as source

Per copiare dati da ServiceNow, impostare il tipo di origine nell'attività di copia su ServiceNowSource.To copy data from ServiceNow, set the source type in the copy activity to ServiceNowSource. Nella sezione origine dell'attività di copia sono supportate le proprietà seguenti:The following properties are supported in the copy activity source section:

ProprietàProperty DescriptionDescription ObbligatoriaRequired
typetype La proprietà type dell'origine dell'attività di copia deve essere impostata su ServiceNowSourceThe type property of the copy activity source must be set to: ServiceNowSource Yes
queryquery Usare la query SQL personalizzata per leggere i dati.Use the custom SQL query to read data. Ad esempio: "SELECT * FROM Actual.alm_asset".For example: "SELECT * FROM Actual.alm_asset". No (se nel set di dati è specificato "tableName")No (if "tableName" in dataset is specified)

Tenere presente quanto segue quando si specifica lo schema e la colonna per ServiceNow nella query, e fare riferimento ai suggerimenti sulle prestazioni per le implicazioni della copia per le prestazioni.Note the following when specifying the schema and column for ServiceNow in query, and refer to Performance tips on copy performance implication.

  • Schema: specificare lo schema come Actual o Display nella query ServiceNow, che è possibile individuare come parametro di sysparm_display_value come true o false quando si chiamano le API RESTful di ServiceNow.Schema: specify the schema as Actual or Display in the ServiceNow query, which you can look at it as the parameter of sysparm_display_value as true or false when calling ServiceNow restful APIs. 
  • Colonna: il nome di colonna per il valore effettivo nello schema Actual è [column name]_value, mentre il valore visualizzato nello schema Display è [column name]_display_value.Column: the column name for actual value under Actual schema is [column name]_value, while for display value under Display schema is [column name]_display_value. Si noti il nome della colonna deve essere mappato allo schema usato nella query.Note the column name need map to the schema being used in the query.

Query di esempio: SELECT col_value FROM Actual.alm_assetSELECT col_display_value FROM Display.alm_assetSample query: SELECT col_value FROM Actual.alm_asset OR  SELECT col_display_value FROM Display.alm_asset

Esempio:Example:

"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>"
            }
        }
    }
]

Suggerimenti per incrementare le prestazioniPerformance tips

Schema da usareSchema to use

ServiceNow ha 2 schemi diversi, ovvero "Actual" , che restituisce i dati effettivi, e "Display" che restituisce i valori visualizzati dei dati.ServiceNow has 2 different schemas, one is "Actual" which returns actual data, the other is "Display" which returns the display values of data.

Se la query include un filtro, usare lo schema "Actual" che offre prestazioni di copia migliori.If you have a filter in your query, use "Actual" schema which has better copy performance. Quando si eseguono query sullo schema "Actual", ServiceNow supporta in modo nativo un filtro durante il recupero di dati per restituire solo il set di risultati filtrato, mentre quando si esegue una query sullo schema "Display", Azure Data Factory recupera tutti i dati e applica il filtro internamente.When querying against "Actual" schema, ServiceNow natively support filter when fetching the data to only return the filtered resultset, whereas when querying "Display" schema, ADF retrieve all the data and apply filter internally.

IndiceIndex

L'indice di tabella di ServiceNow può essere utile per migliorare le prestazioni delle query. Vedere Create a table index (Creare un indice di tabella).ServiceNow table index can help improve query performance, refer to Create a table index.

Proprietà attività di ricercaLookup activity properties

Per informazioni dettagliate sulle proprietà, controllare l' attività di ricerca.To learn details about the properties, check Lookup activity.

Passaggi successiviNext steps

Per un elenco degli archivi dati supportati come origini o sink dall'attività di copia in Azure Data Factory, vedere gli archivi dati supportati.For a list of data stores supported as sources and sinks by the copy activity in Azure Data Factory, see supported data stores.