Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
具有int和timestamp的mysql分区_Mysql_Partitioning - Fatal编程技术网

具有int和timestamp的mysql分区

具有int和timestamp的mysql分区,mysql,partitioning,Mysql,Partitioning,我有MySQL 5.6.12社区服务器。 我正在尝试对我的MySQL innoDB表进行分区,该表包含5M(并且一直在增长)行历史数据。它越来越慢了,我想分区可以解决这个问题 我有专栏 stationID int(4) valueNumberID(int 5) logTime(timestamp) value(double) (stationID、valueNumberID、logTime)是我的主键 我有50个不同的stationID。每个站点都有历史数据,我需要将其存储5年。每个stati

我有MySQL 5.6.12社区服务器。 我正在尝试对我的MySQL innoDB表进行分区,该表包含5M(并且一直在增长)行历史数据。它越来越慢了,我想分区可以解决这个问题

我有专栏

stationID int(4)
valueNumberID(int 5)
logTime(timestamp)
value(double)
(stationID、valueNumberID、logTime)是我的主键

我有50个不同的stationID。每个站点都有历史数据,我需要将其存储5年。每个stationID只有2-5个不同的valueNumberID,但每天都有数百个值发生变化。系统中的每个查询都按顺序使用stationID、valueNumberID和logTime。在大多数情况下,查询仅限于本年度

我希望使用stationID创建分区,每个stationID都有自己的分区,以便查询使用更小的物理表进行扫描,并通过使用logTime对表进行子分区来进一步减小表的大小。我不知道如何为50个不同的stationID创建自己的分区,并使用时间戳为它们创建子分区


谢谢你的回复。选择查询的速度越来越慢。在我看来,他们似乎是越来越慢,与表的速度线性增长。问题必须与GROUP语句有关。这是一个示例查询。选择日期格式(日志时间,“%Y%m%d%H%i%s”)作为“日志时间”,根据日志时间限制0120,从其位置stationID=23和valueNumberID=4和logTime>'2013-01-01 00:00:00'和logTime<'2013-11-14 00:00:00'按日期分组(logPVM,“%Y%m”); 这种查询的目的是以小时、天、周、月为单位给出平均值、最大值、最小值、总和。查询结果与结果以各种方式(图形、excel文件)呈现给用户的方式密切相关,如果我更改查询,则需要很长时间才能更改。所以我在寻找一种简单的分区方法

该表估计每月有120-140万行


谢谢

什么是“越来越慢”?您是否发现数据库操作缓慢?分析他们?检查是否有适当的索引?以补充来自eggyal的问题。。。我知道你们有50个电台,每个电台每天都有百分之一百的变化?这将使每月最多150万条记录(假设数百条意味着999条)。是那边吗?还有一个问题。什么在变慢?插入应该没有问题,除非您创建一些对您的需要有用的索引,否则选择将很慢。你能详细说明问题和需求吗?我确实看到过每天接收200-300万条记录而没有性能问题的表……由于
stationID
valueNumberID
的唯一值不到255个,因此将它们的数据类型更改为
TINYINT UNSIGNED
,将是有益的,这将使它们的大小从每行4字节减少到每行1字节,从而使数据和主键都更小更快。