我有一个具有以下属性的 Hive 表
- 文本文件格式
- 未分区
- 未分桶
- 有 50 个文件,每个文件 3.5 MB
遵循“DESCRIBE FORMATTED”命令中的表参数
表参数:
COLUMN_STATS_ACCURATE true
numFiles 50
totalSize 170774650
我正在对该表执行计数(*)操作,并且它正在运行
- AWS 集群上有 4 个映射器和 1 个减速器
- 我的独立集群上的 1 个映射器和 1 个减速器。[伪集群模式安装]
两个 Hive 会话的最大拆分大小为 256MB
我想知道组合输入格式是如何工作的?
在一台机器上,数据被合并在一起,因为所有文件/块都在同一台机器上,并且由于组合在一起的文件的总大小小于最大拆分大小,因此需要单个拆分,因此需要单个映射器。
在另一种情况下,AWS 集群产生了 4 个映射器。我读到 CombineInputFormat 使用机架/机器位置,但究竟如何?
提前感谢您的所有回答。