收藏 分销(赏)

主流数据库体系架构及方案介绍.pptx

上传人:pc****0 文档编号:13754343 上传时间:2026-04-10 格式:PPTX 页数:175 大小:9.14MB 下载积分:10 金币
下载 相关 举报
主流数据库体系架构及方案介绍.pptx_第1页
第1页 / 共175页
主流数据库体系架构及方案介绍.pptx_第2页
第2页 / 共175页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/2/18,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/2/18,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/2/18,#,主流数据库体系结构及方案介绍,解决方案,部,2016,年,0,1,月,ANY TIME,ANY QUESTION,本讲内容,:,1.Oracle,数据库基本架构及常见方案,2.K-DB,数据库基本架构及常见方案,3.DB2,数据库基本架构及常见方案,4.Sybase,数据库基本架构及常见方案,5.MySQL,数据库基本架构及常见方案,概述,Oracle,数据基本架构,:,概述,存储结构,内存结构,进程结构,实例,系统全局区(,SGA),后台进程,数据库文件,Oracle,数据基本架构,:,内存结构,Java,池,数据库,缓冲区高速缓存,重做日志,缓冲区,共享池,大型池,SGA,流池,服务器,进程,1,PGA,服务器,进程,2,PGA,后台进程,PGA,Oracle,数据基本架构,:,进程,系统,监视器,(SMON),数据库,写进程,(DBW,n,),检查点,(CKPT),日志写进程,(LGWR),进程,监视器,(PMON),归档程序,(ARC,n,),服务器,进程,服务器,进程,服务器,进程,服务器,进程,后台进程,系统全局区,(SGA),Oracle,数据基本架构,:,实例管理,SGA,数据库,写进程,(DBW,n,),日志写进程,(LGWR),数据库,缓冲区高速缓存,重做日志,缓冲区,1,用户进程,2,示例:,启动数据库实例,建立连接,系统,监视器,(SMON),进程,监视器,(PMON),数据文件,重做日志文件,实例,服务器,进程,3,Oracle,数据基本架构,:,实例管理,用户更新了某一行数据,重做日志文件,实例,SGA,数据库,写进程,(DBW,n,),数据库,缓冲区高速缓存,重做日志缓冲区,服务器,进程,用户进程,4,10,7,6,5,8,示例:处理,SQL,语句,归档程序,(ARC,n,),9,检查点,(CKPT),数据文件,存档日志,控制文件,日志写进程,(LGWR),Oracle,数据基本架构,:,物理数据库结构,联机重做日志文件,口令文件,参数文件,归档日志文件,控制文件,数据文件,预警和跟踪日志文件,备份文件,Oracle,数据基本架构,:,OMF,示例:,SQL ALTER SYSTEM SET DB_CREATE_FILE_DEST=/u01/oradata;,SQL CREATE TABLESPACE tbs_1;,Oracle Managed Files(OMF),按照数据库对象而不是文件名指定文件操作。,参数,说明,DB_CREATE_FILE_DEST,定义数据文件和临时文件默认文件系统目录的位置,DB_CREATE_ONLINE_LOG_DEST_n,定义重做日志文件和控制文件的创建位置,DB_RECOVERY_FILE_DEST,定义,RMAN,备份的位置,Oracle,数据基本架构,:,逻辑和物理数据库结构,数据库,逻辑,物理,表空间,数据文件,操作系统块,段,区,Oracle,数据块,方案,Oracle,数据基本架构,:,结构组件汇总,内存结构,系统全局区(,SGA):,数据库缓冲区高速缓存、重做缓冲区以及各种池,程序全局区(,PGA),进程结构,用户进程和服务器进程,后台进程:,SMON、PMON、DBW,n,、CKPT、LGWR、ARC,n,等,存储结构,逻辑:数据库、方案、表空间、段、区和,Oracle,块,物理:用于存储数据、参数、重做和操作系统块的文件,Oracle,数据库常见方案,:,Oracle RAC,Oracle Real Application Server,,真正应用集群,简称,Oracle RAC,,是,Oracle,的并行集群,位于不同服务器系统的,Oracle,实例同时访问同一个,Oracle,数据库,节点之间通过私有网络进行通信,所有的控制文件、联机日志和数据文件存放在共享的设备上,能够被集群中的所有节点同时读写。,什么是,Oracle RAC,集群,?,Oracle,数据库常见方案,:,Oracle RAC,体系结构,集群的,数据库服务器,镜像磁盘,子系统,高速交换机和,互联,集线器或,交换机结构,网络,集中,管理控制台,存储区域网,低延迟互联,用户,无单点故障,共享缓存,Oracle,数据库常见方案,:Oracle RAC,体系结构,共享磁盘数据库,共享内存,/,全局区域,共享的,SQL,日志 缓冲区,.,.,共享内存,/,全局区域,共享的,SQL,日志,缓冲区,共享内存,/,全局区域,共享的,SQL,日志,缓冲区,共享内存,/,全局区域,共享的,SQL,日志,缓冲区,GES&GCS,GES&GCS,GES&GCS,GES&GCS,共享数据模型,Oracle,数据库常见方案,:Oracle RAC,体系结构,公用网络,节点 1,共享存储,重做日志所有实例,数据库和控制文件,OCR,和,voting,磁盘,(,oracle_home),操作系统,CRS,集群互联,数据库实例 1,ASM,实例 1,节点,2,操作系统,CRS,数据库实例,2,ASM,实例,2,节点,3,操作系统,CRS,数据库实例,3,ASM,实例,3,集群互联,.,Oracle,数据库常见方案,:Oracle RAC,体系结构,客户端首先访问某个实例,让后再通过集群管理软件访问到数据库的数据;节点之间使用内部连接进行通讯,。,Oracle,数据库常见方案,:Oracle RAC,优势,多节点负载均衡,;,提供高可用:故障容错和无缝切换功能,将硬件和软件错误造成的影响最小化。,Oracle,数据库常见方案,:Oracle RAC,优势,通过并行执行技术提高事务响应时间,-,通常用于数据分析系统,;,通过横向扩展提高每秒交易数和连接数,;-,通常对于联机事务系统,;,可扩展性好,可以方便添加删除节点,扩展硬件资源,Oracle,数据库常见方案,:Oracle,Data Guard,Oracle,为,Oracle,数据提供的灾难恢复解决方案,Oracle,数据库企业版,(EE),的特性,自动创建和维护生产数据库(或主数据库)的一个或多个事务一致的副本(备用数据库),如果主数据库(因灾难、维护)不可用,那么可以激活一个备用数据库并使之承担主数据库的角色,要求主服务器和备用服务器上的,Oracle,数据库和操作系统的版本相同,什么是,Oracle Data Guard?,Oracle,数据库常见方案,:Oracle,Data Guard,Oracle Data Guard,核心,数据故障与站点灾难:,此外还解决了人为错误和计划维护的问题,数据保护,数据可用性,数据恢复,数据是企业的核心资产!,三者都很重要!,Oracle,数据库常见方案,:Oracle Data Guard,Oracle Data Guard,结构,网络,Broker,生产数据库,逻辑备用数据库,可用于,报表操作,SQL,应用,将重做转换成,SQL,额外的索引,和物化视图,物理备用数据库,备份,重做应用,同步或异步,重做传输,最新的物理/逻辑备用数据库,MRP/LSP,RFS,备用,重做,日志,ARCH,Oracle,数据库常见方案,:Oracle Data Guard,存档的,重做日志,存档的重做,日志,主数据库,事务,LGWR,联机,重做,日志,ARCH,Oracle,网络,实时应用,Data Guard,重做应用,物理备用数据库是主数据库的一个块到块的副本,使用数据库恢复功能来应用更改,可以以只读方式打开,用于生成报表和查询,还可用于备份和减轻生产数据库的负载,主数据库,物理备用数据库,重做传输,网络,重做应用,备份,备用重做日志,Data Guard,Broker,Oracle,数据库常见方案,:Oracle Data Guard,Oracle,数据库常见方案,:Oracle Data Guard,Data Guard SQL,应用,逻辑备用数据库是一个开放、独立和活动的数据库,包含与生产数据库相同的逻辑信息(行),物理组织和结构可能大不相同,可以托管多种模式,当通过,SQL,来应用日志时,可以查询逻辑备用数据库,以进行报表操作,可以创建额外的索引和物化视图,以获得更高的查询性能,额外的索引和物化视图,重做传输,网络,可随时进行报表操作,将重做转换成,SQL,并应用,Data Guard,Broker,主数据库,逻辑备用数据库,备用重做日志,Oracle,数据库常见方案,:Oracle Data Guard,Data Guard,的优点,网络效率,只传输重做数据,更适于,WAN,无需协议转换器,基于标准的,TCP/IP,更好的数据保护,保持写顺序的一致性,避免逻辑损坏和物理损坏,功能,全面的,DR,解决方案,灵活性,底层存储器对供应商没有限制,ROI,从,DR,投资中提取价值,与数据库本地集成,Oracle,数据库常见方案,:Oracle Data Guard,灵活的数据保护模式,保护模式,数据丢失保护,重做传输,最高保护,零数据丢失,双重故障保护,LGWR SYNC,将重做同步传输至两个站点,最高可用性,零数据丢失,单重故障保护,LGWR SYNC,重做同步传输,最高性能,最少的数据丢失,LGWR ASYNC,或,ARCH,重做异步传输,均衡成本、可用性、性能和事务保护,例如:,ALTER DATABASE SET STANDBY,TO MAXIMIZE PROTECTION,;,Oracle,数据库常见方案,:Oracle Data Guard,Data Guard,和,RAC,Data Guard,和真正应用集群是互补的,应一起使用以实现最高可用性结构,真正应用集群提供了高可用性,能够快速和自动地从节点故障或一个实例崩溃中恢复过来,提供了增强的可伸缩性,Data Guard,提供了灾难保护并防止数据丢失,维护主数据库的几个事务一致的副本,防止灾难、数据损坏和用户错误,无需昂贵且复杂的,HW/SW,镜像,Oracle,数据库常见方案,:Oracle Data Guard,Streams,和,Data Guard,是,Oracle,数据库企业版两个独立的特性,它们基于一些共同的底层技术,Data Guard:,灾难恢复与数据保护,事务一致的备用数据库,零数据丢失,自动转换/故障切换,各种数据保护模式,Streams:,信息共享/分发,细粒化和控制要复制的内容,双向复制,数据转换,异种平台,由于业务需要,客户可能选择将,Streams,用于,DR/HA,,而将,Data Guard SQL,应用用于信息分发,Data Guard,与,Streams,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,Oracle,数据库常见方案,:Oracle,GoldenGate,DB2,数据库体系结构,-DB2,简介,IBM DB2,是,美国,IBM,公司开发的一套,关系型数据库管理系统,,它主要的运行环境为,UNIX,(包括,IBM,自家的,AIX,)、,Linux,、,IBM i,(旧称,OS/400,)、,z/OS,,以及,Windows,服务器版本。,DB2,主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于所有常见的服务器操作系统平台下。,DB2,提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和,SQL,命令。,DB2,数据库体系结构,-DB2,体系结构,DB2,数据库体系结构,-DB2,体系结构,系统,DB2,体系结构中的最高一层是系统,一个系统表示,DB2,的一个安装。在由很多机器组成的网络环境中,我们有时也称系统为数据库分区。一个系统可以包含多个,DB2,实例,每个实例能够管理一个或多个数据库,。,实例,实例,也称为数据库管理器,(Database Management Application),,是数据库管理器在内存中的映像,是管理数据的,DB2,代码。实例相当于,Informix,的,Informix Server,,在一台机器上可以有多个相互独立的实例,实例之间彼此独立,同时运行,不会相互影响。每个实例可以管理若干个数据库,一个数据库只属于一个实例。实例可控制对数据执行的操作,并管理分配给实例的系统资源。每个实例都是独立的运行环境,可以编目数据库和设置配置参数。可以在同一物理服务器上创建多个实例,并为每个实例提供唯一的数据库服务器环境,。,Database,关系数据库使用一组表来管理数据,表由在行和列中以逻辑关系排列的数据组成,每个表的数据在逻辑上相关,在表之间能够定义关系。,DB2,数据库体系结构,-DB2,体系结构,Database,关系数据库使用一组表来管理数据,表由在行和列中以逻辑关系排列的数据组成,每个表的数据在逻辑上相关,在表之间能够定义关系。每个数据库包含一组系统编目表,(,或称之为数据字典,),、配置文件和恢复日志,系统编目表用于描述数据的逻辑和物理结构,配置文件包含所有为数据库分配的配置参数值,恢复日志记录正在进行的事务处理和可存档的事务处理。,数据库可以是本地的,也可以是远程的。本地数据库物理上位于本地的机器上;当数据库物理上驻留在另一台机器上时,则称为远程的。,DB2,数据库体系结构,-DB2,内存,结构,DB2,数据库体系结构,-DB2,内存,结构,Instance Shared Memory(,实例共享内存,),每个,DB2,实例都有一个实例共享内存。实例共享内存是在数据库管理器启动,(db2start),时分配的,并随着数据库管理器的停止,(db2stop),而释放。,这种内存用于实例级的任务,例如监控、审计和节点间通信。数据库管理器配置(,dbm cfg,)参数控制着对实例共享内存以及其中个别内存池的限制。,实例内存(,Instance Memory,):,1.,监视器堆(,mon_heap_sz),:用于监控。,2.Audit Buffer(audit_buf_sz),:用于,db2audit,实用程序。,3.Fast Communications buffers(fcm_num_buffers):,用于分区之间的节点间通信。仅适用于分区的实例。,INSTANCE_MEMORY,参数指定为实例管理预留的内存数量。默认值为,AUTOMATIC,。这意味着,DB2,将根据监视器堆、审计缓冲区和,FCM,缓冲区的大小计算当前配置所需的实例内存数量。此外,,DB2,还将分配一些额外的内存,作为溢出缓冲区。每当某个堆超出了其配置的大小时,便可以使用溢出缓冲区来满足实例共享内存区内任何堆的峰值需求。在这种情况下,个别堆的设置是 软限制的,它们可以在内存使用的峰值期间进一步增长。,如果,instance_memory,被设置为某一个数字,则采用,instance_memory,与,mon_heap_sz,、,audit_buf_sz,和,fcm_num_buffers,的和之间的较大者。这时,对实例内存就施加了一个硬性的限制,而不是软限制。当达到这个限制时,就会收到内存分配错误。出于这个原因,建议将,instance_memory,的设置保留为,AUTOMATIC,。,DB2,数据库体系结构,-DB2,内存,结构,Database,Shared Memory,DB2,数据库体系结构,-DB2,内存,结构,Database,Shared Memory,每个,数据库有一个数据库共享内存集。数据库共享内存是在数据库被激活或者第一次被连接上的时候分配的。该内存集将在数据库处于非激活状态时释放(如果数据库先前是处于激活状态)或者最后一个连接被断开的时候释放。这种内存用于数据库级的任务,例如备份,/,恢复、锁定和,SQL,的执行,。,大致由以下几部分组成,(有些是一开始就分配好的,有些是在做某些操作时才分配的):,Main,B,ufferpools,Hidden Bufferpools,Catalog Cache,Lock Heap,Package Cache,Shared Sort,Database Heap(include Log Buffer),DB2,数据库体系结构,-DB2,内存,结构,Database,Shared Memory,1.,Main Bufferpools:,数据库缓冲池通常是数据库共享内存中最大的一块内存。,DB2,在其中操纵所有常规数据和索引数据。一个数据库必须至少有一个缓冲池,并且可以有多个缓冲池,这要视工作负载的特征、数据库中使用的数据库页面大小等因素而定。例如,页面大小为,8KB,的表空间只能使用页面大小为,8KB,的缓冲池,。,2.,Hidden Bufferpools:,当数据库启动时,要分配,4,个页宽分别为,4K,、,8K,、,16K,和,32K,的小型缓冲池。这些缓冲池是“隐藏”的,因为在系统编目中看不到它们 (通过,SELECT*FROM SYSCAT.BUFFERPOOLS,显示不出)。如果主缓冲池配置得太大,则可能出现主缓冲池不适合可寻址内存空间的情况。(我们在后面会谈到可寻址内存。)这意味着,DB2,无法启动数据库,因为一个数据库至少必须有一个缓冲池。如果数据库没有启动,那么就不能连接到数据库,也就不能更改缓冲池的大小。由于这个原因,,DB2,预先分配了,4,个这样的小型缓冲池,。,这样,一旦主缓冲池无法启动,,DB2,还可以使用这些小型的缓冲池来启动数据库。(在此情况下,用户将收到一条警告(,SQLSTATE 01626,)。,这时,,应该连接到数据库,并减少主缓冲池的大小,。,3.,排序堆的阈值(,sheapthres,,,sheapthres_shr,),1),如果没有索引满足所取的行的要求顺序,或者优化器断定排序的代价低于索引扫描,那么就需要进行排序。,DB2,中有两种排序,一种是私有排序,一种是共享排序。私有排序发生在代理的私有代理内存(在下一节讨论)中,而共享排序发生在数据库的数据库共享内存中。,DB2,数据库体系结构,-DB2,内存,结构,Database,Shared Memory,4.,Package Cache,and,Catalog Cache,1,),虽然大多数内存池的大小是由它们的配置参数预先确定的,但下面两种内存池的大小在默认情况下却是动态的,:,a.,包缓存:,pckcachesz=maxappls*8,b,.,编目缓存:,catalogcache_sz=maxappls*4,c,.,活动应用程序的最大数量:,maxappls=,AUTOMATIC,2),将,maxappls,设为,AUTOMATIC,的效果是,允许任意数量的连接数据库的应用程序。,DB2,将动态地分配所需资源,以支持新的应用程序。因此,包缓存和编目的大小可以随着,maxappls,的值而变化。,DB2,数据库体系结构,-DB2,进程结构,DB2,数据库体系结构,-DB2,进程结构,上,图,DB2,的进程模型,长方形代表处理进程,椭圆形代表处理线程,,DB2,的主进程是,db2sysc,,在这个处理进程下有许多线程,最主要的线程也是叫,db2sysc,,这个主要的线程派生了其他子线程。当一个远程的应用程序比如采用,sql connect,语句链接服务器时,通讯协议的远程监听器将接收这个请求,并联系,db2agent,,,agent,是一个代表,DB2,实现一些小操作的处理程序,当发出请求的应用程序是本地的,也就是和,DB2,服务器在同一服务器上,如果不在同一个服务器上,那么采用,db2tcpcm,处理本地请求,如果在一台服务器 上采用,db2ipccm,线程来处理请求。如果发生本地和异地并行的情况,,db2agent,会生成其他线程的代理,db2agntp,线程。其他的线程如,db2pfchr,、,db2loggr,、,db2dlock,它们应用到不同的目的,。,DB2,数据库体系结构,-DB2,进程结构,db2wdog,进程,:,我们,都知道在,UNIX/Linux,上,,init,进程是所有进程的父进程;同样,在,DB2,的进程中,“,db2wdog”,进程是所有其他,DB2,进程的父进程。这个进程是由操作系统的,init,进程派生的。从上面的命令输出中我们可以看到“,db2wdog”,的“,ppid”(parent pid),是操作系统的,init,进程。“,db2wdog”,进程是在,UNIX,和,Linux,操作系统上处理异常终止的看守程序,。,“db2wdog”,是“,db2 watch dog”,的缩写,是看门狗的意思,这个进程的工作机制如图,2-3,所示。,在,UNIX,中,“,db2wdog”,看守程序是必需的,因为,UNIX,中的进程只能跟踪其父进程的标识。如图,2-3,所示,每次新进程启动时,“,db2gds”,进程就会通知,DB2,看守程序。如果任何,DB2,进程接收到,CTRL-C,或其他异常信号,该进程就会向看守程序发送信号,而看守程序会将信号传播给实例中其他所有进程。如果“,dbzwdog”,进程出现异常,那么整个,DB2,数据库将无法正常工作。,DB2,数据库,HADR,高可用性灾难恢复,DB2,for Linux,UNIX,and Windows,高可用性灾难恢复,(High Availability Disaster Recovery,HADR),功能是一种数据复制功能,它为部分和全面的站点故障提供了一种高可用性解决方案。,HADR,通过将称为主要数据库的源数据库中的数据更改复制到称为备用数据库的目标数据库,防止数据丢失,。,HADR,是在,DB2 V8.2,中引入的。在,DB2 V9.7 Fix Pack 1,之前,备用服务器只能前滚从主要服务器传来的日志记录,并且对用户而言是离线的。不允许在备用数据库上建立用户连接。,从,DB2 V9.7 Fix Pack 1,开始,,reads on standby,功能,(HADR RoS),支持只读应用程序访问备用数据库。这只有在启用了,reads on standby,功能时才可行。使用此功能,读,/,写应用程序可访问,HADR,主要数据库,只读应用程序可访问主要或备用数据库。这支持您将在主要数据库上运行的一些只读工作负载卸载到备用数据库上。连接备用数据库的应用程序在故障转移时不会影响备用数据库的可用性。,DB2,数据库,HADR,高可用性灾难恢复,High Availability Disaster Recovery(HADR),是数据库级别的高可用性数据复制机制,最初被应用于,Informix,数据库系统中,称为,High Availability Data Replication,(,HDR,)。,IBM,收购,Informix,之后,这项技术就应用到了新的,DB2,发行版中。一个,HADR,环境需要两台数据库服务器:主数据库服务器(,primary,)和备用数据库服务器(,standby,)。当主数据库中发生事务操作时,会同时将日志文件通过,TCP/IP,协议传送到备用数据库服务器,然后备用数据库对接受到的日志文件进行重放(,Replay,),从而保持与主数据库的一致性。当主数据库发生故障时,备用数据库服务器可以接管主数据库服务器的事务处理。此时,备用数据库服务器作为新的主数据库服务器进行数据库的读写操作,而客户端应用程序的数据库连接可以通过自动客户端重新路由(,Automatic Client Reroute,)机制转移到新的主服务器。当原来的主数据库服务器被修复后,又可以作为新的备用数据库服务器加入,HADR,。通过这种机制,,DB2 UDB,实现了数据库的灾难恢复和高可用性,最大限度的避免了数据丢失,。,下,图为,DB2 HADR,的工作原理图:,DB2,数据库,HADR,高可用性灾难恢复,DB2,数据库,HADR,高可用性灾难恢复,什么是,HADR?,DB2 HADR,特性采用,Informix HDR,技术,采用日志复制技术,(,快速切换和灾难恢复,),Informix,“,HDR,”,=,“,High Availability Data Replication,”,IBM,“,HADR,”,=,“,High Availability,Disaster Recovery”,DB2,数据库,HADR,高可用性灾难恢复,HADR,同步方式,DB2,HADR,支持四种同步模式:同步、近同步、异步和超级异步。四种同步模式对网络的要求和对主数据库的影响依次减小,但是可靠性也依次降低。例如,同步模式对主数据库上的事务影响最大,但是可以保证从数据库上的事务和主数据库是实时一致的;而超级异步模式对主数据库上的事务没有任何影响,但是一旦主数据库出现事故,就可能会发生事务丢失。,DB2,数据库,HADR,高可用性灾难恢复,HADR,同步方式:,SYNC,(同步,),在,同步模式下,当用户在主数据库上提交一个事务时,首先该事务的相关数据库日志会被写到主数据库的本地磁盘上,然后主数据库会将日志发送给备机数据库,并且等待备机数据库的回复;备机数据库在接收到日志,并将其写到自己的磁盘上后,才回复给主数据库。主数据库在接到备机数据库的回复之后,才返回给用户该事务提交成功。由此可见,在该同步模式下,凡是提交成功的事务,日志不仅在主数据库的磁盘上,也在备机数据库的磁盘上,此时如果主数据库发生故障,已提交的数据不会丢失。因此,在同步模式下,,HADR,能够提供无数据丢失保证(,No data loss guarantee,)。但是,在该同步模式下,,HADR,对主数据库业务的影响也是显而易见的。,DB2,数据库,HADR,高可用性灾难恢复,HADR,同步方式:,近同步模式(,NEARSYNC,),与同步模式相比,近同步模式下的备机数据库接收到主数据库发来的日志时,并不等待将其写到本地磁盘之后才回复给主数据库,而是立即回复给主数据库。主数据库在接收到备机数据库的回复之后就返回给用户事务提交成功,而此时,该事务的日志可能还在备机数据库的内存中,并未写到本地盘上。如果此时主机发生故障,并不能保证在原主数据库上已提交的数据在备机上必然能找回。虽然该同步模式不能保证零数据丢失,但是相比同步模式,近同步模式下的,HADR,对于主数据库业务的影响较小。,DB2,数据库,HADR,高可用性灾难恢复,HADR,同步方式:,异步模式(,ASYNC,),在,异步模式下,主数据库发送日志成功后就返回给用户,事务提交成功,而此时,备机数据库有可能还没有收到这些日志。如果此时主数据库发生故障,该已提交事务的数据更改就会丢失。同样的,由于异步模式下的主数据库在返回给用户事务提交成功之前不等待备机数据库的回复,,HADR,对主数据库上业务的影响比近同步模式更小。这种模式下,因为日志有可能仍然在主机的,TCP,缓冲区里面,如果这个时候主机出现故障停机,这些数据就会丢失。,DB2,数据库,HADR,高可用性灾难恢复,HADR,同步,方式:超级异步模式(,SUPERASYNC,),从,DB2 LUW V9.7.5,和,V9.5.8,开始,,HADR,引入了一种新的同步模式,即超同步模式。在该同步模式下,主数据库上数据库日志的产生与发送完全分离,二者没有任何依赖,这样,HADR,对于主数据库业务的影响降到了最低;同时,由于日志的产生与发送分离,可能导致主数据库和备机数据库之间的差距较大,此时如果主机发生故障,会有较多的数据丢失;并且非强制接管(,non-force TAKEOVER,)可能需要更多时间。,以上四种同步模式,同步强度从强到弱,无数据丢失保证从高到低。,DB2,数据库,HADR,高可用性灾难恢复,DB2 HADR,的使用,限制,1.,只有,DB2 UDB Enterprise Server Edition,(,ESE,)支持,HADR,,但,HADR,不能支持分区数据库(,Database Partitioning Feature,,,DPF,),。,2.,主,数据库和备用数据库必须运行在相同的操作系统版本上,并且,DB2 UDB,的版本也必须一致,除非短暂的软件升级过程,。,3.,主,数据库和备用数据库的位大小必须一致(,32,位或,64,位),。,4.,不能,在备用数据库上进行备份,操作,5.,备用,数据库是不能访问的,客户端程序无法连接备用数据库。,6.,日志归档,操作只能在主数据库上进行。,7.,带有,COPY NO,选项的,LOAD,命令是不支持的,8.,主,数据库和备用数据库必须是一对一的。,9.HADR,不能使用循环日志,10.HADR,不复制数据库配置参数、共享库、,DLLs,、,UDFs,或存储过程,DB2,数据库常见方案,:InfoSphere,CDC,IBM InfoSphere Change Data Capture(,简称,InfoSphere CDC),作为一款跨数据库复制解决方案,支持不同,DB2 for i,之间,甚至是异构数据库之间的实时数据复制,满足了,HA,环境下对于数据灾备的需求。,DB2,数据库常见方案,:InfoSphere,CDC,什么是,InfoSphere,CDC,IBM,InfoSphere Change Data Capture(,以下简称,InfoSphere CDC),是一个跨不同数据库的实时数据复制解决方案,支持,DB2,Informix,,,Oracle,Microsoft SQL Server,Sybase,Teradata,SolidDB,等各种主流数据库。,InfoSphere CDC,通过读取源数据库的日志获取变化的数据,并经过适当的转换将数据复制到数据目标中。,InfoSphere CDC,目标端支持数据库,消息队列、以及,ETL,解决方案(例如,InfoSphere DataStage,)等,。,从,系统性能角度,通过读取数据库的日志来获取变化的数 据,,InfoSphere CDC,对源数据库造成的影响极低;从系统资源角度,通过仅发送已更改的数据,,InfoSphere CDC,还可以减少处理开销和网络流量。从用户体验角度,,InfoSphere CDC,提供一个,Eclipse,风格的管理控制台,方便用户轻松创建、配置、监控与管理各种数据复制任务,。,总体而言,,InfoSphere CDC,主要支持三种数据复制模式,分别为:,Refresh,、,Net change,(或称为,Scheduled End,)、,Continuous mirroring,。,DB2,数据库常见方案,:InfoSphere,CDC,表,1.,三种,InfoSphere CDC,数据复制模式,DB2,数据库常见方案,:InfoSphere,CDC,InfoSphere CDC,体系结构图,DB2,数据库常见方案,:InfoSphere,CDC,下面描述了,InfoSphere CDC,体系结构的关键,组件:,Access Server,-,控制所有以非命令行方式对复制环境进行的访问。当您登录到,Management Console,时,您就是在连接到,Access Server,。可以在客户机工作站上关闭,Access Server,,而不会影响源服务器与目标服务器之间活动的数据复制活动,。,命令行界面,-,允许您独立于,Management Console,来管理数据存储器和用户帐户,以及执行管理脚本编制,。,管理,API,-,作为基于,Java,的可选编程接口运行,您可以使用此,API,对操作配置或交互进行脚本编制,。,应用代理程序,-,目标上的代理程序,用于处理源所发送的更改,。,通信层,(TCP/IP),-,作为,源,与,目标,之间的专用网络连接。,DB2,数据库常见方案,:InfoSphere,CDC,下面描述了,InfoSphere CDC,体系结构的关键,组件:,源和目标数据存储器,-,表示数据复制所需的数据文件和,InfoSphere CDC,实例。每个数据存储器都表示您要连接至的数据库,并且充当表的容器。使其可供复制的表包含在数据存储器中,。,Management Console,-,允许您配置、监视和管理各种服务器上的复制,指定复制参数以及从客户机工作站启动刷新和镜像操作。另外,,Management Console,还允许您监视复制操作、等待时间、事件消息以及源或目标数据存储器所支持的其他统计信息。,Management Console,中的监控器旨在用于需要持续分析数据移动的时间紧急的工作环境。在设置复制之后,您可以在客户机工作站上关闭,Management Console,,而不会影响源服务器与目标服务器之间活动的数据复制活动,。,元数据,-,表示关于相关表、映射、预订、通知、事件和您设置的数据复制实例的其他细目的信息。,DB2,数据库常见方案,:InfoSphere,CDC,下面描述了,InfoSphere CDC,体系结构的关键,组件:,镜像,-,将更改复制到目标表或者积累源表更改并在以后将其复制到目标表。如果您在环境中实现了,双向复制,,那么可以在源表与目标表之间来回进行镜像,。,刷新,-,执行初始同步,以便将表从源数据库同步到目标。这称为,刷新,阅读器,复制引擎,-,用于发送和接收数据。用于发送复制的数据的进程是,源捕获引擎,,而用于接收复制的数据的进程是,目标引擎,。,InfoSphere CDC,实例可以同时作为源捕获引擎和目标引擎运行,。,单一提取,-,仅用于源的日志阅读器和日志解析器组件。它将检查并分析所选数据存储器中的所有预订的源数据库日志,DB2,数据库常见方案,:InfoSphere,CDC,下面描述了,InfoSphere CDC,体系结构的关键,组件:,源变换引擎,-,处理行过滤、关键列、列过滤、编码转换和其他数据以传播到目标数据存储器引擎,。,源数据库日志,-,由源数据库维护以用于其自身的恢复。,InfoSphere CDC,日志阅读器将在镜像过程中检查这些日志,并滤出复制作用域外的,表,目标变换引擎,-,处理目标存储器引擎上的数据和值转换、编码转换、用户出口、冲突检测和其他,数据,共有两类仅用于目标的非数据库复制目的地,:,JMS,消息,-,作为创建为,XML,文档的行级别操作的,JMS,消息目的地(队列或主题)。,InfoSphere DataStage,-,处理,InfoSphere CDC,所传送的可以由,InfoSphere DataStage,作业使用的更改。,DB2,数据库常见方案,:InfoSphere,CDC,下面描述了,InfoSphere CDC,体系结构的关键,组件:,源变换引擎,-,处理行过滤、关键列、列过滤、编码转换和其他数据以传播到目标数据存储器引擎,。,源数据库日志,-,由源数据库维护以用于其自身的恢复。,InfoSphere CDC,日志阅读器将在镜像过程中检查这些日志,并滤出复制作用域外的,表,目标变换引擎,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服