Verificare che le tabelle di destinazione esistano nel database Snowflake.
È necessario disporre di account cloud Amazon Web Services, Google Cloud Platform o Azure impostati se si intende utilizzare una delle posizioni delle fasi esterne, ad esempio S3, ADLS Gen2 o GCS.
Stringa di connessione driver JDBC Snowflake
Privilegi utente database Snowflake
All'utente del database utilizzato per la replica in Snowflake devono essere concessi i seguenti privilegi:
INSERT, UPDATE, DELETE e TRUNCATE nelle tabelle di destinazione.
CREATE e DROP sul palco denominato Snowflake e sul palco esterno.
Se si utilizza lo stadio esterno (S3, ADLS, GCS), CREATE, ALTER e la tabella esterna DROP.
Nella console di distribuzione OCI GoldenGate, nella home page di Administration Service, fare clic su Aggiungi Replicat (icona più).
Nel pannello Aggiungi Replicat, nella pagina Informazioni su Replicat, completare i campi in base alle esigenze, quindi fare clic su Avanti:
Selezionare un tipo di replicat:
Replicat classico
Replicat coordinato
Immettere un nome processo con una lunghezza massima di 5 caratteri.
Immettere una Descrizione per facilitare la distinzione tra questo processo e gli altri.
Nella pagina Opzioni Replicat, completare i campi in base alle esigenze, quindi fare clic su Avanti:
Per il percorso Replicat:
Immettere un nome.
Immettere una sottodirectory, se si prevede che il file trail si trovi in una posizione diversa da quella predefinita.
Selezionare un profilo di cifratura. Se non è stato creato un profilo di cifratura, per impostazione predefinita viene selezionato il wallet locale.
Per Inizia, selezionare il punto di partenza per l'elaborazione dei dati:
Posizione nel log (impostazione predefinita)
Now
Orario personalizzato
Per posizione trail:
Immettere il numero di sequenza.
Immettere l'offset RBA.
Per Destinazione, selezionare Snowflake dall'elenco a discesa, quindi selezionare una delle opzioni riportate di seguito.
Streaming
Posiziona nell'area intermedia e unisci, quindi seleziona una posizione area intermedia disponibile
Per le credenziali di destinazione:
Selezionare un dominio.
Selezionare un Alias all'interno del dominio specificato.
Selezionare una tabella Checkpoint. Lasciare la selezione predefinita o selezionare la tabella Checkpoint creata per la distribuzione di destinazione.
Selezionare il Numero massimo di thread (solo replicati coordinati).
Nella pagina Opzioni gestite, completare i campi facoltativi in base alle esigenze, quindi fare clic su Avanti:
Selezionare un nome profilo, se disponibile.
Abilitare Critico per lo stato di distribuzione.
Abilitare e configurare le impostazioni di avvio automatico.
Nella pagina File dei parametri è possibile aggiungere i parametri per configurare ulteriormente Replicat. Ad esempio:
table source.table1;
Se si utilizza Replicat coordinato, aggiungere TARGETDB LIBFILE libggjava.so SET property=/u02/Deployment/etc/conf/ogg/your_replicat_name.properties al file dei parametri.
Nota
Per impostazione predefinita, GoldenGate utilizza l'ora di Greenwich (GMT, Greenwich Mean Time). Utilizzare SETENV per sostituire l'impostazione predefinita per questo processo Replicat. Questa modifica non si applica alle distribuzioni. Ad esempio:
setenv (TZ="US/Eastern")
setenv (TZ="GMT+5")
(Facoltativo) Nella pagina File proprietà, esaminare la proprietà:
jvm.bootoptions: aumentare il valore -Xmx se è necessario aggiungere più memoria alla JVM Replicat (-Xmx16g per utilizzare fino a 16 GB di memoria, -Xmx32g per un massimo di 32 GB e così via).
Nota
Un problema noto relativo all'handler di streaming Snowflake non riesce con l'errore Exception: java.lang.StackOverflowError thrown from the UncaughtExceptionHandler in thread "process reaper". Per risolvere il problema, aggiungere quanto segue al file delle proprietà Replicat:
Per informazioni sulle proprietà di questa destinazione e sulle differenze tra gli handler di staging e unione e di streaming, vedere Snowflake nella guida Oracle GoldenGate for Distributed Applications and Analytics.
Fare clic su Crea ed esegui. Se si fa clic su Crea, è possibile avviare manualmente Replicat in un secondo momento dalla home page di Administration Service.
Aggiungi Replicat (21c)
Per aggiungere un Replicat per Snowflake in Oracle GoldenGate 21c:
Nella console di distribuzione OCI GoldenGate, nella pagina Panoramica del servizio di amministrazione, fare clic su Aggiungi Replicat (icona più).
Nella pagina Aggiungi Replicat, selezionare un tipo di Replicat, quindi fare clic su Avanti.
Di seguito sono riportati i tipi di repliche.
Replicat classico
Replicat coordinato
Nella pagina Opzioni Replicat, completare i campi riportati di seguito, quindi fare clic su Avanti:
Per Nome processo, immettere un nome per il processo Replicat.
Per Nome percorso, immettere il nome del trail di due caratteri.
Per Destinazione, selezionare la connessione Snowflake di destinazione dall'elenco a discesa.
Per Alias disponibili, selezionare l'alias desiderato dall'elenco a discesa.
(Facoltativo) Abilita memoria esterna per selezionare una posizione area intermedia disponibile dall'elenco a discesa.
Nella pagina Parametri Replicat aggiungere i mapping necessari, quindi fare clic su Avanti:
Nota
Se si utilizza Replicat coordinato, aggiungere i seguenti parametri sulla seconda riga del file dei parametri:
TARGETDB LIBFILE libggjava.so SET property=/u02/Deployment/etc/conf/ogg/<replicat
name>.properties
L'utilizzo di replica coordinata determinerà la creazione di più file.
Se omesso, viene visualizzato il seguente errore:
OGG-01091 Oracle GoldenGate Delivery, RSNOW.prm: Unable to open file
"/u02/Deployment/etc/conf/ogg/<replicat name>001.properties" (error 2, No such file or
directory).
Se in Snowflake sono presenti operazioni di unione con tempi di esecuzione lunghi e viene osservato un numero elevato di blocchi, assicurarsi che nessun'altra tabella stia modificando la stessa tabella. Inoltre, utilizzare replicat coordinato con cautela in quanto può portare a un elevato numero di blocchi di tabella.
Per impostazione predefinita, GoldenGate utilizza l'ora di Greenwich (GMT, Greenwich Mean Time). Utilizzare SETENV per sostituire l'impostazione predefinita per Replicat. Questa modifica non si applica alle distribuzioni. Ad esempio:
(Facoltativo) Nella pagina File delle proprietà, esaminare le proprietà riportate di seguito.
Nota
Queste proprietà vengono impostate al momento della creazione della connessione e non devono essere modificate qui.
ggs.eventhandler.snowflake.connectionURL: URL JDBC per la connessione a Snowflake.
ggs.eventhandler.snowflake.UserName: nome utente del database Snowflake.
ggs.eventhandler.snowflake.Password: password associata all'utente del database Snowflake.
ggs.eventhandler.snowflake.storageIntegration: la credenziale per il data warehouse Snowflake per accedere ai rispettivi file dell'area di memorizzazione degli oggetti. Per ulteriori informazioni, vedere Integrazione dello storage Snowflake.
jvm.bootoptions: aumentare il valore -Xmx se è necessario aggiungere più memoria alla JVM Replicat (-Xmx16g per utilizzare fino a 16 GB di memoria, -Xmx32g per un massimo di 32 GB e così via.)
Fare clic su Crea ed esegui. Se si fa clic su Crea, è possibile avviare manualmente Replicat in un secondo momento dalla pagina Panoramica del servizio di amministrazione.
Si torna alla pagina Panoramica del servizio di amministrazione in cui è possibile visualizzare la creazione del processo Replicat e accedere alle azioni Replicat.
L'handler di streaming Snowflake non riesce con: Exception: java.lang.StackOverflowError thrown from the UncaughtExceptionHandler in thread "process reaper"
Soluzione: aggiungere quanto segue al file delle proprietà di Replicat: