[目次] [1ページ目] [前ページ] [次ページ]
( 4 / 9 )

4.GRIDとCORBAの違い

    【松澤】
     多分、今のお話は、後で討論になるかもしれません。それ以外の観点で、今までの報告、話題提供につきましてご質問がありましたらお願いいたします。

    【水本】(国立天文台天文学データ解析計算センター)
     関口さんと森田さんに対する質問なのですが、関口さんの発表の中で、よく聞かれる質問の中に、GRIDとCORBA、どう違うのかという話があり、GRIDのいわゆる概念モデル等を見ていくと、CORBAで書かれているものとほとんど同じです。CORBAとGRIDの違いは、高速ネットワークがあるか、それともローカルネットワークに閉じているか、絵で見るとそれだけの違いだと感じていますが、これは当然違うと思いますので、それを1番目の質問にしたいと思います。
     もうひとつは森田さんの発表の中に、いわゆる分散環境での解析システムというところの分散環境というのは、森田さんのお話では、それがworld wide、地球上全体のという感じだと思うのです。私どもが、すばる望遠鏡で研究するとき、沢山ある計算機を有効に使うことを目的に、やはり分散環境の解析システムを作ろうと思い、5年くらい前からいろいろ進めているのですが、なかなか難しい問題があります。その難しさというのは、やはりGRIDでも同じことが起こるのではないかと思っていまして、分散解析環境をGRIDで本当に上手くできるのというか、できる見通しがあるかという質問です。

    【関口】
     最初のご質問のGRIDとCORBAの違いということですが、ご指摘のように、ものごとを分散させてそれぞれに共通のインタフェースを定義するのですが、それぞれがAPI(Application Program Interface)であるとか、IDL(Interface Definition Language)で記述し、それぞれのモジュールを有効利用しようという意味では、CORBAもGRID的であると思いますし、GRIDはCORBAよりも後に出てきていますので、分散コンピューティングのフレーム枠は、当然GRIDの中に入っている訳です。では、何が違うのというと、その答えは難しいのです。
     GRIDにおいては重要なことなのですが、例えばモジュールのsecurityの認証に関して、あるモジュールと別の全然違うモジュールとで、お互いに共通利用できるかというと、CORBAは残念ながら独自の世界となってしまうのです。
     そしてもうひとつですが、GRIDでは、CORBAで上手くいっていた世界というのは当然包含されているのですけれども、そうでなかった世界もあるのです。例えば、科学技術計算ですが、我々が開発してきたNinfというシステムがございます。これはそのGRID上でのRPC(Remote Procedure Call)を定義しているものでございますが、そのようなRPCという意味で言えば、CORBAも非常に似ている部分があります。どちらもRemote Method Invocationをするという意味では非常に近いのです。しかし、CORBAではこちらでもっているマトリックスのデータを相手側サーバに送るとき、元々こちらで規定しているサイズでそっくりそのまま、しかも、それは馬鹿みたいに無駄なものを送ってしまうのです。ここのところは、ダイナミックに必要な分量を、インタフェースを見て、そして、マーシャリングを行ってからデータを送ることを行わないと高性能には結びつかないのです。このように、CORBAは、概念的には非常に近いのですが、インプリメンテーションという意味での違いがあるのです。特にGRIDのコミュニティでは、CORBAだけでは不十分であったという認識に基づいて、新たなプロトコルを定義しています。
     ですから、非常に親戚ではあるとは思うのですが、その目的や使っている場所が違うということと、そのオプティマイズの考え方が違うところで、今は別のものとされています。しかし、CORBAも、そのモジュールのレガシーなコードをどうやってラッピングして、GRIDの中にもってくるかという議論が今いろいろされていますので、そのような意味では、そんなに離れていないと思います。

    【森田】
     高エネルギーの立場から水本さんのご質問にお答えします。
     高エネルギーの世界で一番特徴的なのは、実験グループのコラボレーションのあり方だと思うのです。巨大な加速器を作って、検出器そのものも巨大であるということ自身は、実は、その規模から言えば、すばる望遠鏡であるとかハッブル望遠鏡とそんなに隔たりはないと思うのです。一番の違いは、論文を書くときに、ひとつの実験グループとして論文を書くことではないかと思います。例えば、現在でもひとつの論文に、1000人規模で著者の名前が並んでいます。これが学問的に正しい方法であるかどうかはさて置き、この分野では、そのような形でひとつのグループとして実験を遂行するのだということが非常に根強く定着してます。
     このように、天文の世界とは若干違うと言いますか、すばる望遠鏡にしても、ハッブル望遠鏡にしても、作るときには、非常に沢山の人が働き、非常に努力して作られているわけですが、それと同じようなことを高エネルギーの世界でも行っているわけです。ただ、それをひとつのプロジェクトとして、それに参加している人たちが、たまたま世界中に分散しているということなのです。
     つまり、世界中に分散していても、それはひとつのグループとして、協調的に解析を進めないといけないということなのです。先ほどの私の話題提供の中のスライドで、競争と協調ということを、どうバランスをどっていくかという話をしました。そのようなことが言いたかったわけなのです。ひとつのグループの中で、ひとつの結果、ひとつの論文を出す。もちろん論文のテーマは沢山ありますので、それぞれについてひとつの論文を出すのですが、そのグループの中でも、競争はもちろんあります。それぞれアイデアを出し合って、誰のアイデアが生き残っていくかというのは、グループの中では非常に重要な話ですが、外部から見たら、それはATLASならATLAS、CMSならCMSでの、ひとつの結果でしかないのです。
     世界規模の分散システムを構築するということは、実は、加速器を作るとか、実験装置を作ることと同じで、あるひとつの実験システムのためのインフラストラクチャを作ることと同じことなのです。その構築のために、皆が分担して、お互いの仕事を分け合うのです。例えば、ヨーロッパでデータの解析を行うとか、アメリカでデータの解析を行う、あるいは、日本でデータの解析を行うといったように、それぞれの環境をそれぞれが作る努力をし、それぞれの場所で協調して行われているのです。そのような意味では、高エネルギーの分散環境は非常に特徴的なものがあるのではないかと思います。
     逆にその立場で、天文学を見てみますと、例えばハッブル望遠鏡にしたら、あるひとつの研究所を作って、そこにいろいろな研究者が世界中から集まってくるというようなモデルもあると思います。あるいは、すばる望遠鏡にしても、あるデータの集約効果と言いますか、それぞれひとりひとりの研究者がどのような研究をするかというのと、それがどのような形で論文になっていくかについても、望遠鏡を作るのと同じようにデータ解析の環境を作るという動きも、今後一般的になっていくのかなと考えております。

    【水本】
     ありがとうございました。大体、私の考えていることと似たようなところだったので私たちが見当違いのことを考えていたのではないなと安心しました。


[目次] [1ページ目] [前ページ] [次ページ]