将mysql表拆分成小的没有物理分配的优点是什么?

我在公司看过这样的devise。

一个大的mysql表在相同的数据库中的同一个服务器上被拆分成几十个相同的模式,没有任何物理分布,没有innodb_file_per_table ,没有分区等。数据均匀分布,读/写访问模式是统一的横跨所有桌子。

性能方面有什么优势?

如果您的读/写均匀分布,我认为没有性能优势。 例如,如果你写得很重,并且只写2-3个表格,那么你就可以受益(见本演示文稿幻灯片28-34)。

关于运营效益的一些想法:

  • 一旦数据太多或stream量过多,扩大/碎片就会更容易。
  • 根据您的备份方式,如果您可以确定丢失了哪些表中的数据,可能会更快地恢复。

编辑:还有一个想法:如果查询是并行执行的,则可能会有性能优势 – 如果工作集合在内存中,则可以从RAID中获得更多的IOPS,以及更好地定位多核系统。