hive数据库怎么建表和数据装载

hive数据库怎么建表和数据装载,第1张

楼主说的是Hive,不是HBase。从Oracle里面头导出数据为平面文件后,导入HDFS里面。Hive里面的表结构是要自己手工定的。

建表可以自己写个小程序实现,根据oracle字典表和hive的建表规则,每个地方使用hive的情景不同,建表也不同。数据装载可以用sqoop来实现。

你可以安装下SQOOP,注意这个跟HADOOP的版本要对应的,不然会出现一些问题。以下是我项目用到的例子,不过我有个更高级的方法,只需配到表就行了,就是写个JAVA程序,然后自动生成对应的脚本,再执行就可以了。转载,仅供参考。

1查询语言不同:hql/sql

2数据存储位置不同:hdfs/数据库系统

3数据格式:可自定义/数据库系统定义格式

4数据更新:Hive不支持数据更新/mysql支持数据更新update

本文说明如何通过把Hive中的数据备份磁盘中,并从磁盘中恢复到Hive中。

1,把Hive中的表数据备份到磁盘中。 

备份示例:

以上语句说明,把src_companyinfo表中的数据以‘|’为分隔符号,并备份到“/root/grc_bigdata/backup/src_companyinfo”目录中。 

备份之后的目录结构如下:

在Hue中浏览的src_xtbillmx2013_st的目录结构如下: 

从以上结果可以看出,数据文件输出的个数与表在Hive中存储的文件个数不一定一致。

2,把磁盘中的文件恢复到Hive中。 

先在hive中执行建表脚本:

然后在Hive中执行如下导入命令:

3,在Hive中备份46个表、一共552GB的数据到Linux文件系统,一共耗时55386 秒,大概154个小时。 

从Linux文件系统中恢复以上数据,耗时41217秒,大概114个小时。

原文

问题描述:

当我们想要删除Hive表中部分符合条件的数据时:

发现Hive表删除数据不能使用DELETE FROM table_name 中SQL语句

drop table 表名;

如果要永久性删除,不准备再恢复:

drop table 表名 purge;

推荐博客: 让Hive支持行级insert、update、delete

参考博客:

>

以上就是关于hive数据库怎么建表和数据装载全部的内容,包括:hive数据库怎么建表和数据装载、数据库里面mysql和hive区别是什么、Hive数据备份和恢复等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10216249.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存