oracle很多表且数据量很大,放在一个表空间好还是多个好
1个回答
展开全部
一般来说是多个
我们做个假设,如果放在一个表空间,那么如果同时有多个请求进入,要求访问不同的表,而恰好这些要访问的部分恰好在一个数据文件上(如果都放在一个表空间上,那么不是不可能),那么这一个文件的io和读取量会非常大,而且很慢。如果在不同的表空间上那么就不会有读同一个文件的问题。
但是,怎么划分表空间,也是一个问题,并不是简单的将表分开就可以。如果是数据仓库或者所谓的大数据分析,自然要考虑分层的因素,不过也要考虑访问因素和数据量因素。
比如,你把两个进入数据量很大的表放在一起了,看起来分了表空间,但是因为这个表空间的io很大,那么自然会导致入库缓慢。至于访问的例子,你用最开始的假设就可以。所以一般来说分开是一定的,但是怎么分,就要好好琢磨琢磨了,要考虑的因素太多。
比如:用户因素,存储(量/次)因素,访问(量/次)因素,计算量因素,层级因素,管理因素等等。
我们做个假设,如果放在一个表空间,那么如果同时有多个请求进入,要求访问不同的表,而恰好这些要访问的部分恰好在一个数据文件上(如果都放在一个表空间上,那么不是不可能),那么这一个文件的io和读取量会非常大,而且很慢。如果在不同的表空间上那么就不会有读同一个文件的问题。
但是,怎么划分表空间,也是一个问题,并不是简单的将表分开就可以。如果是数据仓库或者所谓的大数据分析,自然要考虑分层的因素,不过也要考虑访问因素和数据量因素。
比如,你把两个进入数据量很大的表放在一起了,看起来分了表空间,但是因为这个表空间的io很大,那么自然会导致入库缓慢。至于访问的例子,你用最开始的假设就可以。所以一般来说分开是一定的,但是怎么分,就要好好琢磨琢磨了,要考虑的因素太多。
比如:用户因素,存储(量/次)因素,访问(量/次)因素,计算量因素,层级因素,管理因素等等。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询