专栏首页数据和云Oracle数据库应用系统结构

Oracle数据库应用系统结构

在安装、部署Oracle数据库软件时,需要根据不同应用结构(即硬件平台、操作系统平台)采用不同的方法(基本安装、高级安装),下面介绍几种常见的应用结构。

1. 应用系统的数据接口


客户端应用程序或应用服务器向数据库服务器请求服务时,首先必须和数据库建立连接。虽然现有DBMS几乎都遵循SQL标准,但不同厂家开发的DBMS有差异,存在适应性和可移植性等方面的问题,为此,人们研究和开发了连接不同DBMS的通用方法、技术和软件接口。

2. 客户/服务器(C/S)模式应用系统


在C/S(cilent/server)结构模式中,所有数据集中存储在服务器中,数据处理由服务器完成,一般采用硬件资源配置比较高的机器作为服务器,而使用配置比较低的PC作为客户端。客户端与服务端之间通过专用的网络连接,一般为局域网或企业内部网。

如图2-1Oracle客户端/服务器系统结构。应用程序运行在客户端,Oracle数据库运行在服务器,二者之间通过计算机网络连接在一起。Oracle使用SQL*NET在客户端与服务器之间进行通信。

图1-2 Oracle客户端/服务器系统结构

3. Oracle浏览器/服务器系统结构


如图2-2所示为Oracle浏览器/服务器(B/S,Browser/Server)三层系统结构。在B/S的三层模型中,客户端应用程序采用WEB浏览器展示。

图2-2 Oracle浏览器/服务器三层系统结构

客户端即浏览器没有加载程序,程序部署在Web服务器上,客户端需要加载或浏览数据,首先通过网络将请求发送给Web服务器,Web服务器通过请求访问Oracle数据库服务器,然后Web服务器响应将数据传递展示在客户端。

B/S结构是面向非连接的,即存取数据时建立连接,存取结束时断开连接,再次存取数据需重新建立连接,所以与C/S结构相比,其效率低。所以,B/S主要应用于运行效率要求不高,以数据对外发布为主的环境。

4. 单磁盘独立主机结构


单磁盘独立主机结构是最简单,最常用的结构,在该机构中只有一台计算机,并且计算机使用一个硬盘,在这里Oracle实例表示DBMS,用数据库文件表示数据库,如图2-3:

图2-3 单磁盘独立主机结构

注:数据库服务器(也叫做实例),由一组内存结构和访问数据库文件的后台进程组成。

这种应用结构只有一个数据库服务器(DBMS)、一个数据库文件(数据库结构),并且这些数据文件都存储在一个屋里磁盘上,这是最基本的应用结构,其他的应用结构都是在基础上修改和扩展。

这种结构将所有数据库文件都存放在一个硬盘上,因此对硬件的可靠性要求较高,性能调整的方向主要是视图减少对数据库文件的访问次数。

5. 多磁盘独立主机结构


多磁盘独立主机结构只有一台计算机,但该计算机使用了多个硬盘,如图2-4:

图2-4 多磁盘独立主机结构

该结构只有一个数据库服务器,一个数据库结构,但是数据库存储在多个物理磁盘中,数据库文件的分开存储减少了连接数量,也减少了对数据库文件的读写操作。

如果在这些磁盘上采用磁盘镜像技术(RAID技术,独立磁盘冗余阵列技术),则所有数据库文件在每个硬盘上都有完整的备份,任何一个硬盘发生故障,都能由镜像磁盘代替其工作,并可对其进行维修、恢复,因此提高了硬件的可靠性。

当处理一个事务或查询需要对数据库进行操作,往往涉及多个文件的信息,在这种多磁盘结构中可将数据库文件存在不同的物理磁盘上,这样可以减少数据库文件之间的竞争数量,从而提高数据库的性能。

注:多磁盘不一定是镜像的,但是镜像的一定是多磁盘的,通常,磁盘的镜像是由硬件系统实现,而不是Oracle的镜像解决方案。

6. 多数据库独立主机结构


多数据库独立主机结构只有一台计算机,可以有一个或多个硬盘,如图2-5:

图2-5 多数据库独立主机结构

这种结构由多个数据库服务器,多个数据文件组成,虽然一台计算机上装有两个数据库,但是它们的内存结构、服务器进程和数据库文件等都不是共享的,它们有各自的内存机构、服务器进程和数据库文件,彼此之间不能进行共享,即一个数据库的进程不能访问另一个数据库的文件。这种结构对硬件要求较高(内存大、CPU运算强、硬盘快),一般不采用这种结构。

7. Oracle 分布式数据库系统结构


