Ore no homepage
MySQL InnoDBの圧縮に関する雑感
7月は一回も記事書かなかった。3年くらい前からInnoDBの圧縮をしてみたり止めてみたりって行為を度々しているので、所感についてまとめとく。
2011年頃(MySQL5.1)
容量削減目的で圧縮を試す。
環境
- CPU: Intel(R) Xeon(R) CPU E5620 @ 2.40GHz(仮想8コア)×1
- memory: 24GB
- storage: ioDrive Duo(2面合わせて600GBくらい。SW RAID0で組む。)
- OS: CentOS 5.4(kernel: 2.6.18-164.el5)
- filesystem: xfs(noatime, nobarrier)
- MySQL: 5.1 innodb plugin
- Query: ピーク時に更新系が5kqpsくらいだったかなあ…忘れた。
- 容量は半分に削減できた。
- パフォーマンスはあまり変わらなかった。
- CPU使用率若干増えた。
- iowaitあまり変わらなかった。ストレージにフラッシュ使ってるってのもあるかもね。
- 非圧縮のスレーブに比べて、ピーク時のレプリ遅延が甚だしかった。
- 更新も参照もマスタに向ける。スレーブはバックアップ取得用と昇格用として、オンライン処理はさせないようにして対処。
2013年頃(MySQL5.5)
同じく、容量削減目的で圧縮を試みる。
環境
- CPU: Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz(仮想16コア)×2
- memory: 128GB
- storage: ioDrive2 1.2TB
- OS: CentOS 6.2(kernel: 2.6.32-220.17.1.el6.x86_64)
- filesystem: xfs(noatime, nobarrier)
- MySQL: 5.5
- Query: ピーク時に更新系クエリが5kqpsとか。
- 容量は半分に削減できた。
- パフォーマンスはあまり変わらなかった。
- CPU使用率若干増えた。
- iowaitあまり変わらなかった。
- レプリ遅延しやすくなる現象は5.5でも変わらず
- スレーブを使わなきゃマスタが耐えられない、さらに遅延が致命的になるサービスだったので、圧縮するのをやめた。
- InnoDBの圧縮は容量削減という目的においては非常に効果がある。
- 圧縮が効率的に行われているかはちゃんと見るべき。
- select * from information_schema.INNODB_CMPで見れます。
- スレーブがレプリ遅延しやすくなるので注意。
- スレーブを使わない運用を検討する。
- スレーブを使う場合は、どれくらい遅延するのかを計測したうえで、サービスレベルとして更新遅延が許容されるサービスか?を吟味する。
- パフォーマンスはそれほど変わらない。メモリに乗りやすくなるからパフォーマンスに寄与するというような記事をネットで見かけるが、自分のところではそうでもなかった。
- 誰か5.6とか5.7でも試してほしい。
Information
welcome!Top Posts
- - 開発支援系のサービスが充実しすぎて転職か廃業を考えた [31,692 views]
- - about [9,769 views]
- - vm.swappiness=0は重要 [8,409 views]
- - serverspec インフラ層のテスト項目を考える [7,185 views]
- - MySQL ibdata1が肥大化する理由(記事の意訳) [6,561 views]
- - MySQL バイナリログを使ったデータリカバリ [6,559 views]
- - Cassandraメモその1(インストール、データモデル、データ操作について) [6,140 views]
- - Mac OSX開発環境構築メモ、便利なツールとか [6,007 views]
- - Mac OSX+iterm2+tmux+zsh [5,452 views]
- - knifeクライアントの設定とchefの実行 [5,124 views]
Archives
- 2014年8月 (1)
- 2014年6月 (2)
- 2014年5月 (3)
- 2014年4月 (2)
- 2014年3月 (3)
- 2014年1月 (1)
- 2013年12月 (3)
- 2013年11月 (2)
- 2013年10月 (3)
- 2013年8月 (1)
- 2013年7月 (2)
- 2013年6月 (1)
- 2013年5月 (3)
- 2013年4月 (3)
- 2013年3月 (4)
- 2013年2月 (2)
- 2013年1月 (2)
- 2012年12月 (3)
- 2012年11月 (1)
- 2012年10月 (4)
- 2012年9月 (1)
- 2012年7月 (3)
- 2012年6月 (2)
- 2012年5月 (1)
- 2012年4月 (2)
- 2012年3月 (1)
- 2012年2月 (1)
- 2012年1月 (1)
- 2011年11月 (4)