首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

[Hive HBase集成],在创建支持自动导入数据到hbase表的hive表时,如何设置属性hbase.columns.mapping的值?

在创建支持自动导入数据到HBase表的Hive表时,可以通过设置属性hbase.columns.mapping来指定Hive表中的列与HBase表中的列的映射关系。属性hbase.columns.mapping的值可以使用Hive表中的列名来表示,多个列之间使用逗号进行分隔。

具体设置属性hbase.columns.mapping的值的方法如下:

  1. 在创建Hive表时,使用STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'语句指定使用HBase存储处理程序。
  2. 在创建Hive表时,使用TBLPROPERTIES语句指定属性hbase.columns.mapping的值。例如,假设Hive表中有两列,分别为column1和column2,可以设置属性hbase.columns.mapping的值为:'columnFamily:column1,columnFamily:column2'。

示例代码如下所示:

代码语言:txt
复制
CREATE EXTERNAL TABLE hive_table (
  column1 STRING,
  column2 INT
)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES (
  "hbase.columns.mapping" = ":key,columnFamily:column1,columnFamily:column2"
)
TBLPROPERTIES ("hbase.table.name" = "hbase_table");

在上述示例中,属性hbase.columns.mapping的值为':key,columnFamily:column1,columnFamily:column2',表示Hive表中的第一列映射到HBase表的rowkey列,第二列映射到HBase表的columnFamily列下的column1列,第三列映射到HBase表的columnFamily列下的column2列。

需要注意的是,属性hbase.columns.mapping的值中的列名需要与HBase表中的列名保持一致,且列名之间使用逗号进行分隔。

推荐的腾讯云相关产品:腾讯云HBase

腾讯云HBase是一种高可扩展、高可靠性的分布式NoSQL数据库服务,适用于海量结构化数据的存储与访问。它提供了自动分片、自动负载均衡、自动故障恢复等功能,能够满足大规模数据存储和实时查询的需求。

产品介绍链接地址:https://cloud.tencent.com/product/hbase

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何HiveHBase整合联用

2、实现将批量数据导入 HBase 中。...如果在创建 Hive 存在相应 HBase ,它将模仿“外部” HDP 2.x 语义。如果在创建 Hive 不存在相应 HBase ,则它将模仿非外部 HDP 2.x 语义。...总结: 不管 HBase 是否存在, Hive 中都要使用 external 来与 HBase 进行关联,如果关联 HBase 不存在,Hive自动创建 HBase 。...我们可以先创建一个 Hive 内部,将数据 load 中,最后将查询内部所有数据都插入HBase 关联 Hive 外部中,就可以了,相当于中转一下。 2....Hive HBase 关联后,数据可以 Hive 端插入,也可在 HBase 中插入。 创建 Hive 外部HBase 关联,可实现将 Hive 数据导入 HBase 中。

3K20

0693-6.2.0-如何Hive数据导入HBase

文档编写目的 一些业务场景中需要将Hive数据导入HBase中,通过HBase服务为线上业务提供服务能力。...本篇文章Fayson主要通过Hive创建整合HBase方式来实现Hive数据导入HBase。...可以看到通过上述命令创建HiveHBase关联,如果HBase不存在时会自动创建,但通过Hive删除也同时会删除与之关联HBase。...Hive导数到HBase 1.准备一个hive测试表,这里测试表字段与之前创建HiveHBase关联表字段一致,为了能够方便数据导入HBasehive> create table...总结 1.未使用EXTERNAL关键字创建HiveHBase关联,如果HBase不存在会自动创建,且删除Hive同时也会删除HBase

2.1K20

0884-7.1.6-如何在CDP中集成Hive on HBase

1.文档编写目的 本篇文章主要介绍如何Hive集成HBase,将HBase映射成Hive,实现在beeline中查询或者修改HBase数据。...与Hive集成 1.登录CM,下载HBase配置文件,解压后打开hbase-site.xml 2.安装了HBase服务器节点输入命令: hbase mapredcp|tr : , 注意:这个命令已经将输出..."C1:Name", "aa" put "test", "01", "C1:Company", "company1" 2、beeline中创建hive映射到hbase,可以查询数据 CREATE...3、无论内部或者外部都可以指定一个不存在HBase,两种区别在于内部多了两个属性 'TRANSLATED_TO_EXTERNAL'='TRUE' 'external.table.purge...'='TRUE' 4、Hive中drop table内部(不加EXTERNAL)会删除掉关联HBaseHive中drop table外部(加EXTERNAL)会保留关联HBase

