web-dev-qa-db-ja.com

クラウドコンピューティングとグリッドコンピューティングの違いは何ですか?

Cloud ComputingGrid Computingの重要な違いは何ですか?両方の正確な定義とターゲットアプリケーションドメインとは何ですか?私は技術的な知識とともに概念的な洞察を探しています。

Windows AzureはクラウドOSのように、グリッドコンピューティング向けに何かありますか?

過去に分散コンピューティングと並列コンピューティングに取り組み、分散処理にPVMやMPIなどのライブラリを使用しました。好奇心から、グリッドコンピューティングが分散コンピューティングはインターネット上で拡張されましたか?

71

グリッドコンピューティングでは、複数のコンピューターが連携して問題を解決します。多くの場合、簡単に並列化できる大量の数値演算を伴う問題に使用されます。

クラウドコンピューティングは、アプリケーションが必要なリソースに直接アクセスするのではなく、serviceなどの方法でアクセスします。そのため、ストレージ用の特定のハードドライブや計算用の特定のCPUなどと通信する代わりに、これらのリソースを提供するサービスと通信します。サービスは、アプリケーションに提供するために、リソースの要求を物理リソースにマップします。通常、サービスは大量の物理リソースにアクセスでき、必要に応じて動的に割り当てることができます。

このように、アプリケーションが計算などの少量のリソースのみを必要とする場合、サービスは単一の物理CPU(サービスを使用する他のアプリケーションと共有できる)に少量を割り当てるだけです。アプリケーションが大量のリソースを必要とする場合、サービスはその大量、たとえばgridのCPUを割り当てます。アプリケーションは比較的これに気づかず、すべての複雑な処理と調整はアプリケーションではなくサービスによって実行されます。このようにして、アプリケーションは適切にscaleできます。

たとえば、「クラウド上」に記述されたWebサイトは、トラフィックが少ないときにサーバーを他の多くのWebサイトと共有できますが、大量のトラフィックがある場合は、専用のサーバーまたはサーバーのグリッドに移動できますトラフィックの。これはすべてクラウドサービスによって処理されるため、対処するためにアプリケーションを大幅に変更する必要はありません。

cloudは通常グリッドを使用します。グリッドは必ずしもクラウドまたはクラウドの一部ではありません。

ウィキペディアの記事: グリッドコンピューティングクラウドコンピューティング

114
jameshales
9
pavan

基本的な違いは次のとおりです。

グリッドは、コンピューティング/ストレージプラットフォームとして使用されます。

サービスを提供するときにcloudコンピューティングについて話し始めます。クラウドコンピューティングは高レベルのグリッドであると私はほとんど言うでしょう。今、これらは定義ではないことを知っていますが、おそらくそれがより明確になるでしょう。

アプリケーションドメインに関する限り、グリッドはユーザー(ほとんどの開発者)に、グリッドが提供する低レベルの機能から実際にサービスを作成することを要求します。クラウドは、アプリケーションで使用できる機能の完全なブロックを提供します。

例(特定の高さから落下するボールの物理シミュレーションを作成したい):Grid:コンピューターで物理を計算する方法を研究し、適切なコードを作成し、特定のハードウェア向けに最適化し、並列化について考え、入力を設定するアプリケーションをグリッドに送信し、回答を待つ

クラウド:ボールの直径、事前に設定されたタイプの材料、ボールが落下する高さなどを設定し、結果を求めます

グリッド用のOSを作成した場合、実際にクラウドOSを作成すると言います。

3
Stan

詳細な理解については、ウィキペディアを実際に読んでください。つまり、クラウドコンピューティングとは、リモートプラットフォームでソフトウェアをリモートで開発/実行することを意味します。これは、リモート仮想インフラストラクチャ(Amazon EC2)、リモートプラットフォーム(googleアプリエンジン)、またはリモートアプリケーション(force.comまたはgmail.com)のいずれかを使用できます。

グリッドコンピューティングとは、多くの物理ハードウェアを使用して、(広義には)単一のハードウェアであるかのように計算を行うことを意味します。これは、複数の異なるマシンで同時にアプリケーションを実行できることを意味します。

非常に正確ではありませんが、開始するには十分です。

3
Nir Levy

Gridは、複数のソースのハイエンドコンピューター、ネットワーク、データベース、科学機器をクラスター化および統合して、ユーザーが仮想組織内で共同作業できる仮想スーパーコンピューターを形成するハードウェアおよびソフトウェアインフラストラクチャです

グリッドは、学術研究などでほとんど無料で使用されています。

クラウドは、簡単に使用でき、アクセス可能な仮想化リソース(ハードウェア、開発プラットフォーム、サービスなど)の大きなプールです。これらのリソースを動的に再構成して、変動する負荷(スケール)に合わせて調整し、最適なリソース使用率を実現することができます。このリソースプールは、通常、カスタマイズされたサービスレベル契約によってインフラストラクチャプロバイダーによって保証が提供されるペイパーユースモデルによって活用されます。

クラウドは無料ではありません。さまざまなサービスプロバイダーが提供するサービスであり、作業内容に応じて課金されます。

2
ZIA REHMAN

クラウドコンピューティングはサービス指向で、グリッドコンピューティングはアプリケーション指向です。グリッドコンピューティングは、ミドルウェアを使用して仮想スーパーコンピューターを構築し、複数のリソース間で共有できる共通タスクを達成するために使用されます。ほとんどの場合、このタスクは一種のコンピューティングまたはデータストレージになります。

クラウドコンピューティングは、仮想化を使用する複数のサーバーを介してインターネット経由でサービスを提供しています。これにより、インターネット上の短時間のビジネスサービスにリソースがない場合のソリューションが得られます。

1
Pawan

この質問に対する多くの良い答えがすでにありますが、それを見る別の方法は、クラウド(ala AmazonのAWS)はインタラクティブなユースケースに適し、グリッド(ala High Performance Computing)はバッチユースケースに適しています。

クラウドは、セルフサービスを介してオンデマンドでリソースを取得できるという点でインタラクティブです。 Apache Webサーバーなどのクラウド内のVMで実行するコードは、クライアントをインタラクティブにサーバーできます。

グリッドは、いくつかのHPC機関から資格情報を取得してからジョブキューにジョブを送信するという点でバッチです。グリッドで実行するコードは、実行するのに十分なリソースがあるまで、そのキューで待機します。

両方のコンピューティングスタイルに適したユースケースがあります。

1
Everett Toews