一、Hive数据导入导出

1、hive数据导出

  很多时候,我们在hive中执行select语句,希望将最终的结果保存到本地文件或者保存到hdfs系统中或者保存到一个新的表中,hive提供了方便的关键词,来实现上面所述的功能。
    1.将select的结果放到一个新表中(首先要用create table创建新的表格)
      insert overwrite table table_name2 select id,name from table_name2;

       将从表table_name2中查询的数据插入到表table_name1中
    2.将select的结果放到本地文件系统中
      insert overwrite local '/tmp/reg_3' row formatted delimited fields terminated by '\t' select * from table table_name;

       在hive环境下,将从表“table_name”中查询到的数据放在本地目录“/tmp/reg_3”下
    3.将select的结果放到hdfs文件系统中
      insert overwrite directory '/tmp/hdfs_out' select a.* from table_name where a.ds='<date>';

      将从表table_name中查询到的数据放在HDFS的'/tmp/hdfs_out'目录下

    4.通过Hadoop命令将表中的数据导入到本地文件目录下

      hadoop fs -get '/hive/t1' /root/data/

      将表目录hive下的表t1中的数据导入到本地目录/root/data/下

    5.Shell命令加管道(hive -f/e | sed/grep/awk >file)

      hive -e "select * from table_name" grep key_word

      筛选出table_name表中所有含有key_word字符的数据。

2、hive数据导入

    1、load data [local] inpath '/data/userdata' [overwrite] into table user;

    将本地数据插入到表user中,插入的数据存放在本地的'/data/userdata'下
     2、创建表的时候直接指定路径

    create external table user(id int,name string) row format delimited fields terminated by '44' lines terminated by '12' stored as textfile localtion '/data/userdata';

    将'/data/userdata'下的数据导入到新创建的外部表user中

     3、创建表之后也可以导入数据到表中

    (1)本机路径

     load data local inpath '/data/data.txt' overwrite into table table_name partition(pt='time');

    (2)Hadoop路径

     load data inpath '/hadoop/data.txt' overwrite into table table_name partition(pt='time');

上面overwrite关键字会全表覆盖,如果只是想附加数据,将OVERWRITE去掉即可,添加一个分区到表可以利用语句:

    alter table table_name add partition(pt='partition_name') location '/hive/pt=partition_name';

还可以直接从从其它的表拖数据过来

    insert overwrite table table_name select * from table_name1;

最新文章

  1. 三、基于hadoop的nginx访问日志分析--计算时刻pv
  2. 每天写点shell--命令行参数
  3. C语言_第三章
  4. WINDOWS SERVER 2008 RD服务器搭建
  5. 搭建调用 WebService 的 ASP.NET 网站 (VS2010, C#)
  6. xml基础总结
  7. Node.js高级编程读书笔记 - 3 网络编程
  8. Android系统分区理解及分区目录细解
  9. Struts2返回JSON对象的方法总结
  10. ADO.NET数据库
  11. Winsock IOCP模型(四篇)
  12. 设置Tomcat应用自动部署目录
  13. 编码、解码Html代码
  14. 利用HTML5分片上传超大文件
  15. ceph启动脚本
  16. 仿微沟道效应,主要actionbar有些知识
  17. 灵感闪现 篇 (一) 2d场景 3d 效果
  18. ABAP 动态内表 动态ALV
  19. Android binder学习一:主要概念
  20. 自动化测试 selenium中WebDriver 和WebElement的区别

热门文章

  1. UNIX网络编程--读书笔记
  2. 1005 Number Sequence(HDU)
  3. 自学php的几个例子(包含AMP(Apache、MySQL、PHP)环境搭建链接)
  4. Struts2 初体验
  5. OC中两个关键字的作用:@property和@synthesize
  6. 关于JPA多数据源的部署persistence.xml文件配置以及对应实现类注入
  7. 关于智能指针auto_ptr
  8. ubuntu12.04常见错误总结
  9. WEB开发之如何改善PHP开发方式
  10. Probability theory