写真入りでちょっと恥ずかしいけど、SDC(Sun Developer
Connection)のインタビューを受けたので紹介。
SDC SQUARE: MySQLパフォーマンスチューニング TIPS
仕事に関する与太(オタ?)話など。適当に質問に答えてただけなのに、パフォーマンスチューニングの作業フロー図まで作成されてしまった。
いつも「MySQLを使うときはこうするべき」という観点から記事を書いているが、今日は逆に犯してはいけない過ちをリストアップしようと思う。
1. 全てのカラムにインデックスをつける
…
MySQL Clusterはデータノードが増えると性能が低下する???
そのような噂を聞いたことがないだろうか。この噂は事実を含んでいる面もあるが、殆どの場合は適切にスキーマを設計していないことが原因で起きる。実はMySQL
Clusterはその性能を遺憾なく発揮するためにはスキーマの設計が非常に大事なのである。
MySQL
Clusterは複数のデータノード(ノードグループ)に対して主キーの値に基づいて行単位で分散されている。主キーに偏りがなければ各データノードに格納される行数は均等になる。つまり、MySQL
ClusterはSharding(アプリケーションパーティショニング/Level2分散)を自ら行っていると言えるだろう。
MySQL …
こんにちは。今回はMyISAMストレージエンジンの並列インサート機能(Concurrent Insert)についてちょっと書いてみたいと思います。
MyISAMは皆さんご存知のように、テーブルレベルのロックのみで行レベルでのロックがサポートされていません。MySQLではSELECTコマンドの実行時に暗黙的リードロック(Shared Read lock)がかかるようになっており、一般的にはこのロックが対象のテーブルに存在している場合には、書き込み処理(INSERT,UPDATE,DELETE,ALTER TABLEなど)がロック待ちとなります。SELECTの実行が完了してからINSERTなどが実行される形になります。
…
[さらに読む]こんにちは。今回はMyISAMストレージエンジンの並列インサート機能(Concurrent Insert)についてちょっと書いてみたいと思います。
MyISAMは皆さんご存知のように、テーブルレベルのロックのみで行レベルでのロックがサポートされていません。MySQLではSELECTコマンドの実行時に暗黙的リードロック(Shared Read lock)がかかるようになっており、一般的にはこのロックが対象のテーブルに存在している場合には、書き込み処理(INSERT,UPDATE,DELETE,ALTER TABLEなど)がロック待ちとなります。SELECTの実行が完了してからINSERTなどが実行される形になります。
…
[さらに読む]こんにちは。今回はMyISAMストレージエンジンの並列インサート機能(Concurrent Insert)についてちょっと書いてみたいと思います。
MyISAMは皆さんご存知のように、テーブルレベルのロックのみで行レベルでのロックがサポートされていません。MySQLではSELECTコマンドの実行時に暗黙的リードロック(Shared Read lock)がかかるようになっており、一般的にはこのロックが対象のテーブルに存在している場合には、書き込み処理(INSERT,UPDATE,DELETE,ALTER TABLEなど)がロック待ちとなります。SELECTの実行が完了してからINSERTなどが実行される形になります。
…
[さらに読む]
MySQL
Clusterの導入事例資料が出来た。資料は下記のキャンペーンサイトから入手可能で、要登録だがささやかではあるがプレゼントもあるようなのでぜひ登録してみて欲しい。
http://www.computerworld.jp/eye/sun/200904/
某有名WebサイトにおけるMySQL → MySQL Clusterへの乗り換えの事例である。MySQL
Clusterの導入に興味のある方はぜひ見てみよう。オフィシャルなMySQL
Clusterの国内ユーザの事例パンフレットはこれが初なので、そういう意味でもこの資料は必見だ!!
ちなみに、この資料ではMySQL Cluster以外にも …
なぜ自分がMySQL関係の仕事をしているのか?もちろんMySQLが技術的に面白いということや、MySQLの優れた性能に惹かれているという部分はあるが、それよりも何よりもライセンスがGPLだということが一番の理由である。なぜGPLがいいのか?それは最も自由なライセンスだからである。
GPLよりBSDライセンスのほうが自由ではないのか?GPLソフトウェアを改変した場合、そのソフトウェアもGPLでリリースいなければいけない。BSDライセンスなら別のオープンソースでないライセンスにするという自由があるではないか。という反論があるかも知れない。
…