DUICUO

テンセントはグラフコンピューティングフレームワーク Plato を正式にオープンソース化し、数十億のノードによる分レベルのグラフコンピューティングの時代を切り開きました。

テンセントオープンソースが再び大型プロジェクトを発表しました。14日、テンセントは高性能グラフコンピューティングフレームワーク「Plato」のオープンソース化を正式に発表しました。これは、わずか1週間でオープンソース化された5番目の大型プロジェクトとなります。

現在世界中で利用可能な他のグラフコンピューティングフレームワークと比較して、Platoは数十億ノード規模の超大規模グラフコンピューティングのニーズに対応し、アルゴリズムの計算時間を数日から数分に短縮します。そのパフォーマンスは、他の主流の分散グラフコンピューティングフレームワークを総合的に凌駕し、従来数百台のサーバーを必要としていたリソースのボトルネックを打破します。現在、計算を完了するには最低10台のサーバーが必要です。

テンセント・プラトチーム責任者の于東海氏は次のように述べています。「プラトは、特にテンセントの膨大なソーシャルネットワークグラフデータの様々な計算をサポートすることで、WeChatを含むテンセント内の多くの中核事業を強化しました。プラトは、既存のコンピューティングフレームワークが限られたリソースと時間で計算を完了できない問題を解決しました。プラトはテンセントに莫大なビジネス価値をもたらしただけでなく、オープンソース化された後もグラフコンピューティング技術と業界の共同開発を促進し、イノベーションを加速させ続けるでしょう。」

実は、グラフコンピューティングにおける「グラフ」とは、通常の画像や写真ではなく、オブジェクト間の関係性を表現するための抽象的なデータ構造を指します。グラフコンピューティングとは、グラフをデータモデルとして用いて問題を表現・解決するプロセスです。グラフコンピューティングは、異なるソースや異なる種類のデータを単一のグラフに統合して分析することができ、個別の分析では発見が難しい結果を得ることができます。そのため、ソーシャルネットワーク、レコメンデーションシステム、サイバーセキュリティ、テキスト検索、バイオメディカルなどの分野において、重要なデータ分析・マイニングツールとなっています。

Platoは、テンセント社内のグラフコンピューティングチームであるTGraphが社内リソースを統合して独自に開発した高性能グラフコンピューティングフレームワークです。Platoという名前は、偉大な数学者プラトンに敬意を表して付けられました。現在、Tencent CloudのビッグデータチームがPlatoのパッケージ化を進めており、まもなくすべての開発者に提供される予定です。

Platoは、市場で最も先進的なグラフコンピューティングフレームワークであるSpark GraphXを1~2桁上回る、極めて強力なコンピューティング性能を誇ることが分かっています。アルゴリズムの計算時間を数日から数分に短縮し、パフォーマンスを数十倍向上させ、グラフコンピューティングが分単位の時代に本格的に突入しました。もう一つの重要な利点は、Platoが主流のグラフコンピューティングフレームワークに比べてメモリ消費量が大幅に少なく、Spark GraphXと比較してメモリ消費量を1~2桁削減していることです。超大規模グラフ計算を完了するために必要なのは10台程度のサーバーからなる小規模から中規模のクラスターのみで、従来の数百台規模のサーバーを必要とする制限と比較して、リソースの圧迫とコンピューティングコストを大幅に削減します。

現在、Platoは主に2つのコア機能を提供しています。テンセントのデータボリュームレベルでのオフライングラフ計算と、テンセントのデータボリュームレベルでのグラフ表現学習です。PlatoはKubernetesやYARNなどのリソーススケジューリングプラットフォームとの互換性も備えており、主流のファイルシステムをサポートする複数のインターフェースを提供することで、開発者にとってよりユーザーフレンドリーなランタイム環境を提供します。

アーキテクチャ設計の観点から見ると、Platoフレームワークの中核は適応型グラフ計算エンジンです。適応型計算モード、共有メモリ計算モード、パイプライン計算モードなど、様々なグラフアルゴリズムに基づいて、開発者が選択できる複数の計算モードを提供します。さらに、新しい計算モードと通信モードの統合をサポートするために設計されたインターフェースを備えています。

プラトン全体アーキテクチャ図

Platoは、コンピューティングエンジンの上に、アルゴリズム設計者と特定のビジネスアプリケーション向けに多層インターフェースを提供します。基盤となるAPIからグラフアルゴリズムライブラリ、そして特定のビジネスニーズに合わせてカスタマイズされた「ソリューション」、つまりグラフツールセットまで、多岐にわたります。これらのアプリケーション層のインターフェースとツールを通じて、Platoはオフラインコンピューティングの結果を他の機械学習アルゴリズムと組み合わせ、さまざまなトップレベルのビジネスアプリケーションを共同でサポートすることもできます。

Platoのアルゴリズムライブラリには現在、グラフ特徴、ノード中心性指標、連結グラフ、コミュニティ識別など、多くのアルゴリズムが含まれており、これらはすべてオープンソースです。今後、さらに多くのアルゴリズムがオープンソース化される予定です。

Platoは、その高いパフォーマンス、スケーラビリティ、そしてプラグイン性により、ソーシャルネットワーク、レコメンデーションシステム、そしてバイオメディシンといった分野への応用が期待されています。例えば、影響力に基づいてウェブページを定期的にランキング付けすることでユーザーの検索体験を向上させたり、大規模ソーシャルネットワークの構造を分析してユーザーにサービスを正確に推奨したり、サブグラフマッチングを通じてタンパク質間相互作用を理解し、より効果的な臨床医薬品を開発したりといった用途に活用できます。

昨年9月30日の組織再編以降、オープンソースはテンセントの技術開発における重要な戦略となり、主要プロジェクトが相次いでオープンソース化されています。先週開催されたTecho Developer Conferenceでは、テンセントはTubeMQ、Tencent Kona JDK、TBase、TKEStackの4つの主要プロジェクトを同時にオープンソース化すると正式に発表しました。Platoのオープンソース化により、テンセントはオープンソース分野において新たな大きな一歩を踏み出しました。報道によると、テンセントはすでにGitHubで86のプロジェクトをオープンソース化し、1,000人以上の貢献者と25万以上のスターを獲得しており、オープンソースへの貢献度において世界トップ10企業にランクインしています。

Plato オープンソース アドレス: https://github.com/tencent/plato