ウィンドウ関数 - 集計
通常の集計関数呼び出しとは異なり、指定されたフレームに基づいて (オプションの順序で) 入力行ごとに集計変数を作成できます。
情報一覧
|
パラメーター |
説明 |
|---|---|
| カテゴリー | トランスフォーム |
| データ ソース タイプ | HD |
| 出力を他のオペレーターに送信 | はい |
| データ処理ツール | Spark |
集計オペレーターは、count、max、min、sum、mean、first_value、および last_value 関数をサポートします。潜在的な使用例としては、過去 30 日間または過去 10 件の取引のみの金額を平均して、デパートごとの平均販売数を決定することが考えられます。
ウィンドウ関数オペレーターを使用すると、Spark SQL を利用して、Hadoop 上でデータベースのようなウィンドウ関数を計算できます。Spark SQL でウィンドウ関数を実装する方法の詳細については、このチュートリアルを参照してください。
ウィンドウ関数は、フレームと呼ばれるユーザー定義行の特定のグループに基づいて、入力のすべての入力行の戻り値を計算します。すべての入力行には、それに関連付けられた一意のフレームがあります。
TIBCO Data Science - Team Studio では、他に 2 つの異なるウィンドウ関数オペレーター、ウィンドウ関数 - ランク と ウィンドウ関数 - ラグ/リード が用意されています。
入力
HDFS からの 1 つのデータセット。データセットには、数値集計を計算するための数値カラムがいくつか必要です。また、カラムによるパーティション分割や任意のタイプのカラムによる順序付けが含まれる場合があります。日時カラムには、入力で指定された形式が必要です (たとえば、日時 'MM/dd/yy')。
Null 値: ウィンドウ関数を計算する前に、オペレーターは、選択された オーダー・バイ カラムに Null 値を含む行をフィルタリングします。次に、オペレーターは、[Null データにより削除された行をファイルに書き込む] パラメーターの値に従って、Null 値を持つこれらの行を処理します。Null データにより削除された行の数は、ビジュアル出力の サマリー タブにレポートされます ([Null 行の書き込みまたはカウントを行わない (最速)] を選択しない場合)。
制限事項
ワイド データ: このオペレーターは長いデータに対しては高速に動作しますが、ウィンドウ関数が数千のカラムに対して計算される場合、パフォーマンスが大幅に低下する可能性があります。Spark のエグゼキューター メモリを増やすと、パフォーマンスが向上する可能性があります。
日時列: 入力日時カラムには、入力で指定された形式が必要です (たとえば、日時 'MM/dd/yy')。それ以外の場合、オペレーターはカラム全体に Null 値を返します。
構成
| パラメーター | 説明 |
|---|---|
| ノート | このオペレーターのパラメーター設定に関するメモまたは役立つ情報。 [ノート] フィールドに内容を入力すると、オペレーターに黄色のアスタリスクが表示されます。 |
| パーティション・バイ | パーティション化するカラム。 [パーティション・バイ] または [オーダー・バイ] の値を入力する必要があります。 |
| オーダー・バイ | 各パーティションを並べ替えるカラム (すべてのデータ タイプがサポートされています)。
[パーティション・バイ] または [オーダー・バイ] の値を入力する必要があります。 |
| ウィンドウ フレームの境界 | 行 または 範囲 のフレーム境界タイプを指定します。 [行] (デフォルト) が選択されている場合、指定された フレーム開始/フレーム終了の値は、現在の行の前後の行数を指します。 [範囲] が選択されている場合、指定された フレーム開始/フレーム終了 の値は、現在の行の前後(オーダー・バイ カラム)のユニット オフ数を指します。 [範囲] が選択されている場合、オーダー・バイ カラムは数値である必要があります。 |
| フレーム開始 (両端を含む) | フレームの開始位置 (現在の行から離れた行または単位)。
|
| フレーム終了 (両端を含む) | フレームが終了する場所 (現在の行から離れた行または単位)。 デフォルト値は 0 (= 現在の行) です。 ノート:
|
| カウントを計算する | オペレーターが現在の行から選択されたフレーム内の行数を報告するかどうかを指定します。 デフォルト値: いいえ |
| 最大値を見つける | これらの各カラムの最大値 (各パーティション内および選択したフレームの)。 |
| 最小値を求める | これらの各カラムの最小値 (各パーティション内および選択したフレームの)。 |
| 合計を計算する | これらの各カラムの合計 (各パーティション内および選択したフレームの)。 |
| 平均値の計算 | これらの各カラムの平均 (各パーティション内および選択されたフレームの)。 |
| 最初の値を検索 | これらの各カラムの最初の値 (各パーティション内および選択されたフレームの)。 ノート: 出力カラムのデータ タイプは、選択した入力カラムと同じです。 |
| 最後の値を検索 | これらの各カラムの最後の値 (各パーティション内および選択されたフレームの)。 ノート: 出力カラムのデータ タイプは、選択した入力カラムと同じです。 |
| 新しいカラムのサフィックス | 作成された新しいカラムに追加するサフィックス (オプション)。 |
| 保持するカラム | 出力に保持するカラム。 |
| Null データにより削除された行をファイルに書き込む
*必須 |
選択した オーダー・バイ カラムに Null 値がある行は分析から削除されます。このパラメーターを使用すると、Null 値を含むデータをファイルに書き込むかどうかを指定できます。 ファイルは残りの出力と同じディレクトリに書き込まれます。ファイル名の接尾辞は _baddata です。
|
| ストレージ フォーマット | 結果を保存する形式を選択します。保存形式はオペレーターの種類によって決まります。 一般的な形式は、Avro、CSV、TSV、または Parquet です。 |
| 圧縮 | 出力の圧縮のタイプを選択します。 利用可能な Parquet 圧縮オプション。
利用可能な Avro 圧縮オプション。
|
| 出力ディレクトリ | 出力ファイルを保存する場所。 |
| 出力名 | 結果を含める名前。 |
| 出力を上書き | そのパスにある既存のデータを削除するかどうかを指定します。
|
| 高度な Spark 設定の自動最適化 |
|
出力
- 出力 - データ出力のプレビュー (以下の「例」セクションを参照)。
次の図は出力例を示しています。

- サマリー - 選択したパラメーターのリスト、Null データにより削除された行数のサマリー、結果の保存場所に関するメッセージ。

