Caricare i dati di ServiceNow in BigQuery

Puoi caricare i dati da ServiceNow a BigQuery utilizzando il connettore BigQuery Data Transfer Service per ServiceNow. Con BigQuery Data Transfer Service, puoi pianificare job di trasferimento ricorrenti che aggiungono i dati più recenti da ServiceNow a BigQuery.

Limitazioni

I trasferimenti di dati ServiceNow sono soggetti alle seguenti limitazioni:

  • L'esecuzione di trasferimenti di dati simultanei sulla stessa istanza di ServiceNow non è consigliata.
  • L'intervallo di tempo minimo tra i trasferimenti di dati ricorrenti è di 15 minuti. L'intervallo predefinito per un trasferimento ricorrente è di 24 ore.

Prima di iniziare

Prima di creare un trasferimento di dati ServiceNow, esegui le seguenti configurazioni per ServiceNow e BigQuery.

Prerequisiti di ServiceNow

Prerequisiti di BigQuery

Ruoli BigQuery richiesti

Per ottenere le autorizzazioni necessarie per creare un trasferimento, chiedi all'amministratore di concederti il ruolo IAM BigQuery Admin (roles/bigquery.admin). Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per creare un trasferimento. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare un trasferimento sono necessarie le seguenti autorizzazioni:

  • bigquery.transfers.update sull'utente
  • bigquery.datasets.get sul set di dati di destinazione
  • bigquery.datasets.update sul set di dati di destinazione

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Configurare un trasferimento di dati ServiceNow

I trasferimenti di dati ServiceNow possono essere creati nella console Google Cloud o nello strumento a riga di comando bq.

Console

  1. Vai alla pagina Trasferimenti di dati nella console Google Cloud .

    Vai a Trasferimenti dati

  2. Fai clic su Crea trasferimento.

  3. Nella sezione Tipo di origine, per Origine, seleziona ServiceNow.

  4. Nella sezione Dettagli origine dati, segui questi passaggi:

    • Per ID istanza, inserisci l'ID istanza ServiceNow. Puoi trovarlo nell'URL di ServiceNow, ad esempio https://INSTANCE_ID.service-now.com.
    • Per Nome utente, inserisci il nome utente ServiceNow da utilizzare per la connessione.
    • Per Password, inserisci la password di ServiceNow.
    • Per ID client, inserisci l'ID client delle tue credenziali OAuth. Per generare le credenziali, vedi Crea le credenziali OAuth.
    • Per Client secret, inserisci il client secret dalle tue credenziali OAuth.
    • In Tabelle ServiceNow da trasferire, inserisci i nomi delle tabelle ServiceNow da trasferire oppure fai clic su Sfoglia e seleziona le tabelle da trasferire.
    • Per Tipo di valore, scegli una delle seguenti opzioni:
      • Per trasferire i valori memorizzati nel database, scegli Effettivo.
      • Per trasferire i valori di visualizzazione delle colonne, scegli Visualizza.
  5. Nella sezione Impostazioni destinazione, per Set di dati, seleziona il set di dati che hai creato per archiviare i dati.

  6. Nella sezione Nome configurazione di trasferimento, per Nome visualizzato, inserisci un nome per il trasferimento di dati.

  7. Nella sezione Opzioni di pianificazione, segui questi passaggi:

    • Nell'elenco Frequenza di ripetizione, seleziona un'opzione per specificare la frequenza con cui viene eseguito questo trasferimento di dati. Per specificare una frequenza di ripetizione personalizzata, seleziona Personalizzata. Se selezioni On demand, questo trasferimento di dati viene eseguito quando attivi manualmente il trasferimento.
    • Se applicabile, seleziona Inizia ora o Inizia all'ora impostata e fornisci una data di inizio e un'ora di esecuzione.
  8. (Facoltativo) Nella sezione Opzioni di notifica, segui questi passaggi:

    • Per attivare le notifiche via email, fai clic sul pulsante di attivazione/disattivazione Notifica email. Quando attivi questa opzione, l'amministratore del trasferimento riceve una notifica via email quando l'esecuzione di un trasferimento non riesce.
    • Per attivare le notifiche di esecuzione del trasferimento Pub/Sub per questo trasferimento di dati, fai clic sul pulsante di attivazione/disattivazione Notifiche Pub/Sub. Puoi selezionare il nome del tuo argomento oppure fare clic su Crea un argomento per crearne uno.
  9. Fai clic su Salva.