38720

Hive+Hbase关联

count(字段) 来查询会查询具体数字 Hive2.1.1版本无此问题 Hive提供了与HBase集成,使得能够HBase上使用HQL语句进行查询 插入操作以及进行Join和Union等复杂查询...; 其中: hbase.table.name 定义hbasetable名称 hbase.columns.mapping 定义hbase列族 hbase自动建好hbase_table_1这个然后..., Fetched: 2 row(s) 这样建立出来插入数据都是Hbase里面存放着,当从Hbase中删除记录同时也会删除Hive数据 数据可以导入Hive中另外一个中独立于Hbase...hbase_table_1 where key = '100'; 上面这种方式是内连删除Hive同时也会影响Hbase数据 上面是创建Hive时候一同创建Hbase一般情况...Hbase数据可能先存在要怎么关联Hive中(这类是外链表删除Hive不影响Hbase数据) 准备Hbase数据 hbase(main):009:0> create 'student','

1.6K50

快速学习-HBaseAPI操作

集成 6.4.1 HBaseHive对比 Hive (1) 数据仓库 Hive本质其实就相当于将HDFS中已经存储文件Mysql中做了一个双射关系,以方便使用HQL去管理查询。...6.4.2 HBaseHive集成使用 尖叫提示:HBaseHive集成最新两个版本中无法兼容。...和HBase查看,都生成了对应 (2) Hive创建临时中间,用于load文件中数据 提示:不能将数据直接load进Hive所关联HBase那张中 CREATE TABLE emp(...命令将中间数据导入Hive关联HBase那张hive> insert into table hive_hbase_emp_table select * from emp; (5) 查看Hive...’ 案例二 目标:HBase中已经存储了某一张hbase_emp_table,然后Hive创建一个外部来关联HBasehbase_emp_table这张,使之可以借助Hive来分析HBase

44410

HBase快速入门系列(8) | 一文教你HBaseHive如何集成

(4) 延迟较低,接入在线业务使用   面对大量企业数据HBase可以直线单大量数据存储,同时提供了高效数据访问速度。 二. HBaseHive集成使用 1....测试案例1 目标:建立Hive,关联HBase,插入数据Hive同时能够影响HBase。...Hive创建临时中间,用于load文件中数据 提示:不能将数据直接load进Hive所关联HBase那张中 CREATE TABLE emp( empno int, ename string...通过insert命令将中间数据导入Hive关联HBase那张hive> insert into table hive_hbase_emp_table select * from emp;...测试案例2   目标:HBase中已经存储了某一张hbase_emp_table,然后Hive创建一个外部来关联HBasehbase_emp_table这张,使之可以借助Hive来分析HBase

45810

数据工具篇之HiveHBase整合完整教程

一、引言   最近一次培训,用户特意提到Hadoop环境下HDFS中存储文件如何才能导入HBase,关于这部分基于HBase Java API写入方式,之前曾经有过技术文章共享,本文就不再说明...本文基于Hive执行HDFS批量向HBase导入数据,讲解HiveHBase整合问题。这方面的文章已经很多,但是由于版本差异,可操作性不大,本文采用版本均基于以下版本说明中版本。...二、版本说明 序号 软件 版本 1 Hive 0.10.0 2 HBase 0.94.0 3 Hadoop 1.0.1 三、配置指南 3.1 创建配置文件   cp conf/hive-default.xml.template...进行拷贝复制hive-site.xml文件有问题,主要集中标签不配对情况,需要根据错误提示进行修改,修改完成后配置文件如下所示:   View...  3.4 拷贝Jar包Hive/lib目录   hbase-0.94.0.jar,zookeeper-3.4.3.jar 四、测试脚本-创建HBase能够识别的数据 1 CREATE TABLE

67240

Hive使用ORC格式存储离线

看下几个步骤: (1)集成Hive+Hbase,使得Hive可以关联查询Hbase数据,但需要注意是,hbase每个字段都有时间戳版本,而进行hive映射是没办法 指定timestamp...hive1.x之后可虽然可以指定,但是还是有问题,不建议使用,如果想要标识这一个rowkey最后修改或者更新时间,可以单独添加一个字段hbase中, 然后就可以使用Hive映射了。..." (3)由于orc格式,无法直接从text加载到hive中,所以需要加入一个中间临时,用于中转数据,先将 text数据导入一个文件格式weitextfile,然后再把这个数据直接导入...orc,当然现在我们数据hbase中,所以,先建立hive关联hbase,然后在建里一个orc,用来放数据,sql如下: Sql代码 drop table if exists...组合,查询比直接 hive关联hbase查询性能要高一点,当然缺点是数据数据hbase数据不同步,需要定时增量或者全量,用于离线分析。

6K100

数据学习系列之五 ----- Hive整合HBase图文详解

Hive整合HBase使用场景: (一)通过Hive数据加载到HBase中,数据源可以是文件也可以是Hive。 (二)通过整合,让HBase支持JOIN、GROUP等SQL查询语法。...打开xshell两个命令窗口 一个进入hive,一个进入hbase 6.2.1hive创建映射hbase hive创建一个映射hbase,为了方便,设置两边名都为t_student...hbase.columns.mapping 是定义hbase列族。 例如:st1就是列族,name就是列。...hive创建t_student,这个包括两个字段(int型id和string型name)。...’ 可以看到已经成功创建了 6.2.2数据同步测试 进入hbase之后 t_student中添加两条数据 然后查询该 put 't_student','1001','st1:name','

1.1K00

hbase mapping hive error

hbase mapping hive error error msg message:org.apache.hadoop.hive.serde2.SerDeException org.apache.hadoop.hive.hbase.HBaseSerDe...创建hive/hbase相关联hbase结构默认会有一个字段key,如果没有一个显示字段'key'那么创建进修,会自己创建,这样hive对应就会出现问题,所以hive对应表里一定要加上...key这个字段,为了避免这个问题,hbase结构里可以显示添加'key'字段,这样不容易出问题。..."企业ID", `original_id` int comment "原始客户ID(用于记录老crm中客户数据ID)", `cust_name` string comment "客户名称", `..."企业ID", `original_id` int comment "原始客户ID(用于记录老crm中客户数据ID)", `cust_name` string comment "客户名称", `

82020

Hadoop HiveHbase整合+thrift

另外,你必须在创建Hive前,HDFS上创建/tmp和/hive/warehousedir(也称为hive.metastore.warehouse.dir),并且将它们权限设置为chmod g...启动hive,这个又可以分为启动metastore和hiveserver,其中metastore用于和mysql之间结构创建或更新通讯,hiveserver用于客户端连接,这这个都要启动,具体启动命令...与Hbase整合 之前我们测试创建都是创建本地表,非hbase对应。现在我们整合回到hbase。..."xyz"); hbase.table.name 定义hbasetable名称 hbase.columns.mapping 定义hbase列族 hbase 下也能看到,两边新增数据都能实时看到...2.使用sql导入数据 如果要insert 与hbase整合,不能像本地表一样load,需要利用已有的进行。

1.6K20

HBaseHive整合

HIVE_HOME/lib/hive-hbase-handler-1.2.1.jar 复制HBASE_HOME/lib/下 2....把HBASE_HOME/lib下所有的jar 复制HIVE_HOME/lib/下 # -n 表示对于目标路径下已经存在文件,则不复制过去 cp -n $HBASE_HOME/lib/* $HIVE_HOME...hbase关联hive,需为外部 关联所有列 CREATE EXTERNAL TABLE hive_student (key string,info map) STORED...说明 1-3步骤不是必须,如果没有进行1-3步骤设置,那么想要让hivehbase整合,每次进入hive命令行后,需要进行如下配置: (1) 指定 hbase 所使用 zookeeper 集群地址...中使用根目录 set zookeeper.znode.parent=/var/zookeeper/local; # 该路径hbase-site.xml可以查询,你搭建hbase集群时候,这个参数是必须设置

97130

Spark大数据集群日常开发过程遇到异常及解决思路汇总

: SYSTEM创建带有命名空间,例如创建名为SYSTEM:SYSTEM_LOG出现以下异常—— Caused by: org.apache.hadoop.hbase.ipc.RemoteWithExtrasException...五、HBase映射到Hive当作外部,显示整数列为NULL将HBase结构映射到Hive创建一个Hive外部创建语句刚开始是这样——CREATE EXTERNAL TABLE test...,INFO:count5,INFO:count6")TBLPROPERTIES ("hbase.table.name" = "test");该脚本能正常运行完成,但是进入HiveHIve查询整数对应字段都为...NULL,正常情况下, 应该为0或者非0数字才对,这说明创建Hive外部有问题——后来修改成这样,Hive就能正常映射到Hbasebyte整数字段值了——CREATE EXTERNAL TABLE..."test");再次查询Hive,就发现整数对应都有了—— 这时才是正确,六、RDD之foreach和foreachPartition方法日志查看这两个方法内日志,driver端是看不到

63100
领券