はじめに
こんにちは。今回は、データベースシステムのハードウェアについてまとめます。
データベースシステムの構築においてはハードウェアが必要となります。データベースの物理設計を行う上で、ハードウェアの理解は不可欠です。プロセッサ、メモリ、ストレージなど様々なハードウェアがデータベースシステムに関わっています。
本文
コンピュータの構成要素
コンピュータは、多様な目的で使用できるようにするために、記憶装置にプログラムを格納し、それをプロセッサ(制御装置と演算装置)が解釈して実行するプログラム内蔵方式で動作しています。
プログラム内蔵方式では、演算を行う演算装置のほかに、プログラムを制御する制御装置、プログラムやデータを記憶しておく記憶装置が必要となります。演算装置と制御装置は、プロセッサまたはCPU(Central Processing Unit)と呼ばれるコンピュータの心臓部にあたるハードウェアです。
記憶装置(主記憶装置)はメモリと呼ばれ、入力したデータ、出力するデータ、CPUで演算するデータが全て格納されています。
また、プログラムやデータを毎回入力装置から入力するのは大変なので、補助記憶装置(ストレージ)を用意し、記憶装置の内容を保存しておきます。これにより、コンピュータの電源を落としてデータを保全できるようになります。補助記憶装置にはハードディスとやSSD(Solid State Disk)などが用いられます。
プロセッサ
プロセッサは、コンピュータの内部でコンピュータを動作させるためのハードウェアです。プロセッサが使われる装置の代表的なものに、コンピュータの中心であるCPUがあります。
プロセッサの高速化技法としては、処理速度(クロック周波数)を上げるのが基本ですが、命令を少しずつずらして並列処理するパイプラインなどの技法があります。近年では、複数のプロセッサに処理を割り振るマルチプロセッサ技術が発展しています。
メモリ
メモリ(記憶装置)とは、コンピュータにおいて情報の記憶を行う装置です。メモリには大きく分けて読み書きが自由なRAM(Random Access Memory)と読み出し専用のROM(Read Only Memory)の2種類があります。
RAMは一般的に電源の供給がなくなると内容が消えてしまうという特徴があります。そのため、電源を切った後も保存しておきたい情報は補助記憶装置に対比させておき、必要に応じてメモリに呼び出します。
RAMには、一定時間経過するとデータが消失してしまうDRAM(Dynamic RAM)と電源を切らない限り内容を保持するSRAM(Static RAM)の2種類があります。
主記憶装置に使うメモリには、コストと容量の関係でDRAMが用いられます。しかし、プロセッサがメモリに直接アクセスすることが多くなると処理速度の低下が起こるので、高速なキャッシュメモリを間において両者のギャップを埋めます。また、2ビットの誤りを検出し、1ビットの誤りを訂正できるECCメモリを使用することで、信頼性を上げることができます。
キャッシュメモリ
キャッシュメモリは、プロセッサとメモリの性能差を埋めるために両者の間で用いるメモリです。高速である必要上がるためSRAMが用いられます。近年では、CPUのチップ内に取り込まれ内蔵されることが一般的です。
キャッシュメモリを用いてCPUとメモリ(主記憶装置)がやりとりするとき、データがキャッシュメモリ上にある確率のことをキャッシュメモリヒット率と言います。
また、そのヒット率がわかることでキャッシュメモリに存在する場合もしない場合も含めた平均的なアクセス時間である実効アクセス時間を計算することができます。
実効アクセス時間を求める式は次の通りです。
実効アクセス時間 = キャッシュメモリへのアクセス時間 ✖︎ ヒット率 + メモリへのアクセス時間 ✖︎ (1 - ヒット率)
ストレージ
ストレージ(補助記憶装置)とは、主記憶装置を補助し、電源を切った後もデータを保持するための機器です。
よく使われているものに、ハードディスクやフラッシュメモリを用いたSSDやUSBメモリなどがあります。
- ハードディスク
磁性体を塗付した円盤を重ねた記憶媒体です。数Tバイト程度の大容量のデータを格納することができます。
- フラッシュメモリ
フラッシュメモリは、書き換え可能で、電源を切ってもデータが消えない半導体メモリです。ROMですが、書き換えが可能なPROM(Programmable ROM)の一種です。記憶媒体として、USBメモリやSSD(Solid State Drive)、SDメモリカードなど様々な形態で用いられています。
まとめ
いかがでしたでしょうか?