コンピュータシステム(3)
システム構成要素
システム構成
業務活動を推進するためにコンピュータを利用するシステムの総体は「情報システム」と呼ばれる。情報システムの活用に際し、それぞれの目的に合わせた処理形態・構成を選択する必要がある
情報システムの処理形態
集中処理
1台のホストコンピュータがすべての処理を行うオンラインシステムの処理形態。オンラインシステムの処理形態
・1台で管理するため、設備や人員を集中させやすい ・保守や運用管理、セキュリティ管理などが比較的行いやすい ・ホストコンピュータの導入に多額のコストが必要 ・ホストコンピュータが停止してしまうとシステムがすべて停止 |
分散処理
ネットワーク上に接続された複数のコンピュータを使い、処理を分散して行う処理形態。クライアントサーバシステムの処理形態
・コンピュータの台数を増やすなどして機能を拡張することが容易 ・1台のコンピュータが停止してもシステム全体は稼働を継続できる ・複数台のコンピュータを運用管理、保守、セキュリティが複雑 ・システムに異常が発生した際、原因の特定に時間を要するケースも |
垂直分散
複数のホストと端末をつないだもの。ホスト・端末の主従関係がある。この形態の代表例として「クライアントサーバシステム」がある
水平分散
すべてのコンピュータが対等の立場でホストコンピュータとしてネットワークにつながっているシステム。ピアツーピア型システム
・コンピュータの立場が対等の立場にある(クライアントとサーバの区別がない) ・クライアントサーバー型LANに比べて比較的構築が容易である ・小規模なLANに向いている |
・コンピュータの役割が明確に分かれている → 垂直分散システム ・コンピュータの立場が対等の立場にある → 水平分散システム |
並列処理
複数のコンピュータを接続し、全体で1つの処理を行わせる処理方式
・複数台の処理能力を集中させることで、処理性能の向上が期待できる ・1台のコンピュータが停止してもシステム全体は稼働を継続できる ・複数台のコンピュータを運用管理、保守、セキュリティが複雑 ・システムに異常が発生した際、原因の特定に時間を要するケースも |
情報システムの構成
同じ構成を持つ2組のシステムが同じ処理を行い、処理を行いながらお互いをチェックしあいながら処理を行うシステム
集中処理
1台のホストコンピュータがすべての処理を行うオンラインシステムの処理形態。オンラインシステムの処理形態
・片方の処理系に障害が発生しても、異常系を切り離して正常系で処理を続行できる ・故障によるシステムダウンだけではなく、演算処理に対してもクロスチェックを行うため、 極めて信頼性が高い ・コンピュータの黎明期、プロセッサ(論理素子)の信頼性が低い時代には広く 用いられた ・多重投資となり高価であるため、今日では特殊な用途にのみ採用される |
デュプレックスシステム
コンピュータシステムや通信機器で高信頼システムを実現する方式の1つ。1つの処理に対して主従2系統の処理系を用意し、通常は主系(現用機)で処理を行い、それに誤りが検出されたときに待機していた従系(予備機)に切り換える方式のこと
予備システムへの切り替える方法によって、ホットスタンバイ、ウォームスタンバイ、コールドスタンバイに分類される
コールドスタンバイシステム
主システムと同じ構成の予備システムを停止状態で待機させておき、主システムに障害が発生したときに予備系を起動して業務や処理を切り換える方式のこと
障害が発生してから予備系の起動・準備を行うため、システム停止時間や事業継続の面で制限があるが、通常時は予備系を運用しないため、コスト面でメリットがある
ウォームスタンバイシステム
主システムと同じ構成の予備システムを用意し、予備系は電源を入れてOSを起動した状態で待機する方式のこと。主系に障害が発生した場合、ネットワークの切り替えなどとともに業務アプリケーションなどのユーザープログラムを起動し、待機系に処理を移行することになる。ホットスタンバイとコールドスタンバイの中間形といえる
ホットスタンバイシステム
主システムと同じ構成の予備システムを用意して両系を同期して同じ状態にし、主システムに障害が発生したときに処理を瞬時に予備系に切り換える方式のこと
通常運用時から主系と待機系の双方を稼働することになるのでコスト面では不利だが、障害が発生する直前まで同期がとれているために切り替えも素早く、業務を中断することなく継続できる点がメリットとなる。銀行のオンラインシステム等に利用
情報システムの利用形態
対話型処理
コンピュータが要求する操作をユーザが返答するかのように、ディスプレイを通して処理を行う利用形態。ユーザはディスプレイを通して、コンピュータから要求された操作を加えし、あたかも対話してるように相互に処理する
リアルタイム処理
データの発生に合わせて即座に処理する形態。ATMやホテル予約などオンラインシステムに活用さる。処理結果が即座に要求される場合に利用
バッチ処理
一定期間蓄積したデータを一括処理する形態。データが溜まるまでの期間や、自動でバッチ処理が稼働するまでの期間など、時間的な余裕が生まれるのが特徴。給与計算などの事務処理に利用
クライアントサーバシステム
分散処理システムの一種で、サーバがアプリケーションソフトウェアやデータベースなどの資源を集中管理し、クライアントはサーバに対してサービスの提供を要求するという分担を行っている
特徴
特 徴 | 説 明 |
---|---|
システムにかかる負荷の軽減 | クライアントとサーバがそれぞれ役割分担(処理を分散)することでシステムの負荷が軽減できる。 |
導入コストの軽減 | ハードウェア資源(プリンタやハードディスクなど)を共有して利用することで、導入コストが軽減できる |
作業の効率化 | ソフトウェア資源(ファイルなど)を共有して利用することで、必要なデータを必要な時に取り出して処理を行えるため、作業の効率化が図れる |
システムの拡張が容易 | サーバやクライアントの追加が容易 |
システム管理の複雑化 | サーバやクライアントごとにハードウェアやソフトウェア資源を管理する必要があるため、システムの規模が大きくなるほど複雑。また、問題が発生した場合の原因や責任の切り分けが難しい |
種類
種 類 | 説 明 |
---|---|
ファイルサーバ | ファイルを一括管理するサーバ |
プリンタサーバ | プリンタを管理・制御するサーバ |
データベースサーバ | データベース管理システム(DBMS)を持ったサーバ |
3層アーキテクチャ
「プレゼンテーション層」「アプリケーション層」「データ層」の3層に分割して構築したシステム。クライアントおよびサーバの処理を複数の階層に分離して配置することで、ある階層へ変更を加える必要が生じた際にも柔軟に対応できるようなっている。従来の一般的なクランイアントサーバシステムを「2層アーキテクチャ」という
第1層 | プレゼンテーション層 | ヒューマンインタフェース部分 |
---|---|---|
第2層 | アプリケーション層(ファンクション層) | データ加工処理部分 |
第3層 | データ層 | データベースアクセス部分 |
システム評価指標
システムの評価指標は、コンピュータの性能、信頼性、経済性を綜合的に見る
システムの性能
システムの性能を測るために、「性能テスト」が行われる。性能テストには「レスポンスタイム」や「ターンアラウンドタイム」、「ベンチマーク」などの諸評が用いられます
レスポンスタイム
コンピュータに処理を行わせて、最初の反応が返ってくるまでの時間を計測。「応答時間」
オンラインシステムの性能を評価するときに使用。CPUの性能や接続しているユーザ数などによって変化数する
ターンアラウンドタイム
コンピュータに一連の処理を行わせて、すべての処理が完了し結果を返してくるまでの時間を計測。バッチ処理の性能を評価するときに使用

