分散コンピューティングは、さまざまな動作場所に多数のリソースを使用して、1台のコンピューターのプロセスを模倣するプロセスです。分散コンピューティングは、さまざまなコンピューター、サーバー、コンピューター・ネットワークを組み立てて、規模や目的が大きく異なるコンピューティング・タスクを実現します。
分散コンピューティングはクラウドでも機能します。分散クラウド・コンピューティングとクラウド・コンピューティングは理論的には本質的に同じですが、実際には世界的な展開が異なり、分散クラウド・コンピューティングは異なる地域にクラウド・コンピューティングを拡張することができます。
コンポーネントが互いに近い小規模の分散コンピューティング・システムでは、コンポーネントはローカル・エリア・ネットワーク(LAN)を介してリンクされます。一方、コンポーネントが地理的に分離されている大規模な分散システムでは、コンポーネントは広域ネットワーク(WAN)を介して接続されます。分散システム内のコンポーネントは、使用されているネットワークの種類にかかわらず、メッセージ・パッシングの複雑なシステムを通じて情報を共有します。
分散コンピューティングでは、最も強度があり複雑な計算の課題に取り組むことが多いため、このアクティビティでは通常、共有メモリーと複数のコンポーネントの実装が必要になります。さらに、分散コンピューティングは、高度に調整された同期と大量の計算能力に依存し、システム全体でデータを効果的に処理し、必要に応じてファイル共有を行い、共通の目標に向かって取り組むことができます。
以下の例は、分散コンピューティングが多くの業種・業務やプラットフォームで利用されているさまざまな方法を示しています。
通信業界では、分散コンピューティングが日常的に使用されています。電気通信ネットワークは、電話ネットワークやセルラー・ネットワークの形式を問わず、ピア・ツー・ピア・ネットワークの例です。分散コンピューティングの2つの主要な通信ベースの例は、インターネットとEメールであり、どちらも現代の生活を一変させました。
分散コンピューティングは、複雑なデータ管理とデータ・ストレージのジョブを、ノード間で分散されるサブタスクに変換します。サブタスクはクライアントかサーバーのいずれかとして機能するエンティティーであり、ニーズを特定してリクエストを発行するか、それらのニーズを満たすために作業します。データベース管理は、分散データベースと同様に分散コンピューティングによって強化された領域であり、分散データベースはタスクをより小さなアクションに分解することで高速に実行されます。分散コンピューティングには、分散コンピューティング・チェーンの一部としてデータセンターの使用も含まれます。
エネルギー分野と環境分野はどちらも、エネルギー消費の利用と最適化を規制するスマート・グリッド・テクノロジーを支援する分散コンピューティングの影響を受けています。スマート・グリッドは、さまざまなインプット・デバイスから環境データを収集するためにも使用されます。
分散コンピューティングにより、膨大な計算負荷が複数のシステム間で均等に共有されます。さらに、特定の金融分野の従業員は、リスク・アセスメントなどのために分散コンピューティングをすでに使用しています。分散コンピューティングは、金融機関が膨大な計算を高速化することで、より良い意思決定を行い、ストラテジーを策定するのに役立ちます。
分散コンピューティングは、複数のリソースを使用して大規模な施設でオートメーションを効率的に実行し続け、多くの場合、ロード・バランシング性能に寄与します。分散クラウド・モデルを使用し、それを生産ツールに適用する分散製造もあり、地理的に拡大しています。製造業は、データを収集および送信するIoT(モノのインターネット)ガジェットやツールの設計と作成も扱います。
分散コンピューティングは、膨大な量のデータに依存するロボット手術など、現代の医療の画期的なテクノロジーの多くの実現に役立ちます。分散コンピューティングは、驚くほど詳細な3Dグラフィックスやビデオ・アニメーションへの適正を活かして、特許手順や計画された医薬品の設計を実証できます。
オンライン・ショッピングの代替案を提供するだけでなく、実店舗を運営している小売業者の場合、在庫の不一致が発生することがあります。分散コンピューティングによって実現される分散注文管理システム(DOMS)は、eコマース・アプリケーションのスムーズな稼働を維持するため、現代の小売業者は変化する顧客の期待に対応できます。
分散コンピューティングは、ニューラル・ネットワークのトレーニングなど、ますます多くの科学的研究で使用されています。科学的コンピューティングでは、分散コンピューティングの機能を利用して、宇宙飛行を規定するような大規模な科学的計算を解いています。分散コンピューティングのビデオ・シミュレーションにより、科学的な予測をより深く理解できるようになります。
大規模マルチプレイヤー型オンラインゲーム(MMOG)のプロバイダーは、分散コンピューティングを広範囲に活用して、複雑なリアルタイムのゲーム環境を構築・実行しています。オペレーティング・システム、ネットワーク、プロセッサーの複雑なメッシュ化により、何千人ものエンドユーザー・プレイヤーが魅力的なエクスペリエンスを共有し、参加することが可能になっています。
分散コンピューティング・システムの構成要素について決まったルールはありませんが、最も単純な形式の分散コンピューティングであっても、通常は少なくとも3つの基本コンポーネントが含まれています。
これらのコア・コンポーネント以外にも、各分散コンピューティング・システムは組織のニーズに応じてカスタマイズできます。分散コンピューティング・システムを使用する大きな利点の1つは、マシンを追加することでシステムを拡張できるため、拡張性を高めることができることです。その他の大きな利点は、冗長性が向上することです。そのため、ネットワーク内の1台のマシンが何らかの理由で障害を起こしても、その故障点に関係なくシステムの動作は継続されます。
分散コンピューティング・システムの目標は、分散コンピューティング・ネットワークを単一のシステムであるかのように機能させることです。この調整は、さまざまなコンポーネント間での精巧なメッセージ・パッシング・システムを通じて実現されます。
通信プロトコルはメッセージのやり取りを管理し、これらのコンポーネント間に存在する「カップリング」と呼ばれる関係を作成します。この関係は、次の2つの形式のいずれかで表されます。
フォールト・トレランスは、もう1つの重要な概念です。つまり、システムの動作継続中にOSがソフトウェアやハードウェアの障害に対応して修正できるようにする修正プロセスのことです。
分散コンピューティングは、複数の動作命令シーケンスを同時に実行すること「同時実行性」によるプラスとマイナスの影響にも対処します。その主な特徴は、同時実行によってリソースの共有と複数のプロセス・スレッドの並列コンピューティングが可能になることです。(ただし、並列コンピューティングは、ランタイム・タスクを複数の小さなタスクに分類するプロセスである並列処理と混同しないようにしてください。)
同時実行性に関連する欠点としては、レイテンシーの増加や、転送されるデータ量が通常推奨される帯域幅を超えるトラフィック・ボトルネックなどがあります。
分散コンピューティングの種類は通常、それぞれが使用する分散コンピューティング・アーキテクチャーに従って分類されます。
これらは分散コンピューティング・アーキテクチャーの主なタイプですが、他にも言及すべき分散コンピューティング・パラダイムがあります。
分散コンピューティングに関するクイック・ツアーでは、分散コンピューティングとは何か、分散コンピューティング・システムの作成に何が含まれるのか、分散コンピューティング・システムに関連付けられているアーキテクチャーの種類を明らかにしました。さらに、分散コンピューティング・システムを特別に活用することで、未来を賢く形成している10の業種・業務について学びました。
同様に分散コンピューティング、IBM® Satellite製品は、オンプレミス、エッジコンピューティング、またはパブリッククラウド環境など、必要な場所でアプリをデプロイして実行するためのツールを提供します。
ツールチェーン、データベース、AIを含む一連のクラウド・サービスを共通して利用できます。IBM Cloud Satelliteが管理する分散クラウド・ソリューションは、クラウド・サービス、API、アクセス・ポリシー、セキュリティ制御、およびコンプライアンスを提供します。