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 tuoi dati più recenti da ServiceNow a BigQuery.

Limitazioni

I trasferimenti di dati ServiceNow sono soggetti alle seguenti limitazioni:

  • Il connettore ServiceNow supporta solo l'API ServiceNow Table.
  • Non è consigliabile eseguire trasferimenti di dati simultanei sulla stessa istanza di ServiceNow. Ciò può causare ritardi o errori dovuti al carico sull'istanza ServiceNow.
    • Ti consigliamo di scaglionare gli orari di inizio dei trasferimenti per evitare sovrapposizioni.
  • Per migliorare il rendimento del trasferimento dei dati, ti consigliamo di limitare il numero di asset a 20 elementi per trasferimento.
  • L'intervallo di tempo minimo tra i trasferimenti di dati ricorrenti è di 15 minuti. L'intervallo predefinito per un trasferimento ricorrente è di 24 ore.
  • Una singola configurazione di trasferimento può supportare una sola esecuzione di trasferimento dei dati in un determinato momento. Nel caso in cui sia pianificato l'esecuzione di un secondo trasferimento di dati prima del completamento del primo, solo il primo trasferimento di dati viene completato, mentre gli altri trasferimenti di dati che si sovrappongono al primo vengono ignorati.
    • Per evitare trasferimenti ignorati all'interno di una singola configurazione di trasferimento, ti consigliamo di aumentare la durata di tempo tra i trasferimenti di grandi quantità di dati configurando la Frequenza di ripetizione.

Prima di iniziare

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

Prerequisiti di ServiceNow

  • Per accedere alle API ServiceNow, crea credenziali OAuth.
  • Nella tua istanza ServiceNow devono essere abilitate tutte le seguenti applicazioni ServiceNow:

  • Per avviare un trasferimento ServiceNow, devi disporre delle credenziali corrette per connetterti all'istanza ServiceNow.

    • Per ottenere le credenziali per un'istanza ServiceNow Developer, accedi al portale ServiceNow Developer. Puoi utilizzare il nome utente e la password elencati nella pagina Gestisci password istanza. Per informazioni sulla reimpostazione della password di ServiceNow, vedi Reimpostazione della password
    • Per ottenere le credenziali per un'istanza di produzione o di sub-produzione di ServiceNow, contatta l'amministratore clienti di ServiceNow per richiedere il nome utente e la password.

Prerequisiti di BigQuery

Ruoli BigQuery richiesti

Per ottenere le autorizzazioni necessarie per creare un trasferimento di dati BigQuery Data Transfer Service, chiedi all'amministratore di concederti il ruolo IAM Amministratore BigQuery (roles/bigquery.admin) nel tuo progetto. 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 di dati BigQuery Data Transfer Service. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare un trasferimento di dati di BigQuery Data Transfer Service sono necessarie le seguenti autorizzazioni:

  • Autorizzazioni BigQuery Data Transfer Service:
    • bigquery.transfers.update
    • bigquery.transfers.get
  • Autorizzazioni BigQuery:
    • bigquery.datasets.get
    • bigquery.datasets.getIamPolicy
    • bigquery.datasets.update
    • bigquery.datasets.setIamPolicy
    • bigquery.jobs.create

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

Per maggiori informazioni, vedi Concedere l'accesso a bigquery.admin.

Configura un trasferimento di dati ServiceNow

Aggiungi i dati ServiceNow in BigQuery configurando una configurazione del trasferimento utilizzando una delle seguenti opzioni:

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:

    • (Facoltativo) Per Collegamento di rete, seleziona un collegamento di rete dal menu a discesa o fai clic su Crea collegamento di rete.
    • Seleziona un collegamento di rete per configurare questo trasferimento di dati in modo che utilizzi un indirizzo IP singolo e coerente. Puoi utilizzare questa opzione se la tua istanza ServiceNow è configurata per accettare solo il traffico proveniente da indirizzi IP specifici.
    • Per saperne di più sulla definizione degli indirizzi IP in ServiceNow, vedi Definisci gli indirizzi IP interni ServiceNow consentiti.
    • 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): l'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 dell'OAuth generato
    connector.authentication.oauth.clientSecret Obbligatorio Client secret dell'OAuth generato
    connector.valueType Facoltativo Actual o Display (predefinito: Actual)
    connector.networkAttachment Facoltativo Specifica un collegamento di rete per configurare questo trasferimento di dati in modo che utilizzi un indirizzo IP singolo e coerente. Puoi utilizzare questa opzione se la tua istanza ServiceNow è protetta per accettare solo il traffico proveniente da indirizzi IP specifici. Per saperne di più sulla definizione degli indirizzi IP in ServiceNow, vedi Definisci gli indirizzi IP interni ServiceNow consentiti.

    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",
            "connector.networkAttachment": "projects/dev-project1/regions/us-central1/networkattachments/na1"}'
    

API

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

Quando salvi la configurazione del trasferimento, il connettore ServiceNow attiva automaticamente un'esecuzione del trasferimento in base all'opzione di pianificazione. A ogni esecuzione del trasferimento, il connettore ServiceNow trasferisce tutti i dati disponibili da ServiceNow a BigQuery.

Per eseguire manualmente un trasferimento di dati al di fuori della pianificazione regolare, puoi avviare un'esecuzione di backfill.

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 STRING
currency STRING
sys_class_name STRING
domain_id STRING
domain_path STRING
guid STRING
translated_html STRING
journal STRING
string STRING

Risolvere i problemi di trasferimento

Le sezioni seguenti descrivono in dettaglio i problemi comuni durante la configurazione di un trasferimento di dati ServiceNow.

Per saperne di più, consulta la sezione 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, Product Catalog o Contract Management non sono abilitate in ServiceNow. Per risolvere il problema, attiva tutte e tre le applicazioni:

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:

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

Altri errori

Per informazioni su altri errori verificatisi durante un trasferimento di dati ServiceNow, vedi Problemi di trasferimento di ServiceNow.

Prezzi

Per informazioni sui prezzi dei trasferimenti da ServiceNow, consulta la sezione Prezzi di Data Transfer Service.

Passaggi successivi