Genera metadati per la traduzione e la valutazione
In questo documento viene descritto come creare file di log delle query e dei metadati utilizzando l'API
Strumento di estrazione a riga di comando dwh-migration-dumper
. I file di metadati descrivono gli oggetti SQL nella tua origine
di un sistema operativo completo.
BigQuery Migration Service utilizza queste informazioni per migliorare degli script SQL dal dialetto del sistema di origine a GoogleSQL.
La valutazione della migrazione di BigQuery utilizza file di metadati e file di log delle query per analizzare il data warehouse esistente e valutare l'impegno richiesto per spostare il data warehouse in BigQuery.
Panoramica
Puoi usare lo strumento dwh-migration-dumper
per estrarre informazioni sui metadati dal
piattaforma di database di cui stai eseguendo la migrazione a BigQuery. Mentre utilizzi il
strumento di estrazione non è necessario per la traduzione, è necessario per
valutazione della migrazione di BigQuery e consigliamo vivamente di utilizzarla per tutte le attività di migrazione.
Per ulteriori informazioni, vedi Crea file di metadati.
Puoi usare lo strumento dwh-migration-dumper
per estrarre metadati dal
seguenti piattaforme di database:
- Teradata
- Amazon Redshift
- Apache Hive
- Apache Spark
- Azure Synapse
- Microsoft SQL Server
- Netezza di IBM
- Oracle
- Snowflake
- Trino o PrestoSQL
- Vertica
Per la maggior parte di questi database puoi anche estrarre i log delle query.
Lo strumento dwh-migration-dumper
esegue query sulle tabelle di sistema per raccogliere la definizione dei dati
di linguaggio DDL (DDL) relative a database di utenti e sistemi. Non
eseguire query sui contenuti dei database degli utenti. Lo strumento salva le informazioni dei metadati
dalle tabelle di sistema come file CSV e poi li comprimi in
in un unico pacchetto. Puoi quindi caricare questo file ZIP in Cloud Storage al momento del caricamento
i tuoi file di origine per la traduzione o la valutazione.
Quando utilizzi l'opzione Query logs, lo strumento dwh-migration-dumper
esegue query sulle tabelle di sistema per trovare istruzioni DDL e log delle query relativi ai database di sistema e utente. Questi file vengono salvati in formato CSV o YAML in una sottodirectory e quindi compressi in un pacchetto ZIP. Non vengono mai eseguite query sui contenuti dei database degli utenti. A questo punto, la valutazione della migrazione di BigQuery richiede singoli file CSV, YAML e di testo per i log delle query, quindi devi decomprimere tutti questi file dal file ZIP dei log delle query e caricarli per la valutazione.
Lo strumento dwh-migration-dumper
può essere eseguito su Windows, macOS e Linux.
Lo strumento dwh-migration-dumper
è disponibile in
Licenza Apache 2.
Se scegli di non utilizzare lo strumento dwh-migration-dumper
per la traduzione, puoi fornire manualmente
di metadati raccogliendo le istruzioni DDL (Data Definition Language) per
gli oggetti SQL del sistema di origine in file di testo separati.
Per la valutazione della migrazione mediante la valutazione della migrazione di BigQuery è necessario fornire i metadati e i log delle query estratti con lo strumento.
Requisiti di conformità
Per facilità d'uso, forniamo il file binario compilato dello strumento dwh-migration-dumper
. Se
controllare lo strumento per garantire che soddisfi i requisiti di conformità,
puoi rivedere il codice sorgente
Repository GitHub dello strumento dwh-migration-dumper
,
e compilerai il tuo programma binario.
Prerequisiti
Installa Java
Il server su cui prevedi di eseguire lo strumento dwh-migration-dumper
deve avere
È installato Java 8 o versione successiva. In caso contrario, scarica Java dal
Pagina dei download Java
e installarlo.
Autorizzazioni obbligatorie
L'account utente specificato per connettere lo strumento dwh-migration-dumper
a
il sistema di origine deve disporre delle autorizzazioni
per leggere i metadati dal sistema.
Verifica che questo account disponga dell'appartenenza appropriata ai ruoli per eseguire query sui metadati
disponibili per la tua piattaforma. Ad esempio, INFORMATION_SCHEMA
è un
risorsa di metadati comune su diverse piattaforme.
Installa lo strumento dwh-migration-dumper
Per installare lo strumento dwh-migration-dumper
:
- Sul computer su cui vuoi eseguire lo strumento
dwh-migration-dumper
, scarica il file ZIP Repository GitHub dello strumentodwh-migration-dumper
. - Per convalidare il file ZIP dello strumento
dwh-migration-dumper
, scarica FileSHA256SUMS.txt
ed esegui questo comando:
Bash
sha256sum --check SHA256SUMS.txt
Se la verifica non va a buon fine, consulta la sezione Risoluzione dei problemi.
Windows PowerShell
(Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]
Sostituisci RELEASE_ZIP_FILENAME
con il file scaricato
il nome del file ZIP della release dello strumento di estrazione della riga di comando dwh-migration-dumper
, ad esempio
dwh-migration-tools-v1.0.52.zip
Il risultato di True
conferma l'esito positivo della verifica del checksum.
Il risultato False
indica un errore di verifica. Assicurati che il checksum e
i file ZIP vengono scaricati dalla stessa versione di release e inseriti nel
nella stessa directory.
- Estrai il file ZIP. Il file binario dello strumento di estrazione è
Sottodirectory
/bin
della cartella creata estraendo il file ZIP. - Aggiorna la variabile di ambiente
PATH
in modo che includa il percorso di installazione per lo strumento di estrazione.
Esegui lo strumento dwh-migration-dumper
Lo strumento dwh-migration-dumper
usa il seguente formato:
dwh-migration-dumper [FLAGS]
L'esecuzione dello strumento dwh-migration-dumper
crea un file di output denominato
dwh-migration-<source platform>-metadata.zip
, ad esempio
dwh-migration-teradata-metadata.zip
nella directory di lavoro.
Segui queste istruzioni per scoprire come eseguire lo strumento dwh-migration-dumper
per la tua piattaforma di origine.
Teradata
Per consentire allo strumento dwh-migration-dumper
di connettersi a Teradata, scarica
il driver JDBC di Teradata
pagina di download.
La tabella seguente descrive i flag di uso comune per l'estrazione Metadati e log delle query Teradata utilizzando lo strumento di estrazione. Per informazioni su tutti i flag supportati, consulta i flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--assessment |
Attiva la modalità di valutazione durante la generazione di log di database o l'estrazione di metadati.
Lo strumento |
Richiesto quando si utilizza per l'esecuzione del test, non per la traduzione. | |
--connector |
Il nome del connettore da utilizzare, in questo caso teradata per i metadati o teradata-logs per i log delle query. | Sì | |
--database |
Un elenco dei database da estrarre, separati da virgole. La i nomi dei database potrebbero essere sensibili alle maiuscole, a seconda del modello configurazione del server. Se questo flag viene usato in combinazione con
Questo flag non può essere usato in combinazione con
connettore |
No | |
--driver |
Il percorso assoluto o relativo del file JAR del driver da utilizzare per questa connessione. Puoi specificare più file JAR del driver, separandoli con virgole. | Sì | |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--password |
La password da utilizzare per la connessione al database. | Se non specificato, lo strumento di estrazione utilizza un prompt sicuro per richiederlo. | |
--port |
1025 | La porta del server del database. | No |
--user |
Il nome utente da utilizzare per la connessione al database. |
Sì | |
--query-log-alternates |
Solo per il connettore Per estrarre i log delle query da una posizione alternativa,
ti consigliamo di utilizzare
Per impostazione predefinita, i log delle query vengono estratti dalle tabelle
Esempio:
|
No | |
-Dteradata.tmode |
La modalità di transazione per la connessione. I seguenti valori sono supportati:
Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.log-date-column |
Solo per il connettore
Per migliorare le prestazioni dell'unione delle tabelle specificate dal
Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.query-logs-table |
Solo per il connettore
Per impostazione predefinita, i log delle query vengono estratti
Tabella Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.sql-logs-table |
Solo per il connettore
Per impostazione predefinita, i log delle query contenenti testo SQL vengono estratti
la tabella Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.utility-logs-table |
Solo per il connettore
Per impostazione predefinita, i log dell'utilità vengono estratti dalla tabella
Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.res-usage-scpu-table |
Solo per il connettore
Per impostazione predefinita, i log di utilizzo delle risorse SCPU vengono estratti
la tabella Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.res-usage-spma-table |
Solo per il connettore
Per impostazione predefinita, i log di utilizzo delle risorse SPMA vengono estratti
la tabella Esempio (bash): Esempio (Windows PowerShell): |
No | |
--query-log-start |
L'ora di inizio (inclusa) per l'estrazione dei log delle query. Il valore è troncato all'ora. Questo flag è disponibile solo per teradata-logs.
Esempio: |
No | |
--query-log-end |
L'ora di fine (esclusa) per l'estrazione dei log delle query. Il valore è troncato all'ora. Questo flag è disponibile solo per teradata-logs.
Esempio: |
No | |
-Dteradata.metadata.tablesizev.max-rows |
Solo per il connettore Limita il numero di righe estratte dalla vista
Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata.metadata.diskspacev.max-rows |
Solo per il connettore Limita il numero di righe estratte dalla vista
Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata.metadata.databasesv.users.max-rows |
Solo per il connettore
Limita il numero di righe che rappresentano gli utenti
( Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata.metadata.databasesv.dbs.max-rows |
Solo per il connettore Limita il numero di righe che rappresentano i database
( Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata.metadata.max-text-length |
Solo per il connettore Lunghezza massima della colonna di testo durante l'estrazione dei dati da
la vista Esempio (bash): Esempio (Windows PowerShell): |
No | |
-Dteradata-logs.max-sql-length |
Solo per il connettore Lunghezza massima della colonna Esempio (bash): Esempio (Windows PowerShell): |
No |
Esempi
L'esempio seguente mostra come estrarre i metadati per due Database Teradata sull'host locale:
dwh-migration-dumper \
--connector teradata \
--user user \
--password password \
--database database1,database2 \
--driver path/terajdbc4.jar
L'esempio seguente mostra come estrarre i log delle query per la valutazione nel host locale per l'autenticazione:
dwh-migration-dumper \
--connector teradata-logs \
--assessment \
--user user \
--password password \
--driver path/terajdbc4.jar
Tabelle e visualizzazioni estratte dallo strumento dwh-migration-dumper
Quando utilizzi il connettore teradata
, vengono estratte le seguenti tabelle e viste:
DBC.ColumnsV
DBC.DatabasesV
DBC.DBCInfo
DBC.FunctionsV
DBC.IndicesV
DBC.PartitioningConstraintsV
DBC.TablesV
DBC.TableTextV
Le seguenti tabelle e viste aggiuntive vengono estratte quando utilizzi il connettore teradata
con il flag --assessment
:
DBC.All_RI_ChildrenV
DBC.All_RI_ParentsV
DBC.AllTempTablesVX
DBC.DiskSpaceV
DBC.RoleMembersV
DBC.StatsV
DBC.TableSizeV
Quando utilizzi il connettore teradata-logs
, vengono estratte le seguenti tabelle e viste:
DBC.DBQLogTbl
(cambia inDBC.QryLogV
se viene utilizzato il flag--assessment
)DBC.DBQLSqlTbl
Le seguenti tabelle e viste aggiuntive vengono estratte quando utilizzi il connettore teradata-logs
con il flag --assessment
:
DBC.DBQLUtilityTbl
DBC.ResUsageScpu
DBC.ResUsageSpma
Redshift
Puoi usare una qualsiasi delle seguenti opzioni di autenticazione Amazon Redshift meccanismi di autorizzazione con lo strumento di estrazione:
- Un nome utente e una password.
- Un ID chiave di accesso e una chiave segreta di AWS Identity and Access Management (IAM).
- Il nome di un profilo AWS IAM.
Per eseguire l'autenticazione con nome utente e password, utilizza Amazon Redshift driver JDBC PostgreSQL predefinito. Per eseguire l'autenticazione con AWS IAM, utilizza l'ambiente Amazon Driver JDBC Redshift, che puoi scaricare dal loro pagina di download.
La tabella seguente descrive i flag di uso comune per l'estrazione
Log delle query e dei metadati Amazon Redshift utilizzando lo strumento dwh-migration-dumper
. Per informazioni
su tutti i flag supportati, consulta i flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--assessment |
Attivazione della modalità di valutazione durante la generazione di log di database o l'estrazione di metadati. Genera le statistiche sui metadati richieste per la valutazione della migrazione di BigQuery quando è utilizzata per l'estrazione di metadati. Se utilizzato per l'estrazione dei log delle query, genera statistiche sulle metriche delle query per la valutazione della migrazione di BigQuery. |
Obbligatorio durante l'esecuzione in modalità di valutazione, non obbligatorio per la traduzione. | |
--connector |
Il nome del connettore da utilizzare, in questo caso redshift per metadati o redshift-raw-logs per i log delle query. | Sì | |
--database |
Se non specificato, Amazon Redshift utilizza il valore --user
come nome predefinito del database. |
Il nome del database a cui connettersi. |
No |
--driver |
Se non specificato, Amazon Redshift utilizza il JDBC PostgreSQL predefinito conducente. | Il percorso assoluto o relativo del file JAR del driver da utilizzare per questa connessione. Puoi specificare più file JAR del driver, separandoli con virgole. | No |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--iam-accesskeyid |
L'ID della chiave di accesso AWS IAM da utilizzare per l'autenticazione. La chiave di accesso
è una stringa di caratteri, ad esempio
Da utilizzare in combinazione con |
Non esplicitamente, ma devi fornire informazioni di autenticazione utilizzando uno dei seguenti metodi:
|
|
--iam-profile |
Il profilo AWS IAM da utilizzare per l'autenticazione. Puoi recuperare un
il valore del profilo da utilizzare esaminando
Non usare questo flag con |
Non esplicitamente, ma devi fornire informazioni di autenticazione utilizzando uno dei seguenti metodi:
|
|
--iam-secretaccesskey |
La chiave di accesso al secret AWS IAM da utilizzare per l'autenticazione. Il segreto
la chiave di accesso è una stringa di caratteri, ad esempio
Da utilizzare in combinazione con |
Non esplicitamente, ma devi fornire informazioni di autenticazione utilizzando uno dei seguenti metodi:
|
|
--password |
La password da utilizzare per la connessione al database.
Non usare questo flag con |
Non esplicitamente, ma devi fornire informazioni di autenticazione utilizzando uno dei seguenti metodi:
|
|
--port |
5439 | La porta del server del database. | No |
--user |
Il nome utente da utilizzare per la connessione al database. | Sì | |
--query-log-start |
L'ora di inizio (inclusa) per l'estrazione dei log delle query. Il valore è troncato all'ora. Questo flag è disponibile solo per redshift-raw-logs.
Esempio: |
No | |
--query-log-end |
L'ora di fine (esclusa) per l'estrazione dei log delle query. Il valore è troncato all'ora. Questo flag è disponibile solo per redshift-raw-logs.
Esempio: |
No |
Esempi
L'esempio seguente mostra come estrarre i metadati da un Amazon Redshift su un host specificato, utilizzando le chiavi AWS IAM per l'autenticazione:
dwh-migration-dumper \
--connector redshift \
--database database \
--driver path/redshift-jdbc42-version.jar \
--host host.region.redshift.amazonaws.com \
--iam-accesskeyid access_key_ID \
--iam-secretaccesskey secret_access-key \
--user user
L'esempio seguente mostra come estrarre i metadati da un Amazon Redshift sull'host predefinito, utilizzando il nome utente password per l'autenticazione:
dwh-migration-dumper \
--connector redshift \
--database database \
--password password \
--user user
L'esempio seguente mostra come estrarre i metadati da un Amazon Redshift database su un host specificato, utilizzando un profilo AWS IAM per l'autenticazione:
dwh-migration-dumper \
--connector redshift \
--database database \
--driver path/redshift-jdbc42-version.jar \
--host host.region.redshift.amazonaws.com \
--iam-profile profile \
--user user \
--assessment
L'esempio seguente mostra come estrarre i log delle query per la valutazione un database Amazon Redshift su un host specificato utilizzando un profilo AWS IAM per l'autenticazione:
dwh-migration-dumper \
--connector redshift-raw-logs \
--database database \
--driver path/redshift-jdbc42-version.jar \
--host 123.456.789.012 \
--iam-profile profile \
--user user \
--assessment
Tabelle e visualizzazioni estratte dallo strumento dwh-migration-dumper
Quando utilizzi il connettore redshift
, vengono estratte le seguenti tabelle e viste:
SVV_COLUMNS
SVV_EXTERNAL_COLUMNS
SVV_EXTERNAL_DATABASES
SVV_EXTERNAL_PARTITIONS
SVV_EXTERNAL_SCHEMAS
SVV_EXTERNAL_TABLES
SVV_TABLES
SVV_TABLE_INFO
INFORMATION_SCHEMA.COLUMNS
PG_CAST
PG_DATABASE
PG_LANGUAGE
PG_LIBRARY
PG_NAMESPACE
PG_OPERATOR
PG_PROC
PG_TABLE_DEF
PG_TABLES
PG_TYPE
PG_VIEWS
Le seguenti tabelle e viste aggiuntive vengono estratte quando utilizzi il connettore redshift
con il flag --assessment
:
SVV_DISKUSAGE
STV_MV_INFO
STV_WLM_SERVICE_CLASS_CONFIG
STV_WLM_SERVICE_CLASS_STATE
Quando utilizzi il connettore redshift-raw-logs
, vengono estratte le seguenti tabelle e viste:
STL_DDLTEXT
STL_QUERY
STL_QUERYTEXT
PG_USER
Le seguenti tabelle e viste aggiuntive vengono estratte quando utilizzi il connettore redshift-raw-logs
con il flag --assessment
:
STL_QUERY_METRICS
SVL_QUERY_QUEUE_INFO
STL_WLM_QUERY
Per informazioni sulle viste di sistema e sulle tabelle in Redshift, consulta Visualizzazioni di sistema Redshift e Tabelle del catalogo di sistema Redshift.
Apache Hive/Spark o Trino/PrestoSQL
Lo strumento dwh-migration-dumper
supporta solo l'autenticazione sul metastore Apache Hive
tramite Kerberos. Quindi i flag --user
e --password
non vengono utilizzati, usa
il flag --hive-kerberos-url
per fornire i dettagli di autenticazione Kerberos.
La tabella seguente descrive i flag di uso comune per l'estrazione Metadati Apache Hive, Spark, Presto o Trino utilizzando lo strumento di estrazione. Per informazioni su tutti i flag supportati, consulta la sezione sui flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--assessment |
Attiva la modalità di valutazione durante l'estrazione dei metadati.
Lo strumento |
Obbligatorio per il test. Non obbligatorio per la traduzione. | |
--connector |
Il nome del connettore da utilizzare, in questo caso hiveql. | Sì | |
--hive-metastore-dump-partition-metadata |
true |
Consente allo strumento
Non usare questo flag con il flag |
No |
--hive-metastore-version |
2.3.6 |
Quando lo esegui, lo strumento |
No |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--port |
9083 | La porta del server del database. | No |
--hive-kerberos-url |
Entità e host Kerberos da utilizzare per l'autenticazione. | Obbligatorio per i cluster con autenticazione Kerberos abilitata. | |
-Dhiveql.rpc.protection |
Il livello di configurazione della protezione RPC. Questo determina la qualità
of Protection (QOP) del livello di protezione e autenticazione semplice
(SASL) tra il cluster e lo strumento Deve essere uguale al valore dell'attributo
Esempio (bash): Esempio (Windows PowerShell): |
Obbligatorio per i cluster con autenticazione Kerberos abilitata. |
Esempi
L'esempio seguente mostra come estrarre i metadati per un database Hive 2.3.7 su un host specificato, senza autenticazione e utilizzando una porta alternativa per la connessione:
dwh-migration-dumper \
--connector hiveql \
--hive-metastore-version 2.3.7 \
--host host \
--port port
Per utilizzare l'autenticazione Kerberos, accedi come utente con autorizzazioni di lettura al metastore Hive e genera un ticket Kerberos. Quindi, genera con il seguente comando:
JAVA_OPTS="-Djavax.security.auth.useSubjectCredsOnly=false" \
dwh-migration-dumper \
--connector hiveql \
--host host \
--port port \
--hive-kerberos-url principal/kerberos_host
Azure Synapse o Microsoft SQL Server
Per consentire allo strumento dwh-migration-dumper
di connettersi ad Azure Synapse o
Microsoft SQL Server, scarica il driver JDBC dal
pagina di download.
La tabella seguente descrive i flag di uso comune per l'estrazione Metadati Azure Synapse o Microsoft SQL Server usando lo strumento di estrazione. Per informazioni su tutti i flag supportati, consulta la sezione sui flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--connector |
Il nome del connettore da utilizzare, in questo caso sqlserver. | Sì | |
--database |
Il nome del database a cui connettersi. |
Sì | |
--driver |
Il percorso assoluto o relativo del file JAR del driver da utilizzare per questa connessione. Puoi specificare più file JAR del driver, separandoli con virgole. | Sì | |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--password |
La password da utilizzare per la connessione al database. | Sì | |
--port |
1433 | La porta del server del database. | No |
--user |
Il nome utente da utilizzare per la connessione al database. | Sì |
Esempi
L'esempio seguente mostra come estrarre i metadati da una Azure Synapse su un host specificato:
dwh-migration-dumper \
--connector sqlserver \
--database database \
--driver path/mssql-jdbc.jar \
--host server_name.sql.azuresynapse.net \
--password password \
--user user
Netezza
Per consentire allo strumento dwh-migration-dumper
di connettersi a IBM Netezza, devi ottenere
il driver JDBC. Di solito puoi far andare l'autista dal /nz/kit/sbin
sull'host dell'appliance IBM Netezza. Se non riesci a trovarlo in questa posizione, chiedi
l'amministratore di sistema per ricevere assistenza,
Installazione e configurazione di JDBC
nella documentazione di IBM Netezza.
La tabella seguente descrive i flag di uso comune per l'estrazione Metadati IBM Netezza utilizzando lo strumento di estrazione. Per informazioni su tutti i flag supportati, consulta i flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--connector |
Il nome del connettore da utilizzare, in questo caso netezza. | Sì | |
--database |
Un elenco dei database da estrarre, separati da virgole. |
Sì | |
--driver |
Il percorso assoluto o relativo del file JAR del driver da utilizzare per questa connessione. Puoi specificare più file JAR del driver, separandoli con virgole. | Sì | |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--password |
La password da utilizzare per la connessione al database. | Sì | |
--port |
5480 | La porta del server del database. | No |
--user |
Il nome utente da utilizzare per la connessione al database. | Sì |
Esempi
L'esempio seguente mostra come estrarre i metadati per due IBM Netezza su un host specificato:
dwh-migration-dumper \
--connector netezza \
--database database1,database2 \
--driver path/nzjdbc.jar \
--host host \
--password password \
--user user
Oracle
Per consentire allo strumento dwh-migration-dumper
di connettersi a Oracle, scarica il relativo
Il driver JDBC di Oracle
pagina di download.
La tabella seguente descrive i flag di uso comune per l'estrazione tramite lo strumento di estrazione. Per informazioni su tutti i flag supportati, consulta i flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--connector |
Il nome del connettore da utilizzare, in questo caso oracle. | Sì | |
--driver |
Il percorso assoluto o relativo del file JAR del driver da utilizzare per questa connessione. Puoi specificare più file JAR del driver, separandoli con virgole. | Sì | |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--oracle-service |
Il nome del servizio Oracle da utilizzare per la connessione. |
Non esplicitamente, ma devi specificare questo flag o
--oracle-sid flag. |
|
--oracle-sid |
L'identificatore di sistema Oracle (SID) da utilizzare per la connessione. |
Non esplicitamente, ma devi specificare questo flag o
--oracle-service flag. |
|
--password |
La password da utilizzare per la connessione al database. | Se non specificato, lo strumento di estrazione utilizza un prompt sicuro per richiederlo. | |
--port |
1521 | La porta del server del database. | No |
--user |
Il nome utente da utilizzare per la connessione al database.
L'utente specificato deve avere il ruolo |
Sì |
Esempi
L'esempio seguente mostra come estrarre i metadati per un database Oracle su un host specificato, utilizzando il servizio Oracle per la connessione:
dwh-migration-dumper \
--connector oracle \
--driver path/ojdbc8.jar \
--host host \
--oracle-service service_name \
--password password \
--user user
Snowflake
La tabella seguente descrive i flag di uso comune per l'estrazione
Metadati Snowflake utilizzando lo strumento dwh-migration-dumper
. Per
informazioni su tutti i flag supportati, consulta i flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--connector |
Il nome del connettore da utilizzare, in questo caso snowflake. | Sì | |
--database |
Il nome del database a cui connettersi. Da Snowflake puoi estrarre solo da un database alla volta. |
Sì | |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--password |
La password da utilizzare per la connessione al database. | Se non specificato, lo strumento di estrazione utilizza un prompt sicuro per richiederlo. | |
--role |
Il ruolo Snowflake da utilizzare per l'autorizzazione. Devi solo specificare
questo per le installazioni di grandi dimensioni in cui devi recuperare i metadati
Schema SNOWFLAKE.ACCOUNT_USAGE anziché
INFORMATION_SCHEMA . Per ulteriori informazioni, vedi
Utilizzo di istanze Snowflake di grandi dimensioni.
|
No | |
--user |
Il nome utente da utilizzare per la connessione al database. |
Sì | |
--warehouse |
Il warehouse Snowflake da utilizzare per l'elaborazione delle query sui metadati. |
Sì |
Esempi
L'esempio seguente mostra come estrarre i metadati per un modello di dimensioni Database Snowflake sull'host locale:
dwh-migration-dumper \
--connector snowflake \
--database database \
--password password \
--user user \
--warehouse warehouse
L'esempio seguente mostra come estrarre i metadati per un modello Database Snowflake su un host specificato:
dwh-migration-dumper \
--connector snowflake \
--database database \
--host "account.snowflakecomputing.com" \
--password password \
--role role \
--user user \
--warehouse warehouse
Utilizzo di istanze Snowflake di grandi dimensioni
Lo strumento dwh-migration-dumper
legge i metadati da Snowflake
INFORMATION_SCHEMA
. Tuttavia, esiste un limite alla quantità di dati che puoi
recupera da INFORMATION_SCHEMA
. Se esegui il comando
strumento di estrazione e riceverai l'errore SnowflakeSQLException:
Information schema query returned too much data
,
seguire questi passaggi per poter leggere i metadati
Schema SNOWFLAKE.ACCOUNT_USAGE
:
- Apri l'opzione Condivisioni nell'interfaccia web di Snowflake.
Crea un database dalla condivisione
SNOWFLAKE.ACCOUNT_USAGE
:-- CREATE DATABASE database FROM SHARE SNOWFLAKE.ACCOUNT_USAGE;
Crea un ruolo:
CREATE ROLE role;
Concedi a
IMPORTED
i privilegi per il nuovo database al ruolo:GRANT IMPORTED PRIVILEGES ON DATABASE database TO ROLE role;
Concedi il ruolo all'utente che intendi utilizzare per eseguire Strumento
dwh-migration-dumper
:GRANT ROLE role TO USER user;
Vertica
Per consentire allo strumento dwh-migration-dumper
di connettersi a Vertica:
scaricare il driver JDBC dal
pagina di download.
La tabella seguente descrive i flag di uso comune per l'estrazione utilizzando lo strumento di estrazione. Per informazioni su tutti i flag supportati, consulta i flag globali.
Nome | Valore predefinito | Descrizione | Obbligatorio |
---|---|---|---|
--connector |
Il nome del connettore da utilizzare, in questo caso vertica. | Sì | |
--database |
Il nome del database a cui connettersi. |
Sì | |
--driver |
Il percorso assoluto o relativo del file JAR del driver da utilizzare per questa connessione. Puoi specificare più file JAR del driver, separandoli con virgole. | Sì | |
--host |
localhost | Il nome host o l'indirizzo IP del server del database. | No |
--password |
La password da utilizzare per la connessione al database. | Sì | |
--port |
5433 | La porta del server del database. | No |
--user |
Il nome utente da utilizzare per la connessione al database. | Sì |
Esempi
L'esempio seguente mostra come estrarre i metadati da un file Vertica sull'host locale:
dwh-migration-dumper \
--driver path/vertica-jdbc.jar \
--connector vertica \
--database database
--user user
--password password
Segnalazioni globali
La tabella seguente descrive i flag che possono essere utilizzati con uno qualsiasi dei piattaforme di origine supportate.
Nome | Descrizione |
---|---|
--connector |
Il nome del connettore per il sistema di origine. |
--database |
L'utilizzo varia in base al sistema di origine. |
--driver |
Il percorso assoluto o relativo del file JAR del driver da utilizzare quando ti connetti al sistema di origine. Puoi specificare più file JAR del driver, separandoli con una virgola. |
--dry-run o -n |
Mostra quali azioni eseguirebbe lo strumento di estrazione senza eseguendole. |
--help |
Visualizza la guida della riga di comando. |
--host |
Il nome host o l'indirizzo IP del server del database a cui connetterti. |
--jdbcDriverClass |
Facoltativamente, sostituisce il nome della classe del driver JDBC specificato dal fornitore. Da utilizzare se hai un client JDBC personalizzato. |
--output |
Il percorso del file ZIP di output. Ad esempio:
dir1/dir2/teradata-metadata.zip . Se
non specifichi un percorso, il file di output viene creato
. Se specifichi il percorso di una directory, il file ZIP predefinito
viene creato il nome file nella directory specificata. Se la directory
non esiste, viene creato.
Per utilizzare Cloud Storage, usa il formato seguente: Per eseguire l'autenticazione utilizzando le credenziali Google Cloud, consulta Esegui l'autenticazione per l'utilizzo delle librerie client. |
--password |
La password da utilizzare per la connessione al database. |
--port |
La porta del server del database. |
--save-response-file |
Salva i flag della riga di comando in un file JSON per riutilizzarli facilmente. La
il file è denominato dumper-response-file.json e viene creato
nella directory di lavoro. Per utilizzare il file di risposta, indica il percorso
preceduto da @ quando esegui lo strumento di estrazione,
esempio dwh-migration-dumper @path/to/dumper-response-file.json .
|
--schema |
Un elenco degli schemi da estrarre, separati da virgole.
Oracle non fa distinzione tra
schema
e l'utente del database che ha creato lo schema, quindi puoi usare
nomi di schema o nomi utente con il flag |
--thread-pool-size |
Imposta la dimensione del pool di thread, che influisce sulle dimensioni del pool di connessioni.
La dimensione predefinita del pool di thread è il numero di core sul server
eseguendo lo strumento Se lo strumento di estrazione sembra lento o richiede comunque altro puoi aumentare il numero di thread utilizzati. Se ci sono indicazioni del fatto che altri processi sul server richiedono larghezza di banda, puoi ridurre il numero di thread in uso. |
--url |
L'URL da utilizzare per la connessione al database, anziché l'URI generate dal driver JDBC. L'URI generato dovrebbe essere sufficiente nella maggior parte dei casi. Sostituisci solo il valore quando devi usare un'impostazione di connessione JDBC specifico per la piattaforma di origine e che non sia già impostato da uno dei i flag elencati in questa tabella. |
--user |
Il nome utente da utilizzare per la connessione al database. |
--version |
Mostra la versione del prodotto. |
Risoluzione dei problemi
Questa sezione illustra alcuni problemi comuni e tecniche di risoluzione dei problemi relativi
lo strumento dwh-migration-dumper
.
Errore di memoria insufficiente
Errore java.lang.OutOfMemoryError
nel terminale di strumenti dwh-migration-dumper
L'output è spesso correlato a una memoria insufficiente per elaborare i dati recuperati.
Per risolvere questo problema, aumenta la memoria disponibile o riduci il numero di
l'elaborazione dei thread.
Puoi aumentare la memoria massima esportando l'ambiente JAVA_OPTS
variabile:
Linux
export JAVA_OPTS="-Xmx4G"
Windows
set JAVA_OPTS="-Xmx4G"
Puoi ridurre il numero di thread di elaborazione (il valore predefinito è 32) includendo
il flag --thread-pool-size
. Questa opzione è supportata per hiveql
e
redshift*
solo connettori.
dwh-migration-dumper --thread-pool-size=1
Gestione di un errore WARN...Task failed
A volte potresti visualizzare un errore WARN [main]
o.c.a.d.MetadataDumper [MetadataDumper.java:107] Task failed: …
nella
Output del terminale strumento dwh-migration-dumper
. Lo strumento di estrazione
invia più query al sistema di origine e l'output di ogni query
viene scritto in un proprio file. La visualizzazione di questo problema indica che una di queste
query non riuscite. Tuttavia, l'errore di una query non ne impedisce l'esecuzione
delle altre query. Se vedi più di un paio di WARN
errori, esamina i dettagli del problema e controlla se c'è
tutto ciò che devi correggere per far sì che la query venga eseguita correttamente.
Ad esempio, se l'utente del database specificato durante l'esecuzione
strumento di estrazione non dispone delle autorizzazioni per leggere tutti i metadati, riprova
con un utente che dispone
delle autorizzazioni corrette.
File ZIP danneggiato
Per convalidare il file ZIP dello strumento dwh-migration-dumper
, scarica
File SHA256SUMS.txt
ed esegui questo comando:
Bash
sha256sum --check SHA256SUMS.txt
Il risultato di OK
conferma l'esito positivo della verifica del checksum. Qualsiasi altro messaggio
indica un errore di verifica:
FAILED: computed checksum did NOT match
: il file ZIP è danneggiato e deve essere scaricato di nuovo.FAILED: listed file could not be read
: la versione del file ZIP non può essere individuarlo. Assicurati che il checksum e i file ZIP vengano scaricati dall' nella stessa versione di release e inseriti nella stessa directory.
Windows PowerShell
(Get-FileHash RELEASE_ZIP_FILENAME).Hash -eq ((Get-Content SHA256SUMS.txt) -Split " ")[0]
Sostituisci RELEASE_ZIP_FILENAME
con il file scaricato
il nome del file ZIP della release dello strumento di estrazione della riga di comando dwh-migration-dumper
, ad esempio
dwh-migration-tools-v1.0.52.zip
Il risultato di True
conferma l'esito positivo della verifica del checksum.
Il risultato False
indica un errore di verifica. Assicurati che il checksum e
i file ZIP vengono scaricati dalla stessa versione di release e inseriti nel
nella stessa directory.
L'estrazione dei log di query Teradata è lenta
Per migliorare le prestazioni dell'unione delle tabelle specificate dal
-Dteradata-logs.query-logs-table
e -Dteradata-logs.sql-logs-table
puoi includere una colonna aggiuntiva
di tipo DATE
nella condizione JOIN
. Questa colonna deve essere definita in
entrambe le tabelle e deve far parte dell'Indice principale partizionato. Per includere
questa colonna, usa il flag -Dteradata-logs.log-date-column
.
Esempio:
Bash
dwh-migration-dumper \ -Dteradata-logs.query-logs-table=historicdb.ArchivedQryLogV \ -Dteradata-logs.sql-logs-table=historicdb.ArchivedDBQLSqlTbl \ -Dteradata-logs.log-date-column=ArchiveLogDate
Windows PowerShell
dwh-migration-dumper ` "-Dteradata-logs.query-logs-table=historicdb.ArchivedQryLogV" ` "-Dteradata-logs.sql-logs-table=historicdb.ArchivedDBQLSqlTbl" ` "-Dteradata-logs.log-date-column=ArchiveLogDate"
Limite dimensione riga Teradata superato
Teradata 15 ha un limite di dimensione delle righe di 64 kB. Se il limite viene superato, il dumper
ha esito negativo con il seguente messaggio:
none
[Error 9804] [SQLState HY000] Response Row size or Constant Row size overflow
Per risolvere questo errore, estendi il limite di righe a 1 MB o dividi le righe in più righe:
- Installa e abilita la funzionalità Righe consentite e di risposta da 1 MB e la TTU attuale software. Per ulteriori informazioni, vedi Messaggio database Teradata 9804
- Suddividi il testo lungo della query in più righe utilizzando il metodo
-Dteradata.metadata.max-text-length
e-Dteradata-logs.max-sql-length
e i flag facoltativi.
Il comando seguente mostra l'utilizzo dell'interfaccia
Flag -Dteradata.metadata.max-text-length
per suddividere il testo lungo della query in
più righe di massimo 10.000 caratteri ciascuna:
Bash
dwh-migration-dumper \ --connector teradata \ -Dteradata.metadata.max-text-length=10000
Windows PowerShell
dwh-migration-dumper ` --connector teradata ` "-Dteradata.metadata.max-text-length=10000"
Il comando seguente mostra l'utilizzo dell'interfaccia
Flag -Dteradata-logs.max-sql-length
per suddividere il testo lungo della query in
più righe di massimo 10.000 caratteri ciascuna:
Bash
dwh-migration-dumper \ --connector teradata-logs \ -Dteradata-logs.max-sql-length=10000
Windows PowerShell
dwh-migration-dumper ` --connector teradata-logs ` "-Dteradata-logs.max-sql-length=10000"
Passaggi successivi
Dopo aver eseguito lo strumento dwh-migration-dumper
,
carica l'output in Cloud Storage
insieme ai file di origine per la traduzione.