Contents
- 1 【応用情報技術者】システムの構成要素の用語メモ
- 1.1 CDN(Contents Delivery Network)
- 1.2 NAS(Network Attached Storage)
- 1.3 RAID(Redundant Arrays of Independent Disks)
- 1.4 RAID5
- 1.5 RPC(Remote Procedure Call)
- 1.6 TCO(Total Cost of Ownership)
- 1.7 3層クライアントサーバシステム
- 1.8 アムダールの法則(Amdahl’s Law)
- 1.9 アクセス透過性
- 1.10 キャパシティプランニング
- 1.11 クライアントサーバシステムの3層アーキテクチャ
- 1.12 グリッドコンピューティング
- 1.13 コンテナ型仮想化
- 1.14 サーバコンソリデーション
- 1.15 シンクライアント端末
- 1.16 シンプロビジョニング
- 1.17 ストライピング
- 1.18 スケールアウト
- 1.19 スケールイン
- 1.20 スケールダウン
- 1.21 スケールアップ
- 1.22 ストアドプロシージャ
- 1.23 スループット
- 1.24 ハイパバイザ(Hypervisor)
- 1.25 フールプルーフ
- 1.26 フェールソフト
- 1.27 フェールセーフ
- 1.28 フェールバック(fail back)
- 1.29 フォールトアボイダンス
- 1.30 フォールトトレランス
- 1.31 ホットスタンバイシステム
- 1.32 密結合マルチプロセッサシステム
- 1.33 ライブマイグレーション
- 1.34 モニタリング(Monitoring)
【応用情報技術者】システムの構成要素の用語メモ
CDN(Contents Delivery Network)
CDN(Contents Delivery NetworkまたはContent Distribution Network)は、ウェブコンテンツやメディアファイル、アプリケーションなどのコンテンツを高速かつ効率的に配信するためのインフラストラクチャです。CDNは、コンテンツのオリジンサーバーからエンドユーザーまでの経路を最適化し、応答時間を短縮し、トラフィックの負荷を分散することで、ウェブサイトやアプリケーションのパフォーマンスを向上させる役割を果たします。
- 動画や音声などの大容量のデータを利用する際に,インターネット回線の負荷を軽減するようにサーバを分散配置する。
NAS(Network Attached Storage)
NAS(Network Attached Storage)は、ネットワーク経由でアクセスできるデータストレージデバイスやシステムのことを指します。NASは、データの共有、バックアップ、ファイルの保存、データの配布、リモートアクセスなど、様々なデータ管理タスクに使用されます。
- サーバごとに専用の磁気ディスクを搭載して個別管理するよりも,ファイルサーバのようにシステム全体で磁気ディスク群を効率的に利用することができる。
- 各種OSからファイルを共有することができるので,データを交換する業務に適している。
- 直接LANに接続し,異なるOSの複数のコンピュータでファイルを共有することができる。
RAID(Redundant Arrays of Independent Disks)
RAID(Redundant Arrays of Independent Disks)は、安価な複数台の磁気ディスクを組み合わせて全体として高い信頼性を得る方式です。
- データ及び冗長ビットの記録方法と記録位置との組合せ
RAIDには0~5のレベルがありますが、その区別は本来のデータとエラー訂正用のデータ(ハミング符号・パリティビット)を、どのように書き込むかによって定義されています。
- RAID 0
- 複数のディスクにデータを分散して書き込むストライピング
- RAID 1
- 2台の磁気ディスクに同じ内容を書き込むミラーリング
- RAID 2
- ストライピング+エラー訂正用のハミング符号をディスクに書き込む。最少でも5台構成となる。
- RAID 3
- ストライピング+エラー修正用にパリティビットを1台のディスクに書き込む
- RAID 4
- RAID3のパリティビットの書き込みをブロック単位で行う。
- RAID5
- パリティビットもデータと同様に分散して書き込む。
RAID5
RAID 5(Redundant Array of Independent Disks 5)は、データストレージにおける一種の冗長性を持たせる方法で、複数のハードディスクドライブ(HDD)またはソリッドステートドライブ(SSD)を組み合わせて使用する技術です。
RPC(Remote Procedure Call)
RPC(Remote Procedure Call)は、Remote(遠く隔たった),Procedure(手続き),Call(呼び出し) の言葉の意味通り、実行中のプログラムと別のアドレス空間(通常は共有ネットワーク上の別のコンピュータ)にあるサブルーチンや手続きを実行することを可能にする技術です
- 他のコンピュータが提供する手続を,あたかも同一のコンピュータにある手続であるかのように呼び出すことができる。
クライアントサーバシステムのクライアントにおいて,遠隔サーバ内の手続をクライアントにある手続と同様の方法で呼び出すことを可能とした機能
TCO(Total Cost of Ownership)
TCO(Total Cost of Ownership、総所有コスト)は、あるアセットや製品、システム、またはサービスを所有・運用するために発生するすべてのコストを包括的に評価するコスト評価モデルです。TCOは、アセットを購入または導入する際に、単に購入価格やライセンス料だけでなく、そのアセットを維持、運用、管理するためにかかるすべての費用を考慮することを強調します。TCOの目的は、全体的なコストを明確にし、より良い意思決定を支援することです。
3層クライアントサーバシステム
- システムを論理的に,プレゼンテーション,ファンクション,データベースの3階層に分けたシステムである。
アムダールの法則(Amdahl’s Law)
アムダールの法則(Amdahl’s Law)は、並列処理に関する基本的な法則の一つで、コンピュータアーキテクチャとプログラミングにおける性能向上の限界を定義するものです。この法則は、ジーン・アムダール(Gene Amdahl)によって1967年に提唱されました
- 並列化できない計算処理がある場合,速度向上比は,プロセッサ数を増やしてもある水準に漸近的に近づく。
アクセス透過性
分散システムにおけるアクセス透過性とは、地理的に離れた場所にあるシステムにアクセスするときに、そのシステムが遠隔地にあることを意識することなく同一の方法でアクセスできる性質です。
- 遠隔地にある資源を,遠隔地での処理方式を知らなくても,手元にある資源と同じ操作で利用できる。
キャパシティプランニング
キャパシティプランニング(Capacity Planning)は、情報技術(IT)環境において、必要なリソース(ハードウェア、ソフトウェア、ネットワーク、ストレージなど)を適切に割り当て、管理するための戦略的なプロセスです。このプロセスは、将来の需要に対応し、システムやサービスの高性能、可用性、効率を確保することを目指します。
- システムの現在の応答時間を調査し,長期的に監視することによって,将来を含めて応答時間を維持することである。
- コンピュータシステムに効率よく投資するために,性能,経済性及び拡張性を考えてシステムの構成を決定する。
チューニング
- 既存システムのパフォーマンスを最適化するために,変更箇所の検討や変更策を決定する。
サービス管理
- ユーザ部門が期待するパフォーマンスと提供されるサービスのコストを,責任分担を明らかにして管理する。
クライアントサーバシステムの3層アーキテクチャ
クライアントサーバシステムの3層アーキテクチャは、クライアント、アプリケーションサーバ、データベースサーバという3つの主要なコンポーネントから成るソフトウェアアーキテクチャです。このアーキテクチャは、複雑なアプリケーションを効率的に構築し、運用するために広く使用されています。各層は特定の役割と責任を持ち、それらを独立して開発、管理、スケーリングできます。
- プレゼンテーション層,ファンクション層,データ層に分離したアーキテクチャであり,各層のOSは異なってもよい。
3層クライアントサーバシステムのファンクション層で処理される二つの機能の組合せ
- データ処理条件の組立て,データの加工
3層クライアントサーバシステムの各層の役割
- ファンクション層は,データを加工してプレゼンテーション層に返信する。
3層クライアントサーバシステムの特徴
- 各層間の相互依存度が比較的少ないので,開発作業を層ごとに並行して行うことができる。
グリッドコンピューティング
グリッドコンピューティング(Grid Computing)は、複数のコンピューターをネットワーク上で統合し、大規模な計算リソースを協調して利用するコンピューターサイエンスの分野です。このアプローチは、計算能力やデータストレージが必要な科学、工学、ビジネスなどの分野で使用され、計算作業を分散し、高性能コンピューティングリソースを最適に活用します。
- PCから大型コンピュータまで,ネットワーク上にある複数のプロセッサに処理を分散して,大規模な一つの処理を行う方式である。
- 中央のサーバで,処理を並列処理可能な単位に分割し,それらを多数のPCやサーバで並列処理する。
コンテナ型仮想化
コンテナ型仮想化(Containerization)は、アプリケーションやその依存関係、環境をコンテナと呼ばれる軽量な仮想環境にパッケージ化し、実行する技術です。コンテナ型仮想化は、アプリケーションを独立した単位で簡単に移動させ、展開することができるため、ソフトウェア開発、デプロイメント、運用を効率化するのに役立ちます。
- 物理サーバのホストOSと仮想化ソフトウェアによって,プログラムの実行環境を仮想化するので,仮想サーバに個別のゲストOSをもたない。
- アプリケーションの起動に必要なプログラムやライブラリなどをまとめ,ホストOSで動作させるので,独立性を保ちながら複数のアプリケーションを稼働できる。
サーバコンソリデーション
サーバコンソリデーション(Server Consolidation)は、組織が複数のサーバーやデータセンターリソースを効率的に管理し、リソースの使用効率を向上させるための戦略です。通常、組織内で多数のサーバーが運用されており、これらを効率的に統合することで、ハードウェア、エネルギー、スペース、管理の負荷などのコストを削減し、運用の合理化を図ります。
- 仮想化ソフトウェアを利用して元のサーバ数よりも少なくすることによって,サーバ機器の管理コストを削減する。
シンクライアント端末
シンクライアント端末(Thin Client Terminal)は、コンピューターシステムの一種で、主に仮想デスクトップ環境やサーバーベースのコンピューティングに接続するために設計された薄型のクライアントデバイスです。シンクライアント端末は、データ処理やアプリケーションの実行をほぼすべての処理をサーバー側で行い、クライアントデバイス自体はハードウェアリソースを最小限に保持します。
- クライアント端末の機器を交換する場合,アプリケーションやデータのインストール作業を軽減することができる。
シンプロビジョニング
「シンプロビジョニング」(Thin Provisioning)は、コンピューターシステムやストレージシステムにおいて、物理的なストレージリソース(ハードディスクドライブなど)を物理的な容量に関係なく仮想的なストレージ領域として割り当てる技術です。この方法により、ストレージリソースを効率的に利用し、ストレージ容量の浪費を最小限に抑えることができます。
- 利用者の要求に対して仮想ボリュームを提供し,物理ディスクは実際の使用量に応じて割り当てる。
ストライピング
データを分散して複数の磁気ディスクに書き込むことによって,データ入出力の高速化を図る方式
スケールアウト
- 想定されるシステムの処理量に対して,サーバの台数が不足するとき,サーバの台数を増やすこと
- サーバの台数を増やして負荷分散することによって,サーバ群としての処理能力を向上させること
スケールアウトが適しているシステム
- 参照系のトランザクションが多いので,複数のサーバで分散処理を行っているシステム
スケールイン
- 想定されるシステムの処理量に対して,サーバの台数が過剰なとき,サーバの台数を減らすこと
スケールダウン
- 想定されるCPU使用率に対して,サーバの能力が過剰なとき,CPUの能力を減らすこと
スケールアップ
- 想定されるメモリ使用率に対して,サーバの能力が不足するとき,メモリの容量を増やすこと
ストアドプロシージャ
ストアドプロシージャ(Stored Procedure)は、データベース管理システム(DBMS)内に保存され、データベース操作やクエリの実行を行うための事前に定義された手続きまたは関数です。ストアドプロシージャはSQL言語を使用して記述され、データベース内の特定の処理や操作を一つのまとまりとしてカプセル化します。
- アプリケーションプログラムからネットワークを介してDBMSにアクセスする場合,両者間の通信量を減少させる。
- 機密性の高いデータに対する処理を特定のプロシージャ呼出しに限定することによって,セキュリティを向上させることができる。
- システム全体に共通な処理をプロシージャとして格納することによって,処理の標準化を行うことができる。
- 複数のSQL文から成る手続を1回の呼出しで実行できるので,クライアントとサーバ間の通信回数を減らすことができる。
- クライアントとサーバ間の通信量を削減できる。
- 共通のSQL文によるアクセス手続をアプリケーションに提供する。
スループット
スループット(Throughput)は、あるシステム、プロセス、ネットワーク、またはデバイスが単位時間あたりに処理できるデータまたはトランザクションの量を表す指標です。スループットは、システムの性能や効率を評価するための重要なメトリックの一つであり、特にコンピューターシステム、ネットワーク、データベース、ストレージなどの領域で使用されます。
- 単位時間当たりのジョブの処理件数のことであり,スプーリングはスループットの向上に役立つ。
ハイパバイザ(Hypervisor)
ハイパバイザ(Hypervisor)は、仮想化技術を使用して、物理的なコンピューターハードウェア上で複数の仮想マシン(VM)を実行するためのソフトウェアまたはファームウェアのことを指します。ハイパバイザは、物理ホストマシン上で仮想環境を作成し、仮想マシンが異なるオペレーティングシステム(OS)を実行できるようにします。ハイパバイザは、仮想マシン間のリソースの分割と制御を担当し、複数の仮想環境が物理ホストを共有できるようにします。
1台のコンピュータで複数の仮想マシン環境を実現するための制御機能
フールプルーフ
「フールプルーフ」(Foolproof)は、何らかのシステム、製品、計画、プロセスなどが、誤った操作や利用から起きるミスや問題を最小限に抑えるか、完全に防ぐことができる設計やアプローチを指します
インタロック
インタロックは、特定の条件を満たさない限り、機械が作動しないようにする機構です。機械が動作しているときにガードを開くと機械が停止したり、ガードの中に人間がいるときには機械の運転ができないようにしたりすることで未然に危険を回避します。
- 動作中の機械から一定の範囲内に人間が立ち入ったことをセンサが感知したとき,機械の動作を停止させる仕組み
フェールソフト
「フェールソフト」(Failsoft)は、ソフトウェアやハードウェアなどのシステムが障害やエラーに遭遇した場合に、システムが安全に停止するか、あるいは制限されたモードで動作し続けることを指します。フェールソフトは、システムの信頼性を高め、障害時の影響を最小限に抑えるための設計原則の一部です。
- 装置の一部が故障しても,システムの全面的なサービス停止にならないようにする。
フェールセーフ
フェールセーフは、システムの不具合や故障が発生したときでも、障害の影響範囲を最小限にとどめ、常に安全を最優先にして制御を行う考え方です。例えば、「工業用機械で進入禁止区域をセンサーで監視し、人や物の侵入を感知したときには機械を緊急停止する」、「信号機が故障した時は全てを赤信号にする」というような設計がフェールセーフの実践例です。
フェールバック(fail back)
フェールバック(fail back)は、システム障害時にフェールオーバ機能などにより主系から待機系に引き継がれた処理を、障害回復後に主系に戻す処理のことをいいます。
フォールトアボイダンス
「フォールトアボイダンス(Fault Avoidance)」は、システムやプロセスの設計や運用において、障害(フォールト)を事前に予防するための戦略やアプローチを指します。フォールトアボイダンスは、システムの信頼性と可用性を向上させ、障害が発生するリスクを最小限に抑えるために使用されます。
- フォールトアボイダンスとは,システム構成要素の個々の品質を高めて故障が発生しないようにする概念である。
フォールトトレランス
フォールトトレランスは、システムの構成部品を多重化し、システムの一部に障害が発生しても全体としては停止することなく稼働を続け、その間に復旧を図るようにシステムを設計する技術です。
- フォールトトレランスは,システムを構成する重要部品を多重化して,故障に備える技術である。
ホットスタンバイシステム
ホットスタンバイシステム(Hot Standby System)は、高可用性を提供するためのコンピューターシステムのアーキテクチャの一種です。ホットスタンバイシステムは、主要なシステムやサービスが障害を受けた場合に、迅速にバックアップシステムに切り替えてサービスの中断を最小限に抑えることを目的としています。
現用系に障害が発生して待機系に切り替わる契機として,最も適切な例
- 現用系から待機系ヘ定期的に送信され,現用系が動作中であることを示すメッセージが途切れたとき
密結合マルチプロセッサシステム
密結合マルチプロセッサシステム(Tightly-Coupled Multiprocessor System)は、複数のプロセッサ(CPU)が、共有メモリや高速なバスなどの共有リソースを使用して相互に連携し、単一のコンピューターシステムとして協力して動作するコンピューターシステムの形態です。このアーキテクチャは、並列処理や高性能コンピューティングの要求を満たすために設計されており、共有リソースを利用することでプロセッサ間のデータ共有と通信を高速化します。
ライブマイグレーション
ライブマイグレーション(Live Migration)は、コンピューターシステムや仮想化環境において、実行中のワークロードやアプリケーションを中断することなく、別のホストやリソースに移動させるプロセスです。ライブマイグレーションは、高可用性、負荷分散、メンテナンス、リソースの最適な利用など、さまざまな目的で使用されます。
- 仮想サーバで稼働しているOSやソフトウェアを停止することなく,他の物理サーバへ移し替える技術である。
モニタリング(Monitoring)
モニタリング(Monitoring)は、コンピューターシステム、ネットワーク、アプリケーション、サービス、デバイスなどの動作やパフォーマンスをリアルタイムまたは定期的に監視し、異常や問題を早期に検出するプロセスです。モニタリングは、システム管理、セキュリティ、パフォーマンス最適化、トラブルシューティング、予防保守、およびリソースの効率的な利用に役立ちます。
- 各プログラムの実行状態や資源の利用状況を測定し,システムの構成や応答性能を改善するためのデータを得る。
コメントを残す