UDF WeekOfYearと最初の週の開始方法を理解したかったのです。私は人工的にテーブルに当たって クエリを実行しなければならなかった。私はテーブルに当たって値を計算したくないと思った。次にUDFのソースコードを見ることができますか?テーブルを参照せずにHIVE関数をテストするにはどうすればいいですか
SELECT weekofyear
('12-31-2013')
from a;
UDF WeekOfYearと最初の週の開始方法を理解したかったのです。私は人工的にテーブルに当たって クエリを実行しなければならなかった。私はテーブルに当たって値を計算したくないと思った。次にUDFのソースコードを見ることができますか?テーブルを参照せずにHIVE関数をテストするにはどうすればいいですか
SELECT weekofyear
('12-31-2013')
from a;
:https://issues.apache.org/jira/browse/HIVE-178
デモ:
hive> SELECT weekofyear
> ('12-31-2013');
OK
1
Time taken: 0.912 seconds, Fetched: 1 row(s)
ソースコード(マスターブランチ)はこちら:https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFWeekOfYear.java
ハイブでテーブルを叩くことなくUDFを実行することはできません。 UDFテストでHive開発者hit the tableでも。
クエリの実行が高速化することができますようにするには:
あなたはJava開発者であれば、あなたはJUnitのテストケースを書いて、UDFをテストすることができます。..
あなたはgrepcodeに機能して構築されたすべてのハイブのソースコードを検索することができます。
あなたの機能をテストするために、少なくとも1つの行に任意のテーブルを使用することができなければなりません。 ここでは、作業を実行して文字列の結果を出力するカスタム関数を使用した例を示します。
anytableを実際の表に置き換えます。
SELECT ST_AsText(ST_Intersection(たST_Polygon(2,0、2,3、3,0)、ST_Polygonに(1,1、4,1、4,4、1,4)))anytable LIMIT FROM 1;
HIVE Resuluts:
OK
POLYGON((2 1、2.6666666666666665 1、2 3、2 1))を採取
時間:0.191秒、フェッチされた:1行(S)
あなたはこのJiraのを見、ハイブ0.13.0以降UDFをテストするために、テーブルは必要ありませんハイブ>