`
liyonghui160com
  • 浏览: 775685 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hive的insert操作,导出数据到本地、hdfs

    博客分类:
  • hive
阅读更多

 

insert 语法格式为:


1. 基本的插入语法:

insert overwrite table tablename [partition(partcol1=val1,partclo2=val2)] select_statement;

insert into table tablename [partition(partcol1=val1,partclo2=val2)] select_statement;

eg:

insert overwrite table test_insert select * from test_table;
insert into table test_insert select * from test_table;

注:
overwrite重写,into追加。


2. 对多个表进行插入操作:

from source_table
insert overwrite table tablename1 [partition (partcol1=val1,partclo2=val2)] select_statement1
insert overwrite table tablename2 [partition (partcol1=val1,partclo2=val2)] select_statement2

eg:

from test_table                    
insert overwrite table test_insert1
select key
insert overwrite table test_insert2
select value;

注:hive不支持用insert语句一条一条的进行插入操作,也不支持update操作。数据是以load的方式加载到建立好的表中,数据一旦导入就不可以修改。


2.通过查询将数据保存到filesystem

insert overwrite [local] directory 'directory' select_statement;

eg:

(1)导入数据到本地目录:

insert overwrite local directory '/home/hadoop/data' select * from test_insert1;

产生的文件会覆盖指定目录中的其他文件,即将目录中已经存在的文件进行删除。

只能用overwrite,into错误!

(2)导出数据到HDFS中:

insert overwrite directory '/user/hive/warehouse/table' select value from test_table;
只能用overwrite,into错误!

(3)同一个查询结果可以同时插入到多个表或者多个目录中:

from source_table
insert overwrite local directory '/home/hadoop/data' select *
insert overwrite directory '/user/hive/warehouse/table' select value;

分享到:
评论

相关推荐

    hive数据加载导出查询

    - **INSERT OVERWRITE**: 当需要将 Hive 表中的数据导出到指定目录时,可以使用 `INSERT OVERWRITE DIRECTORY` 语法。 ```sql INSERT OVERWRITE DIRECTORY '/user/hive/output' SELECT * FROM db_0309.emp; ``` ...

    hive 操作相关的测试数据集

    5. **数据导出**:Hive可以通过`INSERT OVERWRITE`语句将结果导出到HDFS或本地文件系统,也可以通过`EXPORT TABLE`和`IMPORT TABLE`进行数据的迁移。 6. **查询优化**:Hive支持多种查询优化策略,如谓词下推、Join...

    13-Hive基本操作1

    `LOAD DATA LOCAL INPATH`可以从本地文件系统加载数据,`LOAD DATA INPATH`则从HDFS加载。 8. **插入数据**: 使用`INSERT INTO`或`INSERT OVERWRITE`来向表中添加数据。前者追加数据,后者覆盖原有数据。 9. **...

    大数据学习:Hive数据操作语言.pdf

    Hive是基于Hadoop的大数据仓库管理系统,提供了类SQL的数据操作语言DML,用于操作数据表中的数据,例如数据的加载、查询和插入等操作。下面是Hive数据操作语言的详细讲解: 加载文件 加载文件是Hive中常见的数据...

    Hive数据文件以及CLI操作命令

    ` 这将把Hive表中的数据导出到本地目录,生成多个文本文件。 7. **分区表**:Hive支持分区,这对于管理和查询大型数据集非常有用。例如,`CREATE TABLE sales (product string, amount double) PARTITIONED BY ...

    HIVE从入门到精通.pdf

    - **导入数据**:使用LOAD DATA INPATH或INSERT INTO语句导入数据到Hive表。 - **导出数据**:可以使用SELECT INTO OUTFILE或EXPORT DATA命令导出数据。 #### 十三、Hive优化 - **查询优化**:通过合理设计表结构...

    使用Python构造hive insert语句说明

    在大数据处理领域,Hive是广泛使用的数据仓库工具,它允许用户通过SQL接口查询存储在Hadoop分布式文件系统(HDFS)上的大规模数据集。然而,Hive并不像关系型数据库MySQL那样支持直接导出INSERT语句。在某些场景下,...

    3、Sqoop导出(HDFS到RMDB-mysql)

    这里我们以MySQL为例,展示如何使用Sqoop导出HDFS数据到MySQL。 1. **默认模式导出** 默认模式下, Sqoop会将HDFS文件的数据转换为`INSERT`语句,插入到已存在的MySQL表中。假设我们有一个HDFS路径`/user/hive/...

    Hive、MySQL、HBase数据互导

    【Hive、MySQL、HBase数据互导】是大数据领域常见的数据处理操作,涉及三个不同的数据存储系统。Hive是一个基于Hadoop的数据仓库工具,它允许使用类SQL的查询语言HiveQL对大规模数据进行批处理和分析。MySQL是一种...

    Hive开发规范及要点

    1. 导出数据到本地系统:使用`insert overwrite local directory '/tmp/text' select a.* from table_name a order by 1;`语句可以将数据导出到本地系统。 2. 使用Hive命令行模式导出数据:使用`hive -e "select day...

    hive.ziphive数据迁移和数据分析

    7. **数据导出**:处理完数据后,可以使用`INSERT OVERWRITE`将结果写回HDFS,或者通过`hive -e`命令将结果导出到本地文件系统,便于进一步的分析或可视化。 总结,Hive.ziphive数据迁移和数据分析涉及多个环节,从...

    Hive实战模拟电商数据

    这通常通过`LOAD DATA`命令实现,或者使用`INSERT INTO/OVERWRITE`语句从本地文件系统或HDFS中加载数据。 3. **数据建模**:根据`retail_shop_data_analysis_files`,我们可以假设包含商品销售记录、用户行为、订单...

    Hive案例数据集.rar

    5. 数据导出:使用INSERT OVERWRITE语句将Hive查询结果导出到文件系统,或者直接输出到其他数据源。 六、性能优化 Hive在处理大数据时的性能优化主要包括以下方面: - 分区策略:合理的分区可以显著减少查询时需要...

    Hive学习总结及应用.pdf

    数据导出则包括导出到本地文件系统、HDFS或另一个Hive表。例如,使用`load data`命令可以直接将文件加载到表中,而`insert overwrite`命令可以将数据写入到指定目录或表中。 五、HiveQL操作 HiveQL类似于SQL,但并...

    HIVE文件读写

    5. 数据导出:当需要将Hive中的结果导出到文件时,可以使用INSERT OVERWRITE命令。例如,将查询结果写入一个新的CSV文件: ```sql INSERT OVERWRITE LOCAL DIRECTORY '/path/to/output' SELECT * FROM my_table ...

    Hive数据仓库全流程开发

    ### Hive数据仓库全流程开发知识点详解 #### 一、Hive数据仓库概述 ...通过以上介绍,我们可以了解到Hive数据仓库全流程开发的关键知识点,这些知识点对于理解和使用Hive进行数据仓库建设至关重要。

    hadoop+hive环境安装包.rar

    3. **数据加载与导出**:Hive支持从本地文件系统或HDFS加载数据,也支持将数据导出到其他系统。例如,可以使用`LOAD DATA`命令将数据导入HDFS的某个路径,或使用`INSERT OVERWRITE`将查询结果写回HDFS。 4. **优化...

    02 Hive学习总结及应用.pdf

    3. 导出到另一个Hive表:与数据导入类似,通过`insert into`和`select`语句实现。 **HiveQL操作** HiveQL支持大部分SQL操作,但不完全兼容,如不支持更新、索引和事务。它有以下常见操作: 1. 退出Hive:`quit;` 2....

    Hive的基础操作教学

    本篇文章将详细讲解Hive的基础操作,包括数据类型、表的创建、内外部表、分区分桶表、内置函数、UDTF和UDAF,以及数据导入导出和JDBC配置方法。 首先,理解Hive的元数据库是非常关键的。Hive的元数据主要存储在...

    hive大数据书籍

    5. **数据加载与导出**:学习如何将数据导入Hive表,以及将Hive结果导出到其他系统,包括使用LOAD DATA、INSERT INTO和EXPORT/IMPORT命令。 6. **性能优化**:探讨Hive的性能调优策略,如分区、分桶、索引的使用,...

Global site tag (gtag.js) - Google Analytics