4.システム構成要素

システム構成と方式

集中処理方式と分散処理方式
  • 集中処理方式
    • センタのコンピュータなどにデータを1カ所に集めてすべての業務を処理
  • 分散処理方式
    • 複数のコンピュータで負荷を分散
  • 負荷分散
    • 1つのアプリケーションの負荷を複数のプロセッサで分担
  • 機能分散
    • アプリケーションごとに機能のプロセッサに分担する
クライアントサーバ方式
  • クライアントサーバ方式
  • 3層クライアントサーバシステム
    • データベース層(DBサーバ)
    • ファンクション層(APサーバ)
    • プレゼンテーション層(クライアントのUI)

DBサーバとAPサーバは兼ねることもある。

並列コンピュータシステム
  • グリッドコンピューティング
    • ネットワーク上の複数のコンピュータで並列処理
  • スーパーコンピュータ
    • 多くのベクトルプロセッサを集めた計算機

システムの構成方式

  • デュプレックスシステム
    • 2系統のシステムで、一方のみ常に運用
    • もう一方は待機系で、故障時に切り替える
  • デュアルシステム
    • 2系統のシステムで、両方で常に同じ処理を行う。
    • 相互に処理結果を照合する
    • 障害時には故障した方を切り離す
  • ロードシェアシステム
    • 負荷を複数のCPUに振り分けして負荷分散
  • タンデムシステム
    • CPUの前後にFEP(FrontEndProcessor)とBEP(BackEndProcessor)を直列に接続

RAID

容量は、複数のディスクの合計サイズをs、ディスク台数をnとして計算。

RAID 0 データを複数のディスクに分散して記録(ストライピング) 読み書き高速化 容量はs
RAID 1 2つのディスクで全く同じデータを記録(ミラーリング 信頼性高める 容量はs/2
RAID 0+1 ストライピング+ミラーリング 信頼性高め、読み書き高速化 容量はs/2
RAID 2 訂正符号(ハミング符号)付きデータを分散させて記録 耐障害性は最高だが、ハミング符号の計算コスト大 5台の場合、容量はs×2/5
RAID 3 パリティを訂正符号として専用のディスクに割り当て。データは分散されずに各ディスクに保存 ハミング符号より計算量小、RAID2より容量の無駄が少ない 容量はs×(n−1)/n
RAID 4 パリティを専用のディスクに割り当て。データ用ディスクにデータを分散して記録する 分散して記録するためRAID3より高速 容量はs×(n−1)/n
RAID 5 パリティもデータも各ディスクに分散 高信頼性(1台故障しても他ディスクから復旧可能) 容量はs×(n−1)/n

フォールトトレラントシステム

  • フォールトトレラント(fault tolerant)
    • 障害に耐える(被害を最小限に押さえる)
    • 何らかの障害が発生しても、所定の処理を続行できる
  • フォールトアボイダンス(fault avoidance)
    • 障害を回避する
    • システムを構成する機器・部品に高信頼性のものを採用する、故障しにくい設計・構造を導入
    • 使用者の教育も含まれる
  • フェールセーフ(fail safe)
    • 安全にシステム停止させる
  • フェールソフト(fail soft)
    • 一部で障害が発生した場合、機能低下を許容し、障害箇所を切り離すなどして処理を続行させる
  • フールプルーフ(foolproof)
    • 馬鹿よけ
    • 操作ミスが発生しても障害を防止する(エラー処理など)
  • フォールバック(fallback)
    • ある機能で不具合が発生した場合、その機能を切り離して質を落としても全体の機能を提供する仕組み
  • ホットスタンバイ
    • 同じシステムを待機系に並行稼働させ、障害時に即座に待機系に切り替え
  • コールドスタンバイ
    • 障害発生したら待機系システムを起動しそちらに切り替える

システムの信頼性評価

  • 直列接続のシステム
    • システムを構成する装置がすべて稼働しなければシステム全体は稼働しない
  • 並列接続のシステム
    • 条件により稼働率がことなるので注意。
    • システムを構成する装置のうち1つでも稼働していればOKとするシステム
    • すべての装置が稼働していないとNG(直列と同じ)
  • 3並列システムの場合(各システムの稼働率をAとする)
    • ある1台が稼働しているときの稼働率
      • _{3}C_{1} \times A(1-A)^2
    • ある2台が稼働しているときの稼働率
      • _{3}C_{2} \times A^2(1-A)
    • 3台とも稼働しているときの稼働率
      • A^3

故障率

  • 1時間あたりにどれくらいの割合で故障が起こるか
  • MTBFの逆数で求められる。
  • 「1ー稼働率」でないことに注意。

システムの性能評価

  • アムダールの法則
    • システムのごくわずかな部分を大きく改善するよりも、全体に占める割合の大きい部分を少し改善する方が全体の性能は改善する