ファジー ジョイン

ファジー マッチ ジョインを実行して、ほぼ一致する文字列値に基づいて 2 つのデータセットを接続します。

情報一覧

パラメーター

説明
カテゴリー トランスフォーム
データ ソース タイプ HD
出力を他のオペレーターに送信 はい
データ処理ツール Spark

入力

正確に 2 つの HDFS 表形式入力。

値が不正または欠落しています

出力の最初のカラムに空の文字列が含まれている場合、これらの空の文字列は代わりに二重引用符に変換されます (後続のオペレーターでは空の文字列として検出されません)。

この問題は、Spark バージョン 1.6.1 の Spark-csv のバグが原因です。CSV ライターは、行の最初に空の文字列がある場合、常に空の文字カラムを引用します (https://issues.apache.org/jira/を参照) 詳細については、/CSV-63 を参照してください)。この問題を回避するには、実行前にファジー ジョイン出力の最初のカラムにある空の文字列/Null 値をすべて置き換えます。

制限事項

このオペレーターは 2 つの入力のみを受け入れます。

構成

パラメーター 説明
ノート このオペレーターのパラメーター設定に関するメモまたは役立つ情報。 [ノート] フィールドに内容を入力すると、オペレーターに黄色のアスタリスクが表示されます。
左のデータセット

*必須

ジョインの左側のデータセット入力。
カラムで結合

*必須

[左のデータセット] からのジョイン カラム。このカラムはカテゴリカル (chararray) である必要があります。
保持するカラム [左のデータセット] から保持するカラム。
正しいデータセット ジョインに適切なデータセット入力。
カラムで結合

*必須

[右データセット] からのジョイン カラム。このカラムはカテゴリカル (chararray) である必要があります。
保持するカラム [正しいデータセット] から保持するカラム。
ジョイン タイプ

*必須

ジョイン タイプ。

  • Inner
  • Left Outer
  • Right Outer
  • Full Outer

一致するカラムの前処理 ファジー ジョインを実行する前に、選択した 2 つの ジョイン オン (Join On) カラムに適用するテキスト前処理オプションを 0 個以上選択します。

  • テキストの正規化 (トリム、発音記号とアクセントの除去、小文字への変換)
  • 句読点を削除
  • ステム ワード (オープン Apache open-nlp ツールの Snowball Stemmer を使用: Open NLP - Snowball Stemmer ドキュメント v 1.6.0)
  • ストップ ワードをクリア (ストップ ワードのデフォルト リストまたはカスタム リストから。以下の [カスタム ストップ ワード ファイル] パラメーターを参照)
  • 単語をアルファベット順に並べ替えます (単語はスペースで区切ると別個のものとみなされます)

カスタム ストップ ワード ファイル [一致するカラムの前処理][ストップ ワードをクリア] オプションが選択されており、このボックスが空白のままの場合、標準のストップ ワード セットが使用されます。このリストは「ストップ ワード」にあります。

それ以外の場合は、ストップ ワードのリストが含まれるファイルを選択します。このリストは 1 行に 1 単語である必要があり、メモリに収まる程度の大きさでなければなりません。

ノート: 追加の前処理変換が選択されている場合、これらの変換はストップ ワードのリストにも適用されます。
ステマー アルゴリズム [一致するカラムの前処理][ステム ワード] オプションが選択されている場合に使用する語幹アルゴリズムを定義します。
  • 英語 (デフォルト)
  • ポーター
  • フランス語
  • ドイツ語
  • イタリア語
  • ロシア語
  • オランダ語
  • フィンランド語
  • スウェーデン語
  • スペイン語

英語以外の言語を使用する場合は、カスタム ストップ ワード ファイルを追加する必要があります。

一致しきい値 (%)

*必須

2 つの文字列 (前処理済みかどうか) が一致するとみなされるように、これらの文字列間の最小一致しきい値 (両端を含む) を選択します。 [0,100]の ダブル である必要があります。

文字列 A と B の間の一致しきい値は、次の式を使用して計算されます: 100.0 - (100 * Damerau-Levenshtein 距離 (A, B) / max_length(A, B))。

値 A と B の両方が Null または空の場合 (つまり、max_length(A, B) = 0 の場合)、一致スコアは 100 です。したがって、これらは一致とみなされます。

詳細については、「Wikipedia: Damerau-Levenshtein 距離」を参照してください。

右のデータセット内の重複カラムのサフィックス

*必須

左と右のデータセットから保持するカラムの名前が同じである場合、このサフィックスが右のデータセットの出力カラムに追加されます (先頭にアンダースコアが付きます)。
ストレージ フォーマット 結果を保存する形式を選択します。保存形式はオペレーターの種類によって決まります。

一般的な形式は、AvroCSVTSV、または Parquet です。

圧縮 出力の圧縮のタイプを選択します。

利用可能な Parquet 圧縮オプション。

  • GZIP
  • Deflate
  • Snappy
  • 圧縮なし

利用可能な Avro 圧縮オプション。

  • Deflate
  • Snappy
  • 圧縮なし
出力ディレクトリ 出力ファイルを保存する場所。
出力名 結果を含める名前。
出力を上書き そのパスにある既存のデータを削除するかどうかを指定します。
  • はい - パスが存在する場合は、そのファイルを削除し、結果を保存します。
  • いいえ - パスがすでに存在する場合は失敗します。
高度な Spark 設定の自動最適化
  • [はい] は、デフォルトの Spark 最適化設定の使用を指定します。
  • [いいえ] を選択すると、カスタマイズされた Spark 最適化を提供できます。 [設定の編集] をクリックして、Spark の最適化をカスタマイズします。詳細については、「詳細設定ダイアログ」を参照してください。

出力

ビジュアル出力
出力 - データ出力のプレビュー。

サマリー - 選択したパラメーターのサマリーと、結果ロケーションを示すメッセージ。

データ出力
各入力から選択されたままにするカラムを含む結合された Hadoop データセットと、一致スコアカラム (match_score)。
ノート: ジョイン カラムに対していくつかの前処理操作が選択されている場合、変換されたカラムが出力に存在します (最初の結合入力カラムではありません)。