ベンチマーク
システム性能を測定するためのプログラムなどを用いて、CPU稼働率やメインメモリの速度、ハードディスクの読み書き速度、レスポンスタイムなどを含む総合的なテストを行います
システムの信頼性
システムの信頼性は、システムを運用中、機能が停止することなく稼働し続けることで高くなる
システムの信頼性を表す指標
信頼性という観点からシステムを評価するために求められる指標が「稼働率」です。稼働率は「平均故障間隔(MTBF:Mean Time Between Failures)」、「平均修復時間(MTTR:Men Time to Repair)」などの値によって判断される
平均故障間隔 | MTBF | 故障から故障までの間。システムが連続して稼働している時間の平均 |
---|---|---|
平均修復時間 | MTTR | 故障したときに、システムの復旧にかかる時間の平均 |

複合システムの稼働率
複数のコンピュータや機器で構成されるシステムの場合「直列システム」「並列システム」によって稼働率の求め方が違う
直列システムの稼働率
「直列システム」とは、システムを構成している装置がすべて稼働している時だけ、稼働するシステムのこと。装置が1つでも故障した場合は、システムは稼働しない
並列システムの稼働率
「並列システム」とは、どれかひとつの装置が稼働していれば、稼働するシステムのこと。システムを構成している装置がすべて故障した場合のみ、装置システムは稼働しない

