hive创建hbase外部关联表实例

embedded/2024/9/24 10:18:34/

在cdh6.3.2已经做好hbasehive相关配置,这里不阐述。

要创建上述的表结构,你需要先在HBase中创建相应的表,然后在Hive中创建一个EXTERNAL TABLE来映射到这个HBase表。以下是详细的步骤:

步骤1:在HBase中创建表

  1. 确定HBase的安装和配置是否正确。
  2. 确定HBase的shell工具能够正常使用。

打开HBase shell:

hbase shell

在HBase shell中,创建一个表analysis_minute和一个列族bls

create 'analysis_minute', 'bls'

退出HBase shell:

quit

步骤2:在Hive中创建EXTERNAL TABLE

  1. 确保Hive安装和配置正确。
  2. 确保HBaseStorageHandler已经包含在Hive的配置中。

使用Hive的命令行界面或者你的IDE来执行下面的SQL语句:

CREATE EXTERNAL TABLE analysis_minute_hbase (key STRING,pid STRING,time STRING,val STRING
)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ('hbase.columns.mapping' = ':key,bls:pid,bls:time,bls:val','serialization.format' = '1'
)
TBLPROPERTIES ('hbase.table.name' = 'analysis_minute','last_modified_by' = 'hdfs','last_modified_time' = '1713990161','numFiles' = '0','numFilesErasureCoded' = '0','numRows' = '0','rawDataSize' = '0','storage_handler' = 'org.apache.hadoop.hive.hbase.HBaseStorageHandler','totalSize' = '0'
);

这段SQL语句做了以下几件事情:

  • 创建了一个EXTERNAL TABLE,意味着数据存储在HBase中,而不是Hive的数据仓库目录中。
  • 使用了HBaseStorageHandler来允许Hive与HBase交互。
  • 定义了四个字段,分别对应于HBase表中的列。
  • 通过WITH SERDEPROPERTIES定义了Hive字段到HBase列族的映射。
  • 通过TBLPROPERTIES定义了HBase表的名称和其他属性。

注意事项:

  • 确保HBase表analysis_minute和列族bls已经存在,Hive才能正确创建EXTERNAL TABLE。
  • 确认Hive配置文件中已经包含了HBaseStorageHandler的jar包。
  • 如果HBase表或列族名称与Hive表结构中的名称不匹配,Hive将无法找到对应的HBase表。
  • 在执行上述Hive SQL语句之前,你可能需要根据你的Hadoop和Hive版本调整配置参数。

http://www.ppmy.cn/embedded/21044.html

相关文章

Java学习1:java入门

java入门 1.介绍Java java——sun公司——被甲骨文收购 一开始叫Oak,后期改名为java; java之父詹姆斯高斯林 企业级应用开发 JavaSE JavaEE JavaME 高级编程语言 2.搭建开发环境 JDK8,JDK11,JDK17————>LTS长期支持版 ps:在…

设计模式:单例、原型和生成器

在这篇文章中,我们将重点介绍其余的创建模式:Singleton,Builder和Prototype。 在我看来,这些模式不如工厂重要。然而,了解它们仍然很有用。我将提供UML描述,简单的java示例(这样即使你不了解jav…

Vitis HLS 学习笔记--IDE软件高效操作指引

目录 1. 简介 2. 实用软件操作 2.1 C/RTL Cosimulation 选项 2.2 Do not show this dialog again 2.3 New Solution 2.4 对比 Solution 2.5 以命令行方式运行(windows) 2.6 文本缩放快捷键 2.7 查看和修改快捷键 2.8 将Vitis HLS RTL 导入 Viv…

vscode 使用文件模板功能来添加版权信息

vscode 新建文件的时候,自动填充作者及版权信息 无需使用插件,操作如下: 选择 “首选项(Preferences)”。在搜索框中输入 “file template” 或者 “文件模板”,然后选择相关的设置项。 {"C_Cpp.clang_format_fallbackSt…

Vue3、Vite和HTML5之间的关系

Vue3、Vite 和 HTML5 分别代表不同的技术和概念,它们之间存在相互关联。 1、Vue3 Vue3是一个用于创建用户界面的 JavaScript 框架,通过数据绑定、组件化设计和响应式系统,帮助开发者高效构建和维护复杂的互动界面。Vue3 中的模板使用 HTML&…

【并行计算】【《云计算与分布式系统·从并行处理到物联网》笔记】第一章:分布式系统模型和关键技术

文章目录 [toc]1.1|互联网之上的可扩展计算互联网计算的时代高性能计算高吞吐量计算三种新的计算范式 可扩展性计算趋势和新的范式并行度 物联网和CPS物联网信息物理融合系统CPS 个人主页:丷从心 系列专栏:计算机网络 1.1|互联网之上的可扩展计算 互联…

微软发布Phi-3 Mini,性能媲美GPT-3.5、Llama-3,可在手机端运行

前言 微软发布了最新版的Phi系列小型语言模型(SLM) - Phi-3。这个系列包括3个不同参数规模的版本:Phi-3 Mini (38亿参数)、Phi-3 Small (70亿参数)和Phi-3 Medium (140亿参数)。 Phi系列模型是微软研究团队开发的小规模参数语言模型。从第一代Phi-1到第二代Phi-2&…

Java高阶私房菜:JVM垃圾回收机制及算法原理探究

目录 垃圾回收机制 什么是垃圾回收机制 JVM的自动垃圾回收机制 垃圾回收机制的关键知识点 初步了解判断方法-引用计数法 GCRoot和可达性分析算法 什么是可达性分析算法 什么是GC Root 对象回收的关键知识点 标记对象可回收就一定会被回收吗? 可达性分析算…