行ってきたのでちょっと忘れないうちにメモメモ。
個人の覚え書きなので抜け漏れ誤りがあります。そしてまだまとまってないです。
MySQLでNoSQL
- oinumeさん
- アメーバピグでのNoSQLの使用法
- Fusion-IOの話はしません。
- アプリでJavaの話
- 登録800万人
- アーキテクチャ
- ソケットサーバ(独自ミドルウェア)
- アプリサーバみたいなやつ
- トラフィック
- 2.1GBps
- 同時アクセス 10万
-
- MySQLのコンテキストスイッチが激しいと遅い
- IN 句を使う
- MySQLのコンテキストスイッチが激しいと遅い
-
- 大量にのfetchすると遅い
- MySQLをKVSとして使って誰得?
- JOINできない
- INDEXは効いている
- ALTER TABLEできない
- MongoDBに以降しやすい
-
- デメリットは
- キー以外でのカラムでの絞り込みできない
- 特定のカラムでソートできない
- デメリットは
- Fusion-IOに移行したら
- KVSが150台から6台へ
- DBを分ける理由が特にない。 (DBは分割しているのかという質問に対し)
- InnoDBを使っている
超CasualにつかるMySQL
- グニャラくん ★
- DeNAの人(あれ?)
- ブラジルでSennaとGroongaの開発してた
- MongoDBは運用ノウハウが少ないね
- 運用実績のないシステムの運用は大変
- 24時間365日守れるの?
- MySQLは枯れている
- ミドルウェアは真に必要な時に導入すれば良い
- カジュアルスキーマ
- value にXML JSON
- natural_keyとcreate_at update_atは分けておく
- インデックスが必要なら別テーブルを作る
- 動的にカラム追加するとき
- ALTER TABLEは遅い
- Fast index create - innodb pluginで多少ましになった
- openarkkit使うと良いよ - http://code.google.com/p/openarkkit/
- oak-online-alter-table - http://openarkkit.googlecode.com/svn/trunk/openarkkit/doc/html/oak-online-alter-table.html
- 似たのをFackBookが作ってる - OnlineSchemaChange.php
- MessagePack + Snappyで圧縮してる
- カジュアルスキーマでもなんとかなるよ
Performane Schema活用
- 奥野さん
- Performane Schema
- 情報を収集するツール
- MySQL 5.5から
- ストレージエンジンで実装
- 非破壊検査は難しい
- 検査対象を止めちゃダメ
- プロセス監視
- pgrep -x mysqld
- mysqladmin ping
- STATUS
- mysqladmin status
- SHOWコマンド
- SHOW GLOBAL STATUS
- INFORMATION_SCHEMA
- SELECTで取得できる
- EXPLAIN
- SHOW PROFILE
- ログ
- DBUGトレース
- 最強らしい
- PERFORMANCE_SCHEMA
- DtraceのSDTと似てる
- プラットフォームフリー
- オーバーヘッド
- CPU若干 無視できない
-
- 設定
- 5.5以上を使いましょう
- 起動中には変更不可
- 設定
[mysqld] performance_schema
-
- summaryテーブルをよく使う
- 時間の単位はピコ秒
event schedulerのはなし
- myfinderさん
- cronのようなもの
- create eventで作れる
- パーティショニングのrotateとかに使っている
- 注意
- マスタースレーブで有効にしないといけない
- イベントが動いたかどうかを監視しないといけない
- 障害復旧で設定変更しないといけない
MySQL4.0でCasual
- kazeburoさん
- http://www.slideshare.net/kazeburo/mysql-40-casual
- ソースコードが手に入らないので大変
- ぐぐるか持っている人に譲ってもらって
- innodb_buffer_pool_sizeの表示が正しくない UINTなのでオーバフロー?
- 4.0のクライアントは5.5.57につながらない
- GET LOCKでレプリケーションが止まる
マスタ n : 1 スレーブレプリケーション
- do_akiさん
- http://www.slideshare.net/do_aki/20110809-my-sql-casual-talks-vol2
- isuconに参加します
- シャーディングするとjoinできない
- ちょっとした集計するとき不便
- STOP SLAVE; CHANGE MASTER; START SLAVE;でマスターを切り替えていく