Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.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
在同一台MySQL服务器上混合使用分区表和未分区表可以吗?_Mysql_Database Partitioning - Fatal编程技术网

在同一台MySQL服务器上混合使用分区表和未分区表可以吗?

在同一台MySQL服务器上混合使用分区表和未分区表可以吗?,mysql,database-partitioning,Mysql,Database Partitioning,我刚看完,幻灯片39上的一句话很突出:“不要在同一台服务器上混合使用分区表和未分区表”,我不知道作者指的是什么。这是否仅适用于基准测试?当您对一个表进行分区时,是否需要对所有表进行分区?即使它只适用于基准测试,我仍然想知道为什么必须对它们进行分区才能获得良好的基准测试结果。幻灯片39的标题如下: Benchmarking partitions - ISOLATION - Try to reproduce working conditions - no other services running

我刚看完,幻灯片39上的一句话很突出:“不要在同一台服务器上混合使用分区表和未分区表”,我不知道作者指的是什么。这是否仅适用于基准测试?当您对一个表进行分区时,是否需要对所有表进行分区?即使它只适用于基准测试,我仍然想知道为什么必须对它们进行分区才能获得良好的基准测试结果。

幻灯片39的标题如下:

Benchmarking partitions - ISOLATION
- Try to reproduce working conditions
- no other services running while benchmarking
- restart the server before each test
- Do NOT mix partitioned and unpartitioned tables in the same server
- Use MySQL sandbox
请注意,本幻灯片仅涉及基准测试时的隔离问题
它不是指运行服务器。
如果表a和表B具有相同的数据和布局,则应将两者进行分区,否则将得到不同的结果。
它并不是指这样一种场景,即您有一个已分区的大表链接到未分区的较小表,因为分区小表是没有意义的

当您对一个表进行分区时,是否需要对所有表进行分区

在数据库中混合分区表和普通表绝对没有问题。
事实上,只有少数关键表应该分区,其余的不应该分区

@Mike Purcell:分区是而不是用来保护数据,它是为了通过允许更容易地从搜索中排除不相关的数据来加快对数据的访问

考虑一个按月分区的日志文件。
通常,您只对日志文件的窄时间片感兴趣,因此,当查看某个日志的日志时,分区将允许MySQL考虑数据的一小部分。p> 分区的优点和缺点
分区通常会加快速度,但会增加磁盘空间的使用(在极少数情况下会再次减慢速度)。

此外,分区仅在行数很多的表上才有意义

认为分区是为了保护数据。@MikePurcell这是一篇关于使用分区进行性能优化的好文章,谢谢!我有一个你可能也感兴趣的相关问题:@Johan:谢谢你提供的信息。我听说在类似的上下文中出现了分区和切分,因此我感到困惑。