ホームページ  >  記事  >  ハイブの組み込み関数とは何ですか?

ハイブの組み込み関数とは何ですか?

coldplay.xixi
coldplay.xixiオリジナル
2021-02-26 12:02:014158ブラウズ

hive 組み込み関数: 1. データを処理するユーザー定義関数; 2. 1 行入力して複数行出力する必要性を解決するために使用されます [(対多マッピング)]; 3.ユーザー定義の集計関数。複数のデータ行を処理し、1 つのデータ行を生成します。

ハイブの組み込み関数とは何ですか?

#この記事の動作環境: Windows 7 システム、Dell G3 コンピューター。

hive 組み込み関数:

定義:

UDF (ユーザー定義関数)、ユーザー定義関数ペア データが処理されます。

UDTF (ユーザー定義テーブル生成関数) は、1 行を入力して複数行を出力する (On-to-many マッピング) という要件を解決するために使用されます。

UDAF (ユーザー定義集計関数) は、複数のデータ行を操作して 1 つのデータ行を生成するユーザー定義の集計関数です。

使用法:

1. UDF 関数を select ステートメントに直接適用し、クエリ構造をフォーマットして、コンテンツを出力できます。

2. UDF 関数を作成するときは、次の点に注意する必要があります。

a) カスタム UDF は org.apache.hadoop.hive.ql.UDF を継承する必要があります。

b) 評価関数を実装する必要があります。

c) 評価関数はオーバーロードをサポートしています。

hive のローカル モード:

ほとんどの Hadoop ジョブは、ビッグ データを処理するために Hadoop によって提供される完全なスケーラビリティを必要とします。ただし、ハイブへの入力データの量が非常に少ない場合があります。この場合、クエリのタスクの実行にかかる時間は、実際のジョブの実行時間よりも大幅に長くなる可能性があります。これらの状況のほとんどでは、Hive はローカル モードを通じて 1 台のマシン上ですべてのタスクを処理できます。データセットが小さい場合、実行時間は大幅に短縮されます。

この方法では、比較的少量のデータを含む操作をローカルで実行できます。これは、タスクをクラスターに送信して実行するよりもはるかに高速です。

次のパラメータを構成して Hive のローカル モードを有効にします:

hive> set hive.exec.mode.local.auto=true;(默认为false)

ハイブの組み込み関数とは何ですか?

ジョブが次の条件を満たす場合にのみ、実際にローカル モードを使用できます:

1. ジョブの入力データ サイズはパラメーター hive.exec.mode.local.auto.inputbytes.max (デフォルト 128MB) より小さくなければなりません (デフォルトは 128MB)

2. ジョブのマップの数job はパラメータより小さくなければなりません: hive.exec.mode .local.auto.tasks.max (default 4)

3. ジョブの削減数は 0 または 1

# である必要があります。

##関連する無料学習の推奨事項: php プログラミング(ビデオ)

以上がハイブの組み込み関数とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。