文档首页/ 迁移中心 MGC/ 常见问题/ 大数据校验/ Hive校验结果中的源端数据和目的端数据显示为“0”或“-1”
更新时间:2024-10-16 GMT+08:00
分享

Hive校验结果中的源端数据和目的端数据显示为“0”或“-1”

问题描述

对Hive进行大数据校验,校验任务执行成功,查看校验结果,发现部分字段的“源端数据”和“目的端数据”显示为“0”或“-1”。

问题分析

出现该问题可能是因为数值超出了Hive支持的数值范围。

在数据处理中,如果遇到极大值或极小值,Hive可能无法以标准数值格式表示这些极端数值,而是将它们显示为 “Infinity”(表示无限大)或 “-Infinity”(表示无限小)。这些值并不是有效的数字,因此在进行数值转换或计算时,可能会引发异常。

在校验过程中,Hive和Spark对这些无法表示的数值有默认的处理方式:

  • 当数值为 Infinity 或 -Infinity 时,会被默认处理并显示为 -1。
  • 当数值为 NaN(Not a Number,非数字)时,会被默认处理并显示为 0。

相关文档