【跟我学oracle18c】第十三天:Multitenant Architecture多租户框架:1.2 Benefits of the Multitenant Architecture(红色标注)

红色标注个人感觉是属于比较独特的研究点

1.2.1 Challenges for a Non-CDB Architecture老的体系的一些弊端

大型企业可能使用成百上千的数据库。这些数据库通常在多个物理服务器上的不同平台上运行。
由于硬件技术的改进,特别是cpu数量的增加,服务器可以比以前处理更重的工作负载。数据库可能只使用服务器硬件容量的一小部分。这种方法既浪费硬件资源又浪费人力资源

例如,100个服务器可能每个都有一个数据库,每个数据库使用10%的硬件资源和10%的管理员时间。dba团队必须分别管理每个数据库的SGA、数据库文件、帐户、安全性等,而系统管理员必须维护100台不同的计算机。

图1-4描述了11个数据库,每个数据库都有自己的应用程序和服务器。DBA主管一个由四个DBA组成的团队,每个DBA负责两个或三个数据库。负责的对象可能是vm,一个机器上的多个数据库,逻辑划分的多用户或者vpd

言下之意就是数据库服务器资源没有得到有效利用,同时浪费了dba资源,dba成为了苦力,管理众多资源

1.2.2 Benefits of the Multitenant Architecture for Database Consolidation

该体系结构对数据库整合的好处

数据库整合是将多个数据库中的数据整合到一台计算机上的一个数据库中的过程。Oracle Multitenant选项使您能够在不更改现有模式或应用程序的情况下整合数据和代码。

PDB/非cdb兼容性保证意味着PDB的行为与非cdb的行为相同,就像从连接到Oracle Net的客户端看到的那样。对非cdb运行的应用程序定义(例如表和PL/SQL包)的安装方案对PDB运行相同的程序,并产生相同的结果。此外,连接到包含应用程序定义的PDB的客户端代码的运行时行为与连接到包含此应用程序定义的非cdb的客户端代码的行为相同

扫描二维码关注公众号,回复: 4051206 查看本文章

例如,在使用Oracle数据保护和数据库备份与恢复时,对整个non-CDB行为的操作与对整个CDB的操作是相同的。因此,non-CDB的用户、管理员和开发人员在整合数据库后的体验基本相同。

下图描述了合并到一台计算机后的数据库,如图1-4所示。DBA团队从5人减少到3人,一个CDB管理员cdb,两个PDB管理员对PDBs进行拆分管理。

从Oracle数据库12c版本2(12.2)开始,您可以创建一个包含应用程序PDBs的应用程序容器。这种方法使您能够在此容器中创建和管理应用程序。应用于CDB中的整合的大多数好处也适用于应用程序容器中的整合。

该体系结构进行数据库整合有以下好处:

  • 成本降低

    通过将硬件和数据库基础设施合并到一组单一的后台进程中,并有效地共享计算和内存资源,可以降低硬件和维护成本。例如,单个服务器上的100个PDBs共享一个数据库实例。

  • 数据和代码的移动更容易、更快

    通过设计,您可以快速将PDB插入到CDB中,从CDB中拔出PDB,然后将此PDB插入到另一个CDB中。您还可以在PDBs可用时克隆它们。您可以插入带有任何字符集的PDB,并在不进行字符集转换的情况下访问它。如果CDB的字符集是CDB的字符集是AL32UTF8,那么具有不同数据库字符集的PDBs可以存在于同一个CDB中。

  • 更容易地管理和监视物理数据库

    CDB administrator 可以通过对所有托管租户和CDB root执行单个操作(如修补或执行RMAN备份)来作为一个聚合来管理环境。备份策略和灾难恢复被简化

  • 数据和代码的分离

    尽管已整合到单个物理数据库中,但PDBs模拟了非cdbs的行为。例如,如果用户错误丢失了关键数据,那么PDB管理员可以使用Oracle闪回或时间点恢复来检索丢失的数据,而不会影响其他PDBs。

  •  administrative 职责的分离

    普通用户可以连接到具有足够权限的任何容器,而本地用户只能连接到特定的PDB。管理员可以按如下方式划分职责:
    • 管理员使用公共帐户管理CDB或应用程序容器。由于特权包含在被授予特权的容器中,一个PDB上的本地用户对同一个CDB内的其他PDBs没有特权.

    • 管理员使用本地帐户管理单个PDB.

  • 性能调优的便捷性

    为单个数据库收集性能指标比为多个数据库收集更容易。1个SGA比100个SGA容易.

  • 更少的数据库补丁和升级

    对一个数据库应用补丁比对100个数据库应用补丁更容易,升级一个数据库比升级100个数据库更容易.

1.2.3 可管理性的好处

具有数据库整合之外的优点。这些好处来自于将特定于PDB的数据和元数据存储在PDB本身中,而不是将所有字典元数据存储在一个位置.

通过存储自己的字典元数据,PDB变得更容易作为一个独立的单元来管理。即使只有一个PDB驻留在一个CDB中,这种好处也会发生。将PDBs分组到单独管理的应用程序容器中进一步提高了可管理性.

在CDB中,数据字典元数据被划分为根和PDBs。数据字典分离的好处包括以下几点:

  • 数据和代码更容易升级

    例如,与从一个数据库版本升级到另一个数据库版本不同,您可以快速地从现有的CDB中拔出PDB,然后从更高版本中将其插入到新创建的CDB中.

  • 服务器间更容易的迁移

    要执行负载平衡或满足sla,您可以将应用程序数据库从内部数据中心迁移到云,或在同一环境中的两个服务器之间迁移。

  • 防止PDB内的数据损坏

    您可以将PDB回闪到SCN或特定于PDB的恢复点,而不影响其他PDBs。这个特性类似于非cdb的闪回数据库特性.

  • Ability to install, administer, and upgrade 特定于应用程序的数据和元数据位于一个位置

    您可以将一组特定于应用程序的PDBs定义为单个组件,称为应用程序容器。然后,您可以在这个容器中定义一个或多个应用程序。每个应用程序都是在这个应用程序容器中共享的一组命名的、版本控制的公共元数据和数据。(个人感觉这点可以创立一个新的应用架构,对中国目前的传统数据库设计模式冲击很大,目前应该是零存在的吧

  • 例如,SaaS供应商的每个客户都可以拥有自己的应用程序PDB。每个应用程序PDB可能有相同定义的表sales_mlt,每个PDB中有不同的数据。PDBs可以共享一个与数据相关的公共对象,名为countryes_olt,每个PDB中都有相同的数据。作为一个应用程序管理员,您可以管理主应用程序定义,这样每一个新客户获得一个PDB相同的对象,和对现有模式的每一个变化(例如,添加一个新表,或改变表)的定义适用于所有共享一个PDB分子.

  • 与Oracle数据库资源管理器集成

    环境中,一个问题是在同一服务器上运行的PDBs之间争夺系统资源。另一个问题是限制资源的使用,以获得更一致的、可预测的性能。要解决这种资源争用、使用和监视问题,请使用Oracle数据库资源管理器。

猜你喜欢

转载自blog.csdn.net/viviliving/article/details/84023085