我需要在 Hive 中创建数据仓库并使用 HBase 提供实时访问所以我想知道相同的架构是什么我可以先将数据转储到 HBase 并将其作为 Rest Service 访问并在其中创建外部表吗Hive 并在其上运行 hive 查询?Hive 是否会被分发,即我需要在集群的所有节点上安装 Hive,否则它将是中央节点
问问题
199 次
1 回答
0
在回答您的问题时:
Hive 将被分发。
为了获得最佳性能,我会考虑在集群的每个节点上安装 Hive。Hive 将 HiveQL 转换为 MapReduce 作业 - 作业将在数据所在的位置执行。如果这是不可能的,数据将不得不转移到工作中。为了响应时间,您需要在每个节点上安装 Hive。
要创建引用存储在 HBase 中的数据的 Hive 表,您可以查看Hive-HBase 集成 wiki。这是一个简单的例子:
CREATE TABLE hbase_table_1(key int, value string)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")
TBLPROPERTIES ("hbase.table.name" = "xyz");
于 2013-07-11T13:36:15.990 回答