




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
分布式数据库系统及其应用分布式数据库系统及其应用1客户机/服务器计算模式客户机/服务器模式的定位客户机/服务器模式的特性和优缺点客户机/服务器模式的远景展望分布式数据与分布式访问创建基于客户机/服务器模式的数据库系统分布式数据库与客户机/服务器模式第8章客户机/服务器计算模式分布式数据库与客户机/服务器模式第82概念客户机/服务器概念最早用于软件体系结构提出请求的应用程序解答请求的服务程序协作式处理方式客户机和服务器都参与一个应用程序的处理软件成分相互协作完成特定应用功能请求/服务模式硬件资源提供软件成分相互协作的设施客户机/服务器模式1.1客户机/服务器模式概念1客户机/服务器计算模式概念1.1客户机/服务器模式概念1客户机/服务器计算模式3客户机客户机客户机
网络应用服务器通信服务器打印服务器文件服务器数据库服务器请求响应响应请求客户机/服务器模式1.1客户机/服务器模式概念1客户机/服务器计算模式客户机客户机客户机网络应用通信打印文件数据库请求响应响应4C/S环境下应用成分的分布一个典型的数据库应用程序可分解为4部分界面表示逻辑:与用户交互的代码,GUI业务处理逻辑:使用输入数据来完成业务处理和规则的代码,使用3GL或4GL编写的数据处理逻辑:负责处理数据的代码,一般使用SQL语言或者嵌入式SQL语言编写数据库管理:由DBMS完成实际数据处理的程序通常放置方法界面表示逻辑和业务处理逻辑放到客户端数据处理逻辑和数据库管理功能放到服务端1.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式C/S环境下应用成分的分布1.2C/S环境下应用成分的分布5应用程序界面表示逻辑业务处理逻辑数据处理逻辑数据库管理GUI3GL4GLSQLORACLESYBASEDB2DB组成数据库应用程序的四个成分1.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式应用程序界业数数GUI3GLSQLORACLEDB组成数据库61.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式数据处理逻辑界面表示逻辑业务处理逻辑数据管理功能Client应用程序DBMSServer支持C/S结构的DBMS支持和不支持C/S结构的DBMS情形不支持C/S结构的DBMS1.2C/S环境下应用成分的分布和开放性1客户机/服务器71.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式用户客户机应用系统客户机数据库API连接软件网络协议客户机网络协议连接软件服务器软件服务器操作系统服务器数据库SQL结果网络客户机/服务器模式的内部结构1.2C/S环境下应用成分的分布和开放性1客户机/服务器8用户客户机用户客户机用户客户机文件服务打印服务数据库服务文件打印机DB客户机中间件服务器客户机/服务器模式体系结构示意图1.3
C/S模式的体系结构1客户机/服务器计算模式用户客户机用户客户机用户客户机文件服务打印服务数据库服务文件9服务器提供高速大容量的存储能力,强大的数据处理和管理能力,运行多个进程能力分类文件服务器数据库服务器事务服务器文档服务器其他服务器1.3
C/S模式的体系结构1客户机/服务器计算模式服务器1.3C/S模式的体系结构1客户机/服务器计算模式10文件GUI应用程序文件服务器客户机服务器文件服务器1.3
C/S模式的体系结构1客户机/服务器计算模式文件GUI应用程序文件服务器客户机服务器文件服务器1.3C11GUI应用程序数据库服务器客户机服务器数据SQL命令DB数据库服务器1.3
C/S模式的体系结构1客户机/服务器计算模式GUI应用程序数据库服务器客户机服务器数据SQL命令DB数据12GUI应用程序应用程序事务客户机服务器数据应用程序专用事务DB事务处理服务器数据库服务器1.3
C/S模式的体系结构1客户机/服务器计算模式GUI应用程序应用程序事务客户机服务器数据应用程序DB事务处13客户机完成界面表示和一些业务逻辑功能客户机类型非图形化用户接口:条形码,扫描器,传真机,仿真终端等图形化(GUI)用户接口:基于Windows的软件和设备面向对象接口(OOI):可视化、多媒体处理软件和设备客户机软件类型公共应用程序:字处理,报表编制,图形软件,项目管理软件等数据库前端软件:OracelPL/SQLplus应用生成和开发软件:PowerBuilder,Dephi,VisualC++,VisualBasic等中间件泛指客户机与服务器之间的软件数据库连接中间件,事务处理中间件,组件中间件,对象中间件等1.3
C/S模式的体系结构1客户机/服务器计算模式客户机1.3C/S模式的体系结构1客户机/服务器计算模式14主机处理系统所有程序在一个主机上运行优点集中式,安全性和海量数据存储设备管理能力支持大量并发用户,IBM大型机上数据库支持1000多用户缺点系统采购和维护费用大特殊的支持设施等2.1计算环境演变分析2客户机/服务器模式的定位主机处理系统2.1计算环境演变分析2客户机/服务器模式的15ModemModemHostCPUDBMSAPPsDB主机远程终端本地终端主机处理环境2.1计算环境演变分析2客户机/服务器模式的定位ModemModemHostCPUDBMSAPPsDB主机16文件处理系统应用处理(包括数据处理)都发生在PC工作站服务器仅从硬盘查询所需要的文件通过网络发送给用户缺点用户计算能力局限于本地PC工作站多用户共享文件时,仍然需要分别发送到每个PC只满足小规模工作组应用需求2.1计算环境演变分析2客户机/服务器模式的定位文件处理系统2.1计算环境演变分析2客户机/服务器模式的17LANAPPsPCAPPsPC工作站NOS文件服务器打印机修改过的文件送回服务器数据文件送给PC文件共享处理环境2.1计算环境演变分析2客户机/服务器模式的定位LANAPPsPCAPPsPC工作站NOS文件服务器打印机修18C/S处理系统“恰到好处的规模”(rightsizing)Client/server将应用资源恰到好处地分配降低了网络开销典型应用是数据库技术数据库应用程序运行在client上DBMS部分应用在server上2.1计算环境演变分析2客户机/服务器模式的定位C/S处理系统2.1计算环境演变分析2客户机/服务器模式19LANAPPsPCAPPsPCAPPsPCUNIXDBMS查询结果查询请求DB客户机/服务器处理环境服务器客户机2.1计算环境演变分析2客户机/服务器模式的定位LANAPPsPCAPPsPCAPPsPCUNIXDBMS查20多处理器服务系统存在两个或两个以上服务器的C/S系统如果本地server发现没有相关数据,通过“S对S的对话”向其他服务器发出请求企业级大型应用平台2.1计算环境演变分析2客户机/服务器模式的定位多处理器服务系统2.1计算环境演变分析2客户机/服务器模21LAN/WANAPPsPC客户机APPsPCUNIXDBMS结果请求DB多服务器处理环境MVSDBMSDB网关/网桥NOS文件服务器远程访问2.1计算环境演变分析2客户机/服务器模式的定位LAN/WANAPPsPC客户机APPsPCUNIXDB22对等处理系统C/S系统的最终归宿,是协作式分布式处理的极限站点既是客户机又是服务器站点要负责对自己资源的管理和访问,又有对任何其他站点上资源的同等访问权2.1计算环境演变分析2客户机/服务器模式的定位对等处理系统2.1计算环境演变分析2客户机/服务器模式的23APPsAPPsAPPsAPPsDBDBDBDB对等处理环境2.1计算环境演变分析2客户机/服务器模式的定位APPsAPPsAPPsAPPsDBDBDBDB对等处理环24C/S模式系统是介于集中式与分布式之间集中式C/S处理环境
数据集中,处理分布客户请求,服务器响应的协作方式多服务器C/S处理环境
数据与处理都分布一个应用可涉及多个服务器数据一个服务器数据可以被多个客户机访问
对等C/S处理环境
数据与处理都分布站点可以访问其他站点数据(全局应用),也可以访问本地数据(本地应用)2.2客户机/服务器模式的定位2客户机/服务器模式的定位C/S模式系统是介于集中式与分布式之间2.2客户机/服务器25有多个数据库服务器的C/S处理环境与分布式数据库系统相同的问题站点自治性,透明性数据独立数据完整性2.2客户机/服务器模式的定位2客户机/服务器模式的定位有多个数据库服务器的C/S处理环境2.2客户机/服务器模式26网络DB数据库服务器客户机客户机客户机…用户客户机客户机客户机…用户DB数据库服务器DB数据库服务器客户机客户机客户机…用户每个站点是一个单数据库服务器Client/Server结构的DDBS2.2客户机/服务器模式的定位2客户机/服务器模式的定位网络DB数据库服务器客户机客户机客户机…用户客户机客户机客户27按功能划分服务器是服务的提供者,客户机是消费者共享资源一个服务器可以在同一时刻对许多客户端提供服务,并且可以协调他们对于共享资源的访问不对称协议客户机主动请求服务,服务器被动等待请求定位透明性C/S软件在客户机方屏蔽服务器地址混合与匹配C/S软件独立于硬件或OS3.1客户机/服务器模式的特性3客户机/服务器模式的特性和优缺点按功能划分3.1客户机/服务器模式的特性3客户机/服务器28基于消息的交换消息式服务,请求与响应的媒介服务封装服务器决定如何完成服务请求消息,消息接口不变,升级对客户没有影响可扩展性水平扩展:添加或移去工作站垂直扩展:移植到更大更快的服务器或多服务器完整性集中式C/S处理环境中,server代码和server数据是集中维护的,带来的开销很少,保持了数据的完整性和独立性3.1客户机/服务器模式的特性3客户机/服务器模式的特性和优缺点基于消息的交换3.1客户机/服务器模式的特性3客户机/服29优点提高了投资效率使处理和被处理的数据更接近,减少了网络带宽和成本的需求具有图形用户界面的PC支持和倡导标准化和开放系统多个用户共享硬件资源3.2客户机/服务器模式的优缺点3客户机/服务器模式的特性和优缺点优点3.2客户机/服务器模式的优缺点3客户机/服务器模式30不足之处在集中式C/S环境,如果应用逻辑的主要部分移到服务器上,服务器将成为瓶颈多服务器应用系统的开发和设计复杂3.2客户机/服务器模式的优缺点3客户机/服务器模式的特性和优缺点不足之处3.2客户机/服务器模式的优缺点3客户机/服务器31当前的主要模式C/S两层结构肥客户机:所有的表示逻辑和应用逻辑放到客户机瘦服务器:只负责响应用户请求,全局数据的访问和管理B/S三层结构数据层功能层表示层4.1当前客户机/服务器模式4客户机/服务器模式的远景展望当前的主要模式4.1当前客户机/服务器模式4客户机/服务32浏览器浏览器浏览器Web服务器DB数据库服务器产品实例NetscapeNavigator,MacintoshMicrosoftIISWindows2000OracleUNIXSQL关系Web页面客户代码数据功能HTTP客户客户端脚本视图实例化HTTP服务器服务器端脚本视图建立、检索、更新和删除SQL处理数据库管理三层客户机/服务器模式结构及各层功能HTTP请求响应ODBCADOOLE/DBJDBC本地调用4.1当前客户机/服务器模式4客户机/服务器模式的远景展望浏览器浏览器浏览器WebDB数据库服务器产品实例Netsca334.2多层客户机/服务器模式结构4客户机/服务器模式的远景展望浏览器浏览器浏览器Web服务器视图处理器业务规则处理器DB数据库服务器(a)多处理器用于视图和规则处理DB1数据库服务器1(b)多处理器用于分布式处理DB2数据库服务器2浏览器浏览器浏览器Web服务器分布式处理器4.2多层客户机/服务器模式结构4客户机/服务器模式的远344.3客户机/服务器模式的展望4客户机/服务器模式的远景展望展望服务器将更加强大,现在就可以是一台台式机,以后会更强大服务器更加可靠和健壮,处理器和磁盘的成本将大幅下降安全性更高,加密解密技术进一步发展高带宽网络的发展,可以使得多层次结构的应用更加普及4.3客户机/服务器模式的展望4客户机/服务器模式的远景35从集中到分布数据的转移将关键数据的多个副本置于不同站点,提高数据的可用性,避免“单站点失败”现象高效的数据访问,改进数据管理性能容易增加应用程序,用户数目和扩大规模数据放在其产生和频繁使用位置,减少传输,提高效率5.1从集中式到分布式的转移5分布式数据与分布式访问从集中到分布数据的转移5.1从集中式到分布式的转移5分布36数据分布基本形式复制数据(ReplicatedData)子集数据(SubsetData)重新组织的数据(ReorganizedData)分区数据(PartitionedData)独立模式数据(Separate_SchemaData)不相容数据(IncompatibleData)5.2数据分布的基本形式5分布式数据与分布式访问数据分布基本形式5.2数据分布的基本形式5分布式数据与分37网络DBx主机DBx1DBx2x1和x2为x的副本复制的数据S1S25.2数据分布的基本形式5分布式数据与分布式访问网络DB主机DBDBx1和x2为复制的数据S1S25.238网络DBABC主机DBADBC子集数据S1S3DBBS25.2数据分布的基本形式5分布式数据与分布式访问网络DB主机DBDB子集数据S1S3DBS25.2数据分布39网络DBR主机DBA重新组织的数据S1DBBS2数据R是由数据A和B经过重新组织而获得的5.2数据分布的基本形式5分布式数据与分布式访问DB主机DB重新组织的数据S1DBS2数据R是由数据A和B540网络地区A的记录主机地区B的记录分区数据地区C的记录各地区的记录具有相同模式主机主机5.2数据分布的基本形式5分布式数据与分布式访问地区A主机地区B分区数据地区C各地区的记录主机主机5.2数41网络生产数据财务数据独立模式数据生产主机财务主机营销数据营销主机5.2数据分布的基本形式5分布式数据与分布式访问生产财务独立模式数据生产财务营销营销5.2数据分布的基本形42网络公司A的记录主机公司B的记录不相容数据公司C的记录各公司的数据存在不相容主机主机5.2数据分布的基本形式5分布式数据与分布式访问网络公司A主机公司B不相容数据公司C各公司的数据主机主机5.43数据分布技术人工抽取快照复制分片数据分布分析5.3数据分布的技术5分布式数据与分布式访问数据分布技术5.3数据分布的技术5分布式数据与分布式访问44SAVINGCUSTOMEREXCHANGERATESAVINGCUSTOMEREXCHANGERATESAVINGCUSTOMEREXCHANGERATE网络总行分行1分行2分布式数据的银行应用系统分行到总行抽取数据SAVINGCUSTOMEREXCHANGERATESAVI45数据分布分析是一种统计方法根据应用需求决定那些资源需要分布及存放位置例子:银行应用系统客户表存在中央银行(CB)站点,分行(PB)存有部分数据复制假设CB站点有10000条记录,每天读2000次,更新500次PB站点有1000条记录,每天读1000次,更新100次5.3数据分布的技术5分布式数据与分布式访问数据分布分析5.3数据分布的技术5分布式数据与分布式访问4610001002000500READUPDATEPBCB站点操作11002500600NYYYNY123PBCB网络开销数据分布站点配制方法分布式数据库位置矩阵5.3数据分布的技术5分布式数据与分布式访问10002000READPBCB站点1100NY1PBCB数47该例子分析方法结论分布式数据的位置取决于逻辑数据和处理(读和更新)模式,数量等特征数据分布是降低整个分布式系统开销的有效措施5.3数据分布的技术5分布式数据与分布式访问该例子分析方法结论5.3数据分布的技术5分布式数据与分布48远程请求远程事务分布式事务分布式请求5.4分布式数据的访问5分布式数据与分布式访问远程请求5.4分布式数据的访问5分布式数据与分布式访问49远程请求只涉及单个远程服务器的单个请求Select*FromServer1.BankDB.CustomerWhereServer1.BankDB.Customer.City=‘Beijing’5.4分布式数据的访问5分布式数据与分布式访问远程请求5.4分布式数据的访问5分布式数据与分布式访问50SQL语句CLIENTPBSERVER1CUSTOMER远程数据请求5.4分布式数据的访问5分布式数据与分布式访问SQL语句CLIENTPBSERVER1CUSTOMER51远程事务允许一个事务中包含多个数据访问请求,这些请求都引用同一个远程服务器站点上的数据BeginWorkSelect*FromServer1.BankDB.CustomerWhereServer1.BankDB.Customer.City=‘Beijing’UpdateServer1.BankDB.BranchSetPosted_ind=‘Yes’CommitWork5.4分布式数据的访问5分布式数据与分布式访问远程事务5.4分布式数据的访问5分布式数据与分布式访问52SQL语句1CLIENTB1SERVER1CUSTOMER远程事务处理分行SQL语句25.4分布式数据的访问5分布式数据与分布式访问SQL语句1CLIENTB1SERVER1CUSTOMER53分布式事务一个事务包含多个数据请求,每个请求只能访问单个服务器BeginWorkSelect*FromServerB1.BankDB.EmployeeWhereServerB1.BankDB.Employee.Edlevel=‘MBA’Select*FromServerM.BankDB.Empl_MEDWhereServerM.BankDB.Empl_MED.Branch=‘PB’CommitWork5.4分布式数据的访问5分布式数据与分布式访问分布式事务5.4分布式数据的访问5分布式数据与分布式访问54SQL语句1SERVERMMEDICAL分布式事务处理SERVERB1CUSTOMERSQL语句2中央CLIENTBEGINWORK……COMMITWORK5.4分布式数据的访问5分布式数据与分布式访问SQL语句1SERVERMMEDICAL分布式事务处理S55分布式请求一个事务包含多个数据请求,每个请求都可以引用驻留于多个服务器站点数据BeginWorkSelect*FromServerB1.BankDB.EmployeeB1,ServerM.BankDB.Empl_MED
MWhereB1.Empl_ID=M.Empl_IDAND
B1.Edlevel=‘MBA’UpdateServer1.BankDB.BranchSetPosted_ind=‘Yes’WhereServer1.BankDB.Branch=‘B1’CommitWork5.4分布式数据的访问5分布式数据与分布式访问分布式请求5.4分布式数据的访问5分布式数据与分布式访问56SQL语句1SERVERMEMPLOYEE分布式数据请求SERVERB1SQL语句2CLIENTBEGINWORK……COMMITWORKEMPL_MEDBRANCHSERVER1SQL语句1SERVERMEMPLOYEE分布式数据请求S57CASE工具ERStudio,PowerDesigner,RationalRose,Visio等可视化程序设计工具VB,VC++VisualAge,Eclipse,JBuilderDephi,Powerbuilder硬核程序设计工具C,C++,Cobol套装应用程序MSOffice,PerfectOffice,SmartOffice测试工具Softbridge,SQA版本控制工具SourceSafe,CMVC,Delta等6.1创建C/S系统自动化设计工具6创建基于C/S模式的数据库系统CASE工具6.1创建C/S系统自动化设计工具6创建基于586.2异构数据源访问接口和方法6创建基于C/S模式的数据库系统
ODBC的作用浏览器浏览器浏览器Web服务器数据库服务器本地接口ODBC关系数据库Oracle,IBMDb2,Sybase,SQLServer,Access非关系数据库文件处理器电子邮件图象、视频、其他文档等6.2异构数据源访问接口和方法6创建基于C/S模式的数据596.2异构数据源访问接口和方法6创建基于C/S模式的数据库系统
驱动程序管理器连接语句结果集结果集元数据可调用语句预备语句实用程序MySQL驱动程序OracleL驱动程序JDBC-ODBC桥ODBC驱动程序MySQL数据库Oracle数据库Oracle数据库SQL数据库JDBC的组成部件6.2异构数据源访问接口和方法6创建基于C/S模式的数据606.3基于B/S模式系统的Microsoft实现方案6创建基于C/S模式的数据库系统
浏览器Web服务器DB数据库服务器软件产品InernetexplorerIIS,ASP,ISAPI,CGI,Java,C++Oracle,Sybase,IBMDB2,SQLServerSQL关系Web页面客户请求结果数据操作系统Windows2000WindowsXPWindows2003Windows2000基于B/S模式系统的Microsoft实现方案HTML,DHTML,XMLODBCADOOLE/DBJDBCWindows2003Windows20006.3基于B/S模式系统的Microsoft实现方案6创611985年起提供用于C/S和S/S的SQL*net分布式体系结构组成SQL*NetSQL*ConnectORACLEServer7.1起源和组成7Orace支持客户机/服务器模式1985年起提供用于C/S和S/S的SQL*net7.1起62ORACLE在同构和异构网络环境中都支持C/S和S/S结构C/S连接时,通过连接描述符实现S/S之间的连接,或数据访问操作可以用DB链路进行.
CreateDatabaseLinkBostonConnecttoScottIdentifiedByTiggerUsing‘EducationDB’;查询时用Boston存取远程Scott/Tigger用户的EMP表:
Select*FromEMP@Boston;7.2Oracle分布式系统功能7Orace支持客户机/服务器模式ORACLE在同构和异构网络环境中都支持C/S和S/S结构763UPISQL*NetTransparentNetworkSubstrateOracleProtocolAdapterNetworkSoftwareOPISQL*NetTransparentNetworkSubstrateOracleProtocolAdapterNetworkSoftwareNetworkLinkClientServerClientApplicationOracleServer7.3C/S会话的组成7Orace支持客户机/服务器模式UPISQL*NetTransparentOracleP64OracleServerSQL*NetTransparentNetworkSubstrateOracleProtocolAdapterNetworkSoftwareOracleServerSQL*NetTransparentNetworkSubstrateOracleProtocolAdapterNetworkSoftwareNetworkLinkServerServerOPIOPI7.4S/S会话的组成7Orace支持客户机/服务器模式OracleServerSQL*NetTransparen65手工复制Export/ImportCreateTable命令Copy命令:SQL*Plus中使用快照触发子复制同步复制例:本地DB的一个EMP表,需要在sf数据库链所指定的远程DB中复制改EMP表.7.5表复制策略7Orace支持客户机/服务器模式手工复制7.5表复制策略7Orace支持客户机/服务器模66CreateTriggerEmp-ReplicaBeforeInsertorUpdateonEmpForEachRowDeclareBeginIfInsertingThenIf:new.flagisNullThenInsertIntoEmp@sfValues(:new.empno,:new,ename,…..,’B’):new.flag=‘A’EndifElse/*Updating*/If:new.flag=:old.flagThenUpdateEmp@sfSetename=:new.ename,…..Flag=:new.empnoWhereempno=:new.empno;If:old.flag=‘A’Then:new.flag=‘B’Else:new.flag=‘A’EndifEndifEndifEnd触发子复制表CreateTriggerEmp-ReplicaBe67总结客户机/服务器计算模式客户机/服务器模式的定位客户机/服务器模式的特性和优缺点客户机/服务器模式的远景展望分布式数据与分布式访问创建基于客户机/服务器模式的数据库系统总结68分布式数据库系统及其应用分布式数据库系统及其应用69客户机/服务器计算模式客户机/服务器模式的定位客户机/服务器模式的特性和优缺点客户机/服务器模式的远景展望分布式数据与分布式访问创建基于客户机/服务器模式的数据库系统分布式数据库与客户机/服务器模式第8章客户机/服务器计算模式分布式数据库与客户机/服务器模式第870概念客户机/服务器概念最早用于软件体系结构提出请求的应用程序解答请求的服务程序协作式处理方式客户机和服务器都参与一个应用程序的处理软件成分相互协作完成特定应用功能请求/服务模式硬件资源提供软件成分相互协作的设施客户机/服务器模式1.1客户机/服务器模式概念1客户机/服务器计算模式概念1.1客户机/服务器模式概念1客户机/服务器计算模式71客户机客户机客户机
网络应用服务器通信服务器打印服务器文件服务器数据库服务器请求响应响应请求客户机/服务器模式1.1客户机/服务器模式概念1客户机/服务器计算模式客户机客户机客户机网络应用通信打印文件数据库请求响应响应72C/S环境下应用成分的分布一个典型的数据库应用程序可分解为4部分界面表示逻辑:与用户交互的代码,GUI业务处理逻辑:使用输入数据来完成业务处理和规则的代码,使用3GL或4GL编写的数据处理逻辑:负责处理数据的代码,一般使用SQL语言或者嵌入式SQL语言编写数据库管理:由DBMS完成实际数据处理的程序通常放置方法界面表示逻辑和业务处理逻辑放到客户端数据处理逻辑和数据库管理功能放到服务端1.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式C/S环境下应用成分的分布1.2C/S环境下应用成分的分布73应用程序界面表示逻辑业务处理逻辑数据处理逻辑数据库管理GUI3GL4GLSQLORACLESYBASEDB2DB组成数据库应用程序的四个成分1.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式应用程序界业数数GUI3GLSQLORACLEDB组成数据库741.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式数据处理逻辑界面表示逻辑业务处理逻辑数据管理功能Client应用程序DBMSServer支持C/S结构的DBMS支持和不支持C/S结构的DBMS情形不支持C/S结构的DBMS1.2C/S环境下应用成分的分布和开放性1客户机/服务器751.2
C/S环境下应用成分的分布和开放性1客户机/服务器计算模式用户客户机应用系统客户机数据库API连接软件网络协议客户机网络协议连接软件服务器软件服务器操作系统服务器数据库SQL结果网络客户机/服务器模式的内部结构1.2C/S环境下应用成分的分布和开放性1客户机/服务器76用户客户机用户客户机用户客户机文件服务打印服务数据库服务文件打印机DB客户机中间件服务器客户机/服务器模式体系结构示意图1.3
C/S模式的体系结构1客户机/服务器计算模式用户客户机用户客户机用户客户机文件服务打印服务数据库服务文件77服务器提供高速大容量的存储能力,强大的数据处理和管理能力,运行多个进程能力分类文件服务器数据库服务器事务服务器文档服务器其他服务器1.3
C/S模式的体系结构1客户机/服务器计算模式服务器1.3C/S模式的体系结构1客户机/服务器计算模式78文件GUI应用程序文件服务器客户机服务器文件服务器1.3
C/S模式的体系结构1客户机/服务器计算模式文件GUI应用程序文件服务器客户机服务器文件服务器1.3C79GUI应用程序数据库服务器客户机服务器数据SQL命令DB数据库服务器1.3
C/S模式的体系结构1客户机/服务器计算模式GUI应用程序数据库服务器客户机服务器数据SQL命令DB数据80GUI应用程序应用程序事务客户机服务器数据应用程序专用事务DB事务处理服务器数据库服务器1.3
C/S模式的体系结构1客户机/服务器计算模式GUI应用程序应用程序事务客户机服务器数据应用程序DB事务处81客户机完成界面表示和一些业务逻辑功能客户机类型非图形化用户接口:条形码,扫描器,传真机,仿真终端等图形化(GUI)用户接口:基于Windows的软件和设备面向对象接口(OOI):可视化、多媒体处理软件和设备客户机软件类型公共应用程序:字处理,报表编制,图形软件,项目管理软件等数据库前端软件:OracelPL/SQLplus应用生成和开发软件:PowerBuilder,Dephi,VisualC++,VisualBasic等中间件泛指客户机与服务器之间的软件数据库连接中间件,事务处理中间件,组件中间件,对象中间件等1.3
C/S模式的体系结构1客户机/服务器计算模式客户机1.3C/S模式的体系结构1客户机/服务器计算模式82主机处理系统所有程序在一个主机上运行优点集中式,安全性和海量数据存储设备管理能力支持大量并发用户,IBM大型机上数据库支持1000多用户缺点系统采购和维护费用大特殊的支持设施等2.1计算环境演变分析2客户机/服务器模式的定位主机处理系统2.1计算环境演变分析2客户机/服务器模式的83ModemModemHostCPUDBMSAPPsDB主机远程终端本地终端主机处理环境2.1计算环境演变分析2客户机/服务器模式的定位ModemModemHostCPUDBMSAPPsDB主机84文件处理系统应用处理(包括数据处理)都发生在PC工作站服务器仅从硬盘查询所需要的文件通过网络发送给用户缺点用户计算能力局限于本地PC工作站多用户共享文件时,仍然需要分别发送到每个PC只满足小规模工作组应用需求2.1计算环境演变分析2客户机/服务器模式的定位文件处理系统2.1计算环境演变分析2客户机/服务器模式的85LANAPPsPCAPPsPC工作站NOS文件服务器打印机修改过的文件送回服务器数据文件送给PC文件共享处理环境2.1计算环境演变分析2客户机/服务器模式的定位LANAPPsPCAPPsPC工作站NOS文件服务器打印机修86C/S处理系统“恰到好处的规模”(rightsizing)Client/server将应用资源恰到好处地分配降低了网络开销典型应用是数据库技术数据库应用程序运行在client上DBMS部分应用在server上2.1计算环境演变分析2客户机/服务器模式的定位C/S处理系统2.1计算环境演变分析2客户机/服务器模式87LANAPPsPCAPPsPCAPPsPCUNIXDBMS查询结果查询请求DB客户机/服务器处理环境服务器客户机2.1计算环境演变分析2客户机/服务器模式的定位LANAPPsPCAPPsPCAPPsPCUNIXDBMS查88多处理器服务系统存在两个或两个以上服务器的C/S系统如果本地server发现没有相关数据,通过“S对S的对话”向其他服务器发出请求企业级大型应用平台2.1计算环境演变分析2客户机/服务器模式的定位多处理器服务系统2.1计算环境演变分析2客户机/服务器模89LAN/WANAPPsPC客户机APPsPCUNIXDBMS结果请求DB多服务器处理环境MVSDBMSDB网关/网桥NOS文件服务器远程访问2.1计算环境演变分析2客户机/服务器模式的定位LAN/WANAPPsPC客户机APPsPCUNIXDB90对等处理系统C/S系统的最终归宿,是协作式分布式处理的极限站点既是客户机又是服务器站点要负责对自己资源的管理和访问,又有对任何其他站点上资源的同等访问权2.1计算环境演变分析2客户机/服务器模式的定位对等处理系统2.1计算环境演变分析2客户机/服务器模式的91APPsAPPsAPPsAPPsDBDBDBDB对等处理环境2.1计算环境演变分析2客户机/服务器模式的定位APPsAPPsAPPsAPPsDBDBDBDB对等处理环92C/S模式系统是介于集中式与分布式之间集中式C/S处理环境
数据集中,处理分布客户请求,服务器响应的协作方式多服务器C/S处理环境
数据与处理都分布一个应用可涉及多个服务器数据一个服务器数据可以被多个客户机访问
对等C/S处理环境
数据与处理都分布站点可以访问其他站点数据(全局应用),也可以访问本地数据(本地应用)2.2客户机/服务器模式的定位2客户机/服务器模式的定位C/S模式系统是介于集中式与分布式之间2.2客户机/服务器93有多个数据库服务器的C/S处理环境与分布式数据库系统相同的问题站点自治性,透明性数据独立数据完整性2.2客户机/服务器模式的定位2客户机/服务器模式的定位有多个数据库服务器的C/S处理环境2.2客户机/服务器模式94网络DB数据库服务器客户机客户机客户机…用户客户机客户机客户机…用户DB数据库服务器DB数据库服务器客户机客户机客户机…用户每个站点是一个单数据库服务器Client/Server结构的DDBS2.2客户机/服务器模式的定位2客户机/服务器模式的定位网络DB数据库服务器客户机客户机客户机…用户客户机客户机客户95按功能划分服务器是服务的提供者,客户机是消费者共享资源一个服务器可以在同一时刻对许多客户端提供服务,并且可以协调他们对于共享资源的访问不对称协议客户机主动请求服务,服务器被动等待请求定位透明性C/S软件在客户机方屏蔽服务器地址混合与匹配C/S软件独立于硬件或OS3.1客户机/服务器模式的特性3客户机/服务器模式的特性和优缺点按功能划分3.1客户机/服务器模式的特性3客户机/服务器96基于消息的交换消息式服务,请求与响应的媒介服务封装服务器决定如何完成服务请求消息,消息接口不变,升级对客户没有影响可扩展性水平扩展:添加或移去工作站垂直扩展:移植到更大更快的服务器或多服务器完整性集中式C/S处理环境中,server代码和server数据是集中维护的,带来的开销很少,保持了数据的完整性和独立性3.1客户机/服务器模式的特性3客户机/服务器模式的特性和优缺点基于消息的交换3.1客户机/服务器模式的特性3客户机/服97优点提高了投资效率使处理和被处理的数据更接近,减少了网络带宽和成本的需求具有图形用户界面的PC支持和倡导标准化和开放系统多个用户共享硬件资源3.2客户机/服务器模式的优缺点3客户机/服务器模式的特性和优缺点优点3.2客户机/服务器模式的优缺点3客户机/服务器模式98不足之处在集中式C/S环境,如果应用逻辑的主要部分移到服务器上,服务器将成为瓶颈多服务器应用系统的开发和设计复杂3.2客户机/服务器模式的优缺点3客户机/服务器模式的特性和优缺点不足之处3.2客户机/服务器模式的优缺点3客户机/服务器99当前的主要模式C/S两层结构肥客户机:所有的表示逻辑和应用逻辑放到客户机瘦服务器:只负责响应用户请求,全局数据的访问和管理B/S三层结构数据层功能层表示层4.1当前客户机/服务器模式4客户机/服务器模式的远景展望当前的主要模式4.1当前客户机/服务器模式4客户机/服务100浏览器浏览器浏览器Web服务器DB数据库服务器产品实例NetscapeNavigator,MacintoshMicrosoftIISWindows2000OracleUNIXSQL关系Web页面客户代码数据功能HTTP客户客户端脚本视图实例化HTTP服务器服务器端脚本视图建立、检索、更新和删除SQL处理数据库管理三层客户机/服务器模式结构及各层功能HTTP请求响应ODBCADOOLE/DBJDBC本地调用4.1当前客户机/服务器模式4客户机/服务器模式的远景展望浏览器浏览器浏览器WebDB数据库服务器产品实例Netsca1014.2多层客户机/服务器模式结构4客户机/服务器模式的远景展望浏览器浏览器浏览器Web服务器视图处理器业务规则处理器DB数据库服务器(a)多处理器用于视图和规则处理DB1数据库服务器1(b)多处理器用于分布式处理DB2数据库服务器2浏览器浏览器浏览器Web服务器分布式处理器4.2多层客户机/服务器模式结构4客户机/服务器模式的远1024.3客户机/服务器模式的展望4客户机/服务器模式的远景展望展望服务器将更加强大,现在就可以是一台台式机,以后会更强大服务器更加可靠和健壮,处理器和磁盘的成本将大幅下降安全性更高,加密解密技术进一步发展高带宽网络的发展,可以使得多层次结构的应用更加普及4.3客户机/服务器模式的展望4客户机/服务器模式的远景103从集中到分布数据的转移将关键数据的多个副本置于不同站点,提高数据的可用性,避免“单站点失败”现象高效的数据访问,改进数据管理性能容易增加应用程序,用户数目和扩大规模数据放在其产生和频繁使用位置,减少传输,提高效率5.1从集中式到分布式的转移5分布式数据与分布式访问从集中到分布数据的转移5.1从集中式到分布式的转移5分布104数据分布基本形式复制数据(ReplicatedData)子集数据(SubsetData)重新组织的数据(ReorganizedData)分区数据(PartitionedData)独立模式数据(Separate_SchemaData)不相容数据(IncompatibleData)5.2数据分布的基本形式5分布式数据与分布式访问数据分布基本形式5.2数据分布的基本形式5分布式数据与分105网络DBx主机DBx1DBx2x1和x2为x的副本复制的数据S1S25.2数据分布的基本形式5分布式数据与分布式访问网络DB主机DBDBx1和x2为复制的数据S1S25.2106网络DBABC主机DBADBC子集数据S1S3DBBS25.2数据分布的基本形式5分布式数据与分布式访问网络DB主机DBDB子集数据S1S3DBS25.2数据分布107网络DBR主机DBA重新组织的数据S1DBBS2数据R是由数据A和B经过重新组织而获得的5.2数据分布的基本形式5分布式数据与分布式访问DB主机DB重新组织的数据S1DBS2数据R是由数据A和B5108网络地区A的记录主机地区B的记录分区数据地区C的记录各地区的记录具有相同模式主机主机5.2数据分布的基本形式5分布式数据与分布式访问地区A主机地区B分区数据地区C各地区的记录主机主机5.2数109网络生产数据财务数据独立模式数据生产主机财务主机营销数据营销主机5.2数据分布的基本形式5分布式数据与分布式访问生产财务独立模式数据生产财务营销营销5.2数据分布的基本形110网络公司A的记录主机公司B的记录不相容数据公司C的记录各公司的数据存在不相容主机主机5.2数据分布的基本形式5分布式数据与分布式访问网络公司A主机公司B不相容数据公司C各公司的数据主机主机5.111数据分布技术人工抽取快照复制分片数据分布分析5.3数据分布的技术5分布式数据与分布式访问数据分布技术5.3数据分布的技术5分布式数据与分布式访问112SAVINGCUSTOMEREXCHANGERATESAVINGCUSTOMEREXCHANGERATESAVINGCUSTOMEREXCHANGERATE网络总行分行1分行2分布式数据的银行应用系统分行到总行抽取数据SAVINGCUSTOMEREXCHANGERATESAVI113数据分布分析是一种统计方法根据应用需求决定那些资源需要分布及存放位置例子:银行应用系统客户表存在中央银行(CB)站点,分行(PB)存有部分数据复制假设CB站点有10000条记录,每天读2000次,更新500次PB站点有1000条记录,每天读1000次,更新100次5.3数据分布的技术5分布式数据与分布式访问数据分布分析5.3数据分布的技术5分布式数据与分布式访问11410001002000500READUPDATEPBCB站点操作11002500600NYYYNY123PBCB网络开销数据分布站点配制方法分布式数据库位置矩阵5.3数据分布的技术5分布式数据与分布式访问10002000READPBCB站点1100NY1PBCB数115该例子分析方法结论分布式数据的位置取决于逻辑数据和处理(读和更新)模式,数量等特征数据分布是降低整个分布式系统开销的有效措施5.3数据分布的技术5分布式数据与分布式访问该例子分析方法结论5.3数据分布的技术5分布式数据与分布116远程请求远程事务分布式事务分布式请求5.4分布式数据的访问5分布式数据与分布式访问远程请求5.4分布式数据的访问5分布式数据与分布式访问117远程请求只涉及单个远程服务器的单个请求Select*FromServer1.BankDB.CustomerWhereServer1.BankDB.Customer.City=‘Beijing’5.4分布式数据的访问5分布式数据与分布式访问远程请求5.4分布式数据的访问5分布式数据与分布式访问118SQL语句CLIENTPBSERVER1CUSTOMER远程数据请求5.4分布式数据的访问5分布式数据与分布式访问SQL语句CLIENTPBSERVER1CUSTOMER119远程事务允许一个事务中包含多个数据访问请求,这些请求都引用同一个远程服务器站点上的数据BeginWorkSelect*FromServer1.BankDB.CustomerWhereServer1.BankDB.Customer.City=‘Beijing’UpdateServer1.BankDB.BranchSetPosted_ind=‘Yes’CommitWork5.4分布式数据的访问5分布式数据与分布式访问远程事务5.4分布式数据的访问5分布式数据与分布式访问120SQL语句1CLIENTB1SERVER1CUSTOMER远程事务处理分行SQL语句25.4分布式数据的访问5分布式数据与分布式访问SQL语句1CLIENTB1SERVER1CUSTOMER121分布式事务一个事务包含多个数据请求,每个请求只能访问单个服务器BeginWorkSelect*FromServerB1.BankDB.EmployeeWhereServerB1.BankDB.Employee.Edlevel=‘MBA’Select*FromServerM.BankDB.Empl_MEDWhereServerM.BankDB.Empl_MED.Branch=‘PB’CommitWork5.4分布式数据的访问5分布式数据与分布式访问分布式事务5.4分布式数据的访问5分布式数据与分布式访问122SQL语句1SERVERMMEDICAL分布式事务处理SERVERB1CUSTOMERSQL语句2中央CLIENTBEGINWORK……COMMITWORK5.4分布式数据的访问5分布式数据与分布式访问SQL语句1SERVERMMEDICAL分布式事务处理S123分布式请求一个事务包含多个数据请求,每个请求都可以引用驻留于多个服务器站点数据BeginWorkSelect*FromServerB1.BankDB.EmployeeB1,ServerM.BankDB.Empl_MED
MWhereB1.Empl_ID=M.Empl_IDAND
B1.Edlevel=‘MBA’UpdateServer1.BankDB.BranchSetPosted_ind=‘Yes’WhereServer1.BankDB.Branch=‘B1’CommitWork5.4分布式数据的访问5分布式数据与分布式访问分布式请求5.4分布式数据的访问5分布式数据与分布式访问124SQL语句1SERVERMEMPLOYEE分布式数据请求SERVERB1SQL语句2CLIENTBEGINWORK……COMMITWORKEMPL_MEDBRANCHSERVER1SQL语句1SERVERMEMPLOYEE分布式数据请求S125CASE工具ERStudio,PowerDesigner,RationalRose,Visio等可视化程序设计工具VB,VC++VisualAge,Eclipse,JBuilderDephi,Powerbuilder硬核程序设计工具C,C++,Cobol套装应用程序MSOffice,PerfectOffice,SmartOffice测试工具Softbridge,SQA版本控制工具SourceSafe,CMVC,Delta等6.1创建C/S系统自动化设计工具6创建基于C/S模式的数据库系统CASE工具6.1创建C/S系统自动化设计工具6创建基于1266.2异构数据源访问接口和方法6创建基于C/S模式的数据库系统
ODBC的作用浏览器浏览器浏览器Web服务器数据库服务器本地接口ODBC关系数据库Oracle,IBMDb2,Sybase,SQLServer,Access非关系数据库文件处理器电子邮件图象、视频、其他文档等6.2异构数据源访问接口和方法6创建基于C/S模式的数据1276.2异构数据源访问接口和方法6创建
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 移动办公设备贷款协议
- 《网络广告互动性研究》课件
- 双语列车长车票的发售规定课件
- 双语列车长火灾爆炸事故的应急处理课件
- 中医与传统文化课件
- 家居设计合同范本
- 版个人房产转让合同样本
- 四位创始股东合作合同书
- 【课件】电荷+课件+-高二上学期物理人教版(2019)必修第三册+
- 景德镇艺术职业大学《中医养生与康复学》2023-2024学年第二学期期末试卷
- 2022年医疗器械公司年度培训计划及培训记录
- 钢铁公司Q195作业指导书
- 口腔科诊断证明书模板
- 中考物理“极值”与“取值范围”问题专题训练
- 2009年安徽省中考化学试卷【含答案可编辑】
- 越南工业到2025年发展战略及到2035发展展望(提到钢铁)
- 河北省用人单位录用人员身份核查登记表
- 《给教师的100条建议》电子书
- 老视的机制及治疗的研究进展
- VDA6.3的P2-7条款
- 工程联系单表格(模板)
评论
0/150
提交评论