為什么innodb水平分表?
只有當并發量較高,表較大(大于千萬的表)時,分表分區才能提高查詢性能,否則的話只要合理的使用索引即可提高查詢性能。
水平分表水平分表目的是把一個大表分成多個小表,最佳效果是把不同訪問頻率的數據存儲在不同的表里。
特別是當不同數據的訪問頻率差異比較大時,更能體現分表的好處,因為表的體量小,索引層數小,占空間小,查詢數據效率更高。
另外一個是不同的表可以更好的支持并發查詢,例如一個查詢查表1,同時可以支持并發查詢查表2,個鎖個的行,或個鎖個的表,互不影響,更不會出現死鎖,因此并發性能更好。
分區表分區表是將表放在不同的磁盤扇區,降低單個磁盤I/O負載,因此可以提高查詢效率。