hive实用的一些语句和方法
来源:互联网 发布:人工智能的好处和坏处 编辑:程序博客网 时间:2024/05/24 06:48
一、动态分区
参考http://lxw1234.com/archives/2015/06/286.htm
hive.exec.dynamic.partition
默认值:false
是否开启动态分区功能,默认false关闭。
使用动态分区时候,该参数必须设置成true;
hive.exec.dynamic.partition.mode
默认值:strict
动态分区的模式,默认strict,表示必须指定至少一个分区为静态分区,nonstrict模式表示允许所有的分区字段都可以使用动态分区。
一般需要设置为nonstrict
hive.exec.max.dynamic.partitions.pernode
默认值:100
在每个执行MR的节点上,最大可以创建多少个动态分区。
该参数需要根据实际的数据来设定。
比如:源数据中包含了一年的数据,即day字段有365个值,那么该参数就需要设置成大于365,如果使用默认值100,则会报错。
hive.exec.max.dynamic.partitions
默认值:1000
在所有执行MR的节点上,最大一共可以创建多少个动态分区。
同上参数解释。
hive.exec.max.created.files
默认值:100000
整个MR Job中,最大可以创建多少个HDFS文件。
一般默认值足够了,除非你的数据量非常大,需要创建的文件数大于100000,可根据实际情况加以调整。
hive.error.on.empty.partition
默认值:false
当有空分区生成时,是否抛出异常。
一般不需要设置。
SET hive.exec.dynamic.partition=true;
SET hive.exec.dynamic.partition.mode=nonstrict;
SET hive.exec.max.dynamic.partitions.pernode = 1000;
SET hive.exec.max.dynamic.partitions=1000;
insert overwrite table A partition(pdate)
select c1,c2,c1 as pdate from B;
二、快速的复制分区表
CREATE TABLE new_table LIKE old_table;
使用Hadoop fs -cp 命令,把old_table对应的HDFS目录的文件夹全部拷贝到new_table对应的HDFS目录下;
使用MSCK REPAIR TABLE new_table;修复新表的分区元数据;
create table ods.A like ods.B;
hadoop fs -cp /user/hive/warehouse/ods.db/B/* /user/hive/warehouse/ods.db/A/
MSCK REPAIR TABLE A;
三、表解锁
- hive实用的一些语句和方法
- mysql一些实用的语句
- 调整JSP和servlet的一些非常实用的方法
- 数据库的一些简单实用的语句
- 一些搜集的实用方法
- javaScript实用的一些方法
- QTreeWidget的一些实用方法
- JS一些实用的方法
- 一些实用的js方法
- jquery的一些实用方法
- JS一些实用的方法
- Android开发的一些实用类和方法
- mysql 一些实用的mysql语句
- android开发一些实用类和方法
- JS的一些实用的方法
- 避免OOM的一些实用的方法
- 收集javascript的一些实用方法!
- asp.net的一些实用小方法
- Centos6.5 logStash+redis抽取syslog日志
- Mysql 索引类型
- 3种方式生成webservice客户端
- Java 试题四
- Android与Javascript交互之入门
- hive实用的一些语句和方法
- PHP 文件锁
- $.ajax跨域问题的简单解决。
- GN语法和操作
- c#酒店管理系统
- Java 试题五
- X86 LGS/LFS指令详解
- HTML8 工作总结
- Android Samples---AppShortcuts(快捷启动)