HPCC (High Performance Computing Cluster) はビッグデータ (Big Data)の課題を解決するオープンソースの大規模並列処理コンピューティングプラットフォームだ。彼らは今週、EC2上で利用可能なData Delivery Engineを開発したことを発表した。そのアーキテクチャはData Refinery Cluster (Thor) と Query Cluster (Roxie) で構成されている。
HPCCのシステムアーキテクチャは、ThorとRoxieというクラスタ、そして共通ミドルウェアコンポーネント群、外部コミュニケーション層、エンドユーザサービスとシステムマネジメントツールを提供するクライアントインターフェイス、モニタリングを支援して外部ソースからのファイルシステムデータのロード・ストアを手助けする付属コンポーネントによって構成されています。
Thorの責務は、膨大なデータの取り込みと、そのデータを変換し、連結し、インデックスを作成することだ。これは複数のノードによる並列処理能力を備えた分散ファイルシステムとして機能する。その1つのクラスタは単一ノードから何千ものノードまでスケール可能だ。Roxie (Query Cluster) は独立したハイパフォーマンスなオンラインクエリ処理とデータウェアハウス機能を提供する。
ThorとRoxieはどちらも抽出、変換、ロード、ストア、インデックス作成、連結のために最適化された並列処理プログラミング言語 (ECL - Enterprise Control Language) に基づいている。これは「暗黙的な並列化」、非手続き型、データフロー指向の言語だ。データ表現とアルゴリズム実装を組み合せることができ、C++ライブラリで簡単に拡張することができる。
HPCCはまたESP (Enterprise Services Platform) も提供しており、ECLクエリに対するXML、HTTP、SOAP、RESTといったインターフェイスを提供する。アクセスモデルはSAMLに基づいている。
HPCCにはHadoopに対する大きな差異化要素がいくつかある。
- Enterprise Control Language。これには暗黙的な並列化、宣言型、そしてJOIN、TRANSFORM、PROJECT、SORT、DISTRIBUTE、MAPなどのハイレベルなプリミティブが含まれる。
- HPCCは複数のデータタイプ(固定および可変長区切りレコードとXMLを含む)を統合、サポートしている。
- データモデルはユーザが定義し、厳格なキー/バリューパラダイムの制約を受けない。
- Hadoop MapReduceの場合、複雑なデータ変換のほとんどすべてに順次実行されるMapReduceサイクルが必要になるが、HPCCではそういうことはない。
その先進性、スケーラビリティ、最終的には巨大なデータを処理して問い合わせたいという願望が火付け役となり、ビッグデータというソリューションは急速に進化し続けている。NPRですらビッグデータを取り上げている! あなたはビッグデータプロジェクトに参加したことがあるだろうか?あなたの見解はどうだろうか? ビッグデータはどうなるとみているだろうか?