1

我在采访中被问到是否有一个包含 300000000 个数据和 300 个字段的表,那么当人们在该表中搜索数据时,性能会很慢。那么您喜欢遵循哪些步骤来优化表格和搜索数据。

我只是说在搜索子句中经常使用的那些字段上放置许多索引。但是问这个问题的人是个例外,他有很多解决方案来处理这种情况。

这里有很多经验丰富的人浏览这个论坛。所以我期待有很多方法来处理这种情况。因此,请详细指导我需要遵循的所有可能措施。谢谢

4

2 回答 2

3

乍一看,我会考虑:

  • 对数据进行分区
  • 归档旧数据
  • 将表格分解为相关表格
  • 获得更好的硬件
  • 将查询重写为高性能
  • 使用全文搜索
  • 当然还有索引。

当然还有很多其他的性能调优方法。其中许多是针对特定情况的。这是一本厚厚的书籍中涵盖的东西,不是在互联网上可以真正回答的东西。

于 2013-06-20T13:26:09.607 回答
2

对于一张桌子来说,300 列听起来相当多。也许应该将数据规范化为几个表。请注意 - 规范化本身可能会导致性能问题,特别是因为大型 SQL 连接,所以完美的规范化也不总是最好的解决方案。

最后,一旦你找到一两个可能的解决方案,我会打电话给面试官,告诉你你的发现,并询问你是否还有其他解决方案错过了。

于 2013-06-20T13:26:02.703 回答