首页 文章

Hive分区与多个表,有什么区别?

提问于
浏览
0

我有好奇心 . 我想知道hive分区和多个表的区别 . 我已经知道分区的目的是减少查询对象 . 我在分区和多个表之间这是相同的 . 有什么区别?

1 回答

  • 2

    分区和"parallel"表非常相似 . 实际上,SQL Server使用"partitioned views"实现了分区,它将多个表组合到一个视图中 . 分区表和多个表组合成一个表之间的差异既微妙又明显,但归结为:表是表是表 .

    这有什么影响?首先,用户不需要知道分区以便使用表 . 对于存储在多个表中的数据,用户需要知道表名,因为SQL需要 FROM 子句中的名称 .

    其次,数据库引擎知道分区,但不一定知道如何组合多个表 . 使用分区的查询在 WHERE 子句中选择它们而不是 FROM 子句 . 理解数据结构的负担从用户转移到编译器 .

    还有其他差异 . 分区通常具有相同的列和类型 . 分区通常具有相同的索引和群集属性 . 可以根据数据的内容动态添加分区 . 可以添加和删除分区,而不会影响现有查询 .

相关问题