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
Vai alla pagina Stream nella console Google Cloud .
Fai clic sul flusso che contiene gli oggetti per i quali vuoi avviare il backfill.
Fai clic sulla scheda OGGETTI.
Seleziona la casella di controllo per ogni oggetto per cui vuoi avviare il riempimento.
Fai clic su AVVIA RIEMPIMENTO.
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
Vai alla pagina Stream nella console Google Cloud .
Fai clic sul flusso contenente gli oggetti per i quali vuoi interrompere il backfill.
Fai clic sulla scheda OGGETTI.
Seleziona la casella di controllo per ogni oggetto per cui vuoi interrompere il backfill.
Fai clic su INTERROMPI RIEMPIMENTO.
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.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eDatastream can backfill historical data and stream ongoing changes from a source database into a destination.\u003c/p\u003e\n"],["\u003cp\u003eBackfill can be initiated to stream all existing data from source objects (schemas, tables, columns) into the destination, or to resync data if it's out of sync.\u003c/p\u003e\n"],["\u003cp\u003eBackfill can be stopped to prevent corrupted schema or data from being streamed, or for load balancing if multiple backfills are overloading the source.\u003c/p\u003e\n"],["\u003cp\u003eObjects in a stream have various statuses like \u003ccode\u003ePending\u003c/code\u003e, \u003ccode\u003eActive\u003c/code\u003e, \u003ccode\u003eCompleted\u003c/code\u003e, \u003ccode\u003eStopped\u003c/code\u003e, and \u003ccode\u003eFailed\u003c/code\u003e, which indicate the state of the backfill process.\u003c/p\u003e\n"],["\u003cp\u003eThe object tab can be used to initiate or stop backfill for objects, and view additional information including status, recent events, total size of data streamed, and details of the table columns.\u003c/p\u003e\n"]]],[],null,["# Manage backfill for the objects of a stream\n\nA stream in Datastream can backfill historical data, as well as stream ongoing changes into a destination. As part of creating a stream, you [configured information about the source database for the stream](/datastream/docs/create-a-stream#configuresourcedbinfo).\n\nIf you selected the **Backfill historical data** checkbox, then Datastream will stream all existing data, in addition to changes to the data, from the source into the destination.\n\nIf you didn't select this checkbox, then Datastream will stream only changes to the data. To have Datastream stream a snapshot of all existing data from the source to the destination, you must initiate backfill for the objects that contain this data. The objects are in the form of database schemas, tables, and columns.\n\nAnother reason for initiating backfill for an object is if data is out of sync between the source and the destination. For example, a user can delete data in the destination inadvertently, and the data is now lost. In this case, initiating backfill for the object serves as a \"reset mechanism\" because all data is streamed into the destination in one shot. As a result, the data is synced between the source and the destination.\n\nAfter initiating backfill for an object, you can stop backfill for it. In the preceding example, the user modifies the database schema, and the schema or data is corrupted. You don't want this schema or data to be streamed into the destination, and so you stop backfill for the object.\n\nYou can also stop backfill for objects for load balancing purposes. Datastream can run multiple backfills in parallel. This may put an additional load on the source. If the load is significant, stop backfill for the objects, and then initiate backfill for them, one by one.\n\nObject statuses\n---------------\n\nThe various statuses in the lifecycle of initiating and stopping backfill for an object include:\n\n- No status (represented in the UI as `-`): Reasons for an object receiving\n this status include:\n\n - The stream hasn't been started.\n - The **Backfill historical data** checkbox wasn't selected (so the backfill is defined as manual).\n - The object is excluded explicitly from being backfilled automatically.\n - The stream is configured to include future tables. If this happens, then when new tables are added to the source, there's no automatic backfill task created for them (because new tables typically don't have any \"historical\" data to backfill).\n\n | **Note:** For more information, see [Configure information about the source database for the stream](/datastream/docs/create-a-stream#configuresourcedbinfo).\n- `Pending`: backfill hasn't yet started for the object.\n\n- `Active`: backfill is in progress for the object.\n\n- `Completed`: backfill is completed for the object.\n\n- `Stopped`: backfill is stopped for the object. If backfill is initiated\n again for the object, then Datastream will stream all existing data\n associated with the object from the source into the destination.\n\n- `Failed`: backfill failed for the object and the backfill must be initiated\n again.\n\nInitiate backfill\n-----------------\n\n1. Go to the **Streams** page in the Google Cloud Console.\n\n [Go to the Streams page](https://console.cloud.google.com/datastream/streams)\n2. Click the stream that contains objects for which you want to initiate backfill.\n\n3. Click the **OBJECTS** tab.\n\n4. Select the checkbox for each object for which you want to initiate backfill.\n\n5. Click **INITIATE BACKFILL**.\n\n \u003cbr /\u003e\n\n | If an object has a status of `Pending` or `Active`, then you can't initiate backfill for the object.\n\n \u003cbr /\u003e\n\n6. If you selected only one object, then in the dialog, click **INITIATE OBJECT BACKFILL** . Otherwise, if you selected multiple objects, then click **INITIATE OBJECT BACKFILLS**.\n\n Datastream will start backfill for the objects that you selected, and\n the status of each object will change from `Pending` to `Active` to\n `Completed`. When an object has a status of `Completed`, this means that\n Datastream has read all the data for the object, but the data might\n still be loading to the destination.\n | If an object has a status of `Failed`, then backfill failed for the object, and you must initiate the backfill again.\n\nStop backfill\n-------------\n\n1. Go to the **Streams** page in the Google Cloud Console.\n\n [Go to the Streams page](https://console.cloud.google.com/datastream/streams)\n2. Click the stream that contains objects for which you want to stop backfill.\n\n3. Click the **OBJECTS** tab.\n\n4. Select the checkbox for each object for which you want to stop backfill.\n\n5. Click **STOP BACKFILL**.\n\n \u003cbr /\u003e\n\n | If an object has a status of `Completed`, `Stopped`, or `Failed`, then you can't stop backfill for the object.\n\n \u003cbr /\u003e\n\n6. If you selected only one object, then in the dialog, click **STOP OBJECT BACKFILL** . Otherwise, if you selected multiple objects, then click **STOP OBJECT BACKFILLS**.\n\n Datastream will stop backfill for the objects that you selected, and the status of each object will change to `Stopped`.\n\n When an object has this status, backfill is stopped for the object. If backfill is initiated again for the object, then Datastream will stream all existing data associated with the object from the source into the destination.\n\n| You can also use the **OBJECTS** tab to view additional information about the objects of a stream. This information includes:\n|\n| - The status of the objects.\n| - How many events Datastream processed and loaded into the destination for an object in the last 7 days.\n| - The total size (in GB) of all events that Datastream processed and loaded into the destination for an object in the last 30 days.\n| - Details about the table columns of the database schemas that are streamed from the source into the destination.\n\nWhat's next\n-----------\n\n- To learn more about streams, see [Stream lifecycle](/datastream/docs/stream-states-and-actions).\n- To learn how to view information about your stream, see [View a stream](/datastream/docs/view-a-stream).\n- To learn how to modify a stream, see [Modify a stream](/datastream/docs/modify-a-stream).\n- To learn how to monitor a stream, see [Monitor a stream](/datastream/docs/monitor-a-stream).\n- To learn how to recover a failed stream, see [Recover a stream](/datastream/docs/recover-a-stream)."]]