Gestione del backfill per gli oggetti di un flusso

Panoramica

Un flusso in Datastream può eseguire il backfill dei dati storici e il flusso di modifiche in corso in 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 Dati storici di backfill, 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 trasmettesse 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 l'avvio del 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 vengono persi. In questo caso, l'avvio del backfill per l'oggetto funge da "meccanismo di reset" perché tutti i dati vengono trasmessi nella destinazione in un'unica ripresa. Di conseguenza, i dati vengono sincronizzati tra l'origine e la destinazione.

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

Puoi anche arrestare il backfill per gli oggetti per il bilanciamento del carico. Datastream può eseguire più backfill in parallelo. Questa operazione potrebbe sovraccaricare l'origine. Se il carico è significativo, arresta il backfill per gli oggetti, quindi avvia il backfill per ciascuno di essi, uno alla volta.

Stati degli oggetti

I diversi stati nel ciclo di vita di avvio e arresto del backfill per un oggetto includono:

  • Nessuno stato (rappresentato nella UI come -). I motivi per cui un oggetto riceve questo stato includono:
    • Lo stream non è stato avviato.
    • La casella di controllo Dati storici di backfill non è stata selezionata (quindi il backfill è definito come manuale).
    • L'oggetto viene escluso in modo esplicito dal backfill automatico.
    • Il flusso è configurato per includere tabelle future. In questo caso, quando vengono aggiunte nuove tabelle all'origine, non viene creata alcuna attività di backfill automatica (perché le nuove tabelle in genere non hanno dati "storici" di cui eseguire il backfill).

      Per maggiori informazioni, vedi Configurare il database di origine per il flusso.

  • Pending: Il backfill non è stato ancora avviato per l'oggetto.
  • Active: È in corso il backfill dell'oggetto.
  • Completed: Backfill completato per l'oggetto.
  • Stopped: Backfill 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: Backfill non riuscito per l'oggetto e il backfill deve essere avviato di nuovo.

Avvia backfill

  1. Vai alla pagina Stream nella Google Cloud Console.

    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 backfill.

  5. Fai clic su INIZIA BACKFILL.

  6. Se hai selezionato un solo oggetto, fai clic su INIZIA RECUPERO OGGETTO nella finestra di dialogo. Altrimenti, se hai selezionato più oggetti, fai clic su INIZIA RECUPERI OGGETTI.

    Datastream avvierà il backfill per gli oggetti selezionati e lo stato di ciascun oggetto cambierà da Pending a Active a Completed. Quando lo stato di un oggetto è Completed, il backfill è stato completato.

Arresta backfill

  1. Vai alla pagina Stream nella Google Cloud Console.

    Vai alla pagina Stream

  2. Fai clic sul flusso che contiene gli oggetti per i quali vuoi arrestare 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 BACKFILL.

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

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

    Quando un oggetto ha questo stato, il backfill viene arrestato 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.