高信頼性の設計
信頼性を向上させるためのシステム構成や信頼性設計として、以下のような種類がある
考え方 | 説 明 |
---|---|
フォールトトレランス | システムの多重化などにより、障害が発生した場合にも本来の機能をまかない、すべて維持できるようにすること |
フェールソフト | ハードウェアやソフトウェアに障害が発生した場合、機能を低下させてでも、正常な部分を利用して運用を続行しようとする考え方 |
フォールトアボイダンス | 高品質・高信頼性の部品や素子を使用したり、故障の生じにくい設計や構造を採用したりすることで、システム全体での障害を回避しようする考え方 |
フェールセーフ | ハードウェアやソフトウェアに障害が発生した場合、システムを安全第一の状態にしようとする考え方 |
フールプルーフ | 仕様から外れた使い方をしても、障害が発生しないようなシステムを構築しようとする考え方 |
ホットサイト
待機系サイトとして稼働させておき、ネットワークを介して常時データやプログラムの更新を行い、障害発生時に速やかに業務を再開するための予備システムのこと
コールドサイト
情報システムやデータは冗長化しないが、万一の災害時にはITサービスを容易に再開させるために、別途システムやデータ、ネットワークを用意したサイト。例えば情報システムは単一だが、その中に保存されている重要データはバックアップを取得し、バックアップデータが格納された媒体を遠隔地で保管する形態
RAID(レイド)
複数台のハードディスクを組み合わせることで仮想的な1台のハードディスクとして運用する技術。ディスクアレイの代表的な実装形態で、主に信頼性の向上をねらって用いられるものである。RAIDにはいくつかのレベルがあり、実際に利用されるのはRAID 0、RAID 1、RAID 5、RAID 6で、RAIDコントローラやソフトウェアによって使用できるレベルが限定されている場合が多い
アクセス速度向上を目的とするもの

▼RAID 0(ストライピング)
複数台のハードディスクに、データを分散して読み書きし高速化したもの。これをストライピングと呼ぶ
≪長所≫
- ドライブ数が増えれば増えるほどシーケンシャルアクセス速度が上がる
≪短所≫
- 長性が全くない
- ドライブ数が増えれば増えるほど故障率が上がる
- 性能を100%引き出すには、I/O性能の向上に見合った帯域を持ったバスアーキテクチャが必要となる
- ランダムアクセス速度はあまり向上しないか、ドライブ数が増えれば増えるほどシーク待ちの増加によってむしろ低下する。SSDなどシーク時間が圧倒的に短いドライブでは問題ない
- RAID 0の容量は、構成ドライブ中の最小容量×ドライブ数となり、余った部分は利用できない
ディスクの信頼性向上を目的とするもの

