Questo documento mostra agli amministratori SAP, agli sviluppatori SAP o ad altri utenti come risolvere i problemi relativi a BigQuery Toolkit for SAP.
Problemi comuni
Questa sezione elenca i messaggi di errore comuni e la relativa risoluzione specifici per BigQuery Toolkit for SAP.
Per informazioni sulla risoluzione dei problemi relativi all'ABAP SDK for Google Cloud in generale, consulta Risoluzione dei problemi della versione on-premise o di qualsiasi versione cloud di ABAP SDK for Google Cloud.
/GOOG/BQTR: Mass Transfer Key is required. Use Tcode /GOOG/BQTR_SETTINGS to maintain
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: Mass Transfer Key is required. Use Tcode /GOOG/BQTR_SETTINGS to maintain
.
Causa: la chiave di trasferimento collettivo non viene fornita nel parametro IV_MASS_TR_KEY
quando viene chiamata la classe di caricamento dei dati /GOOG/CL_BQTR_DATA_LOAD
.
Soluzione:per risolvere il problema, trasmetti una chiave di trasferimento collettivo
salvata nella transazione /GOOG/BQTR_SETTINGS
.
Per maggiori informazioni, vedi Chiamare il metodo di replica dei dati.
/GOOG/BQTR: Data Source is required. Pass a dictionary object
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: Data Source is required. Pass a dictionary object
.
Causa: l'origine dati non viene fornita nel parametro IV_DATA_SOURCE
quando viene chiamata la classe di caricamento dei dati /GOOG/CL_BQTR_DATA_LOAD
.
Soluzione:per risolvere il problema, passa il nome dell'oggetto dizionario, ad esempio la visualizzazione CDS o la tabella, come origine dati. Per maggiori informazioni, vedi Chiamare il metodo di replica dei dati.
/GOOG/BQTR: Mass Transfer Key MASS_TRANSFER_KEY not found. Use Tcode /GOOG/BQTR_SETTINGS to maintain
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: Mass Transfer Key MASS_TRANSFER_KEY not found. Use Tcode /GOOG/BQTR_SETTINGS to maintain
.
Causa: la chiave di trasferimento collettivo passata alla classe di caricamento dei dati /GOOG/CL_BQTR_DATA_LOAD
non viene gestita
nel modulo BigQuery Data Transfer.
Soluzione:per risolvere il problema, mantieni una chiave di trasferimento collettivo utilizzando il codice
transazione /GOOG/BQTR_SETTINGS
. Per saperne di più, consulta Configurare il modulo BigQuery Data Transfer.
/GOOG/BQTR: DATA_SOURCE does not exist in data dictionary
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: DATA_SOURCE does not exist in data dictionary
.
Causa: l'origine dati passata alla classe di caricamento dei dati /GOOG/CL_BQTR_DATA_LOAD
non è un oggetto dizionario dati valido.
Soluzione:per risolvere il problema, trasmetti il nome dell'origine dati presente nel dizionario dei dati. Sono supportati solo tabelle, viste dizionario e viste CDS.
/GOOG/BQTR: Nested Tables are not supported
Problema: ricevi il messaggio di errore /GOOG/BQTR: Nested Tables are not supported
.
Causa:l'oggetto dizionario passato come input alla classe di caricamento dei dati /GOOG/CL_BQTR_DATA_LOAD
non è una struttura piatta.
Soluzione:per risolvere il problema, utilizza un oggetto dizionario con una struttura piatta.
/GOOG/BQTR: Error creating target table definition
Problema: ricevi il messaggio di errore /GOOG/BQTR: Error creating target table definition
.
Causa: BigQuery Toolkit for SAP non è in grado di creare la definizione della tabella di destinazione per l'origine dati specificata.
Soluzione:per risolvere il problema, verifica che l'origine di input sia un oggetto dizionario valido con uno o più campi.
/GOOG/BQTR: 400 - Table creation failed in BQ. Could not pull the table metadata from BQ
Problema: ricevi il messaggio di errore /GOOG/BQTR: 400 - Table creation failed in BQ. Could not pull the table metadata from BQ
.
Causa: questo errore viene generato se il modulo BigQuery Data Transfer non riesce a ottenere la definizione della tabella da BigQuery. Ciò potrebbe essere causato da un sovraccarico temporaneo del server in BigQuery.
Risoluzione:per risolvere il problema, riavvia l'operazione di caricamento dei dati BigQuery.
/GOOG/BQTR: 400 - Scope must be provided
Problema: ricevi il messaggio di errore /GOOG/BQTR: 400 - Scope must be provided
.
Causa: in Ambito Google Cloud nella configurazione della chiave client non è presente alcun valore.
Risoluzione:per risolvere il problema, per la configurazione della chiave client che stai utilizzando, specifica l'ambito corrispondente nel campo Ambito Google Cloud, ad esempio https://www.googleapis.com/auth/cloud-platform
.
/GOOG/BQTR: 400 - Schema mismatch for table TABLE_NAME
Problema: ricevi il messaggio di errore /GOOG/BQTR: 400 - Schema mismatch
for table TABLE_NAME. Please delete the table from BigQuery and
try again.
Causa: è stata inserita una delle seguenti modifiche per una tabella BigQuery esistente:
- Eliminazione di un campo
- Ridenominazione di un campo
- Modifica del tipo di dati di un campo
- Modifica del tipo di partizione di una tabella
Le modifiche precedenti non possono essere applicate a una tabella BigQuery esistente.
Soluzione:se devi modificare uno di questi attributi di campo in una tabella esistente, devi eliminare la tabella esistente e ricaricare i record in una nuova tabella.
Messaggi di errore relativi a dati non validi
Problema: nei log dell'applicazione ricevi il messaggio di errore:
/GOOG/BQTR/: DESCRIPTION_OF_INVALID_DATA error
occurred in FIELD_NAME in record
RECORD_KEYS
.
Causa: questo messaggio di errore viene emesso da BigQuery quando vengono inseriti i record con dati non validi nella tabella di destinazione. I dati potrebbero non essere validi per uno dei seguenti motivi:
- I dati nel campo di un determinato record non sono compatibili con il tipo di dati in BigQuery. Ad esempio, BigQuery
genera messaggi di errore quando:
- Una stringa viene mantenuta in un campo di tipo
DATE
,INTEGER
oBOOLEAN
. - In un campo di tipo
DATE
viene mantenuta una data non valida (00/00/0000
).
- Una stringa viene mantenuta in un campo di tipo
- Nei mapping dei campi della transazione
/GOOG/BQTR_SETTINGS
viene mantenuto un tipo di dati di destinazione errato.
BigQuery emette un messaggio di errore per ogni record che contiene un campo con dati non validi.
Soluzione: analizza il messaggio di errore,
DESCRIPTION_OF_INVALID_DATA
,
per comprendere la possibile causa dei dati non validi.
Per identificare il record con
il campo che contiene i dati non validi,
utilizza RECORD_KEYS
, che include i contenuti dei
primi cinque campi del record. Se la tabella ha cinque campi o meno, i contenuti di tutti i campi sono inclusi in RECORD_KEYS
.
- Se i dati nel campo non sono compatibili con il tipo di dati in BigQuery, correggi i dati nella tabella di origine.
- Se l'errore si è verificato a causa di una mancata corrispondenza tra i dati e il tipo di dati,
utilizza la transazione
/GOOG/BQTR_SETTINGS
per specificare un tipo di dati appropriato.
/GOOG/BQTR: 403 - Access Denied: Dataset PROJECT_ID:DATASET_NAME: Permission bigquery.tables.created denied on dataset
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: 403 -
Access Denied: Dataset PROJECT_ID:DATASET_NAME: Permission
bigquery.tables.created denied on dataset
.
Causa: per il tuo carico di lavoro SAP in esecuzione su Google Cloud, nella
tabella /GOOG/CLIENT_KEY
, l'account di servizio specificato non dispone delle
autorizzazioni necessarie per accedere all'API BigQuery.
Soluzione:per risolvere il problema, completa i seguenti passaggi:
Nella GUI di SAP, inserisci la transazione
/GOOG/BQTR_SETTINGS
preceduta da/n
:/n/GOOG/BQTR_SETTINGS
Per l'ID trasferimento collettivo non riuscito nella transazione
LTRC
, annota il valore del campo Nome chiave Google Cloud.Inserisci la transazione
SM30
, quindi apri la tabella/GOOG/CLIENT_KEY
.Per il valore Nome chiave Google Cloud annotato in un passaggio precedente, annotare il valore specificato per il campo Nome service account.
Nella console Google Cloud , vai alla pagina Service account di Identity and Access Management.
Seleziona il account di servizio che hai annotato in un passaggio precedente.
Assicurati che il account di servizio disponga dei ruoli IAM richiesti da BigQuery Toolkit for SAP per accedere a BigQuery, come indicato in Configurare l'autenticazione.
Esegui nuovamente la replica.
/GOOG/BQTR: 404 - Not Found
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: 404 - Not
Found
.
Causa: nelle destinazioni RFC che ABAP SDK for Google Cloud utilizza per connettersi alle Google Cloud API, il prefisso del percorso non è corretto.
Soluzione:per risolvere il problema, completa i seguenti passaggi:
Nella GUI di SAP, inserisci la transazione
/GOOG/BQTR_SETTINGS
preceduta da/n
:/n/GOOG/BQTR_SETTINGS
Per l'ID trasferimento collettivo non riuscito nella transazione
LTRC
, annota il valore del campo Nome chiave Google Cloud.Inserisci la transazione
SM30
, quindi apri la tabella/GOOG/SERVIC_MAP
.Per il valore Nome chiave Google Cloud annotato in un passaggio precedente, prendi nota dei nomi delle destinazioni RFC.
Inserisci la transazione
SM59
e completa i seguenti passaggi:- Per la destinazione RFC che si connette a BigQuery, assicurati che il valore del campo Prefisso percorso sia
/bigquery/v2/
. - Per la destinazione RFC che si connette a IAM, assicurati
che il valore del campo Prefisso percorso sia
/v1/
.
- Per la destinazione RFC che si connette a BigQuery, assicurati che il valore del campo Prefisso percorso sia
Esegui nuovamente la replica.
/GOOG/BQTR: 404 - Table PROJECT_ID:DATASET_NAME.TABLE_NAME not found
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: 404 -
Table PROJECT_ID:DATASET_NAME.TABLE_NAME not
found
.
Causa: nelle destinazioni RFC che ABAP SDK for Google Cloud utilizza per connettersi alle API Google Cloud , il valore specificato per il campo Host di destinazione non corrisponde ad alcun nome DNS in Cloud DNS.
Soluzione:per risolvere il problema, completa i seguenti passaggi:
Nella GUI SAP, inserisci il codice di transazione
/GOOG/BQTR_SETTINGS
.Inserisci la chiave di trasferimento collettivo per cui hai ricevuto questo errore.
Fai clic sull'icona Esegui. Prendi nota del valore nella colonna Nome chiave Google Cloud.
Inserisci la transazione
SM30
e poi apri la tabella/GOOG/CLIENT_KEY
in modalità di visualizzazione.Cerca nella tabella
/GOOG/SERVIC_MAP
utilizzando il nome della chiave Google Cloud che hai annotato in un passaggio precedente, quindi prendi nota dei nomi delle destinazioni RFC specificate.Inserisci il codice della transazione
SM59
.Per le destinazioni RFC che utilizzi per connetterti alle API BigQuery e IAM, annota il valore specificato per il campo Host di destinazione.
Nella console Google Cloud , vai alla pagina Servizi di rete Cloud DNS.
Fai clic sulla zona privata che contiene i record DNS per gli endpoint Private Service Connect, che hai creato per consentire a BigQuery Toolkit for SAP di connettersi privatamente alle API BigQuery e IAM.
Assicurati che esista un record DNS con un nome DNS corrispondente per ciascuno dei valori host di destinazione annotati in un passaggio precedente.
Esegui nuovamente la replica.
/GOOG/BQTR: 404 - Not Found Requested entity was not found
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: 404 - Not Found Requested entity was not found
.
Causa: per il tuo workload in esecuzione su Google Cloud, l'account di servizio utilizzato nella tabella delle chiavi client /GOOG/CLIENT_KEY
non è valido.
Soluzione:per risolvere il problema, completa i seguenti passaggi:
Nella GUI di SAP, inserisci la transazione
/GOOG/BQTR_SETTINGS
preceduta da/n
:/n/GOOG/BQTR_SETTINGS
Inserisci la chiave di trasferimento collettivo per cui hai ricevuto questo errore.
Fai clic sull'icona Esegui. Prendi nota del valore nella colonna Nome chiave Google Cloud.
Inserisci la transazione
SM30
, quindi apri la tabella/GOOG/CLIENT_KEY
.Per il campo Nome account di servizio, assicurati che il valore specificato sia l'indirizzo email dell'account di servizio creato per BigQuery Toolkit for SAP.
Esegui nuovamente la replica.
/GOOG/BQTR: 413 - Request Entity Too Large
Problema:il trasferimento dei dati non è riuscito con il messaggio di errore /GOOG/BQTR: 413 - Request
Entity Too Large
.
Causa: questo problema può verificarsi quando le dimensioni in byte del blocco inviato da BigQuery Toolkit for SAP hanno superato le dimensioni massime in byte per le richieste HTTP accettate da BigQuery. Ciò può verificarsi quando le dimensioni dei record della tabella o la quantità di dati contenuti nei record fanno sì che le dimensioni in byte di un blocco superino il limite di BigQuery.
Risoluzione:riduci le dimensioni dei blocchi inviati da
BigQuery Toolkit for SAP per la tua tabella. Puoi regolare le dimensioni del blocco eseguendo la transazione /GOOG/BQTR_SETTINGS
o attivare le dimensioni dinamiche del blocco per regolarle automaticamente.
Per ulteriori informazioni, vedi:
/GOOG/BQTR: 404 - Not found: Dataset DATASET_NAME
Problema: quando tenti di convalidare Google Cloud la sicurezza
o di caricare i dati in una tabella BigQuery, ricevi
il messaggio /GOOG/BQTR: 404 - Not found: Dataset DATASET_NAME
.
Causa: questo problema può essere causato dalle seguenti circostanze:
- Il set di dati BigQuery non è ancora stato creato.
- Il nome del set di dati non è specificato correttamente nella configurazione del trasferimento collettivo.
- La configurazione della replica nel modulo BigQuery Data Transfer deve essere attivata.
Soluzione:prova le seguenti soluzioni:
- Verifica che il set di dati sia stato creato in BigQuery.
- Verifica che il nome del set di dati nella configurazione del trasferimento collettivo sia lo stesso del nome del set di dati in BigQuery.
/GOOG/BQTR : Unable to interpret VALUE as a BOOLEAN
Problema: il caricamento o la replica di un record non riesce e viene visualizzato il messaggio
/GOOG/BQTR : Unable to interpret VALUE as a BOOLEAN
.
Causa: questo problema è causato dal mapping di un campo nella tabella di origine
al tipo di dati BigQuery BOOLEAN
, ma i dati
nel campo di origine non vengono risolti in un valore booleano.
Risoluzione:per risolvere il problema, utilizza la transazione /GOOG/BQTR_SETTINGS
per
modificare il tipo di dati a cui è mappato il campo di origine
o rimuovere la mappatura del tipo di dati e accettare il tipo di dati predefinito.
/GOOG/BQTR: Failed to convert field SAP_FIELD_NAME value to field BIGQUERY_FIELD_NAME: ERROR_DETAILS
Problema: il caricamento o la replica di un record non riesce e viene visualizzato il messaggio
/GOOG/BQTR: Failed to convert field SAP_FIELD_NAME value
to field BIGQUERY_FIELD_NAME: ERROR_DETAILS
.
Causa: il campo di origine contiene un valore non valido oppure è mappato a un tipo di dati BigQuery che non è un mapping valido per i dati contenuti nel campo di origine.
Soluzione:per risolvere il problema, utilizza la transazione /GOOG/BQTR_SETTINGS
per modificare il tipo di dati a cui è mappato il campo di origine o rimuovere la mappatura del tipo di dati e accettare la mappatura predefinita per il tipo di dati.
/GOOG/BQTR: DESCRIPTION_OF_ISSUE error occurred in chunk ranging START_INDEX_OF_FAILED_CHUNK - END_INDEX_OF_FAILED_CHUNK
Problema: la replica di un blocco non è riuscita con il messaggio di errore
/GOOG/BQTR: DESCRIPTION_OF_ISSUE error occurred in chunk
ranging START_INDEX_OF_FAILED_CHUNK - END_INDEX_OF_FAILED_CHUNK
.
Causa: questo problema può avere più di una causa, tra cui
Invalid JSON Payload
, Quota Exceeded
, Request Entity Too Large
o HTTP Communication Failure
.
Il messaggio di errore per il blocco la cui replica in
BigQuery non è riuscita viene visualizzato con l'indice iniziale e finale del blocco.
Questo messaggio di errore viene visualizzato se non hai impostato il flag BREAK
nella transazione
/GOOG/BQTR_SETTINGS
. Quando il flag BREAK
non è impostato,
BigQuery Toolkit for SAP continua a inviare record a BigQuery
inviando il blocco successivo anche quando si verifica un errore.
Soluzione:prova le seguenti soluzioni:
- Per problemi relativi a
Quota Exceeded
,Request Entity Too Large
oHTTP Communication Failure
, segui i passaggi per la risoluzione dei problemi per /GOOG/BQTR: 413 - Request Entity Too Large. - Interrompi il caricamento corrente, elimina la tabella di destinazione da BigQuery e poi riavvia un nuovo caricamento.
- Per interrompere l'invio di dati a BigQuery e terminare il job di replica quando viene rilevato un blocco con un errore, imposta il flag
BREAK
, consigliato negli ambienti di produzione.
Per informazioni sulla configurazione del flag BREAK
, vedi
Specificare la creazione di tabelle e altri attributi generali.
Ricevere assistenza dalla community
Poni le tue domande e discuti di BigQuery Toolkit for SAP con la community nei forum di Cloud.
Assistenza
Google Cloud offre assistenza per problemi e domande relativi all'installazione, alla configurazione, al funzionamento e alla manutenzione di BigQuery Toolkit per SAP.
Per i problemi derivanti da componenti gestiti da SAP, come Operational Data Provisioning (ODP), Data Migration Server (DMIS), Core Data Services (CDS), Internet Communication Manager (ICM) o software di terze parti, Google Cloud Customer Care si impegna al massimo per identificare la causa principale. Per risolvere questi problemi, contatta il fornitore o il provider di assistenza pertinente.
Se hai bisogno di aiuto per risolvere i problemi relativi a BigQuery Toolkit per SAP, raccogli tutte le informazioni diagnostiche disponibili e contatta l'assistenza clienti Google Cloud.
Per ulteriori informazioni su come contattare l'assistenza clienti Google Cloud, consulta Ricevere assistenza per SAP su Google Cloud.