我们现在有个 Oracle 的数据库,有一张实验数据相关的表字段不多
大约 3000W 的数据吧 打算迁移到 Mysql8 中,我在想这张表是直接分区呢还是分表好一些?
我们现在有个 Oracle 的数据库,有一张实验数据相关的表字段不多
大约 3000W 的数据吧 打算迁移到 Mysql8 中,我在想这张表是直接分区呢还是分表好一些?
4 回答1.5k 阅读✓ 已解决
8 回答1.3k 阅读
3 回答918 阅读✓ 已解决
3 回答1.1k 阅读✓ 已解决
3 回答1.9k 阅读
2 回答1.6k 阅读
1 回答901 阅读✓ 已解决
个人观点,具体用哪个可以考虑两点,改造的代价以及未来的扩展性。
分区:
还是一张表,但实际上这张表的存储和索引都根据你的分区策略,被分开存放,对于3000w的数据来说,分区后,单个分区的数量并不算特别多,如果数据增长速度很慢或仅仅是冷数据且分区没有太多(最多1024个分区)的话,我觉得非常适合用分区,如果有上层应用的话,改造起来代价也比较小。
分表:
根据你的分表策略,已经变成了N张表,这种方式就灵活了很多,你可以针对其中的单表做很多策略,单表查询速度也比分区更快,数据量的支撑上也远比分区要多的多,各方面扩展性要比分区好很多,但同时查询以及上层应用的改造成本会比较高