Улей на hbase REfresh таблице - PullRequest
0 голосов
/ 29 января 2019

У меня есть внешняя таблица улья на hbase. Я видел в таблицах улья на паркете, нам нужно обновить таблицу, чтобы получить последние доступные данные.Нужно ли это же в улье на hbase?

1 Ответ

0 голосов
/ 29 января 2019

подтвердил то же самое, и нам не нужно вызывать REFRESH TABLE для внешней таблицы улья с базовой таблицей hbase

HBASE

create 'ns_schema:table3', 'col_fam1'

put  'ns_schema:table3', 'row1', 'col_fam1:c11', 'first record'            

HIVE EXTERNAL TABLE

create external table ns_schema.table3(
    key string, 
    col1 string
    ) 
    stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
    with serdeproperties (
      "hbase.columns.mapping" = "ns_schema:key,col_fam1:c11"
    ) tblproperties(
      "hbase.table.name" = "ns_schema:table3"
    );

ОБОЛОЧКА SPARK

                import org.apache.spark.SparkConf
                import org.apache.spark.SparkContext

                val spark2=SparkSession.builder().master("local").enableHiveSupport().getOrCreate()
                import sqlContext.implicits._
                spark2.sql("select * from ns_schema.table3").show(false)

+----+------------+
|key |col1        |
+----+------------+
|row1|first record|
+----+------------+

Теперь в оболочку HBASE добавьте еще одну строку

put 'ns_gwm_idr_rz:table3', 'row2', 'col_fam1:c11', 'second record'

для запроса оболочки SPARK2

spark2.sql("select * from db_gwm_idr_rz.table3").show(false)

+----+-------------+
|key |col1         |
+----+-------------+
|row1|first record |
|row2|second record|
+----+-------------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...