Sparkは、高速で汎用的なクラスタコンピュータシステムであり、次の特長があります。
様々なAPIの提供
Java、Scala、PythonおよびRのAPIを提供しており、様々な言語での開発を支援しています。
充実したツール
構造化されたデータを処理するSpark SQL、機械学習ライブラリであるMLlib、グラフ処理を行うGraphX、およびストリームデータ処理を行うSpark Streamingを含む、高レベルで充実したツールをサポートしています。
特長・機能の詳細については「Sparkマニュアル http://spark.apache.org/docs/1.4.1/index.html」を参照してください。
ポイント
本製品では、Sparkのバージョン1.4.1との連携を対象に動作確認しています。
Sparkの構成
Sparkで動作するアプリケーションやサービスの構成を図に示します。
Sparkクラスタ内のリソース管理やWorkerノードの状態を管理します。
Sparkクラスタで実行するアプリケーションに必要なCPU、メモリなどのリソースを提供します。
Spark SQLのテーブル定義やパーティション定義などのメタデータをリレーショナルデータベースに格納し永続化するためのサービスです。
Sparkクラスタにアプリケーションを配備し、ジョブの実行を要求します。
Spark SQLで使用するメタデータを格納するためのデータベースです。