客户机服务器模式与分布式数据库.ppt_第1页
客户机服务器模式与分布式数据库.ppt_第2页
客户机服务器模式与分布式数据库.ppt_第3页
客户机服务器模式与分布式数据库.ppt_第4页
客户机服务器模式与分布式数据库.ppt_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十三章 客户机/服务器模式与分布式数据库,C/S计算模式,概念 客户机/服务器概念最早用于软件体系结构 提出请求的应用程序 服务应用的服务程序 协作式处理方式 客户机和服务器都参与一个应用程序的处理 软件成分相互协作完成特定应用功能 请求/服务模式 硬件资源提供软件成分相互协作的设施 客户机/服务器模式,客户机,客户机,客户机,网络,应用 服务器,通信 服务器,打印 服务器,文件 服务器,数据库 服务器,请求,响应,响应,请求,客户机/服务器模式,C/S环境下应用成分的分布,4部分 界面表示逻辑 业务处理逻辑 数据处理逻辑 数据库管理,DB,组成应用程序的四个成分,C/S模式的体系结构(1),服务器 提供高速大容量的存储能力, 强大的数据处理和管理能力, 运行多个进程能力 文件服务器 数据库服务器 事务服务器 文档服务器,文件,打印机,DB,客户机,中间件,服务器,客户机/服务器模式体系结构示意图,文件,文件服务器,数据,SQL命令,DB,数据库服务器,GUI,应用程序,应用程序事务,客户机,服务器,数据,应用程序 专用事务,DB,事务处理服务器,数据库服务器,C/S模式的体系结构(2),客户机 完成界面表示和一些业务逻辑功能, 非图形化/图形化(GUI)用户接口 面向对象接口(OOI) 公共应用程序 字处理, 报表编制, 图形软件等 数据库前端软件 应用生成和开发软件 PowerBuilder, VisualC+等 中间件 泛指客户机与服务器之间的软件 数据库, 事务处理, 组件, 对象中间件等,C/S模式定位,C/S模式系统是介于集中式与分布式之间 集中式C/S处理环境 数据集中, 处理分布 客户请求, 服务器响应的协作方式 多服务器C/S处理环境 数据与处理都分布 一个应用可涉及多个服务器数据 一个服务器数据可以被多个客户机访问 对等C/S处理环境 数据与处理都分布 站点可以访问其他站点数据(全局应用), 也可以访问本地数据(本地应用),网络,DB,数据库服务器,DB,数据库服务器,DB,数据库服务器,用户,每个站点是一个单数据库服务器Client/Server结构的DDBS,C/S模式的特点(1),按功能划分 服务器是服务的提供者, 客户机是消费者 共享资源 不对称协议 客户机主动请求服务, 服务器被动等待请求 定位透明性 C/S软件在客户机方屏蔽服务器地址 混合与匹配 C/S软件独立于硬件或OS,C/S模式的特点(2),基于消息的交换 消息式服务请求与响应的媒介 服务封装 服务器决定如何完成服务请求消息, 消息接口不变, 升级对客户没有影响 可扩展性 水平扩展 添加或移去工作站 垂直扩展 移植到更大更快的服务器或多服务器 完整性,C/S模式的优缺点(1),优点 提高了投资效率 使处理和被处理的数据更接近, 减少了网络带宽和成本的需求 具有图形用户界面的PC 支持和倡导标准化和开放系统 多个用户共享硬件资源,C/S模式的优缺点(2),不足之处 在集中式C/S环境, 服务器将成为瓶颈 多服务器应用系统的开发和设计复杂,分布式数据(1),从集中到分布数据的转移 将关键数据的多个副本置于不同站点,提高数据的可用性, 避免“单站点失败”现象 高效的数据访问, 改进数据管理性能 容易增加应用程序, 用户数目和扩大规模 数据放在其产生和频繁使用位置, 减少传输, 提高效率,分布式数据(2),数据分布基本形式 复制数据(Replicated Data) 子集数据(Subset Data) 重新组织的数据(Reorganized Data) 分区数据(Partitioned Data) 独立模式数据(Separate_Schema Data) 不相容数据(Incompatible Data),网络,DB x,主机,DB x1,DB x2,x1和x2为 x的副本,复制的数据,S1,S2,网络,DB ABC,主机,DB A,DB C,子集数据,S1,S3,DB B,S2,网络,DB R,主机,DB A,重新组织的数据,S1,DB B,S2,数据R是由数据A和B 经过重新组织而获得的,网络,地区A 的记录,地区B 的记录,分区数据,地区C 的记录,各地区的记录 具有相同模式,网络,生产 数据,财务 数据,独立模式数据,生产 主机,财务 主机,营销 数据,营销主机,网络,公司A 的记录,公司B 的记录,不相容数据,公司C 的记录,各地区的记录 具有相同模式,分布式数据(3),数据分布技术 人工抽取 快照 复制 分片 数据分布分析,SAVING,CUSTOMER,EXCHANGERATE,SAVING,CUSTOMER,EXCHANGERATE,网络,总行,分行1,分行2,分布式数据的银行应用系统,分行到总行抽取数据,分布式数据 (4),数据分布分析 统计方法 根据应用需求决定那些资源需要分布及存放位置 例子 银行应用系统 客户表存在中央银行(CB)站点, 分行(PB)存有部分数据复制 假设CB站点有10000条记录, 每天读2000次, 更新500次 PB站点有1000条记录,每天读1000次, 更新100次,分布式数据库位置矩阵,分布式数据 (5),该例子分析方法结论 分布式数据的位置取决于逻辑数据和处理(读和更新)模式, 数量等特征 数据分布是降低整个分布式系统开销的有效措施,分布式数据的访问 (1),远程请求 远程事务 分布式事务 分布式请求,分布式数据的访问 (2),远程请求 只涉及单个远程服务器的单个请求 Select * From Server1.BankDB.Customer Where Server1.BankDB.Customer.City = Beijing,SQL语句,CLIENT PB,SERVER1,远程数据请求,分布式数据的访问 (3),远程事务 允许一个事务中包含多个应用同一个远程服务器站点的数据访问请求 Begin Work Select * From Server1.BankDB.Customer Where Server1.BankDB.Customer.City = Beijing Update Server1.BankDB.Branch Set Posted_ind = Yes Commit Work,SQL语句1,CLIENT B1,SERVER1,远程事务处理,SQL语句2,分布式数据的访问 (4),分布式事务 一个事务包含多个数据请求, 每个请求只能访问单个服务器 Begin Work Select * From ServerB1.BankDB.Employee Where ServerB1.BankDB.Employee.Edlevel=MBA Select * From ServerM.BankDB.Empl_MED Where ServerM.BankDB.Empl_MED.Branch=PB Commit Work,SQL语句1,SERVER M,分布式事务处理,SERVER B1,SQL语句2,中央CLIENT,BEGIN WORK COMMIT WORK,分布式数据的访问 (5),分布式请求 一个事务包含多个数据请求,每个请求都可以引用驻留于多个服务器站点数据 Begin Work Select * From ServerB1.BankDB.Employee B1, ServerM.BankDB.Empl_MED M Where B1.Empl_ID = M. Empl_ID AND B1. Edlevel = MBA Update Server1.BankDB.Branch Set Posted_ind = Yes Where Server1.BankDB.Branch = B1 Commit Work,SQL语句1,SERVER M,分布式数据请求,SERVER B1,SQL语句2,CLIENT,BEGIN WORK COMMIT WORK,SERVER 1,ORACLE分布DB(1),1985年起提供用于C/S和S/S的SQL*net 分布式体系结构组成 SQL*Net SQL*Connect ORACLE Server ORACLE Net 联网协议 Oracle8 之前称 SQL Net协议,Oracle8/8i 称Net8协议,Oracle9i称Net协议,UPI,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,OPI,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Network Link,Server,Client Application,Oracle Server,ORACLE分布DB(2),UPI代码包括 分析SQL语句, 语法检验 为SQL打开一个游标 将Client应用程序变量连接到共享Server内存 根据Server数据字典信息描述返回域的内容 在游标空间中执行SQL语句 给Client应用程序取一条或多条记录 关闭游标 OPI有完整功能与UPI对应,ORACLE分布DB(3),SQL*Net的任务是建立和保持Client程序与Server DB间的连接, 并完成两者之间的信息转换 TNS从网络应用程序中接受请求, 并将控制传递给DB服务器,Client,OCI,TTC,NET,OPA,网络协议,OPI,TTC,NET,OPA,网络协议,Server,NPI,网络协议,OCI Oracle 调用接口层 客户机通过调用OCI完成所有SQL处理 TTC 实现与OSI网络协议模型中的表示层一样的功能,完成客户机与服务器之间不同字符集和数据类型格式的转换 NET net层很多子层的集合,相当于OSI中的会话层,建立、维护客户机应用程序和服务器之间的联结和通信 NI 网络接口层 为客户机、服务器和其他外部程序提供对Net的接口访问,处理中断请求 NR 网络路由子层 NN 网络命名子层 NA 网络认证子层 NS 网络会话子层 OPA 网络协议适配层,负责与具体网络协议通信 网络协议 具体的网络传输协议,如TCP/IP OPI 与客户机上的OCI层对应的Oracle编程接口层 NPI 网络程序接口层,负责服务器之间的连接 作为ORACLE联网的基本组件,安装时已自动安装,Oracle Server,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Oracle Server,SQL*Net,Transparent Network Substrate,Oracle Protocol Adapter,Network Software,Network Link,Server,Server,OPI,OPI,C/S网络应用解决方案(1),结构组成 数据库服务器 专门硬件服务器,安装ORACLE9i Database 管理工作站 安装管理客户端工具,管理员在此执行对数据库的日常管理维护 客户机 安装连接工具及客户应用程序,执行业务处理 主要用于基于局域网的应用,如银行储蓄业务、电信收费业务等,C/S网络应用解决方案(1)-续,连接方法 客户机配置文件 tnsnames.ora,存放服务器连接信息,TCP/IP地址、主机名、采用的协议和使用的端口等 MYORACLE= (DESCRITION=(ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=mynetserver)(PORT=1521) (CONNECT_DATA=(SERVICE_NAME=myoracle.mynet) 服务器后台进程(监听器),配置参数在listener.ora文件中 (SID_DESC = (GLOBAL_DBNAME = myoracle.mynet) (ORACLE_HOME = C:oracleora90) (SID_NAME = myoracle) 方案评价 配置简单,但是服务器的地址信息变化需重新对每台客户机配置,C/S网络应用解决方案(2),基于名字服务器的方案 方案结构组成 数据库服务器 专门的硬件,装ORACLE9i Database,需在名字服务器上完成注册 名字服务器 集中管理网络环境中所有的数据库服务器的注册信息,为客户机提供网络名解析服务 客户机 管理工作站,C/S网络应用解决方案(2)-续,连接方法 客户机上指定名字服务器解析网络服务名的方式,向名字服务器获取数据库服务器的连接信息后,直接通过网络向数据库服务器发出连接请求 数据库服务器每次修改配置,需要在名字服务器上注册 名字服务器上保存全局数据库名称及其地址、其他名字服务器的名称及地址 方案评价 在大型Oracle Net网络的规划设计中,优先考虑。用户数大时,名字服务器是瓶颈,C/S网络应用解决方案(3),基于目录服务器的方案 结构组成 数据库服务器 安装后要向目录服务器注册 目录服务器 采用专门协议LDAP(轻型目录访问协议,定义、存储和检索目录信息的标准) 客户机 管理工作站,C/S网络应用解决方案(3)-续,连接方案 客户机上指定连接到特定目录服务器 数据库服务器修改配置,要在目录服务器注册 目录服务器保存全局数据库名称和地址 评价 客户机配置简单,是与大型应用,取代名字服务器,C/S网络应用解决方案(4),基于连接管理器方案 结构组成 数据库服务器 运行在共享服务器模式下 连接管理器 提供3个扩展功能的中间件。包括: 多路复用技术,将多个客户机连接组合在一起,以单个网络连接发送给数据库服务器,以减少网络传输和数据库服务器需要处理的连接数量。 网络访问控制技术,可根

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论