|
SharePlex数据库复制解决方案
如何在不宕机的情况下,对 Oracle 数据库内的海量数据进行转移和管理,这是一种长期存在的用户需求。
1、SharePlex数据复制技术 如何在不宕机的情况下,对 Oracle 数据库内的海量数据进行转移和管理,这是一种长期存在的用户需求。Shareplex 可以让您的 Oracle 数据库分身有术,满足您多样化,高性能的应用需求。 Oracle 复制容灾产品 SharePlex for Oracle 是一种准实时、低带宽、跨平台、跨 Oracle 版本的 Oracle 复制解决方案,采用业界内独特的技术、领先的产品结构确保企业实现其高可用性和高性能的管理目标。Shareplex 支持面向高可用性、灾难恢复、报表剥离、数据分发/共享和应用程序集成等不同的应用场景,不会对 Oracle 生产系统的性能造成影响。 1.1SharePlex技术原理 1.1.1基本结构 下图所示为SharePlex for Oracle的基本结构,其中涉及较多的技术细节。 1.1.2数据捕获 SharePlex for Oracle中由捕获进程来收集发生变化的数据,此进程的独特之处在于它几乎不对生产数据库带来任何开销。 此捕获过程中完成的操作为: 捕获进程从Oracle 日志文件中读取信息,因此复制过程不会给生产数据库实例带来性能问题 只有发生改变的数据被传输,而不是日志文件中的全部信息,因此SharePlex的网络负载非常小 尽管需要在Oracle数据库中安装少量的对象用来存储有关复制的一些基本信息,但源数据库不需要参与到数据捕获和传输过程中 SharePlex的捕获进程不但可以读取在线的日志文件,而且可以读取归档日志,甚至当归档日志文件被移动到其它设备上时,SharePlex会发出提示信息。正是这种能力极大地增强了系统的冗余功能。例如,如果捕获进程由于某种原因被停止,当它重新启动后数据同步不会受到影响 捕获进程驻留在源系统上,自动读取Oracle的在线日志文件。这种读操作是从操作系统的角度来完成的,而不是通过数据库。通过将日志文件作为获取变化信息的源泉,Quest可以完成数据的复制而不会给生产系统带来额外的开销。由于Oracle使用日志文件进行系统恢复,因此日志文件信息足够,其数据格式也足够稳定。Quest SharePlex 目前已支持从Oracle7.3.4 至 Oracle 10g 之间的所有版本。 捕获进程连续监控日志文件用以捕捉变化信息。当日志文件中出现一条新记录时,SharePlex判断其是否属于被复制对象,如果是,则SharePlex为该条记录加入用于决定此记录将被发向那个主机的地址信息并将包含地址信息的记录存放到自己的队列中,存储队列存在于数据库之外。发生改变的数据被立即处理并被发送到目标系统中而不等待提交或回滚动作的完成,因为等待提交或回滚完成将带来延迟。当提交或回滚信息被写入日志文件时,它们也将被发送到目标系统中,从而在目标系统中完成相对应的操作。 1.1.3数据传输 SharePlex结合其自己的网络协议和TCP/IP协议来完成源和目标系统之间的数据传输。其相关的进程确保数据的正确接收和网络数据包的正确顺序,从而提供网络传输冗余,确保数据的完整。整个数据传输过程无需其它的中间件。 1.1.4应用数据 应用进程将传送到目标系统中的信息转化为SQL语句,然后发送给Oracle执行。 SharePlex能够实现精确复制的一个重要原因就是其能保证从源数据库到目标数据库的Oracle读一致性,不但按顺序复制事务,而且也复制上下文信息,将源数据库中发生变化的全部事务信息都复制到目标数据库中。 1.2复制模式 SharePlex支持多种灵活的复制模式,主要包括: 1.2.1单向复制 单向复制以生产系统作为复制时的数据源,若目标数据库仅用于报表和查询,则该副本可能是生产数据库的一个子集,只包括报表和查询所需内容,而非源系统的所有信息。SharePlex 允许用户在目标数据库中采用不同于源数据库的数据模式,并使用专为提高查询效率而建立的索引、主键和分区等。
责编:赵新娜
微信扫一扫实时了解行业动态
微信扫一扫分享本文给好友
著作权声明:kaiyun体育官方人口 文章著作权分属kaiyun体育官方人口 、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
|
最新专题
推荐圈子
|
|