数据库系统按数据分布方式可分为集中式数据库系统和分布式数据库系统。集中式数据库系统是将数据集中存放在一台计算机上,而分布式数据库系统是将数据存放在由计算机网络连接的不同计算机上。一个分布式数据库是由分布于计算机网络上的多个逻辑相关的的数据库组成,网络的每个节点都具有独立处理能力,可以执行局部应用,也可以通过网络执行全局应用。如图2-6为分布式数据库系统结构:

图2-6 分布式数据库系统结构

从图2-6可以看出,分布式数据库系统由以下部分组成:

  • 局部数据库管理系统 :创建和管理局部数据库,执行局部和全局应用子查询。
  • 全局数据库管理系统:协调各局部数据库管理系统,共同完成全局事务的执行并保证全局数据库执行的正确性和全局数据的完整性。
  • 通信管理:实现分布在网络中各个数据库之间的通信。
  • 全局数据字典:存放全局概念模式。
  • 局部数据库:查询全局数据库信息。

分布式数据库管理系统的数据在物理上是分布存储,即数据存放在计算机网络上不同节点(局部数据库),而在逻辑上数据之间有语义上的联系,属于一个系统。访问数据库的用户即可是本地用户,也可是网络连接的远地用户。

Oracle支持分布式数据结构,属于客户/服务器模式结构。在网络中每个用户具有多用户处理能力的硬件平台都可以作为服务器,多个服务器上的数据库对用户来讲是一个逻辑上的单一数据库系统。在分布式数据库中,各个服务器之间可以实现数据的实时、定时复制,通过Oracle的远程数据复制选件、快照等在多个不同地域实现数据远程复制。图2-7为Oracle分布式数据库系统结构。

图2-7 Oracle分布式数据库系统结构

产品推荐

云和恩墨Bethune Pro2 企业版,集监控、巡检、安全于一身,你的专属数据库实时监控和智能巡检平台,漂亮的不像实力派,你值得拥有!

云和恩墨zData一体机现已发布超融合版本和精简版,支持各种简化场景部署,零数据丢失备份一体机ZDBM也已发布,欢迎关注。

本文分享自微信公众号 - 数据和云(OraNews),作者:博客园王小码

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 平安科技汪洋:云数据库的前世今生

    2019数据技术嘉年华于11月16日在京落下了帷幕。大会历时两天,来自全国各地上千名学术精英、数据库领袖人物、数据库专家、技术爱好者在这里汇聚一堂,围绕“开源 ...

    数据和云
  • 2020年11月国产数据库排行:GaussDB砥砺前行成第八,EsgynDB 4.2亿战绩晋级20强!

    编辑说明:国产数据库流行度排行榜,是墨天轮网站根据数据库的受欢迎程度对国产数据库进行排名,排行榜每月更新。排行榜自2020年9月推出,已收录了105个国产数据库...

    数据和云
  • 细数那些你可能不知道的国产数据库

    在之前中秋团圆之时,我们曾经绘制了一幅数据库的团圆照,这幅图中包含了多少种数据库,您现在数的清吗?图中又有多少国产数据库?

    数据和云
  • MySQL 数据库优化(运维角度)

    一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题...

    后端技术探索
  • 数据库的分类

    1.1 什么是数据库? 简单的说,数据库(英文Database)就是一个存放数据的仓库,这个仓库是按照一定 的数据结构(数据结构是指数据的组织形...

    ellipse
  • 抢滩“新基建”——腾讯云数据库的布局和探索

    腾讯云数据库国产数据库专题线上技术沙龙已圆满结束,腾讯云数据库副总经理王义成在直播中分享了在新基建浪潮之下,自己对于国产数据库未来的探索和思考,以下是视频和图...

    腾讯云数据库 TencentDB
  • 数据库性能评测真的很重要么?

    国庆期间,最热闹的新闻莫过我国某数据库产品在TPC-C测试中勇夺性能第一的消息。该则消息的传播颇具争议性,引发了一场关于数据库的大讨论。事实上,数据库作为最重要...

    大数据在线
  • 邀您参会 | Gdevops全球敏捷运维峰会-广州站

    今年国产数据库在国际舞台上大放异彩相信大家都有目共睹,更多国产数据库加入到数据库市场的队列,对于企业来说也就有了更多的选择。根据2019 DeveloperW...

    腾讯云数据库 TencentDB
  • 数据库及周边的未来有可能是什么?

    今天突发奇想,题目很大,其实估计没有人能准确说出数据库的未来是什么,未来的事情的留到未来去验证,姑且现在说的都是瞎想,虽然是瞎想,但也要有底线不能天马行空。

    AustinDatabases
  • 漫谈数据库模型

    数据库是软件世界里的基础。它是现实世界的投射,反应了开发者对现实世界的思考以及对其的抽象;一旦决定了数据库选型,数据库便会对软件/应用造成深远影响,它决定了开发...

    哒呵呵

扫码关注云+社区

领取腾讯云代金券