gpt4 book ai didi

hadoop - hive 计数不匹配的原因

转载 作者:行者123 更新时间:2023-12-02 18:56:18 24 4
gpt4 key购买 nike

问题陈述:-我通过将其基础数据复制到某个临时位置,并在创建指向该临时位置的备份表时将其表计数为(1000)的原始外部表。并且在运行msck修复后,两个表的计数都不匹配?
有什么理由吗?您能帮我理解其背后的原因吗?

最佳答案

在这里回答和澄清一些事情,

可以直接从Metastore或通过读取基础数据来获取

  • 统计信息。可以通过属性hive.compute.query.using.stats进行控制
    一种。设置为TRUE时,Hive将仅使用存储在metastore中的统计信息回答一些查询,如min,max和count(1)。
    b。设置为FALSE时,Hive将产生一个YARN作业以读取数据并提供计数结果。基于数据量,这通常很耗时,因为这不是从Hive Metastore中存储的统计信息中直接获取的。
    因此,如果我们希望在属性hive.compute.query.using.stats设置为TRUE时在结果中返回正确的统计信息,则需要确保表的统计信息已更新。
    您可以通过在Hive中运行以下命令来检查该值是设置为TRUE还是FALSE,SET hive.compute.query.using.stats;
  • MSCK REPAIR不执行文件级别检查。它仅查找目录级别的更改,例如,如果您已创建分区表并在HDFS中手动添加了分区目录,并且您希望Hive意识到这一点,则MSCK REPAIR可以达到目的。
  • 关于hadoop - hive 计数不匹配的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63970752/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com