Hadoop および Spark プロジェクトのプラットフォームとして IBM Open Platform を選択する

この成熟した Apache Hadoop および Apache Spark ディストリビューションの詳細を探る

Comments

2006 年に Apache Hadoop が登場した当時、このプロジェクトは IT の歴史上、最も画期的で革新的なテクノロジーの 1 つとして数えられていました。現在、ビッグデータの価値を認識する組織が増える中、主流のビジネスに対して Hadoop が持つ意味は、これまでになく大きくなっています。Apache Spark などの新しいオープンソース・プロジェクトの出現により、Hadoop エコシステムは今や、企業がビッグデータを活用できるよう支援する、より迅速でよりリッチなアナリティクス・ツールを提供するようになっています。

IBM Open Platform (IOP) には、Hadoop、Spark、ビッグデータに関する IBM の深い専門知識によって支えられた一連のオープンソース・コンポーネントが組み込まれています。ODPi に準拠し、私たちが最良の組み合わせだと確信するコンポーネントの数々からなる IOP は、最も一般的なビッグデータの使用ケースを網羅した、包括的な機能を提供します。

この記事では、IOP ディストリビューションと、そのコンポーネントをいくつか取り上げて説明します。後続の記事で、IBM サブジェクト・マター・エキスパートが特定の Apache Hadoop プロジェクトおよび関連する使用ケースについてさらに詳しく説明します。

IOP ディストリビューションに含まれるコンポーネントを探る

図 1 に示すように、IOP ディストリビューションには以下をはじめとする機能とコンポーネントが組み込まれています。

  • 処理: Spark、MapReduce
  • 統合: Sqoop、Flume、Kafka
  • ストレージ: HDFS
  • セキュリティー: Ranger、Knox
  • スクリプト: Pig
  • 検索: Solr
  • 管理: Ambari、YARN、Oozie、Slidr
  • データ・サイエンス: System ML、Hydra R、Spark R、Titan
  • SQL および NoSQL: Phoenix、HBase、Hive

図 1 に、現時点で組み込まれているコンポーネントとコンポーネント間の相互関係を示します。

図 1. IBM Open Platform: Hadoop および Spark ディストリビューション
中央の Spark と MapReduce をその他のコンポーネントが囲む円を示す図
中央の Spark と MapReduce をその他のコンポーネントが囲む円を示す図

IOP の各コンポーネントの詳細を学ぶ

このセクションでは、IOP のコンポーネントをいくつか取り上げ、データ処理におけるそれぞれの価値について説明します。

Apache Spark によるスピードと柔軟性

処理時間を短縮すると同時に、より深くよりリッチなアナリティクスを実現することを目的に、IBM Open Platform には Apache Spark が組み込まれています。Apache Spark は、ほぼ間違いなく、現在のエコシステム内で最も大きな話題となっているテクノロジーであり、多くの人々は Hadoop の将来は Apache Spark にあると確信しています。Spark は、ビッグデータのアナリティクスと開発を容易にするよう意図された、オープンソースのインメモリー計算エンジン兼アナリティクス・プラットフォームです。Spark をとりわけ有名にしているのは、そのスピード (インメモリー処理により、他のビッグデータ・テクノロジーの 100 倍の処理速度を実現) と使いやすさ、そしてさまざまなプログラミング環境で動作する柔軟性です。Spark によって実質的にサイロはなくなり、誰もがどこからでもデータにアクセスできるようになると同時に、データへのアクセスに必要となるツールの数も減ります。モノのインターネットや将来のあらゆるテクノロジーを利用するために構築される新世代のデータ・アプリケーションは、Spark でサポートすることができます。

Spark では、アナリティクスやその他のアルゴリズムによる複雑なデータ変換をメモリー内で実行できるため、中間ジョブの結果をディスクに書き込む必要がありません。したがって、結果を出すまでの時間が短縮されます。この仕組みにより、以下のことが可能になります。

  • バッチ・プロセスや ETL プロセスの高速化
  • 多数のデータ・ソース上でマイクロバッチをストリーミング処理する、ほぼリアルタイムのアナリティクスの実行
  • 組み込み機械学習ライブラリーを利用した、予測モデルの作成
  • 非構造化データに対する SQL クエリーの実行

Apache Hive クエリー言語による長期間にわたるアナリティクス

長時間にわたって実行され、それほど時間に依存しないアナリティクスの使用ケースについては、Apache Hive が Hadoop とのやり取りの複雑さを軽減します。Hive は直感的な宣言型クエリー言語であり、MapReduce ジョブを作成する必要性を軽減するため、Java プログラマーではないデータ・サイエンティストにとって扱いやすい言語となっています。傾向の計算や要約の作成など、長期間にわたって収集される大規模なデータ・セットに対するクエリーを実行するには、Hive は理想的な選択肢です。

Apache HBase による高速クエリー

時間に依存し、データの書き込みと読み取りが伴うクエリー、トランザクション、ジョブには、Apache HBase が極めてスケーラブルな手法を可能にします。大規模なデータ・セットであっても、Apache HBase はキーと値のペアに基づく NoSQL ストアにデータを保持し、データへのアクセスと書き込みを極めて高速化します。

HBase 用 SQL フロントエンドとしての Apache Phoenix

HBase にハイパフォーマンスの SQL フロントエンドを追加する Apache Phoenix により、さらに幅広いプログラマーとデータ・サイエンティストが HBase を使用できるようになります。

Titan による複雑なネットワークの分析

Titan を利用すると、複雑なネットワーク内のノード間の関係を極めて効率的に分析できます。ソーシャル・ネットワークや通信の事例を含め、数千、あるいは数百万もの人々やデバイスが各種のつながりを共有する場合は、効率的な分析を可能にすることが非常に重要となります。

Apache Oozie によるスケジューリング

Apache Oozie は、特定の時間や特定の条件 (新しいデータが利用可能になった場合など) に基づいて実行する Hadoop ジョブをトリガーするためのスケジューラーです。

Apache Flume によるデータ・ストリームのフィード

シームレスな統合機能を提供する Apache Flume を使用して、Hadoop クラスターのデータ・ストリームをフィードするパイプラインを作成できます。

IBM BigInsights によるアプリケーションのスケーリング

オンプレミスとクラウドに用意されている IBM の Hadoop オファリングは、アナリティクスとアプリケーションの迅速かつ簡単なスケーリングを可能にする、エンタープライズ・クラスの追加機能を提供します。IBIM はこれらの機能を常に開発し続けています。最新バージョンの IBM BigInsights 4.2 は、2016 年 6 月にリリースされました。

まとめ

確固たるアナリティクス戦略を策定するために必要な柔軟性とサポートを手に入れるには、正しいディストリビューションを選択することが鍵となります。最新の有用なオープンソース・テクノロジーを組み込むために、IBM Open Platform ディストリビューションを構成するコンポーネントの一覧は今後も拡充されていきます。ibm.com/analytics/us/en/technology/biginsights にアクセスして、IBM Open Platform と IBM のその他の Hadoop オファリングの詳細を調べてください。


ダウンロード可能なリソース


関連トピック


コメント

コメントを登録するにはサインインあるいは登録してください。

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=ビジネス・アナリティクス
ArticleID=1041329
ArticleTitle=Hadoop および Spark プロジェクトのプラットフォームとして IBM Open Platform を選択する
publish-date=01192017