文档库 最新最全的文档下载
当前位置:文档库 › 大数据量数据库解决方案

大数据量数据库解决方案




1 解决32G数据文件上限问题

Oracle的默认数据块大小为8k,导致oracle单个数据文件的上线是32G。我们可以通过增加新数据文件到表空间来扩充表空间容量。方法如下:

1 新建表空间:

CREATE TABLESPACE TBS_KK DATAFILE ‘D:\DEMO\TBS_HIKVISION.DBF’ SIZE 30G;

注意:TBS_KK为新建表空间名;DATAFILE为对应数据文件的绝对路径,要求出最后的数据文件名之外的路径必须在操作系统中存在,即oracle不会新建不存在的目录;由于表空间是oracle存储数据的逻辑单位,相当于windows的盘符概念,所以要求在创建表空间时必须制定DATAFILE参数,即必须指定数据文件;数据文件大小原则上不许超过32G。

2 指定系统默认表空间

ALTER DATABASE DEFAULT TABLESPACE TBS_HIKVISION;

注意:执行该命令的用户必须具有dba角色,并且表空间必须是已建表空间。

执行了这条语句之后,用户新建的表如无特殊指定,都会新建在制定TBS_HIKVISION表空间中。

3 扩展表空间

有三种方法可以扩展表空间

1) 增加数据文件

ALTER TABLESPACE TBS_HIKVISION ADD DATAFILE ‘D:\DEMO\USER02.DBF’ SIZE

30G;

2) 手工改变数据文件大小

ALTER DATABASE DATAFILE ‘D:\DEMO\USER01.DBF’ RESIZE 20G;

3) 设置数据文件自动扩展

ALTER DATABASE DATAFILE ‘D:\DEMO\USER01.DBF’ AUTOEXTEND ON NEXT 10M

MAXSIZE 30G;

其中NEXT为每次扩展的步长,MAXSIZE为最大扩展容量。不建议采用此方法,

因为如果数据量很大,也就是说正常运行oracle的压力也是很大的,自动扩展

不利于oracle的磁盘碎片整理,而且扩展时会降低其他oracle操作的速度。

综上,数据库表空间容量问题可以解决。另外还有一种快速解决方法。

Oracle推出大容量表空间专门解决大数据量表的存储问题,方法如下:

CREATE BIGFILE TABLESPACE TBS_BIG_HIK DATAFILE ‘D:\DEMO\BIG.DBF’ SIZE 32T;

优点:显著提高存储能力,oracle对于一个大数据文件的使用效率要远高于多个小数据文件的效率。

缺点:只能包含一个数据文件(即要求操作系统一个盘符就要满足数据文件容量,这会导致一些磁盘阵列上无法直接使用或导致一些盘符闲置)



2 用分区表来优化table1和table2存储:

Table1和Table2表存储大量数据,并且这两个几乎不会出现delete和update,而insert量特别大。针对这个特点,可以采用以下几个方法优化。

分区表空间是Oracle专门针对大数据量数据库应用的解决方案,可分为范围分区、散列分区、列表分区、组合分区四种。其中范围分区比较适合我们的应用,范围分区会把表的数据按照不同范围进行划分来存储,这样不同范围的数据会比较均衡,并且利于检索。


相关文档
相关文档 最新文档