▼RAID 1(ミラーリング)
複数台のハードディスクに、同時に同じ内容を書き込む。これをミラーリングと呼ぶ。 RAID 1は最もシンプルなRAIDであり、耐障害性の高いRAIDである。また、RAIDの最大の弱点であるRAIDコントローラの故障にも対応しやすい。RAID 1には最低2ドライブが必要である。一台が故障した際に、もう一方も同時に故障する可能性は低く、システムは稼動し続けることが出来る
≪長所≫
- OSやマザーボードの機能として標準装備されているものにあっては、別段のRAIDハードウェア/ソフトウェアなしでも使用できる
- 故障したハードディスクを交換すればバックグラウンドでディスクデータの復旧が行われるため、システムダウンからの復旧が速い
- 一方のハードディスクが故障しても、もう一方のハードディスクは正常動作しているので、性能が低下しない
- RAIDコントローラの故障に対応する冗長構成が可能
- ドライブ数が増えれば増えるほど耐障害性が上がる
≪短所≫
- 構成ディスク容量に対するデータ記録可能量が常に構成ディスク台数の逆数倍であるため効率が悪い
- RAID 1の容量は、構成するドライブの中でもっとも小さな容量に決定され、余った他のドライブ部分は利用できない
- RAIDの中で唯一ディスクサイズの大容量化、高速化を目的としていない
▼RAID 5(パリティ付きストライピング)
複数のハードディスクに誤り訂正符号データと共に分散させて記録する。最低3ドライブが必要である。RAID1やRAID1+0に比べて使用効率に優れている。またRAID0のように複数のディスクに分散しているため読み出し性能が優れている。一方で書き込む場合にはパリティを作成しなおすために、ディスクからの読み出しとパリティ演算が必要となる
≪長所≫
- ボトルネックとなる専用のパリティドライブが存在しない
- ドライブの台数が増えるほど高速化を見込める
- RAID 0と異なり、ランダムリードに対しても性能向上を見込める
≪短所≫
- 読み出しは高速であるが書き込みは低速である(特にドライブ台数が少ない場合)
- パリティ演算が必要なため、ソフトウェアRAIDに不向き
- 停電やディスククラッシュにより部分的に書き込みが行われた状態での停止が発生した場合に検出困難な不整合が発生するタイミングがあり、RAID 5書き込みホールと呼ばれる
- 障害発生時の復元作業が遅い
- ドライブ1台故障時にパリティからデータを再生するため、性能が低下する
- 2つ以上のドライブが同時に故障すると回復できない
- ドライブ1台故障時はRAID 0並みの信頼性が低い状態となる。特に構成台数が多い場合、復元作業中にもう1台が故障し、回復不可能となってしまうケースがある(これに対する解がRAID 6)
▼RAID 6
任意の2つのハードディスクに障害が発生してもデータが復元できるRAID。冗長データを2種類作成し2つのディスクに記録することで、2重障害に対応でき、同時に2ドライブが故障しても復元できる。最低4ドライブを必要とする。1つの冗長データはRAID5と同じようにパリティ符号を用いる。もう1つの冗長データは、異なるアドレスのデータからパリティを生成する方式(対角線パリティ)や、異なる係数を乗算してから生成する方式(P+Qパリティ)など、複数の実装形態がある
≪長所≫
- 専用のパリティドライブが存在しない
- ドライブの台数が増えるほど高速化を見込める
- RAID 0と異なり、ランダムリードに対しても性能向上を見込める
- RAID 5よりさらに高い耐障害性がある。ドライブ1台故障時においてもRAID 5並みの信頼性を保っている
≪短所≫
- 初期投資が大きい(ただし、長期的な運用コストはRAID 5と大差ない)
- ドライブの台数が増えるほど高速化を見込める
- 二重にパリティを生成するため、RAID 5よりもさらに書き込み速度が低下する
- RAID 5と同様、ドライブ故障時に性能が低下する
- 3つ以上のドライブが同時に故障すると回復できない
システムの経済性
システムを導入するときに掛かる「初期コスト」や、稼働をはじめてから掛かる費用である「運用コスト」など、ハードウェア購入費用や管理費、電気代といった全体的なコストを「TCO(Total Cost of Ownership)」と呼ぶ。TCOを削減するにはシステムの導入から運用、保守、あるいは障害時の修復費用などをライフサイクル化し、問題点を洗い出して克服してゆくことが大切。TCOの削減により、システムの経済性は大きく高まる
 

