获取Hive插入的作业统计信息



使用Hive 0.10与Cloudera CHD4时。X时,总是可以通过读取命令输出来查看插入到特定表中的行数。该行看起来像这样:

Loaded 1234 rows into tablename

虽然不理想(没有到查询管理器的编程接口),但它是插入数据量的合理指示。然而,在Hive 0.13与Cloudera CDH 5.1的命令输出中没有出现这一行。我也不知道如何从查询管理器中获取导入计数。

如何找出给定查询插入到给定表中的行数?我想知道访问Hadoop计数器是否可以做到这一点,但我找不到任何关于Hive如何使用它们的信息。在Thrift接口中似乎没有任何东西允许访问这些统计信息。

基本上,我不想对源数据发出SELECT COUNT(*),只是为了找出有多少行被处理。

我现在正试着弄清楚这件事。大概作业计数器被重构为HIVE-4518的一部分。这似乎是功能上的回归,因为获取和显示行数的代码仍然存在,但它永远不会打印,因为没有计数器可以从中获取数字。

一个选项是打开hive.stats.autogather,它将返回统计数据,但根据您的查询,它可能有也可能没有行数。

编辑:归档了描述bug的HIVE-9023票

最新更新