考虑MEMORY
对经常访问、只读或很少更新的非关键数据使用表。在实际工作负载下将您的应用程序与等效
项InnoDB
或MyISAM
表进行基准测试,以确认任何额外的性能都值得冒丢失数据的风险,或在应用程序启动时从基于磁盘的表复制数据的开销。
为了获得表的最佳性能MEMORY
,请检查针对每个表的查询类型,并指定用于每个关联索引的类型,B 树索引或散列索引。在CREATE INDEX
语句中,使用子句USING BTREE
or
USING HASH
。>
B 树索引对于通过or等运算符进行大于或小于比较的查询来说速度很快BETWEEN
。哈希索引仅对于通过运算符查找单个值=
或通过运算符查找一组受限值的查询来说速度很快IN
。对于为什么
USING BTREE
通常是比默认更好的选择USING HASH
,请参阅
第 8.2.1.23 节,“避免全表扫描”. 有关不同类型MEMORY
索引的实现细节,请参阅
第 8.3.9 节,“B 树和哈希索引的比较”。