导航:首页 > 数据分析 > Hive数据类型都有哪些

Hive数据类型都有哪些

发布时间:2023-10-04 12:25:34

㈠ Hive复杂数据类型:array、map、struct

目前所学的复杂数据类型有三种 array , map , struct 。

用这种数据类型的特点就是集合里的每一个字段都是一个具体的信息,不会是那种 key 与 values 的关系

load数据如上所示,一共两个字段, ruoze 和他们工作的城市

也就是字段与字段之间的分割用table array字段之间的分割用“ , ”。

array_contains 这个函数是array_contains(array字段,‘字段包含的内容’)

比如以上就是array字段包含 tianjin 的数据。

以上数据一共有3个字段,分别为id,name,member。其中member里的内容都是以 key:values 的形式出现的,若是这种形式一般用 map 这种复杂数据类型

struct('a',1,2,3,4) (这个数据类型的特点就是可以包含各种各样的数据类型。但是 struct 可以是任意数据类型,在写struct数据类型时,在 <> 中要写清楚struct字段中的字段名称跟数据类型)

㈡ hive表的类型有哪些

Hive 的表有哪些类型呢,我们简单可以分为四种,受控表、外部表、分区表、桶表,从严格意义上说,应该分为两种受控表,又叫内部表、外部表,分区表和桶表其实是受控表的不同体现。

1、受控表

所谓受控表,我们也经常叫内部表,和外部表对应起来,就是说表的数据的生命周期收表的控制,当表定义被删除的时候,表中的数据随之一并被删除。创建一张表,其对应在hive中就有了表记录,在metastore表TBLS中就有表定义,当我们一旦从hive中删除一张表的定义之后,其表中的数据也就不复存在了,在metastore中的定义也就不存在了。

2、外部表

和受控表相对的,怎么相对呢,你的内部表的数据的生命周期受表定义的影响不是,外部表的不是这样的,数据的生命周期, 或者说数据存在与否和表的定义互不约束,表中的数据呢,只是表对hdfs上相应文件的一个引用而已,当删除表定义的时候,表中的数据依然存在。
3、分区表

假设服务器集群每天都产生一个日志数据文件,把数据文件统一存储到HDFS中。我们如果想查询某一天的数据的话,hive执行的时候会对所有文件都扫描一遍,判断是否是指定的日期。可以让日期作为一个子目录。当hive查询的时候,根据日期去判断子目录。然后扫描符合条件的子目录中的数据文件。

4、桶表

桶表是对数据进行哈希取值,然后放到不同文件中存储。分桶是将数据及分解成更容易管理的若干部分的另一种技术。如果进行表连接操作,那么就需要对两张表的数据进行全扫描。非常耗费时间。可以针对连接字段进行优化。分桶这种情况下呢,对于相似的表中的数据进行比较的话就非常的方便了,只要对比相应的桶中的数据就可了。

阅读全文

与Hive数据类型都有哪些相关的资料

热点内容
已经打开的文件如何清理 浏览:685
视频网站有什么用 浏览:70
多个表格文件怎样压缩文件 浏览:729
cad文件大很卡如何解决 浏览:633
将java程序打包成apk 浏览:277
2021唱吧文件找不到了 浏览:463
华为p9手机文件管理 浏览:284
固定在工具栏的文件夹怎么查找路径 浏览:667
半条命2有几个版本 浏览:333
电脑管家微信备份文件夹 浏览:826
ubuntu文件夹解锁 浏览:34
网站多少钱一单 浏览:382
系统镜像恢复找不到文件 浏览:255
进什么网站 浏览:588
修改了配置文件代码没有读出来 浏览:749
vss数据库是什么 浏览:899
奇迹13单机系统找不到指定文件 浏览:719
flyme魅蓝3以前的版本 浏览:318
安卓文件管理哪些文件夹可以删除 浏览:290
安卓车载导航没有声音是怎么回事 浏览:810

友情链接