関与スパーク分散実行コンポーネント
それぞれのアプリケーションを刺激ドライバクラスタ上の運転者によって様々な並列動作を開始するSparkContextオブジェクトアクセススパーク;ドライバ複数の管理アクチュエータノードを、SparkContext RDDによって作成することができます。
RDD(弾力性のある分散型データセット:柔軟な分散データ・セット)
RDDの特長
- スパークは、超えないのデータに対するすべての操作:RDDを作成し、変換されたRDDは、RDDの操作が評価されて呼び出します。
- RDDクラスタ、並列実行の動作に自動的に配信データをスパーク。
- スパークRDDは不変オブジェクトの分散セット
RDDのメソッドを作成する2つの方法は、
- 外部データのセットを読み込みます。として
sc.textFile("readme.md")
- オブジェクトの集合(例えば、リストのような、セット)にドライバにドライバを配布します。SparkContext並列化()メソッドの既存のセットに渡されるプログラム。この方法では、理由は、マシンのメモリにデータセット全体を配置する必要があるため、あまりないです。
(変換)変換アクション:1 - RDDは、操作の2種類をサポートしています
- 新しいRDD操作を返します。
- 多くのコンバージョンアクションのためですが、変換操作のすべての様々な要素これが好きではありません。
- 一般的な変換アクション
filter()
:受信機能、機能素子および組成物は、新しいRDD RDDを満たします。 - 一般的な変換アクション
map()
:受信機能は、機能はすべての機能で構成され、RDDの各要素に適用される新しいRDDを返します。 - いくつかの擬似コレクション操作があります。RDD最も頻繁に欠けている要素のユニークな特性の集合です。使用することができ
RDD.distinct()
、新たなRDDが異なるだけの要素が含まれて生成します。しかし、大規模な明確なオーバーヘッドは、すべてのデータがネットワークシャッフル(シャッフル)を通過する必要があるため。
操作アクション(行動):II - RDDは、操作の2種類をサポートしています
- ドライバプログラムに結果または外部システムの書き込み動作の結果を返し、実際の計算をトリガします。デフォルトでは、RDDのスパークは、毎回、彼らが動作しているアクションを再計算されます。あなたは同じRDDを再利用したい場合は、複数のオペレーティング・アクションを使用することができます
RDD.persist()
RDDのキャッシュされた(永続化)へ。 - そこRDDは
collect()
全体RDDのデータを取得するために使用することができますが、これはRDDデータが小さくなっている必要があり。 - 一般的なアクション機能
reduce()
:パラメータとして受信機能、2つのRDDデータの同じ種類を操作すると、同じタイプの新しい要素を返す関数。簡単な例では、「+。」機能であります - そのようなものとして
count()
RDDは、操作の2種類をサポートしています - 関連
- RDDさまざまな方法を計算する:へ変換動作とアクションとの間の差のみスパーク遅延評価RDD:唯一のアクション操作で初めて使用されたすべての変換動作のすなわち変換作用及び動作を、計算は実際に関連するであろう。
- 遅延評価:「我々は変換操作によって構築するRDDは、計算方法のデータ記録、好ましくはRDDのそれぞれを特定のデータセットのデータを格納し、として見られるべきではない命令リストを」