Gestione del backfill per gli oggetti di un flusso

Un flusso in Datastream può eseguire il backfill dei dati storici, nonché trasmettere in streaming le modifiche in corso a una destinazione. Durante la creazione di uno stream, hai configurato le informazioni sul database di origine per lo stream.

Se hai selezionato la casella di controllo Backfill dei dati storici, Datastream trasmetterà in streaming tutti i dati esistenti, oltre alle modifiche ai dati, dall'origine alla destinazione.

Se non hai selezionato questa casella di controllo, Datastream trasmetterà in streaming solo le modifiche ai dati. Per fare in modo che Datastream trasmetta il flusso di uno snapshot di tutti i dati esistenti dall'origine alla destinazione, devi avviare il backfill per gli oggetti che contengono questi dati. Gli oggetti sono sotto forma di schemi di database, tabelle e colonne.

Un altro motivo per avviare il backfill per un oggetto è se i dati non sono sincronizzati tra l'origine e la destinazione. Ad esempio, un utente può eliminare inavvertitamente i dati nella destinazione e ora i dati sono persi. In questo caso, l'avvio del backfill per l'oggetto funge da "meccanismo di ripristino" perché tutti i dati vengono trasmessi in streaming nella destinazione in un'unica operazione. Di conseguenza, i dati vengono sincronizzati tra l'origine e la destinazione.

Dopo aver avviato il backfill per un oggetto, puoi arrestarlo. Nell'esempio precedente, l'utente modifica lo schema del database e lo schema o i dati vengono danneggiati. Non vuoi che questo schema o questi dati vengano trasmessi in streaming alla destinazione, quindi interrompi il backfill per l'oggetto.

Puoi anche interrompere il backfill degli oggetti per il bilanciamento del carico. Datastream può eseguire più backfill in parallelo. Questa operazione può aumentare il carico sull'origine. Se il carico è significativo, interrompi il backfill per gli oggetti e poi avvialo uno alla volta.

Stati degli oggetti

I vari stati del ciclo di vita di avvio e interruzione del backfill per un oggetto includono:

  • Nessuno stato (rappresentato nell'interfaccia utente come -): i motivi per cui un oggetto riceve questo stato includono:

    • Lo stream non è stato avviato.
    • La casella di controllo Backfill dei dati storici non è stata selezionata (quindi il backfill è definito come manuale).
    • L'oggetto è escluso esplicitamente dal backfill automatico.
    • Lo stream è configurato per includere le tabelle future. In questo caso, quando vengono aggiunte nuove tabelle all'origine, non viene creata alcuna attività di backfill automatico (perché in genere le nuove tabelle non contengono dati "storici" da riempire).
  • Pending: il backfill non è ancora iniziato per l'oggetto.

  • Active: è in corso il backfill per l'oggetto.

  • Completed: il backfill è stato completato per l'oggetto.

  • Stopped: il backfill è stato interrotto per l'oggetto. Se il backfill viene avviato di nuovo per l'oggetto, Datastream trasmetterà in streaming tutti i dati esistenti associati all'oggetto dall'origine alla destinazione.

  • Failed: il backfill non è riuscito per l'oggetto e deve essere avviato di nuovo.

Avvia backfill

  1. Vai alla pagina Stream nella console Google Cloud .

    Vai alla pagina Stream

  2. Fai clic sul flusso che contiene gli oggetti per i quali vuoi avviare il backfill.

  3. Fai clic sulla scheda OGGETTI.

  4. Seleziona la casella di controllo per ogni oggetto per cui vuoi avviare il riempimento.

  5. Fai clic su AVVIA RIEMPIMENTO.

  6. Se hai selezionato un solo oggetto, nella finestra di dialogo fai clic su AVVIA RIEMPIMENTO PREGRESSO DELL'OGGETTO. Altrimenti, se hai selezionato più oggetti, fai clic su AVVIA RIEMPIMENTI PREGRESSI DEGLI OGGETTI.

    Datastream avvierà il backfill per gli oggetti selezionati e lo stato di ciascun oggetto cambierà da Pending a Active a Completed. Quando un oggetto ha lo stato Completed, significa che Datastream ha letto tutti i dati dell'oggetto, ma i dati potrebbero essere ancora in fase di caricamento nella destinazione.

Arresta backfill

  1. Vai alla pagina Stream nella console Google Cloud .

    Vai alla pagina Stream

  2. Fai clic sul flusso contenente gli oggetti per i quali vuoi interrompere il backfill.

  3. Fai clic sulla scheda OGGETTI.

  4. Seleziona la casella di controllo per ogni oggetto per cui vuoi interrompere il backfill.

  5. Fai clic su INTERROMPI RIEMPIMENTO.

  6. Se hai selezionato un solo oggetto, nella finestra di dialogo fai clic su INTERROMPI RIEMPIMENTO RETROATTIVO OGGETTO. Altrimenti, se hai selezionato più oggetti, fai clic su INTERROMPI RIEMPIMENTI DEGLI OGGETTI.

    Datastream interromperà il backfill per gli oggetti selezionati e lo stato di ciascun oggetto cambierà in Stopped.

    Quando un oggetto ha questo stato, il backfill viene interrotto per l'oggetto. Se il backfill viene avviato di nuovo per l'oggetto, Datastream trasmetterà tutti i dati esistenti associati all'oggetto dall'origine alla destinazione.

Passaggi successivi