23章永続ストレージ
コンピュータができてほとんどの人間ができないことは、段ボール箱に閉じ込められ、倉庫でじっとしていることだ。
—— ジャック・ハンディ
実行中のプログラムは、RAM(ランダムアクセスメモリ)に格納されているデータにアクセスする。RAMは非常に高速だが、高価な上に常に電源を供給していなければならない。電源が失われると、RAMの中のデータはすべて失われてしまう。ディスクドライブはRAMよりも遅いが、容量が大きく、コストが抑えられ、誰かが間違えて電源コードを引っこ抜いてもデータは残る。そのため、コンピュータシステムでは、ディスクに保存するかRAMに保存するかで最善のバランスを取るために多くの労力が費やされてきた。プログラマとしては、ディスクなどの不揮発性媒体を使ってデータを読み書きできる永続ストレージが必要だ。
本章では、それぞれ異なる目的のために最適化されているさまざまなタイプのストレージを取り上げる。具体的には、フラットファイル、構造化ファイル、データベースだ。なお、入出力以外のファイル操作は、「20章 ファイル」で説明した。
23.1 テキストファイル
最も単純な永続ストレージは、昔からあるフラットテキストファイルである。データが非常に単純な構造で、全体をディスクとメモリの間でやり取りするだけなら、これで十分に機能する。プレーンなテキストデータは、この方法が適している場合がある。
レコードとは、複数のフィールドで構成された、関連するデータのひとまとまりを指す用語である。
パディングされたテキストファイルでは、レコードの個々のフィールドの長さが固定されており、その長さに足りない部分はパディングされる(通常はスペース文字で)。そのため、レコードを構成する各行は同じ長さになる。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access