IT咨询服务Oracle表空间

oracle数据库大文件表空间的使用?

这几天在跟朋友讨论oracle架构的时候,提到了oracle big file tablespace,好几个人建议不使用big file tablespace,原因主要有两个方面:

  1. 大文件表空间只有一个数据文件,使用久了这个数据文件会非常大,一旦出现坏块,大文件恢复非常慢,而且备份与恢复也慢
  2. 一个文件不利用分散I/o到多个磁盘,影响性能

那oracle提出的这个big file tablespace到底有什么用呢?如果我们有多个表空间,每个表空间的数据量都在100G以上,应该怎样规划表空间中的数据文件?数据文件多大一个才合适呢?

参与20

5同行回答

AcdanteAcdante  技术总监 , SHFY
关于big file tablespace的用处,Oracle官方文档上给了答复:如下:!========================================!Benefits of Bigfile Tablespaces1.Bigfile tablespaces can significantly increase the storage capacity of an Oracle database. Smallfile tablespaces can con...显示全部

关于big file tablespace的用处,Oracle官方文档上给了答复:如下:
!========================================!
Benefits of Bigfile Tablespaces

1.Bigfile tablespaces can significantly increase the storage capacity of an Oracle database. Smallfile tablespaces can contain up to 1024 files, but bigfile tablespaces contain only one file that can be 1024 times larger than a smallfile tablespace. The total tablespace capacity is the same for smallfile tablespaces and bigfile tablespaces. However, because there is limit of 64K datafiles for each database, a database can contain 1024 times more bigfile tablespaces than smallfile tablespaces, so bigfile tablespaces increase the total database capacity by 3 orders of magnitude. In other words, 8 exabytes is the maximum size of the Oracle database when bigfile tablespaces are used with the maximum block size (32 k).

2.Bigfile tablespaces simplify management of datafiles in ultra large databases by reducing the number of datafiles needed. You can also adjust parameters to reduce the SGA space required for datafile information and the size of the control file.

3.They simplify database management by providing datafile transparency.

!===================================================!
简而言之就是方便管理,适用于大数据量的系统,但是不便于增加存储或者数据恢复等。
一般情况下,没有特别需求,不建议使用大表空间。每个表空间数据量100GB也不是非常大,如果需要进行优化,建议采用表分区的方式进行。

收起
互联网服务 · 2018-01-17
xiaopeng91xiaopeng91  数据库运维工程师 , 陕西~~~
感觉big file tablespace配合asm挺不错的,这个对存储性能要求比较高,表空间数据文件太多的话,内部消耗也是有的,我们这边的数据文件基本都是自增长,最大到32G的标配下面这句是百度的:Small Tablespace在实现相同的存储大小时,要消耗大量的多文件管理开销。同时控制文件为了维护...显示全部

感觉big file tablespace配合asm挺不错的,这个对存储性能要求比较高,表空间数据文件太多的话,内部消耗也是有的,我们这边的数据文件基本都是自增长,最大到32G的标配
下面这句是百度的:Small Tablespace在实现相同的存储大小时,要消耗大量的多文件管理开销。同时控制文件为了维护多位置上的文件,协同检查点和文件头SCN等内容,要消耗很大精力。
http://blog.csdn.net/dragoo1/article/details/8500241 讲的挺细的,

收起
互联网服务 · 2018-01-16
浏览2952
topzgmtopzgm  软件架构设计师 , People's Bank of China
关于tablespace与数据文件的关系,不能简单地用数据量规模来评判,几点思想:1)表空间是承载业务数据表的容器,实际的业务数据表有多少数据,我们的表空间就应该多大。2)从逻辑层面来看,表空间与数据文件的规模可以很大;但是从物理层面,表空间与数据文件的规模最好不要太大。如何解决...显示全部

关于tablespace与数据文件的关系,不能简单地用数据量规模来评判,几点思想:
1)表空间是承载业务数据表的容器,实际的业务数据表有多少数据,我们的表空间就应该多大。
2)从逻辑层面来看,表空间与数据文件的规模可以很大;但是从物理层面,表空间与数据文件的规模最好不要太大。
如何解决这个问题?关键思想是分而治之,把一个大的业务数据表按照某种分区规则,存储在多个表空间中;一个表空间又可以分布在不同的数据文件容器中。

收起
银行 · 2018-01-16
liucj2004liucj2004  其它 , undefined
用来存一些很大的比如blob这类数据表空间还是要规划好,一般来说4G一个比较合适显示全部

用来存一些很大的比如blob这类数据
表空间还是要规划好,一般来说4G一个比较合适

收起
农业其它 · 2018-01-16
mmsc5166mmsc5166  系统工程师 , 某金融公司信息技术中心
不是太大表空间不建议用oracle big file tablespace,几百G的表空间不算大,表空间是逻辑集合,表空间不够可以添加数据文件啊,做好前期空间预估,做好上线后业务增长监控和预测,一步到位不现实...显示全部

不是太大表空间不建议用oracle big file tablespace,几百G的表空间不算大,表空间是逻辑集合,表空间不够可以添加数据文件啊,做好前期空间预估,做好上线后业务增长监控和预测,一步到位不现实

收起
金融其它 · 2018-01-24

提问者

chunchun2012
系统分析师aadsf
擅长领域: AIX云计算关系型数据库

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2018-01-16
  • 关注会员:6 人
  • 问题浏览:4786
  • 最近回答:2018-01-24
  • X社区推广