案例:
一次在一个项目中有两张表数据比较庞大(线上)
一个是操作日志表:
A 4819556条 插入,修改,查询较多,老的记录查询可能较少,
一个是接口调用表:
B 60719333条 插入和查询频繁
数据量都比较大,这次采用的数据库优化方案是分区。
分区和分表的区别和联系是啥?
分区和分表的目的都是提升数据库的访问性能,而对于应用来说,分区用的是数据库的技术,只要知道表名,应用无需知道数据是放在哪个分区。
分表的话,要做出对应的路由规则,根据分表的KEY键才能知道数据是放在哪个表上。
所以查询的时候,SQL的条件语句最好是带上分区健,这样的话在查询的时候相对效率会高效一些
在做出分区或分表的判断上,一般来说,如果平时访问的量不是特别大,表结构变更也不多,而且历史数据很少访问的情况下,可能会做成分区表,这样平时基本上只要访问最近的分区段,还有利用老数据的清理。
分表一般是数据量非常大,而且访问上没有绝对的热点,基本上所有的数据都有可能会访问到,为了查询的性能和平时DDL的快速会采用分表的方法。
我们这次的分区是是按创建时间来分区的 ,两张表是半年一个分区.那么在查询的SQL中是要求带入创建时间作为where条件的,这样的话可以调高效率。
分享到:
相关推荐
MySQL分表和分区最佳攻略 word版本,
常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致...分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率。
MySQL中的分表和分区是两种不同的数据库优化策略,它们旨在管理和优化大数据量的表,以提升查询性能和系统效率。...选择分表还是分区,或者两者结合,需要根据实际的业务需求、数据规模、查询模式和系统资源来决定。
- **实现难度**:使用Merge存储引擎的分表相对简单,与分区难度相当;其他分表方式可能更复杂;分区的实现较为直观,对代码透明。 4. **联系**: - **性能优化**:无论是分表还是分区,都能提升MySQL在高并发情况...
MySQL中的分表和分区是两种不同的数据库优化策略,它们旨在管理和优化大数据量的表,以提升查询性能和系统效率。 **分表**是指将一张大表拆分成多个小表,每个小表都是独立完整的表,拥有自己的.MYD数据文件、.MYI...
《MySQL分区分表方案实践手册》是一本深入探讨MySQL数据库中分区与分表技术的专业书籍。MySQL作为广泛应用的关系型数据库管理系统,随着数据量的增长,性能优化成为了一个关键问题。分区分表是解决大数据存储和查询...
这里的“mysql分库分表分区1”主要讨论的是 MySQL 中的表分区技术,这是一种将大表物理分割为多个更小、更易管理的部分的方法。下面将详细介绍四种常见的分区类型:RANGE、LIST、HASH 和 KEY。 1. **RANGE分区**: ...
一、什么是mysql分表和分区 什么是分表,从表面意思上看呢,就是把一张表分成N多个小表 什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一个磁盘上,也可以在不同的磁盘上 二、mysql分表和...
总的来说,MySQL的分表和分区技术提供了应对大数据量的有效手段,可以根据实际业务需求和性能瓶颈选择合适的策略。垂直分表适用于列多且锁竞争激烈的情况,水平分表和分区适用于数据量大、查询性能要求高的场景,而...
文件`mysql分表创建.sql`很可能包含了创建分表的SQL脚本,如创建新表、插入数据、设置分区等操作。具体操作时,应确保理解分表策略,合理选择分片键,避免数据热点,并测试分表后的查询性能。 总之,MySQL分表是...
日常开发中我们经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表。这样的表过于庞大,导致...分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率
分区与分表类似,但有所不同。分区是将一个大表的数据逻辑上划分为多个部分,但物理上仍然表现为一张表。这些部分可以分布在同一个磁盘的不同位置,甚至是不同服务器上。应用程序仍然直接操作大表名,数据库管理系统...
MySQL 分区和分表技术总结 MySQL 分区和分表技术是数据库性能优化的重要手段,特别是在大型数据库系统中。以下是 MySQL 分区和分表技术的详细介绍: 什么是分表? 分表是将一个大表按照一定的规则分解成多张具有...
其中有每个命令的使用说明与注释。并增加了清理数据的方式。以及导入输入的注意事项
当一个表数据记录过大时就会出现性能瓶颈,而一般对应的解决办法是要么做分区表,要么分表,分区表就不说了,分表又分为垂直分割和水平分割,具体区 别请自行搜索。一般而言,分库分表属于水平分割,按照一定的规则...
通过对MySQL分区分表技术的研究与实践,我们发现合理地使用分区分表技术可以在很大程度上改善数据库系统的性能。通过使用range分区和Merge存储引擎,不仅可以提高查询效率,还可以简化数据管理。未来的研究可以...
当数据量达到一定规模,例如超过100万条记录,性能问题就会显现,此时就需要采取相应的优化策略,如分表或分区。本文主要讨论如何使用PHP操作MySQL数据库进行分表。 分表是一种常见的数据库扩展策略,它通过将一个...