SQL表设置建议

Ozz*_*zzy 5 mysql sql optimization filter

基本上我有一个来自异地服务器的xml提要.

xml feed有一个参数?value = n now N只能在1到30之间

我选择了什么值,XML文件总会返回4000行.我的脚本每天会为每个值调用此xml文件30次.那就是120000行.我将对这些行进行非常复杂的查询.但最重要的是我将始终按值过滤等等SELECT * WHERE value = 'N'.总是会使用它.

现在最好有一个表存储所有120k行?或30个表是4k行存储?

编辑:有问题的SQL数据库将是MySQL

编辑:只是为了让它更清晰,数据将每天更新,因此旧表将被覆盖,我不想要任何存档解决方案,只是存储数据的最佳方式,以尽可能少的性能瓶颈,输出后的数据库结果将被缓存并每天更新.

编辑:我想我对自己的好处太模糊了:(基本上这些供稿是排行榜,每个价值都是不同的排行榜位置

只有在排行榜位置发生变化且总是只有120k行时,才会更新这些值.不多也不少.

让我们说:

  1. 蓝色
  2. 绿色
  3. 红色

那是当前的排行榜和Feed返回的下一次更新:

  1. 蓝色
  2. 红色
  3. 绿色

只有第2行和第3行会发生变化.不管怎样,这是我的计划:)

另一个编辑>.<:行每行最多只包含12列,少于1kb.并且更新只会在一天发生,因为源来自的服务器很慢,我的服务器需要80分钟才能从中获取所有Feed值.

Ode*_*ded 3

在存储方面,120k行表和30个4k表之间没有什么区别。

在维护方面,我总是选择一张桌子。它使您的代码和 SQL 更易于使用,并且由于您已经在使用该WHERE子句,因此我认为没有任何理由拆分表。