Gestione del backfill per gli oggetti di un flusso

Panoramica

Un flusso in Datastream può eseguire il backfill dei dati storici e trasmettere le 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 Esegui il 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 modalità flusso solo le modifiche ai dati. Per fare in modo che Datastream esegua 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, tabelle e colonne di database.

Un altro motivo per avviare il backfill di 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, che ora andranno persi. In questo caso, l'avvio del backfill per l'oggetto funge da "meccanismo di reimpostazione" perché tutti i dati vengono trasmessi in streaming alla destinazione in un solo passaggio. Di conseguenza, i dati vengono sincronizzati tra l'origine e la destinazione.

Dopo aver avviato il backfill di un oggetto, puoi interromperlo. 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 in streaming alla destinazione, quindi interrompi il backfill per l'oggetto.

Puoi anche arrestare il backfill per gli oggetti ai fini del bilanciamento del carico. Datastream può eseguire più backfill in parallelo. Questa operazione potrebbe applicare un carico supplementare sull'origine. Se il carico è significativo, interrompi il backfill per gli oggetti e avvialo, uno alla volta.

Stati degli oggetti

I vari stati nel ciclo di vita dell'avvio e dell'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 Esegui il backfill dei dati storici non è 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 automatico (perché le nuove tabelle in genere non hanno dati "storici" di cui eseguire il backfill).

      Per ulteriori informazioni, consulta Configurare le informazioni sul database di origine per il flusso.

  • Pending: Il backfill non è ancora iniziato per l'oggetto.
  • Active: È in corso il backfill dell'oggetto.
  • Completed: Il backfill dell'oggetto è stato completato.
  • Stopped: Il backfill è stato interrotto per l'oggetto. Se il backfill viene riavviato per l'oggetto, Datastream trasmette 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 sullo stream contenente gli oggetti per i quali vuoi avviare il backfill.

  3. Fai clic sulla scheda OGGETTI.

  4. Seleziona la casella di controllo per ciascun oggetto per cui vuoi avviare il backfill.

  5. Fai clic su INIZIA BACKFILL.

  6. Se hai selezionato un solo oggetto, nella finestra di dialogo fai clic su INIZIA BACKFILL OGGETTO. In caso contrario, se hai selezionato più oggetti, fai clic su INIZIA BACKFILL DEGLI OGGETTI.

    Datastream avvierà il backfill per gli oggetti selezionati e lo stato di ogni oggetto cambierà da Pending a Active a Completed. Quando un oggetto è nello 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 Google Cloud Console.

    Vai alla pagina Stream

  2. Fai clic sul flusso che contiene 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 BACKFILL.

  6. Se hai selezionato un solo oggetto, nella finestra di dialogo fai clic su INTERROMPI RICHIAMO DELL'OGGETTO. In caso contrario, se hai selezionato più oggetti, fai clic su INTERRUPI COMPILAZIONE DI BACKFILL DEGLI OGGETTI.

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

    Quando un oggetto ha questo stato, il backfill viene interrotto per l'oggetto. Se il backfill viene riavviato per l'oggetto, Datastream trasmette in streaming tutti i dati esistenti associati all'oggetto dall'origine alla destinazione.

Passaggi successivi