pig和hive连接到运行大量Map的datastax cassandra

oxf4rvwz  于 2021-06-04  发布在  Hadoop
关注(0)|答案(1)|浏览(363)

我使用的是dse3.2.4,我创建了三个表,其中一个表有10万行,另一个表有5万行,只有10行。当我在这些表上运行一个简单的pig或hive查询时,它为两个表运行相同数量的Map器。
默认情况下在pig中 pig.splitCombinationtrue 在它运行的地方只有一个Map,如果我把它设为假,它现在运行513个Map。
在hive中,它默认运行513个Map
我尝试设置以下属性

mapred.min.split.size=134217728 in `mapred-site.xml` now running 513 maps for all
``` `set pig.splitCombination=false` 在pig shell中,所有表只运行1
但运气不好
最后我发现 `mapred.map.tasks = 513` 在 `job.xml` 我试着改变这个 `mapred-site.xml` 但这并不反映
请帮帮我
tv6aics1

tv6aics11#

Map器由split size管理,因此不要通过hadoop设置进行配置,请尝试将&split\u size=传递到pig url。为配置单元设置“cassandra.input.split.size”
默认值为64m
如果您的cassandra使用v-node,它会创建许多拆分,因此如果您的数据不够大,那么请关闭hadoop节点的v-node

相关问题