summary:
ランダムアクセスの大きな特徴の一つは即時アクセスが可能である点であり,データの物理的な配置に関係なく,理論的には一定の時間でアクセスできることである.例えば,メモリアドレスを指定すれば即座にデータを読み書きできる.加えて,アクセス時間が比較的均一であるという特性も有する.記憶装置内のどの位置にあるデータにも同程度の時間でアクセス可能であり,メモリ[RAM]ではほぼ均一なアクセス時間が実現される.但し,HDDやSSDでは物理的な制約や内部アーキテクチャの影響を受けるため,完全な均一性は保証されない.
ランダムアクセスを実現するハードウェアとしては,DRAMやSRAMといった半導体メモリを用いたRAM[Random Access Memory]が代表的である.また,HDDやSSDといったストレージデバイスもランダムアクセスが可能だが,HDDはシーク時間やロータリー遅延の影響を受けるため,アクセス時間にばらつきが生じる.SSDもウェアレベリングや内部キャッシュの状態によってアクセス時間が変動することがある.一方で,CPUキャッシュメモリはランダムアクセスによって高速なデータ取得を実現している.
この方式はデータ構造にも適用されており,例えば配列[Array]ではインデックスを指定することで即座に特定の要素にアクセスできる.また,*ハッシュテーブル[Hash Table]においては,キーをハッシュ関数で変換することで直接データにアクセス可能である.一方で,リンクリスト[Linked List]のようなデータ構造は先頭から順番にたどる必要があるため,ランダムアクセスには適していない.他にも,木構造[Tree]の場合は完全なランダムアクセスではなく,ルートから目的のノードまでたどる必要があるが,バランスの取れた木構造では対数時間でのアクセスが可能である.
Mathematics is the language with which God has written the universe.