【问题标题】:Partitioning or Indexing for millions of records in a table?对表中的数百万条记录进行分区或索引?
【发布时间】:2013-11-26 11:48:52
【问题描述】:

我有一个包含 20+ 百万(将在一个月内达到 60+)记录的表。现在我必须非常快地获取记录。

我正在使用 MyISAM 引擎,我不想在插入记录期间产生问题(听说索引会损害插入)。所以请告诉我哪个更好的索引或分区。

我应该使用哪些其他因素(缓存或缓冲)。如果可能,请举例说明。

谢谢

【问题讨论】:

标签: mysql performance indexing partitioning data-partitioning


【解决方案1】:

索引与分区不是一个“更好”的问题,因为它们旨在解决不同的问题。索引主要是一种性能特性,而分区主要是一种管理特性(以便于管理大型数据库)。

但是,存在重叠,因为分区也可以在某些用例中提高性能——但不是一般情况下,只是在某些情况下。分区不良的表也会损害性能——就像设计不良的索引一样。

如果您想要一个对您有进一步帮助的答案,您需要详细解释您的用例。

【讨论】:

  • 嗨,Markus,我已经阅读过它,但是这个表中发生了很多插入。这就是为什么无法建立索引的原因,所以我询问了分区或其他诸如缓存之类的事情。请让我知道在这种情况下你会怎么做。
  • @aamir 索引是解决性能问题的第一选择。先检查一下。为什么您认为索引插入过多?
  • 实际上我们已经知道如果我们要使用索引,这个x表是面插入太多,而不是一段时间后它会花费我们更多的开销。但我会对照它检查所有这些案例。并感谢您的回复。
  • @aamir 再次提醒一下:如果您想要一个对您有进一步帮助的答案,您需要详细解释您的用例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-27
  • 2021-03-15
  • 2011-01-13
  • 2021-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多