- November 22, 2007 3:18 PM
HASH:
KEY:
→
データを均等に分けたいとき、INT型のカラム、またはINT型を返すファンクションを指定できるときは、HASHでパーティショニングする。
それ以外の時にはKEYでパーティショニングする、という使い分けになる。
create table hash_table_1(a int primary key, b timestamp) engine=innodb partition by hash(a) partitions 2;
- 完全に均等に配置する
- MOD関数を利用
- INT型、またはINT型を返すファンクションを指定する
KEY:
- 全然均等では無い
- MD5関数/PASSWORD関数もどきを利用
- 指定するカラムのデータ型は何でもOK
→
データを均等に分けたいとき、INT型のカラム、またはINT型を返すファンクションを指定できるときは、HASHでパーティショニングする。
それ以外の時にはKEYでパーティショニングする、という使い分けになる。