高動作信頼性システムとは、大きな稼働性(アベイラビリティ:availability)を実現しているシステムである。ただし、利用者はシステムを使う時間が限定されるシステムと、連続運転を要求されるシステムとでは、最適となるシステム構成が異なる。
情報システムの中には、一度システムが稼働した後は、原則としてサービスを停止できないシステムもある。例えば、防災監視システム、電話などの公共サービスを行うシステム、コンビニエンスストアの管理システムなどである。
これらのシステムでも、ハードウェアの故障やソフトウェアの追加・変更は皆無ではない。このようなシステムの場合でも、システム全体を停止することなく、故障や改造に関係する部分だけをシステムから切り離して処理する必要がある。
このようなシステムを実現化するためには、水平負荷分散システムが適している。また、部分的にシステムが停止しても、すべての利用者に対して100%の稼働率を提供するのか、特定の利用者だけでよいのかといった選択も、システムの設計上重要である。
長期間に渡って100%の稼働率で動作する必要はないが、限られた時間の間だけ完全に動作するシステムが求められる場合もある。例えば、人工衛星の打ち上げ制御システム、修理のできない人工衛星搭載システム、やり直しができない生産工程の管理・制御システムなどである。
これらのシステムでは、システム全体のコストを考慮した稼働性の向上策を講じる必要がある。
情報システムが扱う情報の内容が正確で信頼できることは、基本的な条件である。しかし、高情報信頼性を保つためには、それを意識したシステム設計をしなければならない。
情報システムでは、意図したデータの改変がなくても、確率的に発生するエラーによってデータが変わってしまうことがある。
例えば、金融機関の取引データや企業間の取引データを扱うシステムでは、データの誤りに対する厳密な検出、回復の機能を用意する。特に通信回線を用いたデータ伝送や、メモリの読み書きはデータ誤りを発生しやすい。
また、意図的なデータ改変に対しても、データの暗号化やアクセス記録を取るなどの対策をする必要がある。
複数の利用者が内容を更新するシステムは、更新によってデータに矛盾が発生することが多いので、特に注意が必要である。
デーベース管理システムは、同時アクセス制御やデータの排他制御を行っている。しかし、それ以前にデータの論理的構造を、堅実で信用できる設計にしておくことが重要である。
高信頼システムを構成するためには、信頼性の尺度となるRAS(Reliability:信頼性、Availability:稼働性、Serviceability:保守性)について理解して、その評価尺度に基づいた信頼性を作り上げることが重要である。
稼働率は、MTBF(Mean Time Between Failure:平均故障間隔)とMTTR(Mean Time To Repire:平均修理時間)の関係から次の式が求められる。
(稼働率)=MTBF/(MTBF+MTTR)
稼働率を向上させるには、MTBFを大きくする方法とMTTRを小さくする方法がある。
MTBFを大きくするということは、故障が起こらないようにすることがあり、ハードウェアについては製品の劣化が起こりにくいような技術を使い、物理的な破損に対する対策を講ずる。ソフトウェアについては、潜在的なバグによって定期的に発生する異常を防ぐため、質のよい設計と徹底したデバッグテストが必要である。
しかし、非常に信頼性の高いハードウェア・ソフトウェアであっても、障害や誤作動の発生する確率をゼロにすることはできない。
ひとつのコンピュータシステムは、多くの構成要素を組み合わせたものである。システムの構成要素も構成方法により、その信頼性の評価が異なる。
システムの構成要素も直列に接続したシステムでは、構成要素のどれかひとつでも故障するとシステム全体が稼働しなくなり、稼働率が低くなる。
一方、システム構成要素を並列にして、それぞれの構成要素が同じ働きをする場合には、稼働率を改善することができる。このように、同じ機能を持った複数のシステム構成要素を並列に配置した構成を冗長構成といい、高信頼システムを実現化できる。
稼働率=A1×A2×A3
稼働率=1-(1-A1)×(1-A2)×(1-A3) ←(*)
並列の稼働率は「和」から重複分を差し引くので、次のようにも表記される。
稼働率=P1+P2+P3-P1×P2×P3 ←(**)
[補講](*)=(**)であることは計算すればわかる。
故障率=1-(1-P1)×(1-P2)×(1-P3)=P1+P2+P3-P1×P2×P3
[補講]直列の故障率は「和」から重複分を差し引く。
故障率=P1×P2×P3
例1:
例2:P1=P2=P3=P4=pとする。
冗長システムにはその運用方法により、予備切り換え方式と故障切り離し方式がある。