 |
|
前のページ 1 2
|
 |
MySQLストレージ・エンジンの概要
|
MySQLデータベースサーバに実装されているストレージ・エンジンとは、ディスク上の格納ファイル形式に合わせてテーブルデータを管理・格納しデータへのアクセス処理を実行する機能です。
|
ストレージ・エンジンの構造上の特徴
|
一般的なRDBMSでは単一のデータ格納方式しかサポートされていません。MySQLデータベースは、格納機能部分にPluggable Storage Engine Architectureと呼ばれる構造を採用しているので複数のデータ格納方式をサポートすることが出来ます。
Pluggable Storage Engine Architectureはストレージ・エンジンをモジュール化するので、テーブル毎に最適な格納方式を実現するストレージ・エンジンを選択することができます。従ってアプリケーションの特性の違いによって適したストレージ・エンジンを使用できるというメリットになっています。
|
ストレージ・エンジンの使用上の特徴
|
JDBC、ODBC等のCONNECTORを使用してのデータアクセスにおいては、SQLの「解析」、「実行計画作成」を経て「実行処理」を対象のストレージ・エンジンに渡すためストレージ・エンジンの違いを意識せずにSQLを使用することができます。
実際にはSQLが同じでも実行するストレージ・エンジンによって処理が異なるため、ストレージ・エンジン固有の機能(トランザクション等)は意識する必要があります。
|
ストレート・エンジンの提供
|
ストレージ・エンジンは、MySQL AB社、MySQLのパートナー会社、コミュニティ、によって開発、提供されています。また、既成のストレート・エンジンのみならず独自のストレージ・エンジンを作成、組み込むことができます。
|
ストレージ・エンジンの紹介
|
MySQLデータベースでは、MyISAMとトランザクションをサポートするInnoDBの2種類が主に使われています。以下に代表的なストレージ・エンジンの概略を紹介します。
|
MyISAM
|
MySQLデータベースの標準ストレージ・エンジンです。テーブル単位ロックをサポートしディスク・ベースでは最も高速なストレージ・エンジンとされています。トランザクション機能はサポートしていませんのでデータウェアハウス等の参照系に適しています。
|
InnoDB
|
フィンランドのinnobase社(Oracle社が2005年に買収)がオープンソース・ソフトウエアとして提供するストレージ・エンジンです。コミット、ロールバック、クラッシュリカバリの各機能を備えたトランザクションセーフ(ACID準拠)のストレージ・エンジンです。行単位ロックのサポート、マルチユーザでの並行性を確保しトランザクション機能をサポートする最も高速なストレージ・エンジンとされています。
|
Merge
|
複数の同一のMyISAMテーブルを一つのMyISAMテーブルとして扱うことが出来ます。大きなテーブルを小さなテーブルに分割して管理を容易し、より効率的な検索や修正、作成に適しています。
|
Memory(Version 4.Xまでは名称がHeap)
|
メモリ上にテーブルを配置するため高速な処理が可能になります。テーブルに格納されたすべてのデータは正常、障害を問わず終了時に消失するのでテンポラリテーブルに適しています。
|
BDB(Berkeley DB)
|
カリフォルニアのSleepycat Software社(Oracle社が2006年に買収)がオープンソース・ソフトウエアとして提供するストレージ・エンジンです。ページ単位ロックとコミット、ロールバックを含むトランザクション機能をサポートしています。
|
EXAMPLE
|
独自のストレージ・エンジンを作成する場合にサンプルとなるストレージ・エンジンです。
|
FEDRATED
|
ローカルのMySQLのテーブルと同様にリモートのMySQLサーバーのテーブルを扱えるようにするエンジンです。
|
ARCHIVE
|
MySQLのテーブルを圧縮してディスク上のデータ格納領域を削減するストレート・エンジンです。レコードの変更が出来ないため記録保持に適しています。
|
CSV
|
CSV形式でディスクに格納するストレート・エンジンです。他のアプリケーションとの互換性に適しています。
|
BLACKHOLE
|
ディスクにもメモリにも実体としてのテーブルを持たないストレート・エンジンです。
|
.NDB
|
2003年に買収をしたAlzato社のNDB Clusterを起源とするストレージ・エンジンです。SPOF(Single Point Of Failure)が無い耐障害性、99.999%の可用性、高スケーラビリティを提供します。
|
次回は
|
MySQL ClusterとMySQLの適用事例を紹介します。
|
前のページ 1 2
|
|

|
著者プロフィール
日本ヒューレット・パッカード株式会社
日本ヒューレット・パッカードは、ITインフラストラクチャ、コンサルティング&インテグレーションサービスからPC、PDA、プリンタまで幅広い製品、サービスを提供しています。
|
|
|
|