创建Hive/hbase相关联时的表异常

hive> CREATE TABLE hperson(id string, name string,email string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":id,cf1:name,cf2:email") TBLPROPERTIES ("hbase.table.name" = "hbperson");、

FAILED: Error in metadata: java.lang.RuntimeException: MetaException(message:org.apache.hadoop.hive.serde2.SerDeException org.apache.hadoop.hive.hbase.HBaseSerDe: columns has 3 elements while hbase.columns.mapping has 4 elements (counting the key if implicit))

在创建hive/hbase相关联的表时,hbase表结构默认会有一个字段key,如果没有一个显示的字段'key'那么在创建表的进修,会自己创建,这样hive对应的表就会出现问题,所以在hive对应的表里一定要加上key这个字段,为了避免这个问题,在hbase表结构里可以显示的添加'key'字段,这样不容易出问题。

正确的格式如下:

CREATE TABLE hperson1(key string,id string, name string,email string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = "cf0:id,cf1:name,cf2:email") TBLPROPERTIES ("hbase.table.name" = "hbperson1");

或者:

CREATE TABLE hperson1(key string,id string, name string,email string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf0:id,cf1:name,cf2:email") TBLPROPERTIES ("hbase.table.name" = "hbperson1");

更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/extra/

时间: 2024-09-12 19:33:25

创建Hive/hbase相关联时的表异常的相关文章

EF如何操作内存中的数据以及加载相关联表的数据:延迟加载、贪婪加载、显示加载

原文:EF如何操作内存中的数据以及加载相关联表的数据:延迟加载.贪婪加载.显示加载 之前的EF Code First系列讲了那么多如何配置实体和数据库表的关系,显然配置只是辅助,使用EF操作数据库才是每天开发中都需要用的,这个系列讲讲如何使用EF操作数据库.老版本的EF主要是通过ObjectContext来操作数据库的,一看是Object打头的,自然相当庞大,方法也比较多.到了经典的4.1版本,EF小组推出了一些更简单好用的API,就是DbContext,它包括更常用的方法.看看EF小组是怎么说

sql server 2000 一个表的数据插入到三个相关联表中,一条一条的插入

FROM http://www.cnblogs.com/geovindu/archive/2009/07/03/1516159.html 1/**//********************************************************** 2测试数据 sql server 2000 一个表的数据插入到三个相关联表中,一条一条的插入 3---涂聚文 缔友计算机信息技术有限公司 软件工程师 geovindu@163.com www.dupcit.com 4---捷为工作室

用c#把数据提交到相关联的两张access数据表中

问题描述 用c#把数据提交到相关联的两张access数据表中 现在要把姓名.密码.学号.性别添加到数据库表中,现在有两个表:账号表和信息表,要把姓名.密码添加到账号表,把姓名学号性别添加到信息表,两张表有建立关系,账号表中的姓名是主键,用c#语言怎么把文本框中的信息添加到两张表中,求大神帮帮忙,最好有代码看看,谢谢了protected void Button1_Click(object sender, EventArgs e) { string TID = TextBox1.Text.ToStr

使用sqoop将oracle数据库导入hive、hbase或hdfs时,报Error,是什么原因?

问题描述 使用sqoop将oracle数据库导入hive.hbase或hdfs时,有时候会报Error:java.lang.RuntimeException:java.lang.RuntimeException:java.sql.SQLException:Ioexception:TheNetworkAdaptercouldnotestablishtheconnection.这是什么原因?(oracle->hive时:同样的语句有时候会报错,有时候不会:oracle->hbase时每次都报错,数

MYSQL创建、删除、索引和更改表

   3.4 创建.删除.索引和更改表    可利用CREATE TABLE.DROP TABLE 和ALTER TABLE 语句创建表,然后,对它们进行删除,更改它们的结构.对于它们中的每一条语句,存在MySQL专有的扩充,这些扩充使各语句更为有用.CREATE INDEX 和DROP INDEX 语句使您能够增加或删除现有表上的索引.    3.4.1CREATE TABLE 语句    用CREATE TABLE 语句创建表.此语句的完整语法是相当复杂的,因为存在那么多的可选子句,但在实际

如何使用RDS创建Hive元数据库

1. 问题背景 E-MapReduce中支持的Hive,会默认在Master节点的Mysql数据库中记录元数据信息.通常,用户会将数据存储在E-MapReduce的HDFS中,使用Hive处理HDFS中的数据.当集群释放时,节点的所有数据包括HDFS数据和Hive元数据都会被删除.前面我撰文说过,我们鼓励用户将数据存储在OSS中,这样可以实现存储和计算的分离,享受到OSS的弹性高可用.更多细节你可以看一下这篇文章.除此之外,我们可能有多个集群,很自然地需要多个集群共享一个Hive元数据仓.总结来

《精通Android 实例开发》——第1章,第1.5节将Android SDK和Eclipse相关联

1.5 将Android SDK和Eclipse相关联 1.5.1 实例说明安装好ADT插件后,使用起来很不方便.因为我们使用Eclipse进行Android应用开发,所以最好使用一种方法将SDK和开发环境Eclipse相关联.Google也已经想到了这个问题,我们需要设定Android SDK Home来解决上述问题.需要经过特别配置才可以使用Eclipse创建Android项目,并设置Android SDK的主目录. 1.5.2 具体实现(1)打开Eclipse,在菜单中依次单击[Windo

hive执行query语句时提示错误

hive执行query语句时提示错误:org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.io.IOException: hive> select product_id, track_time from trackinfo limit 5; Total MapReduce jobs = 1 Launching Job 1 out of 1 Number of reduce tasks is set to 0 since

数据库-flask admin 如何管理两个相关联的表格

问题描述 flask admin 如何管理两个相关联的表格 本人刚接触flask,只是看了一个例子 一个页面编辑一个数据库表,但我有这样两个表 t_a t_b 其中 t_b 的外键是t_a的主键 t_a t_b是一对多的关系,我想在编辑 t_a某一行时候可以在同一个页面添加n个t_b的行,请问这样 flask admin怎么实现 ?