SparkのTalend Data Mapperとの使用
Apache Spark (別称「Spark」)は、Talend Data Mapperで大型の入力ファイルを扱う場合に便利です。Sparkでは変換作業の前にファイル全体をメモリにロードせずにファイルをストリームしてマッピングを処理するため、そのスピードを十分に活用できます。
大型の入力ファイルのインポート時にSparkとTalend Data Mapperの機能を一緒にテストする場合は、いかに簡単にそのテストを実行できるかこのシナリオでわかります。
Apache Sparkの詳細は、http://spark.apache.org/で公式ドキュメンテーションをご覧ください。Talend Data Mapperの詳細は、『Talend Data Mapperユーザーガイド』を参照してください。
前提条件
Talend Studioには、ジョブを実行できるローカルのSpark (バージョン1.3.0以降)環境が含まれています。ジョブをローカルにテストする場合は、インストールされているStudioのバージョンが6.5以降であることを確認してください。
次のシナリオを正常に実行できるよう、設定可能な環境の例を示します。
- Google Cloud PlatformにおけるCentos 7.xサーバーの3つのインスタンス: Cloudera 5.13がクラスターとしてインストールされており、Hadoop Distributed File System (HDFS)とSparkサービスが有効になっていること
- Windows 10クライアント
Hadoopクラスターへの接続
Talend Data Mapperストラクチャーの作成
ビッグデータバッチジョブの作成
Hadoopクラスターとストラクチャーを作成した後は、tHDFSConfiguration、tHMapInput、tLogRowという3つのコンポーネントを含んでいるビッグデータバッチジョブをデザインします。
手順
マップのテストとジョブの実行
トラブルシューティング
サンプルシナリオの実行中にエラーが発生した場合は、ジョブが正常に実行できるソリューションをいくつか参照してください。
Clouderaの不正な設定: Clouderaでは、クラスターが同製品の内部用FQDN (完全修飾ドメイン名)で設定されてしまうことがあります。これが該当する場合は、接続エラーを回避できるよう、お使いのホストファイルに追加操作を行う必要があります。
それを実行するには、C:\\Windows\System32\drivers\etcに移動し、管理者としてホストファイルを開きます。次に、お使いのクラスターの外部IPアドレスと内部FQDNを追加します。ファイルを保存します。
以上の操作によって、Clouderaが内部FQDNを使用するようになります。
-
ビッグデータバッチジョブに共通するエラー:Talend Studioとは異なるサーバーに存在するHadoopクラスターに接続している場合、次のエラーは無視して構いません。このエラーは、Sparkワーカーをローカルに実行するwinutilsを探すだけのものです。このエラーが発生しないようにするには、winutilsをダウンロードして抽出します。その抽出先をHadoopのホームディレクトリーとして設定します。