MySQL:如何处理常规的大量插入/更新?

时间:2010-03-01 02:00:57

标签: mysql insert scheduled-tasks large-data-volumes

我有表格,可以跟踪有关网站使用情况的各种统计信息。每周一次,我计划使用这些统计数据和其他表格中的信息来计算用于多个报告的各种关键指标。这是为了在每次访问报告时都不计算复杂数据。这些指标将存储在一个名为“指标”的单独表格中。

有约。 220个国家的50个指标(即每个国家分别为50个)。鉴于这些数据是每周计算的,我得到了令人难以置信的数字:

50 x 220 =每周11,000次插入/更新

我的指标表格按以下方式构建:

id PK | type (TINYINT) | country_id (TINYINT) | year | week | value

...我基本上会在每个国家/地区插入/更新50行不同的“类型”。

我想问的是:我在这里完全走错路吗?我可能最好将国家设置为列而不是行(220列......)?或者指标并失去一些灵活性?如何处理如此大量的插入/更新?

提前感谢您的时间。

结论:看起来这很清楚,感谢所有的贡献。

1 个答案:

答案 0 :(得分:1)

虽然我不知道您的确切应用,但这根本不成问题。插入和更新不应该是表锁定。我怀疑你的用户会注意到。

作为比较,在加载下我的mysql服务器达到峰值,接近3.5k查询/秒。

通常,您希望在低使用期间运行维护脚本。