データ解析用にMySQLのMEMORYストレージエンジンを使っています。基本的にはinnodbを使っているのですが、インデックス付けに莫大な時間(日単位)がかかることがあり、取り回しが面倒なので、常時メモリに入れておき、定期的にinnodbにセーブするという運用にしています。 さて、このMEMORYストレージエンジンですが、いくつか落とし穴?があります。これについてメモしておきます。 キーの種類の違いの注意する MySQLでは、キーを作成する際、USING HASH / USING BTREEという二つのオプションが選べます。MEMORYストレージエンジン以外では、BTREEしか使えませんが、MEMORYストレージエンジンではUSING HASHがデフォルトです。これが結構くせものです。 AUTO_INCREMENTでつけられたような任意の番号は、大小関係が問題にならないことが多いと思いま