bq

Inserisci il comando bq mk e fornisci il flag di creazione del trasferimento, --transfer_config:

bq mk
    --transfer_config
    --project_id=PROJECT_ID
    --data_source=DATA_SOURCE
    --display_name=DISPLAY_NAME
    --target_dataset=DATASET
    --params='PARAMETERS'

Sostituisci quanto segue:

  • PROJECT_ID (facoltativo): il tuo ID progetto Google Cloud . Se non viene specificato un ID progetto, viene utilizzato il progetto predefinito.
  • DATA_SOURCE: l'origine dati (ad esempio, servicenow).
  • DISPLAY_NAME: il nome visualizzato per la configurazione del trasferimento. Il nome del trasferimento dei dati può essere qualsiasi valore che ti consenta di identificare il trasferimento se devi modificarlo in un secondo momento.
  • DATASET: il set di dati di destinazione per la configurazione del trasferimento.
  • PARAMETERS: i parametri per la configurazione del trasferimento creato in formato JSON. Ad esempio: --params='{"param":"param_value"}'. Di seguito sono riportati i parametri per un trasferimento di dati ServiceNow:

    Parametro ServiceNow Obbligatorio o facoltativo Descrizione
    connector.instanceId Obbligatorio ID istanza dell'istanza ServiceNow
    connector.authentication.username Obbligatorio Nome utente delle credenziali
    connector.authentication.password Obbligatorio Password delle credenziali
    connector.authentication.oauth.clientId Obbligatorio ID client OAuth generato
    connector.authentication.oauth.clientSecret Obbligatorio Client secret dell'OAuth generato
    connector.valueType Facoltativo Actual o Display (predefinito: Actual)

    Ad esempio, il seguente comando crea un trasferimento di dati ServiceNow nel progetto predefinito con tutti i parametri richiesti:

      bq mk
        --transfer_config
        --target_dataset=mydataset
        --data_source=servicenow
        --display_name='My Transfer'
        --params='{"connector.authentication.oauth.clientId": "1234567890",
            "connector.authentication.oauth.clientSecret":"ABC12345",
            "connector.authentication.username":"user1",
            "connector.authentication.password":"abcdef1234",
            "connector.instanceId":"https://dev-instance.service-now.com"}'
    

API

Utilizza il metodo projects.locations.transferConfigs.create e fornisci un'istanza della risorsa TransferConfig.

Mappatura dei tipi di dati

La seguente tabella mostra come vengono mappati i tipi di dati in un trasferimento di dati ServiceNow:

Tipo di dati ServiceNow Tipo di dati BigQuery
decimal FLOAT64
integer INTEGER
boolean BOOLEAN
glide_date DATE
glide_date_time DATETIME
glide_time INT64
reference
currency
sys_class_name
domain_id
domain_path
GUID
translated_html
journal
string
STRING

Risolvere i problemi di trasferimento

Per ulteriori informazioni, consulta Risolvere i problemi relativi alle configurazioni di trasferimento.

Il trasferimento non riesce a causa dell'attivazione di ServiceNow

Si verifica un problema che causa il mancato trasferimento dei dati quando le applicazioni Procurement, Catalogo dei prodotti o Contract Management non sono attivate in ServiceNow. Per risolvere il problema, attiva tutte e tre le applicazioni. Ad esempio, attiva Acquisti.

Il problema si verifica durante l'esecuzione del trasferimento

Si verifica un problema che impedisce la creazione dell'esecuzione del trasferimento come previsto. Per risolvere il problema:

  • Verifica che le credenziali dell'account ServiceNow, come i valori Nome utente, Password, ID client e Client secret, siano validi.
  • Verifica che l'ID istanza sia l'ID valido della tua istanza ServiceNow.

Prezzi

Il trasferimento dei dati ServiceNow in BigQuery non prevede costi durante l'anteprima di questa funzionalità.

Passaggi successivi