借助hive快速导数据到hbase(02)

借助hive快速导数据到hbase(02),第1张

上一篇咱们讲了通过hive映射为hbase表导数据,这儿我么再讲一下通过hive,使用hbase原生jar生成hfile再bulkload到hbase,可以做到hive解偶

本篇适用于适用于数据量较大的场景。

具体的 *** 作步骤如下:

启动hive,添加需要的jar包

创建hive表

注意:

这儿输出格式一定要为:HiveHFileOutputFormat。

/hdfs/hive_hbase/cf是生成的hfile在HDFS上的路径,其中cf为Hbase的family。

可以向hive表中插入数据,然后查看HDFS的该目录下是否有文件

通过bulkload导入到hbase

创建对应的hbase表,其中cf为family,应和上一步对应

执行bulkhead,将数据导入到hbase中

a 拖动页面上方工具条中的ProcessorGroup图标至绘图区

b 命名Group并双击打开

a拖动页面上方工具条中的Processor图标至绘图区可以开始创建数据流,成功后如图

b在搜索框处输入想要添加的Processor。此处输入GetFile,然后点击Add,GetFile Processor 添加成功。

c双击GetFile处理器或者右击选择Configure进行配置,根据自身环境和需求,填写相关配置。然后点击APPLY。

a同理添加PutHive,并做相应的配置。与GutFile不同的是,此处要创建Reader/Writer。

b)Reader/Writer等相关配置如下

insurance_schema

c)如图,点击右边的设置按钮可以进入配置,点击闪电样式的按钮可以启动。

d)至此,PutHive Processor创建添加成功。

a每个处理器都有一组定义的“关系”,最基本的是success和failure。把鼠标停在GetFile Processor,会看到一个箭头,拖动箭头到PutHive ,显示success即可。

b此时,PutHive上仍显示警告,提示为success、retry和failure关系未连接到其他组件和自动终止。可以右击configure,在setting中勾选中success、retry和failure即可实现自动终止。

a依次启动Processor,一般按从后往前的顺序右击选择start。

b运行成功后,可以看到数据再不同位置的转移以及数据流的大小、时间等。NiFi为back pressure提供了两个配置元件。分别对应的是对象数量和数据大小。并且进度条基于队列百分比改变颜色:绿色(0-60%),**(61-85%)和红色(86-100%)。鼠标悬停在上面可以显示精确的百分比。

c当运行出现问题时,右上角会出现红色方框,放到上面会出现提示信息。

MySQL命令行导出数据库

1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录

如我输入的命令行:cd C:\Program Files\MySQL\MySQL Server 41\bin

(或者直接将windows的环境变量path中添加该目录)

2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名

如我输入的命令行:mysqldump -u root -p news > newssql (输入后会让你输入进入MySQL的密码)

(如果导出单张表的话在数据库名后面输入表名即可)

3、会看到文件newssql自动生成到bin文件下

命令行导入数据库:

1,将要导入的sql文件移至bin文件下,这样的路径比较方便

2,同上面导出的第1步

3,进入MySQL:mysql -u 用户名 -p

如我输入的命令行:mysql -u root -p (输入同样后会让你输入MySQL的密码)

4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库

5,输入:mysql>use 目标数据库名

如我输入的命令行:mysql>use news;

6,导入文件:mysql>source 导入的文件名;

如我输入的命令行:mysql>source newssql;

输入配CSV input,输出配Hive output。

需要注意:在CSV input中针对那个日期字段,要配置数据格式:yyyyMMdd HH:mm:ss

javautilDate日期格式为:年月日时分秒

javasqlDate日期格式为:年月日[只存储日期数据不存储时间数据]

javasqlTime日期格式为:时分秒

javasqlTimestamp日期格式为:年月日时分秒纳秒(毫微秒)

loader 提供的时间格式如下:

date是年月日,

time是时分秒,

timestamp是年月日时分秒

以上就是关于借助hive快速导数据到hbase(02)全部的内容,包括:借助hive快速导数据到hbase(02)、Nifi流程配置: CSV >> Hive、如何把hive导出到本地的表导入mysql中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/10186900.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存