我已经在Select query where条件中执行了带有Custom Hive UDF功能的Hive SQL脚本,它已经运行了两天以上。 我想知道这里究竟是什么问题?调用java需要花费很多时间或查询执行它需要花费很多时间吗?
我的数据集如下, 表A有200万条记录, 表B有100万条记录,
Sample Query如下
选择 **** 从 (选择 * 来自A1 A1.ds in('2014-06-11','2014-06-12') )A1 LEFT OUTER JOIN (选择 * 从B B1 在哪里B1.ds in('2014-06-11','2014-06-12') )B1其中customUDF(A1.data,B1.data)
这可能是什么问题?是否有任何hive脚本profiing工具可以找到确切的时间?
答案 0 :(得分:0)
假设您有权访问UDF,可以在函数中添加以下内容(sudo代码):
long start = System.currentTimeMillis();
MapredContext context = MapredContext.get();
Reporter reporter = context.getReporter();
String group = "instrumentation.udf";
String counter = "customUDF";
// function business logic
long elapsed = System.currentTimeMillis() - start;
reporter.incrCounter(group, counter, elapsed);