`

hive分区表

 
阅读更多

内部表和外部表

内部表:create table    copy数据到warehouse,删除表时数据也会删除

外部表:create external table ,不copy数据到warehouse,删除表时数据不会删除

 

表的分区

分区的好处:如果不建立分区的话,则会全表扫描

数据通过目录划分分区,分区字段是特殊字段

目录结构:/pub/{dt}/{customer_id}/

添加分区:ALTER TABLE fs ADD PATITION(dt='20150305',customer_id) location '/pub/20150315/0001'

使用分区进行查询:

select * from fc where dt='20150315' and customer_id='0001'

日期字段(字符串类型)可以进行比较:t.dt>'20150413'

 

分区表的创建:

create table hive_patition(name string,salary float,gender string,level string)

partitioned by(dt string,dep string)

row format delimited fields treminated by ','

stored as textfile;

 

desc hive_partition;

show partitions hive_partition;//查看分区表的分区信息

导入数据:

load data local inpath '/opt/20150402/party.log' into table hive_partition partition(dt='2015-04015',dep='dev')

 

修改表增加分区:

alter table hive_partition add partition(dt='2015-04-01',dep='dev1') location '/pub/20150401/0001' partition(dt='2015-04-02',dep='dev2') location '/pub/20150402/0001'

修改表删除分区:

alter table hive_partition drop partition(dt='2015-04-02',dep='dev2')

修改表重命名表:

alter table hive_partition rename to partition_test

修改表中的字段:

alter table partition_test change name userName

添加字段:

alter table partition_test add columns(testColumn string)

 

嵌套查询:

from (select name,salary from partition_table) e select e.name,e.salary where e.salary>10000;

case when then语句

select name,salary,case when salary>1 and salary<5000 then 'L1' when salary>=5000 and salary<10000 then 'L2' when salary>=10000 and salary<150000 then 'L3' when salary>10000 then 'L4' else 'L0' end as salaryLevel from

partition_table;

 

having的用法:

 

select gender,sum(salary) as totalSalary from partition_table group by gender having totalSalary>50000;

 

 

分享到:
评论

相关推荐

    hive分区表分通表建表语句详解和例子

    ### Hive 分区表与分桶表详解 #### 一、Hive 分区表概念与应用场景 ...通过对以上Hive分区表的概念、创建方法及管理操作的了解,我们可以更加高效地管理和查询大型数据集,从而提高数据分析的效率和准确性。

    bdp2hive:生成hive分区表、sqoop导入数据至hive

    bdp2hive项目介绍一、概述项目主要是集成生成sqoop脚本和创建hive分区表组件。生成sqoop脚本组件主要通过传递的数据库信息查询数据库获取表字段与数据集之间的对照关系SQL语句,通过模板拼接成sqoop脚本,上传服务器...

    修改hive表分区名称

    ### 修改Hive表分区名称的方法 在大数据处理领域中,Apache Hive是一款广泛使用的数据仓库工具,它能够将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能,使得用户能够通过简单的SQL语句来处理存储在...

    Hive分区表和分桶表.md

    Hive分区表和分桶表,进阶篇

    Hive表分区

    Hive表分区,里面有比较详细的Hive表分区方法,希望能够有所帮助。

    BLOG_如何将一个普通表转换为分区表.pdf

    从提供的文件内容可以看出,本文主要介绍的是如何将一个非分区表转换为分区表,其中涉及了四种不同的方法,并且强调了每种方法的执行细节以及注意事项。 1. Export/Import方法 Export/Import方法是最传统的转换策略...

    hive分区导入

    3. 使用HiveQL创建和管理分区表。 4. Sqoop工具的使用,包括安装、配置、数据导入导出命令。 5. SQL性能优化,特别是对于大型数据集的查询。 6. Oozie在工作流中的角色,如何配合Hive和Sqoop进行任务调度。 7. 数据...

    hive数据分区时分区字段不可为中文。.doc

    - **Hive 数据分区**是 Hive 表的一种组织方式,它允许将表中的数据按照某个列(分区键)的值进行划分,存储在不同的目录下。 - 分区有助于提高查询效率,因为当查询指定分区时,Hive 只需要扫描相关的分区,而...

    Hive与Hbase的整合

    Hive与Hbase的整合,集中两者的优势,使用HiveQL语言,同时具备了实时性

    collabH#repository#Hive分区表和分桶表1

    下面的我们创建一张雇员表作为测试:PARTITIONED BY (deptno INT) -- 按照部门编号进行分区ROW FORMAT DELIMITED F

    codezengjie#repository-1#Hive分区表和分桶表1

    下面的我们创建一张雇员表作为测试:PARTITIONED BY (deptno INT) -- 按照部门编号进行分区ROW FORMAT DELIMITED F

    spark或mr引擎插入的数据,hive表查询数据为0

    ### Spark或MR引擎插入的数据,Hive表查询数据为0的问题解析 #### 问题背景与现象 在大数据处理场景中,经常会遇到使用不同执行引擎(如Spark、MapReduce (MR) 或 Tez)进行数据处理的情况。其中一种常见的问题是...

    华为面试题集

    【华为面试题集】是一个包含了华为公司在面试过程中可能会考察到的C/C++编程语言相关问题的集合。这个压缩包中的资料对于准备华为的C/C++技术面试或是希望深入理解这两种语言的开发者来说,是非常有价值的资源。...

    Hive的分区表

    Hive分区表 Hive分区表对应的是HDFS上独立的文件夹,该文件夹存放的是该分区的所有数据,其实分区就是分目录。Hive通过分区把一个大的数据集根据业务需要分割成小的数据集,在查询时能够通过where关键词选择指定分区...

    Scala代码积累之spark streaming kafka 数据存入到hive源码实例

    Scala代码积累之spark streaming kafka 数据存入到hive源码实例,Scala代码积累之spark streaming kafka 数据存入到hive源码实例。

    datax实战-mysql同步数据到hive

    { job: { setting: { speed: { channel: 1 }, errorLimit: { record: 0, percentage: 0.02 } }, content: [ { reader: {

    龙战于野大数据MR原理启动hive查询表分区.docx

    Hive查询表分区的MR原理启动详解 Hive是一款基于Hadoop的数据仓库工具,主要用于处理结构化和半结构化的数据。MR(MapReduce)是Hadoop中的一种编程模型,用于处理大规模数据。在Hive中,MR原理启动是指使用...

    hive 双分区外部表 复合数据结构 样例

    hive双分区外部表复合数据结构博客的数据资料,欢迎下载。

    Hive内部表合并小文件Java程序

    1. **获取HDFS上的文件列表**:使用Hadoop的`FileSystem` API,我们可以列举出目标目录下的所有文件,这些文件通常是Hive内部表的各个分区下的小文件。 2. **确定合并文件大小**:设置一个合适的合并文件大小阈值,...

Global site tag (gtag.js) - Google Analytics