0
点赞
收藏
分享

微信扫一扫

Hive数据的导入导出方式

1. 导入数据
方式一:load方式

语法:load data [local] inpath  数据源路径 into table tbName [overwrite] [partition(k=v)]

说明:local表示从本地文件系统中导入数据
     不加local 默认从HDFS文件系统中导入数据

情况一:数据从本地导入
    本质:将数据从本地上传到HDFS的数据仓库中

情况二:数据从hdfs加载
    本质:在HDFS上进行数据的移动(不是复制)

    注意:数据源一定需要在hdfs上存在

方式二:insert语句 (使用少)

语法:insert into  table  tbName   [partition(k=v)]    values(v,v,v,v)

此方式底层:将insert语句转换成MR任务执行
          效率较低

  • 补充:创建表时,直接导入HDFS上数据, location 指定数据表加载数据的路径

create table tbName(…)
location 'hdfs path'

  • 例如

    create table load_tb2(id int ,name string)
          > row format delimited fields terminated by '@'
          > location '/home/zhangsan/';

2.导出数据
方式一:将数据仓库中的数据表的数据导出到HDFS

export table  tbName to 'hdfs path'

方式二:将数据仓库中的数据表的数据导出到本地

dfs -get hiveDataPath  localPath

方式三:insert overwrite 命令

语法格式:insert overwrite [local] directory  path  selectExpr

说明:local表示从本地文件系统中导入数据
     不加local 默认从HDFS文件系统中导入数据   

     path 本地或者HDFS的具体导出路径

例如:insert overwrite local directory /home/zhangsan select * from tbName

举报

相关推荐

0 条评论