Closed sebasrod closed 4 years ago
Se crea método setHBase_available en globalSettings. Por default está con valor false (compatibilidad con versiones anteriores).
agrega HBASE a huemulType_StorageType
Agrega función setHBaseCatalogMapping(df: String, col: String = null): huemul_Columns, permite hacer el mapping entre las columnas del DF y las columnas de Hbase
Ejemplo
val tu_columna = new huemul_Columns (StringType, true, "descripción de la columna", false).setHBaseCatalogMapping("nombre_familia","nombre_campo_en_hbase")
Para guardar una tabla en HBase, se debe considerar lo siguiente:
El siguiente ejemplo muestra la configuración para tabla de tipo HBase:
class tbl_demo_HBASE(huemulBigDataGov: huemul_BigDataGovernance, Control: huemul_Control) extends huemul_Table(huemulBigDataGov, Control) with Serializable {
/********** C O N F I G U R A C I O N D E L A T A B L A ****************************************/
//Tipo de tabla, Master y Reference son catalogos sin particiones de periodo
this.setTableType(huemulType_Tables.Master)
//Tipo de archivo que sera almacenado en HDFS
this.setStorageType(huemulType_StorageType.HBASE)
...
Debido a la naturaleza de HBase, se debe tener presente lo siguiente:
Finalmente, para poder utilizar el almacenamiento de HBase desde Spark, se deben incluir las librerías necesarias para tales efectos, algunas recomendaciones son las siguientes:
spark-submit --master yarn --files /etc/hbase/conf/hbase-site.xml
A continuación se dan como ejemplo las rutas para la ejecución sobre un ambiente HortonWorks.
* /usr/hdp/current/hbase-client/lib/hbase-server.jar
* /usr/hdp/current/hbase-client/lib/hbase-spark.jar
* /usr/hdp/current/hbase-client/lib/hbase-common.jar
* /usr/hdp/current/hbase-client/lib/hbase-client.jar
* /usr/hdp/current/hbase-client/lib/hbase-protocol.jar
* /usr/hdp/current/hbase-client/lib/hbase-annotations.jar
* /usr/hdp/current/hbase-client/lib/hbase-hadoop-compat.jar
* /usr/hdp/current/hbase-client/lib/hbase-hadoop2-compat.jar
* /usr/hdp/current/hive-client/lib/hive-hbase-handler.jar
* /usr/hdp/current/hbase-client/lib/metrics-core-2.2.0.jar
Agregar opción de guardar datos de MDM en tablas de HBase