首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

oracle分区两大陷阱

1.个别场景不能从根本上提高查询速度 在Oracle10g时不支持自动生成分区,技术人员都是手动创建一年或者半年的分区或者当超过限制时把数据都load到最大值分区,但是一年半年过后要么出现数据无法插入或者某个分区数据剧增,这个时候出现了Oracle11g的自动分区功能,但是自动分区名称不能人为设置。如果说数据量过大或者出现跨分区查询会出现性能问题。 举个栗子:线上有一个日志储存系统,每天大概存储1000W左右的数据,支持分页排序并且按照日期查询功能(如果不排序,这个数据量对于Oracle是小ks)于是我们采用了分区+覆盖索引(如果想进一步了解.....)查询的的功能,性能稍微提升。但是一段时间后发现还是拖死系统。(因为这就是CAP问题,想从根本上解决问题,请建议公司采用nosql(habase、ELK)实现)。 如果有这样一种这样场景,工资小于等于5000,大于5000并且小于等于12000,大于12000并且小于25000,大于等于25000分别按照这些工资级别创建分区则非常高效,因为可以指定分区进行查询(` select * from TBL_OPR_CNT partition(5000_part);`),因为指定分区查询,效率直接提升。

03

【DB笔试面试470】分区表有什么优点?分区表有哪几类?如何选择用哪种类型的分区表?

当表中的数据量不断增大时,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。当对表进行分区后,在逻辑上,表仍然是一张完整的表,只是将表中的数据在物理上可能存放到多个表空间或物理文件上。当查询数据时,不至于每次都扫描整张表。Oracle可以将大表或索引分成若干个更小、更方便管理的部分,每一部分称为一个分区,这样的表称为分区表。SQL语句使用分区表比全表能提供更好的数据处理与访问的性能。即使某些分区不可用,其它分区仍然可用,这叫做分区独立性。

03
领券