SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

イベントレポート

【Sun Tech Days 2008セッションレポート】「MySQL: Database for Web 2.0」

  • このエントリーをはてなブックマークに追加

 12月2日から開催された「Sun Tech Days 2008 in Tokyo」では、サン・マイクロシステムズ株式会社MySQLビジネス統括本部の梶山隆輔氏が「MySQL: Database for Web 2.0」と題したセッションで、MySQLのデータベース設計やSQLのチューニングについて解説した。

  • このエントリーをはてなブックマークに追加

 12月2日から開催された「Sun Tech Days 2008 in Tokyo」では、サン・マイクロシステムズ株式会社MySQLビジネス統括本部の梶山隆輔氏が「MySQL: Database for Web 2.0」と題したセッションで、MySQLのデータベース設計やSQLのチューニングについて解説した。

サン・マイクロシステムズ株式会社MySQLビジネス統括本部 梶山隆輔氏
 サン・マイクロシステムズ株式会社MySQLビジネス統括本部梶山隆輔氏

利用シーンが広がるMySQL

 梶山氏はまず、MySQLはいまやLAMP環境にとどまらない、広範囲に利用される汎用的なRDBMSであることを強調した。どうしてもMySQLには「ウェブ」「小規模」というイメージがあるが、エンタープライズ分野や、ミッションクリティカルな分野でも使われるようになってきているという。

 最近は「Enterprise 2.0」というキーワードで、社内の大規模なシステムをMySQLで置き換えるケースも出てきている。国内の事例では新生銀行が知られている。また、あまり知られてない事例として、アドビシステムズやサイボウズ、キオスク端末など、商用ソフトウェアや専用端末にMySQLが組み込まれているケースもある。

ストレージエンジンを使い分ける

 梶山氏は、MySQLのシステムアーキテクチャーで技術的に最も重要でオリジナルな特徴として、プラガブルなストレージエンジン(Pluggable Strorage Engine)を挙げた。MySQLでは、データベースまたはテーブルごとにストレージエンジンを切り替えることができる(表参照)。正しいストレージエンジンを選択すれば、多くのアプリケーションで性能の向上が可能だという。

MySQL 5.0のネイティブストレージエンジン
ストレージエンジン 特徴
MyISAM MySQLの標準ストレージエンジン
InnoDB トランザクション、外部キーをサポート
Memory テーブルをメインメモリ上に配置して高速に参照できる
Archive SELECTとINSERTのみ可能、ロギング・監査向け
Cluster 非共有型クラスタ
CVS フラットなファイルデータをSQLで参照
Merge パーティショニング的機能(5.0以前)
Federated 分散配置したデータに透過的にアクセス
Custom エンジンを開発するためのベースとなるエンジン
Blackhole /dev/nulll

 このうち伝統的な2つのストレージエンジンについては、次のようなパフォーマンス上のポイントを特に注意するよう語った。

MyISAM
  • パフォーマンスではkey_buffer_sizeが重要で、MySQL+MyISAMのみを利用していれば、メインメモリの25~33%を割り当てる
  • show status like 'key%'の結果からキャッシュ率を見ることが重要で、逆にkey_blocks_unreadの値が大きいときはキャッシュサイズが大きすぎる可能性もある
InnoDB
  • パフォーマンスではinnodb_buffer_pool_sizeが重要で、可能な限り大きく取り、MySQL+InnoDBのみを利用していれば、メインメモリの80%程度を割り当てる

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
データ型はなるべく小さくコンパクトに

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
イベントレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3374 2008/12/10 12:55

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング