首页 > 其他分享 >Hive表常用的存储格式有哪几种?

Hive表常用的存储格式有哪几种?

时间:2024-10-16 15:31:59浏览次数:7  
标签:存储 Hive stored 哪几种 parquet 格式 textfile orc

1. 一般常用的有5种(textfile, sequencefile, rcfile, orc, parquet),默认的存储格式是textfile。

2. 5种存储格式的区别

存储格式文件存储编码格式建表指定
textfile

将表中的数据在hdfs上以正常文本的格式存储,下载后可以直接查看。

stored as textfile

 

sequencefile  

将表中的数据在hdfs上以二进制格式编码,并将数据压缩,下载的数据是二进制格式,不可以直接查看,无法可视化。

stored as sequecefile
rcfile   将表中的数据在hdfs上以二进制格式编码,并且支持压缩。下载后的数据无法可视化。 stored as rcfile
orc 文件存储方式为二进制文件。orc文件格式从hive0.11版本后提供,是RcFile格式的优化版,主要在压缩编码,查询性能方面做了优化。按行组分割整个表,行组内进行列式存储。 stored as orc
parquet 文件存储方式为二进制文件。parquet基于dremel的数据模型和算法实现,列式存储。 stored as parquet

 

3. 实践操作

标记部分是利用hadoop本身的InputFormat API从不同的数据源读取数据,OutputFormat API将数据写成不同的格式,不同的数据源或者不同的存储格式需要不同的InputFormat和OutFormat来实现。

1)textfile

CREATE TABLE teacher1(
 name string,
 age int
)row format delimited fields terminated by ','
stored as textfile

 

2) Sequencefile

drop table tbl_textfile;
CREATE TABLE tbl_sequencefile(
 name string,
 age int
)stored as sequencefile;

 

3)rcfile

CREATE TABLE tbl_rcfile(
 name string,
 age int
)stored as rcfile;

 4)orc

CREATE TABLE tbl_orcfile(
 name string,
 age int
)stored as orc;

 

5)parquet

CREATE TABLE tbl_parquetfile(
 name string,
 age int
)stored as parquet;

 

4.总结

1)查看存储的具体的数据内容,并且数据量较小,可以使用默认文件格式textfile

2)不需要查看具体的数据内容,并且数据量较小,可以使用sequencefile

3)数据量较大,一般推荐orc, 如果需要查询部分列建议使用parquet

 

参考: https://download.csdn.net/blog/column/9122766/126776080

 

标签:存储,Hive,stored,哪几种,parquet,格式,textfile,orc
From: https://www.cnblogs.com/nn2dw/p/18470096

相关文章

  • c++面向对象的两种格式
            面向对象编程(OOP)是C++的一个重要特性,它允许你将代码组织成类(class)和对象(object),从而提高代码的可读性、可维护性和复用性。所以,在项目开发中使用面向对象编程是非常重要的,即便函数也可以提高封装性,但是,类的使用通俗来说,直接将函数封装,同时可以通过继承父类来大......
  • 教你从零开始在MaixCam上部署自己本地训练的Yolov5模型(5)- 转换格式并部署为app
    本博客会从一个从未部署过任何环境的电脑上一步步复现如何本地训练自定义模型并成功部署到Maixcam上实现数字识别的功能。文章中会引用到我当时学习是参考到的文章,都会在下面列出来,在此对这些向我提供过帮助的博主表示感谢!!本文中默认读者已经了解过相对应的知识,一些非常......
  • Java 时间格式转换详解
    在Java开发中,时间和日期的处理是非常常见的需求。无论是用户输入的时间数据,还是系统生成的时间戳,我们经常需要对其进行格式化或解析。本文将详细介绍如何在Java中进行时间格式的转换,并分别介绍两种主要的方法:SimpleDateFormat(适用于Java8之前)和 java.time(适用于Java8......
  • Python 如何美观地格式化字典字符串输出
    在本文中,我们将介绍如何使用Python来美观地格式化字典字符串的输出。字典是Python中重要的数据结构之一,它可以存储键值对,提供了一种方便的方式来组织和访问数据。当我们需要将字典的内容以字符串的形式输出时,往往需要对其进行适当的格式化,以便更好地阅读和理解。使用json.dumps()......
  • 清除openstack导出的qcow2格式的Windows16镜像的管理员密码
    由于公司使用的openstack版本太老,无法使用cloudbase-init传递元数据修改win16镜像的管理员密码,所以琢磨其它办法,搞了一个星期。原理:使用kpartx挂载镜像,然后使用chntpw清空密码,并修改cloudbase-init配置文件里的重置密码选项。准备环境系统:centos7.5磁盘80G(转换win16镜像由qcow......
  • datframe格式 填充apply 报错incompatible index of inserted column with frame inde
    源代码importpandasaspddf=pd.read_csv("Titanic.csv")#对Sex分组,用各组乘客的平均年龄填充各组中的缺失年龄df_cleaned['Age']=df_cleaned.groupby('Sex')['Age'].apply(lambdax:x.fillna(x.mean()))报错信息incompatibleindexofinsertedcol......
  • Python 实现Excel XLS和XLSX格式相互转换
    在日常工作中,我们经常需要处理和转换不同格式的Excel文件,以适应不同的需求和软件兼容性。Excel文件的两种常见格式是XLS(Excel97-2003)和XLSX(Excel2007及以上版本)。本文将详细介绍如何使用Python在XLS和XLSX格式之间进行转换。Python库安装所需Python库-Spire.XLSforPython......
  • 电脑格式化了还能恢复数据吗?
    许多人在使用电脑时可能会误操作或出于需要对电脑硬盘进行格式化,格式化会迅速清空数据。问题是格式化后的数据还能恢复吗?答案是:在某些情况下,格式化后的数据是可以恢复的。不过,恢复的成功率取决于格式化的类型和后续的操作。接下来,将和大家讨论一下电脑格式化后数据能否恢复,并介绍几......
  • 电脑格式化了还能恢复数据吗?
    许多人在使用电脑时可能会误操作或出于需要对电脑硬盘进行格式化,格式化会迅速清空数据。问题是格式化后的数据还能恢复吗?答案是:在某些情况下,格式化后的数据是可以恢复的。不过,恢复的成功率取决于格式化的类型和后续的操作。接下来,将和大家讨论一下电脑格式化后数据能否恢复,并介绍几......
  • DIY必备技能:如何用格式工厂将图片转换成PDF文档
    我们经常需要将各种格式的文件转换为更便于分享和存档的形式,PDF便是其中一种极为流行的文件格式。无论是学术论文、工作报告还是个人简历,PDF都能够确保文档的外观和排版在任何设备上都保持一致。对于经常需要处理图片资料的用户来说,将图片转换为PDF格式不仅便于存储管理,还能更......