Domanda

C'è un modo per valori di rollback ad una fase precedente a livello di cella (a livello di riga potrebbe funzionare anche)

ho importato un file con dati errati e ho solo bisogno di tornare in fase precedente.

È stato utile?

Soluzione

Mentre non v'è alcun rollback, se sono state apportate altre modifiche al momento e sta memorizzando più di una versione è possibile:

  • eseguire una scansione sopra la tabella utilizzando setTimeRange (basta specificare un intervallo che i dati cattivo cade in)

  • Utilizzare i dati della scansione per creare timestamp limitato di eliminazione per tutti i dati errati.

Naturalmente, se si sta solo la memorizzazione di una versione, sei fuori di fortuna: /

Altri suggerimenti

Non ci sono modi per ripristinare un Put a HBase. Tuttavia, HBase in grado di memorizzare più versioni di una cella, a seconda della configurazione di una famiglia di pilastri. Per impostazione predefinita memorizza le più recenti 3 versioni di ogni cella. Quando un nuovo Put è fatto, è possibile specificare il timestamp è scritto a, in caso contrario, utilizza l'ora corrente del server.

Quindi, se si sta utilizzando le impostazioni predefinite, e hai fatto non più di 1 o 2 rivolge al ogni cella, si dovrebbe essere in grado di leggere i dati precedenti facendo una Scan.setTimeStamp (timestampBeforeYouImportedBadData).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top