大数据备份和恢复应用案例--通过分区表备份和恢复数据
海量数据备份和恢复方案
对于OLAP的数据库的业务特点,是将批量的数据加载入库,然后对这些数据进行分析处理,比如报表或者数据挖掘,最后给业务提供一种决策支持;另外,这类数据库的数据实时性非常高,一旦这些数据处理完毕后,就很少再次使用(有时,也需要对这类数据进行查询)。
对于OLAP数据库的备份和恢复可以考虑这样几种方案:
1、使用分布式数据库
将数据分布到多个库里,当数据库恢复时,只需要恢复单个库的数据,大大节省恢复时间。

2、结合分区技术,以传输表空间方式进行备份和恢复
1、建立分区表,将分区存储在不同的表空间
[oracle@RH6 ~]$sqlplus '/as sysdba'
SQL*Plus: Release 11.2.0.1.0 Production on Tue Nov 18 17:15:47 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
17:15:47 SYS@ prod >create tablespace tbs1
17:16:03 2 datafile '/dsk1/oradata/prod/tbs1.dbf' size 10m;
Tablespace created.
17:17:00 SYS@ prod >create tablespace tbs2
17:17:11 2 datafile '/dsk2/oradata/prod/tbs2.dbf' size 10m;
Tablespace created.
17:17:49 SYS@ prod >create tablespace tbs3
17:17:57 2 datafile '/dsk3/oradata/prod/tbs3.dbf' size 10m;
Tablespace created.
17:18:35 SYS@ prod >create tablespace tbs1_indx
17:18:49 2 datafile '/dsk1/oradata/prod/tbs1_indx.dbf' size 10m;
Tablespace created.
17:19:43 SYS@ prod >create tablespace tbs2_indx
17:19:54 2 datafile '/dsk2/oradata/prod/tbs2_indx.dbf' size 10m;
Tablespace created.
17:20:18 SYS@ prod >create tablespace tbs3_indx
17:20:30 2 datafile '/dsk3/oradata/prod/tbs3_indx.dbf' size 10m;
Tablespace created.
17:22:12 SYS@ prod >select file_id,file_name,tablespace_name from dba_data_files
FILE_ID FILE_NAME TABLESPACE_NAME
---------- -------------------------------------------------- ------------------------------
11 /dsk1/oradata/prod/tbs1.dbf TBS1
12 /dsk2/oradata/prod/tbs2.dbf TBS2
13 /dsk3/oradata/prod/tbs3.dbf TBS3
4 /u01/app/oracle/oradata/prod/users01.dbf USERS
3 /u01/app/oracle/oradata/prod/undotbs01.dbf UNDOTBS1
2 /u01/app/oracle/oradata/prod/sysaux01.dbf SYSAUX
1 /u01/app/oracle/oradata/prod/system01.dbf SYSTEM
5 /u01/app/oracle/oradata/prod/example01.dbf EXAMPLE
6 /u01/app/oracle/oradata/prod/users02.dbf USERS
7 /u01/app/oracle/oradata/prod/catatbs1.dbf CATATBS
8 /u01/app/oracle/oradata/prod/perfertbs1.dbf PERFERTBS
9 /u01/app/oracle/oradata/prod/oggtbs1.dbf OGG_TBS
10 /u01/app/oracle/oradata/prod/test1.dbf TEST1
14 /dsk1/oradata/prod/tbs1_indx.dbf TBS1_INDX
15 /dsk2/oradata/prod/tbs2_indx.dbf TBS2_INDX
16 /dsk3/oradata/prod/tbs3_indx.dbf TBS3_INDX
建立分区表及索引:
17:26:41 SCOTT@ prod >create table t1(id int,name varchar2(1000))
17:26:57 2 partition by range(id)
17:27:01 3 (partition p1 values less than(1000) tablespace tbs1,
17:27:13 4 partition p2 values less than(2000) tablespace tbs2,
17:27:23 5 partition p3 values less than(maxvalue) tablespace tbs3);
Table created.
17:30:33 SCOTT@ prod >create index t1_indx on t1(id) local
2 (
3 partition p1 tablespace tbs1_indx,
4 partition p2 tablespace tbs2_indx,
5* partition p3 tablespace tbs3_indx )
/
17:30:37 SCOTT@ prod >select partition_name,tablespace_name from user_segments where segment_name='T1';
PARTITION_NAME TABLESPACE_NAME
------------------------------ ------------------------------
P1 TBS1
P2 TBS2
P3 TBS3
17:31:33 SCOTT@ prod >select partition_name,tablespace_name from