2010-10-05 11 views
5

¿Hay una manera de deshacer los valores a una etapa previa a nivel celular (nivel de fila podría funcionar también)hay una manera de revertir hbase

Importé un archivo con datos erróneos y sólo hay que volver a etapa previa.

Respuesta

2

Si bien no hay reversión, si ha realizado ningún otro cambio en el tiempo y está almacenando más de una versión que podría:

  • realizar un análisis sobre su mesa usando setTimeRange (basta con especificar un rango que sus datos no válidos caen en)

  • Utilice los datos del escaneo para crear sellos eliminados de marca de tiempo para todos los datos incorrectos.

Por supuesto, si sólo se está almacenando una versión, usted está de suerte:/

2

No hay formas de retrotraer un Put a HBase. Sin embargo, HBase puede almacenar múltiples versiones de cualquier celda, dependiendo de la configuración de una familia de columnas. Por defecto almacena las 3 versiones más recientes de cada celda. Cuando se realiza un nuevo Put, puede especificar la marca de tiempo en que se escribió, de lo contrario, usa la hora actual del servidor.

Por lo tanto, si usa los valores predeterminados y no ha realizado más de 1 o 2 puts en cada celda, debería poder leer sus datos anteriores haciendo un Scan.setTimeStamp (timestampBeforeYouImportedBadData).