首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大型表的优化MySQL

问大型表的优化MySQL
EN

Stack Overflow用户
提问于 2014-02-21 02:14:45
回答 1查看 138关注 0票数 0

关于MySQL和大表优化的问题。MySQL服务器运行在一个容量有限的服务器上,我们需要尽可能地优化它。

我们以每秒一次测量的速度采样数据,并使用它在web应用程序上绘制图表。

目前,所有这些数据都在一个表中,我们最终得到了数亿个数据点。

我们有几个数据源,它们都有两个ids:一个用于位置,另一个用于源本身。我们同时使用两个id来具有唯一的id,并且不使用MySQL id来减小数据的大小。我们将posix加上两个id一起用作表主键,并使用它们查询DB。这些ID不是由SQL生成的。

通常,我们用约400个时间段和几个源绘制图表。

问:对于这样的设计,什么是最好的优化?

第一个问题:是将所有数据保存在一个表中还是将它们分成几个表比较好?这样做会使代码复杂化,因为我们会有动态表。

如果将它们保存在一个表中更好,那么使用基于ids和posix的主键是正确的方法吗?

为此目的,是否有特定的mysql优化?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-21 02:26:09

如果我理解得很好,那么对于这种情况最好的优化就是拥有一个分布式数据库。更具体地说,我将把水平划分法应用到您提到的这个表中。

粗略地说,这是一种根据特定标准将表划分为片段的方法,这样您的查询就不必一次处理大量数据。您可以使用它只处理某些特定查询的相关数据,甚至可以使用并行处理所有数据。

请允许我不再进一步解释,因为我不确定这是否正是你想要和需要的,也是因为你可以用你自己的速度更好地阅读这件事。不过,希望这能给你一个起点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21923922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档