Pregunta

Me pregunto si hay una manera de obtener versiones anteriores de un tecla de fila en particular en Hbase sin tener que escribir un programa MapReduce y promediar los valores.Fui curioso si esto era posible usar Hive o Impala (u otro programa similar) y cómo haría esto.

Mi tabla se ve así:

  Composite keys          Values 
  (md5 + date + id) | (value)

Me gustaría promediar todos los valores para la fecha en particular y una cadena secundaria de la ID ("411") para todas las versiones.

Gracias antes de tiempo.

¿Fue útil?

Solución

impala usa la HIX METASTORE para asignar su noción lógica de una tabla en los datos almacenados físicamente en HDFS o HBASE (para obtener más detalles, consulte el Documentación de Cloudera ).

Para obtener más información sobre cómo decirle al Hive MetaStore sobre los datos almacenados en Hbase, consulte el Documentación de Hive .

Lamentablemente, como se señaló en la documentación de la colmena vinculada anteriormente:

Actualmente no hay forma de acceder al atributo de TimeStamp Hbase, y Las consultas siempre acceden a los datos con la última marca de tiempo

Hubo algún trabajo para agregar esta característica contra una versión anterior de Hive en Hive- 2828 , aunque lamentablemente ese trabajo aún no se ha fusionado en el tronco.

Por lo tanto, para su aplicación, tendrá que rediseñar su esquema de HBASE para incluir una columna "Versión", informe al Hive Mastastore sobre esta nueva columna y haga que su solicitud sea consciente de esta columna.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top