hadoop笔记之Hive的数据存储(分区表)

Hive的数据存储(分区表)

Hive的数据存储(分区表)

分区表

  • Partition对应于数据库的Partition列的密集索引
  • 在Hive中,表中的一个Partition对应于表下的一个目录,所有的Partition的数据都存储在对应的目录中

    那么如果我们要查询男性的身高,那么只需要扫描gender=’M’的分区就好了

○如何建立一张基于性别的分区表

create table partition_table(sid int,sname string)partitioned by (gender string)row format delimited fields terminated by ‘,‘;

Partition Information指明分区信息

创建分区条件为gender=’M’的子目录

insert into table partition_table partition(gender=‘M‘) select sid,sname from sample data where gender=‘M‘;

同样对女学生进行分区

insert into table partition_table partition(gender=‘F‘) select sid,sname from sample data where gender=‘F‘;

进入网页中查看,/user/hive/warehouse下多了个partition_table的目录,目录下有gender=F和gender=M两个分区

(我们可以使用explain select * from sample_data where gender=‘M‘;explain select * from partition_table where gender=‘M‘;来查看对比执行计划)

明显使用分区表的数据要比sample数据查询计划要少,执行速度也更快

时间: 2024-10-11 11:46:22

hadoop笔记之Hive的数据存储(分区表)的相关文章

hadoop笔记之Hive的数据存储(桶表)

Hive的数据存储(桶表) Hive的数据存储(桶表) 桶表 桶表是对数据进行哈希取值,然后放到不同文件中存储. 比如说,创建三个桶,而创建桶的原则可以按照左边表中学生的名字来创建对应的桶.这样子把左边的数据存到桶里面来的时候可以把学生名字经过哈希运算,把相同哈希运算的值的列存放在同一个桶当中.比如Tom.Jerry.Scott经运算以后它们的哈希值是一样的,那么这三个人的信息就会存放在相同的一个桶里面. 有了桶表以后,就能够降低系统的文件块,从而提高查询速度 ○ 如何创建桶表?(用名字进行创建

Hadoop环境中管理大数据存储八大技巧

随着IT互联网信息技术的飞速发展和进步.目前大数据行业也越来越火爆,从而导致国内大数据人才也极度缺乏,下面介绍一下关于Hadoop环境中管理大数据存储技巧. 在现如今,随着IT互联网信息技术的飞速发展和进步.目前大数据行业也越来越火爆,从而导致国内大数据人才也极度缺乏,下面介绍一下关于Hadoop环境中管理大数据存储技巧. 1.分布式存储 传统化集中式存储存在已有一段时间.但大数据并非真的适合集中式存储架构.Hadoop设计用于将计算更接近数据节点,同时采用了HDFS文件系统的大规模横向扩展功能

hadoop笔记之Hive入门(Hive的体系结构)

Hive入门(二) Hive入门(二) Hive的体系结构 ○ Hive的元数据 Hive将元数据存储在数据库中(metastore),支持mysql.derby.oracle等数据库,Hive默认是derby数据库 Hive中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等 ○ HQL的执行过程 解释器.编译器.优化器完成HQL查询语句从词法分析.语法分析.编译.优化以及查询计划(Plan)的生成.生成的查询计划存储在HDFS中,并在随后有MapRed

阅读郭林《第一行代码》的笔记——第6章 数据存储全方案,详解持久化技术

瞬时数据是指那些存储在内存当中,有可能会因为程序关闭或其他原因导致内存被回收而丢失的数据.这对于一些关键性的数据信息来说是绝对不能容忍的,谁都不希望自己刚发出去的一条微博,刷新一下就没了吧.那么怎样才能保证让一些关键性的数据不会丢失呢?这就需要用到数据持久化技术了. 持久化技术简介 数据持久化就是指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下,这些数据仍然不会丢失.保存在内存中的数据是处于瞬时状态的,而保存在存储设备中的数据是处于持久状态的,持久化技术则是提供了一种机

Hive之 数据存储

首先,Hive 没有专门的数据存储格式,也没有为数据建立索引,用户可以非常自由的组织 Hive 中的表,只需要在创建表的时候告诉 Hive 数据中的列分隔符和行分隔符,Hive 就可以解析数据. 其次,Hive 中所有的数据都存储在 HDFS 中,Hive 中包含以下数据模型:Table,External Table,Partition,Bucket. 1)表table:一个表就是hdfs中的一个目录 2)区Partition:表内的一个区就是表的目录下的一个子目录 3)桶Bucket:如果有分

HIVE的数据存储

首先,Hive 没有专门的数据存储格式,也没有为数据建立索引,用户可以非常自由的组织 Hive 中的表,只需要在创建表的时候告诉 Hive 数据中的列分隔符和行分隔符,Hive 就可以解析数据. 其次,Hive 中所有的数据都存储在 HDFS 中,Hive 中包含以下数据模型:Table,External Table,Partition,Bucket. Hive 中的 Table 和数据库中的 Table 在概念上是类似的,每一个 Table 在 Hive 中都有一个相应的目录存储数据.例如,一

hadoop 笔记(hive)

//**********************************//安装配置1. 修改配置文件 1.1 在conf文件夹下 touch hive-site.xml <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExist=t

Android学习笔记十六.Android数据存储与IO.SharedPreferences

SharedPreferences 对于应用程序的数据输入.输出,如果是应用程序只是少量数据需要保存,那么使用普通文件就可以了(SharedPrefereces);但如果应用程序有大量数据需要存储.访问,就需要借助数据库了.Android系统内置了SQLite数据库,SQLite数据库是一个真正轻量级的数据库,它没有后台进程,整个数据库就对应于一个文件. 1.SharedPreferences简介 (1)概念:SharedPreferences保存的数据主要是类似于配置信息格式的数据,因此它保存

IOS学习笔记(五)数据存储

应用程序包: (bundle)包含了所有的资源文件和可执行文件 documents:保存应用运行时生成的需要持久化的数据,ITuns同步设备时会备份该目录.例如,游戏应用可将游戏存档保存在该目录 Library/Caches:保存应用运行时生成的需要持久化的数据, iTuns同步设备时不会备份该目录.一般存储体积较大.不需要备份的非重要数据 Library/Preference:保存应用的所有偏好设置,IOS的设置应用会在该目录中查找应用的设置信息.iTuns同步设备时会备份该目录 Tmp:保存