数据库整合
在一体机技术呈现之前,通常状况下,一台服务器部署一套数据库,这种数据库部署形式实际上老本昂扬,在一体机呈现后,因其高性能/高可用以及良好的扩展性,将同一个机房中的多个服务器中的数据库装置部署在一台一体中的状况也较常见,这也是一种数据库整合计划,该计划尽管能够降低成本,但同时存在一些负面问题。
保护治理更加简单
当咱们将20套数据库部署到一台一体机中时,在20套数据库中辨识不同的数据库也会变的很头痛,显然会让保护变得更加艰难,保护每套治理每套数据库任然有很大的挑战性。
资源隔离较艰难
该整合形式中,如果其中某套数据库在某个工夫点负载急剧减少,占用了绝大部分一体机资源,那势必会对其余数据库性能造成肯定影响。内存资源咱们能够通过数据库外部的SGA进行配置,CPU资源能够通过CPU_COUNT进行管制,但I/O资源又要如何进行治理呢?这种整合形式下咱们很难做到对资源的细粒度的治理调配。
资源任然存在节约状况
尽管在肯定水平上做到了数据库的整合,但如果每个数据库后盾启动20个过程,当咱们同时部署20套数据库时,后盾会同时启动400个相干过程,同样的过程Oracle为每套数据库别离启动一个,显然冗余,在资源上也造成肯定的节约。
基于12c中容器的数据库整合
在12C中,Oracle推出了容器数据库,通过容器的形式对数据库进行整合后,能够对下面的问题进行完满的解决。
资源被正当利用
在Oracle 12c中当,咱们把20套数据库以PDB的形式插入到CDB中,因其PDB共享CDB的后盾过程,后盾只会启动20个过程,并不会因为我数据库的减少,后盾过程也随之减少。
在资源方面咱们能够节俭更多的资源,更加无效的对资源进行利用,同样配置的一体机中,当应用容器的形式进行整合后,能够部署更多的数据库。
资源管理更加灵便
当数据库以PDB的形式插入到CDB中时,资源管理变得更加灵便,能够更加细粒度的依据每个PDB的需要状况为每个PDB数据库配置不同的资源,以及限度PDB对资源的过多应用,能够达到防止因为某个数据库应用过多的资源而影响其余数据库。
I/O资源隔离
- MAX_IOPS/MAX_MBPS
内存资源隔离
- SGA_TARGET/SGA_MIN_SIZE
CPU资源隔离
- CDB resource plans
存储资源隔离
- flex diskgroup
当某个PDB随着工夫的推移它的业务量也一直的减少,须要更多资源的时候,我能够非常灵活的修个相干参数动静的为他调配更多的资源。
升高保护老本
整合后,在保护上咱们也能够升高保护老本,之前我须要别离去保护20个不同的数据库,那整合后咱们只须要将20个库作为一个CDB数据库进行对立治理。
备份:在不做整合时,20套数据库须要咱们保护20个不同的备份工作,当初咱们只须要在CDB级别进行对立备份就能够实现对20个PDB数据库的备份。
DG:整合后只须要搭建一套DG环境就能够,不须要为独自为每个数据库都去搭建一个备库。
降级保护:在降级方面,整合后咱们只须要对一个CDB进行降级,就能够实现CDB中所有PDB数据库的降级,如果想对其中一个PDB进行降级,咱们也能够通过克隆或者挪动的形式,将他挪动到更高版本的CDB中,这样就能够做到对某一个PDB进行降级。
更好的一个降级形式。我能够在一体机中在装置配置一个更高版本的CDB,而后间接把低版本CDB中的PDB插入,插入到高版本的CDB中,同样也能够实现降级工作。可能之前一套数据库降级要花费2个小时的工夫,那当初咱们可能10分钟就降级实现20套数据库。
整合时须要思考的问题
任何事件都是两面性的,尽管整合能够为咱们带来很多的益处,但同时也会带来一些其余问题。
1.当一体机呈现问题时,一起一体机中部署了更多的数据库,那咱们所有的PDB都会受到牵连。这个问题咱们要如何去防止呢?
另外,CDB层面呈现了不能够修复的问题,咱们又该如何去解决呢?
2.因每个PDB均是来自不同的业务,当咱们在做相干保护时,比方一体机的保护或者是CDB级别的保护,咱们把所有PDB的保护窗口协调在同一个时间段,其实该问题同样较艰难。