• Email
  • Like
  • Save
  • Private Content
  • Embed
 

My sqlカジュアル パーティショニング

by on Jun 27, 2012

  • 1,566 views

http://atnd.org/events/28568 の発表内容です。 ...

http://atnd.org/events/28568 の発表内容です。
↓ 実演中に紹介したスクリプト
--------


■新規テーブル作成時

CREATE TABLE `battle_result` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`player_id` varchar(255) NOT NULL,
`opponent_id` varchar(255) NOT NULL,
`result` int(11) NOT NULL,
`created_at` datetime NOT NULL,
PRIMARY KEY (`id`)
) PARTITION BY RANGE(id) (
PARTITION p01 VALUES LESS THAN (10),
PARTITION p02 VALUES LESS THAN (20),
PARTITION p03 VALUES LESS THAN (30)
);

■既存テーブルにパーティションを追加

ALTER TABLE `battle_result` PARTITION BY RANGE( ID ) (
PARTITION p01 VALUES LESS THAN (10),
PARTITION p02 VALUES LESS THAN (20),
PARTITION p03 VALUES LESS THAN (30)
);

■既存テーブルのパーティションに追加

ALTER TABLE `battle_result` ADD PARTITION (
PARTITION p04 VALUES LESS THAN (40)
);


■(データ追加)
INSERT INTO battle_result ( player_id, opponent_id, result ) values ( '光宙(ぴかちゅう)', '金星(まぁず)', 1);
INSERT INTO battle_result ( player_id, opponent_id, result ) values ( '美俺(びおれ)', '金星(まぁず)', 1);
INSERT INTO battle_result ( player_id, opponent_id, result ) values ( '金星(まぁず)', '黄熊(ぷう)', 0);
INSERT INTO battle_result ( player_id, opponent_id, result ) values ( '月(らいと)', '天空(ありあ)', 1);
INSERT INTO battle_result ( player_id, opponent_id, result ) values ( '光宙(ぴかちゅう)', '金星(まぁず)', 1);

■既存テーブルのパーティションを削除

ALTER TABLE `battle_result` drop PARTITION p01;

■各パーティションの分割状況を確認

SELECT partition_name, table_rows FROM information_schema.partitions WHERE table_name="battle_result";

■SQLの実行計画を確認

EXPLAIN PARTITIONS SELECT * FROM battle_result WHERE opponent_id="金星(まぁず)" ORDER BY id desc LIMIT 5;
EXPLAIN PARTITIONS SELECT * FROM battle_result WHERE id="5";

Accessibility

Upload Details

Uploaded via SlideShare as Apple Keynote

Usage Rights

© All Rights Reserved

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel

2 Embeds 1,047

http://spring-mt.tumblr.com 1041
http://webcache.googleusercontent.com 6

Statistics

Likes
0
Downloads
3
Comments
0
Embed Views
1,047
Views on SlideShare
519
Total Views
1,566
Post Comment
Edit your comment

My sqlカジュアル パーティショニング My sqlカジュアル パーティショニング Presentation Transcript