MapReduceの制限
適切な「旅」の演算操作
シンボル組み合わせて、ネストされた操作が難しいです
これは、反復を表現することができません
========
コピー、直列化、ディスクIOのためには、低速のMapReduceにつながります
複雑なアプリケーション、ストリーム・コンピューティング、内部クエリの有効データのmaprecude不足共有と遅いので、
======
反復は、すべてのコピーディスクIOを必要としています
内部問い合わせやオンライン処理のニーズディスクIO
========スパーク目標
パフォーマンスを向上させるために、メモリ内のより多くのデータを保存
より良いサポートするように拡張maprecudeモデル2つの一般的なアプリケーションの分析:1、反復アルゴリズム(機械学習、図)2、内部データマイニング
強化抵抗がコードし得る:1、複数のライブラリのAPI、より少ないコードを2
======
スパーク作曲
スパークSQL、スパークstraming(リアルタイム)、graphx、mllib(meachine学習)
======
あなたはいくつかのモードで実行するためにそれを使用することができます。
そのスタンドアロンクラスタモードで
在Hadoopの糸
在Apacheのヶ月
在kubernetes
雲の上での生活
==========
出典:
1、ローカルファイルfile:/// OPT / httpdの/ログ/ access_logの
2、アマゾンS3
3、hadooop分散ファイルシステム
4、HBaseの、カサンドラ、等
===========
スパーククラスタクラスタ
============
スパークワークフロー
第SparkContextオブジェクト生成(1、スパーク方法と場所クラスタアクセスする言う;、2クラスタマネージャの種類を接続するために、egYARN、Mesos、それ自体)
その後、リソースを割り当てるために、クラスタ管理を使用
スパーク実行者が最後の演算処理を実行するために使用され、読み取りデータブロック
==============
労働者と経営幹部のノード
エグゼキュータワーカーノード(各作業者が複数のエグゼキュータを生成することができる1、作業者又はJVMプロセスのそれぞれ、2)マシンを実行することです
エグゼキュータはタスク(サブJVM 1、ラン、2は、スレッドプール内の1つのまたは複数のタスクを実行する)を実行することができます
=========
ソリューション:弾力性のある分散型データセット
弾力性のある分散型データセット
=========
RDD操作
変換:マップ、フィルタ、flatMap、groupByKey、reduceByKey、aggragateByKey、フィルタ、参加:新しいRDD、機能を含むを返します。
アクション:新しい評価と戻り値、RDDオブジェクトはアクションメソッドを呼び出すと、クエリを処理するすべてのデータが同時に計算されるが、結果の値が返され、含みます
まず、カウント、収集、削減、取る、countByKey、foreachの、saveAsTextFile
============
RDDの使い方
図1は、データ・ソースは、(2、RDD変換;、リストの既存のセットを使用して、1アレイシステムHDFSから3、または他のデータ)RDDで生成されます
図2に示すように、変換用いRDD
3、RDDを使用して操作
=======
RDDの生成
HDFSから、テキストファイル、アマゾンS3、HBaseの、文書のシリアル番号、他の入力フォーマットのHadoop
(// RDDからファイルを生成します
JavaRDDの<string> DISTFILE = sc.textFile( "data.txtを"、4)// 4つの分割RDD
)
(// RDDコレクションから作成
リスト<整数> =データは、Arrays.asList(1,2,3,4,5)。
distData = sc.parallelize JavaRDD <整数>(データ)。
)
========