Linux-DB
システム構築/運用入門の8章「インデックスのチューニング(前編)」を読んだので、インデックスの基本について実際に手を動かしながら勉強してみようと思います。
内容としては、クエリを実行する際に、「インデックスだけにアクセスした場合」と、「データにもアクセスする場合」のI/O
回数の違いが、パフォーマンスにどれだけ影響を与えるか調べてみるというものです。
環境
[さらに読む]Ideas, releases, practical guides, and perspectives from the people building with MySQL.
Linux-DB
システム構築/運用入門の8章「インデックスのチューニング(前編)」を読んだので、インデックスの基本について実際に手を動かしながら勉強してみようと思います。
内容としては、クエリを実行する際に、「インデックスだけにアクセスした場合」と、「データにもアクセスする場合」のI/O
回数の違いが、パフォーマンスにどれだけ影響を与えるか調べてみるというものです。
環境
[さらに読む]
今回の会場となった日本工学院専門学校 蒲田キャンパス12号館は、各部屋がガラス張りで明るい感じです。校舎も綺麗。
展示はスポンサー展示も含めて2F, セミナーは3F.
廊下も広く導線もこんがらがず、会場提供感謝です。木村はサンのブースとMyNA/Firebirdのブース運営が主で、今回はあまりセミナー見学ができなかったのが少し残念でした。夕方にブースを全部みてまわりました。Sugar CRMからforkしたというvTigerは興味深かったですね。日本語化プロジェクトもすすんでいるということで、無償で使いたい方は是非!
…
一日目はセミナーを行わせていただきました。ざっくりWorkbenchは上記Flashでお楽しみください。
Spiderストレージエンジンのバージョン 2.7(beta)をリリースしました。
Spiderストレージエンジンは、database sharding用のストレージエンジンです。
http://spiderformysql.com/
今回の主な変更は以下です。
・1Spiderテーブルに付き、複数リンクを生成し、ロックなし参照時にロードバランスするようになりました。ロードバランスのルールは((サーバID
+ スレッドID) % リンク数)で決定されます。
複数リンクを生成するには、「host」「user」「table」「server」「socket」「wrapper」「database」「password」のテーブルパラメータを記述する際に、半角スペース区切りで複数記述してください。
例:「host 'h1 h2 h3'」
…
Googleがリリースしている有名なMySQL 5.0用パッチは、なんとBSDライセンスで提供されている。MySQLは周知の通りGPLでリリースされているが、GPLソフトウェアはその性質上、改変するとそのソフトウェアもGPLでリリースしなければいけない。だったら何故そのパッチをBSDライセンスで提供することが出来るのか?!ホントにそんなこと出来るのか?!Googleは何か間違ってるんじゃないか?!などと疑問に思われることだろう。
結論から言うと、Googleは何らライセンスの間違いを犯しているわけではなく、GPLソフトウェアにGPL互換のライセンスでパッチを書くことが出来るのは、GPLの条文そのものにしっかりと書いてあるのである。
以下、GPLv2の日本語訳より抜粋。 http://sourceforge.jp/projects/opensource/wiki/licenses/
InnoDBはMyISAMと比較して安全(OSクラッシュや電源断が発生してもテーブルが壊れない)分、書き込みが遅い。データベース屋さんからすると、それは当然のことでMyISAMがおかしいんだ、ということになり、だからバッテリバックアップ機能のついたRAIDカードを使うんだ、という話になる。でも、MyISAMを使っているウェブ屋さんの現場では、場合によって多少データが消えてもかまわないから、安いハードウェアで大量のアクセスを捌きたい... って乖離があるんじゃないかなーと思ってる。
そのような場合には、my.cnf の innodb_flush_log_at_trx_commit パラメータを調整することで、MyISAMに比肩する書き込み速度を得ることができる(そのかわり、クラッシュや電源断の場合は、設定によって直近1秒以内の変更が失われる)。
…
[さらに読む]松信氏の、
MyISAMとInnoDBのどちらを使うべきか Twitterで話題になってたので簡単にまとめました。
というエントリが人気を博しているが、松信氏が言うように最近はTwitterでMySQL関連の話題も結構増えてきているように思う。Twitterの流行の勢いは凄まじく、今は右を向いても左を向いてもTwitter、寝ても覚めてもTwitter、猫も杓子もTwitterという雰囲気である。従ってMySQLもTwitterで盛り上がるのは当然の成り行きというもであるし、Twitterを活用しない手はない。
…
[さらに読む]
著者鈴木啓修様より献本御礼。(←一度言ってみたかったw)
本書は鈴木氏の前著である「MySQL全機能リファレンス」からのアップデートであるが、この度は最新バージョンであるMySQL
5.1対応になっての登場である。
今の時代、一家に一台テレビがあるように、はたまたパソコンがあるように、いやいや冷蔵庫があるように、一家に一冊本書があってもいいのではなかろうか。MySQLがオフィシャルに提供しているリファレンスマニュアルを除いて、MySQLをここまで網羅的に解説している書籍を私は知らない。その網羅性は目次だけで13ページも費やしていることからも、容易に想像出来ることだろう。
…
Twitterで話題になってたので簡単にまとめました。
●MyISAMにしか無い機能を使いたい場合はMyISAMを使うしかない
・全文検索 (TritonnやSphinx)
・GIS
●InnoDBの利点(MyISAMの欠点)
▲障害対応系
・クラッシュしても再起動するだけでリカバリができる
・クラッシュリカバリにかかる時間はテーブルサイズに比例するようなことはなく、コミット済みのデータは修復できる
(巨大なMyISAMテーブルのREPAIRには数日単位で時間がかかることがある)
・オンラインバックアップができる
・INSERTやLOAD
DATAなどを実行している途中でCtrl+Cでその更新系SQL文を止めても、テーブルは壊れないし、中途半端な状態で更新されることも無いし、スレーブが止まることも無い
▲性能系 …
追記: マジメな比較はこちら:Open database life: MyISAMとInnoDBのどちらを使うべきか
MyISAMだとPostgreSQLと並べられた時なんか恥ずかしいww
下向いちゃうしww
ウェブサイトにはせめてInnoDB使って欲しい・・・
勉強会とかで発表されたら・・・・もう最悪ww
せめて普通にトランザクションやMVCCぐらいは対応して欲しい。
常識的に考えて欲しいだけなんです!
MyISAMでテーブルロックしちゃった時の遅さとか分かる?
あのね?たとえばピーク時10〜20並行ぐらいで書込みとか行くでしょ?
それぞれ別の接続で来るわけじゃない?
…
[さらに読む]