MySQL性能:单表或多个表(MySQL Performance: Single table or

2019-06-26 15:04发布

我有一个8套约30000行的每一组数据,该数据只是针对不同的语言相同的结构。

该网站的前端将获得相对高的业务。

所以我的问题是关于MySQL的性能,如果我应该有一个表有一列来区分哪一组数据属于(即coloumn“语言”),或者为每种语言创建一套单独的表?

(为什么如果可能的解释是真正的帮助)

在此先感谢沙堤

Answer 1:

我会去与单个表的设计。 寻道时间,适当的指数,应该是完全一样的,无论是“宽”表是如何。

除了性能问题,这将简化设计,并与其他表(外键等)的关系。



Answer 2:

以“每种语言一代表”设计的另一个缺点是,你必须每次添加一个时间来改变你的架构。

语言栏意味着你只需要添加数据,这是不侵扰。 后者是要走的路。



Answer 3:

我想用一台设计不攻自破了。 由于language_key的基数是非常低的,我会在language_key,而不是定义索引分区表。 (如果你的数据库支持它。)



Answer 4:

我同意其他答复 - 我会用一个表的。 至于性能优化的一些东西都对性能有更大的影响的潜力:

  • 适当的索引
  • 查询效率写入/测试
  • 艇员选拔适当的存储引擎(多个)
  • 硬件
  • 型和文件系统的结构(S)
  • 优化MySQL的配置设置

...等我的粉丝高性能的MySQL



文章来源: MySQL Performance: Single table or multiple tables