|
||||||||||||||
| 1 2 3 次のページ | ||||||||||||||
| はじめに | ||||||||||||||
|
今回は、CSVとBlackholeの2つのストレージエンジンを取り上げます。CSVエンジンとBlackholeエンジンは、共にMySQL 4.1から提供された比較的新しいエンジンです。以降ではそれぞれの特長やテーブルファイルの構成について解説します。 |
||||||||||||||
| CSVエンジン | ||||||||||||||
|
CSVエンジンとは、テーブルデータをCSV(Comma Separated Value)形式のテキストファイルにてディスク上に格納するストレージエンジンです。 テーブルデータをCSVファイルにて格納するメリットは何でしょうか。それは、他のソフトウェアとのデータ交換が容易にできることです。 例えば、MySQLを使用して作成したテーブルデータをExcelなどの表計算ソフトウェアに渡す場合を考えます。その対象テーブルがMyISAMエンジンなどの場合は「SELECT ・・・ INTO OUTFILE」文や他のバックアップツールなどを使用して、一度テーブルデータをCSVなどのテキストファイルに書き出します。そして、その書き出したファイルを表計算ソフトウェアに渡すことになると思います。 ところがCSVエンジンを使用すると、テーブルデータそのものがCSV形式のファイルですので、そのファイルを表計算ソフトウェアに渡せば良いのです(図1)。 ![]() 図1:CSVテーブルのデータ交換例 |
||||||||||||||
| CSVのテーブルファイル | ||||||||||||||
|
テーブルを作成する際、CREATE TABLE文のENGINE句に"CSV"を指定することにより、CSVテーブルを作成することができます。CSVテーブルを作成すると、そのデータベースのディレクトリ内に、どのようなカラム構成にてできているかなどのテーブル構造のデータが格納された「テーブル名.frm」とテーブルデータを格納する「テーブル名.CSV」の2つのファイルが作成されます。 次に示すは、「CSV_TEST」データベース内に「TEST00」という名前のCSVテーブルを作成した時のファイル一覧です。「CSV_TEST」ディレクトリ内に「TEST00.frm」ファイルと「TEST00.CSV」ファイルの2つが存在していることがわかると思います。
[root@localhost var]# ls CSV_TEST/
なお、CSVエンジンはインデックスをサポートしていないため、インデックス用のファイルは存在しません。 |
||||||||||||||
|
1 2 3 次のページ |
||||||||||||||
|
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||


