Hadoopを使用したApacheSpark –なぜそれが重要なのですか?



トップ企業によるHadoopを使用したApacheSparkの大規模な実装は、リアルタイム処理に関して成功とその可能性を示しています。

それ自体がプラットフォームとなるデータ処理フレームワークであるHadoopは、優れたコンポーネントが接続されているとさらに優れたものになります。 HadoopのMapReduceコンポーネントなど、Hadoopのいくつかの欠点は、リアルタイムのデータ分析が遅いという評判があります。





バッチワークロードとストリーミングワークロードの両方のために設計されたHadoopベースのデータ処理エンジンであるApacheSparkを入力してください。現在、1.0バージョンであり、Hadoopに含まれるようにプッシュされている作業の種類を例示する機能が装備されています。 Sparkは既存のHadoopクラスター上で実行され、拡張された追加機能を提供します。

Sparkの主な機能と、HadoopおよびHadoopとの連携方法を見てみましょう。



Apache Sparkの主な利点:

img2-R

Sparkのすばらしい機能:

  • Hadoop統合 – Sparkは、HDFSに保存されているファイルを処理できます。
  • Sparkのインタラクティブシェル – SparkはScalaで記述されており、独自のバージョンのScalaインタープリターがあります。
  • SparkのAnalyticSuite – Sparkには、インタラクティブなクエリ分析、大規模なグラフ処理と分析、およびリアルタイム分析のためのツールが付属しています。
  • 復元力のある分散データセット(RDD) – RDDは、計算ノードのクラスター全体でメモリ内にキャッシュできる分散オブジェクトです。これらは、Sparkで使用される主要なデータオブジェクトです。
  • 分散演算子 – MapReduceの他に、RDDで使用できる他の多くの演算子があります。

HadoopでApacheSparkを使用する利点:

人工知能コースの前提条件
  • Apache SparkはHadoopオープンソースコミュニティに適合し、 Hadoop分散ファイルシステム(HDFS)の上に構築します。 ただし、Sparkは2段階のMapReduceパラダイムに縛られておらず、特定のアプリケーションではHadoopMapReduceよりも最大100倍高速なパフォーマンスを約束します。



  • 機械学習アルゴリズムに最適 – Sparkは、ユーザープログラムがクラスターのメモリにデータをロードして繰り返しクエリできるようにするインメモリクラスターコンピューティング用のプリミティブを提供します。

  • 100倍速く走る – Sparkの分析ソフトウェアは、Hadoopデータ処理プラットフォームで実行されるジョブを高速化することもできます。 「Hadoopスイスアーミーナイフ」と呼ばれるApacheSparkは、標準のApache HadoopMapReduceで実行されるジョブよりも100倍高速に実行できるデータ分析ジョブを作成する機能を提供します。 MapReduceは、バッチモードでジョブを実行するため、Hadoopクラスターのボトルネックとして広く批判されています。つまり、データのリアルタイム分析は不可能です。

  • MapReduceの代替– SparkはMapReduceの代替手段を提供します。 5秒以内の間隔でマイクロバッチの短いバーストでジョブを実行します。また、TwitterStormなどのリアルタイムのストリーム指向のHadoopフレームワークよりも安定性が高くなります。このソフトウェアは、ライブデータの継続的な分析や、ソフトウェアライブラリのおかげで、機械学習やグラフ処理を含むより計算量の多いジョブなど、さまざまなジョブに使用できます。

  • 多言語のサポート – Sparkを使用すると、開発者は80を超える高レベルの演算子のセットを使用して、Java、Scala、またはPythonでデータ分析ジョブを作成できます。

  • ライブラリサポート – Sparkのライブラリは、Hadoopの最新の商用サポートされたデプロイメントで、より積極的に調査されている処理ジョブのタイプを補完するように設計されています。 MLlibは、単純ベイズ分類やクラスタリングなど、多数の一般的な機械学習アルゴリズムを実装しています。SparkStreamingは、複数のソースから取り込んだデータの高速処理を可能にし、GraphXはグラフデータの計算を可能にします。

  • 安定したAPI –バージョン1.0では、Apache Sparkは安定したAPI(アプリケーションプログラミングインターフェイス)を提供します。これを使用して、開発者は独自のアプリケーションを介してSparkと対話できます。これは、HadoopベースのデプロイメントでStormをより簡単に使用するのに役立ちます。

    インフォマティカにおける能動的および受動的変換
  • SPARKSQLコンポーネント –構造化データにアクセスするためのSpark SQLコンポーネント。分析作業で、非構造化データと一緒にデータを問い合わせることができます。現時点ではアルファ版のみであるSparkSQLを使用すると、ApacheHiveに保存されているデータに対してSQLのようなクエリを実行できます。 SQLクエリを介してHadoopからデータを抽出することは、Hadoopの周りに出現するリアルタイムクエリ機能のさらに別のバリエーションです。

  • ApacheSparkとHadoopの互換性[HDFS、HBASE、YARN] – Apache Sparkは、Hadoopの分散ファイルシステム(HDFS)と、YARN(Yet Another Resource Negotiator)やHBase分散データベースなどの他のHadoopコンポーネントと完全に互換性があります。

業界の採用者:

Cloudera、Pivo​​tal、IBM、Intel、MapRなどのIT企業はすべて、SparkをHadoopスタックに組み込んでいます。 Sparkの開発者の何人かによって設立された会社であるDatabricksは、ソフトウェアの商用サポートを提供しています。とりわけYahooとNASAはどちらも、日常のデータ操作にこのソフトウェアを使用しています。

結論:

Sparkが提供するものは、Hadoopのユーザーと商用ベンダーの両方にとって大きな魅力となるはずです。 Hadoopの実装を検討していて、Hadoopを中心に多くの分析システムをすでに構築しているユーザーは、Hadoopをリアルタイム処理システムとして使用できるというアイデアに惹かれます。

Spark 1.0は、独自のアイテムをサポートまたは構築するための別のさまざまな機能を提供します。実際、Hadoopの3大ベンダーの1つであるClouderaは、ClouderaEnterprise製品を介してSparkの商用サポートをすでに提供しています。 Hortonworksは、HadoopディストリビューションのコンポーネントとしてSparkも提供しています。トップ企業による大規模なSparkの実装は、リアルタイム処理に関して、その成功と可能性を示しています。

質問がありますか?コメントセクションでそれらに言及してください。折り返しご連絡いたします。

関連記事:

改行を挿入するためのhtmlタグ