分区和分桶
1.分区表是将大的表文件划分成多个小文件以利于查询,但是如果数据分布不均衡,也会影响查询效率。
2.桶表可以对数据进行哈希取模,目的是让数据能够均匀的分布在表的各个文件中。
3.物理上,每个桶就是表和分区目录里的一个文件,一个作业产生桶和Reduce任务个数据相同。
内部表和外部表
对于内部表,删除表格时,删除元数据(meta data)和存储数据,即表格,以及对应表格的数据文件。
对于外部表,删除表格时,仅删除元数据(meta data)。即仅删除表格,不会删除元数据。如果发现错误删除表格,可以把重新建表,然后把数据load回新表中。
一般情况下,在企业内部都是使用外部表的。因为会有多人操作数据仓库,可能会产生数据表误删除操作,为了数据安全性,通常会使用外部表。