python3处理dataframe数据存入hive数据库 您所在的位置:网站首页 dataframe导入数据库 python3处理dataframe数据存入hive数据库

python3处理dataframe数据存入hive数据库

2023-07-03 07:55| 来源: 网络整理| 查看: 265

hive数据库是基于HDFS的一个数据库,是对hdfs数据的一个映射关系。

注意:hive数据库存入数据的时候不建议使用insert into语句来进行插入,这样的的操作方式在效率上会很低效。

下面来说一下我的经历:

1、使用python3代码把数据存入数据库可以把数据写入csv或者txt文件中,使用分隔符分割(分隔符需要与hive进行映射的表分隔符一致)

# Python3把数据写入csv   通过pandas来写入csv并指定分隔符号,

df.to_csv(’路径/文件名.csv‘,index=None,header=False,sep='|')  #sep是用来指定分隔符号的,默认是逗号

2、上面的操作会把dataframe输出到你指定的路径下,接下来就需要把它上传到hadoop的hdfs目录下。

3、首先要创建一张hive表,然后使用show create table 表名;进行查看表的location路径,如下图

4、确定好路径之后就是上传你的csv了,上传命令是:

hdfs dfs -put 数据文件 table表名本地位置

5、如果想要在代码中操作也可以

import os 

os.system(hdfs dfs -put 数据文件 table表名本地位置)

如果是分区表的话上传数据需要用到:

LOAD DATA local INPATH '/root/5.txt' INTO TABLE t_user partition(country='USA')     #country是分区的字段

这样你的数据就可以上传到hive表的目录中,然后跟表产生映射关系。

其实hive表在hdfs中就是一个文件夹,然后文件夹中存放的就是数据,txt或者csv格式的都可以。

使用hive可以最大化的降低hdfs的学习成本。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有