软件测试数据库中Oracle闪回数据归档技术
Oracle的关系数据库是世界第一个支持SQL语言的数据库。1977年,Lawrence J.Ellison领着一些同事成立了Oracle公司,他们的成功强力反击了那些说关系数据库无法成功商业化的说法。现在,Oracle公司的财产净值已经由当初的2000美元增值到了现在的年收入超过97亿美元。 Oracle的目标定位于高端工作站以及作为服务器的小型计算机。Oracle的路线同Sun微系统公司类似,都提出了网络计算机的概念。Oracle宣称自己是世界上首家百分之百进行基于互联网的企业软件的软件公司。 整个产品线包括:数据库、服务器、企业商务应用程序以及应用程序开发和决策支持工具。从Oracle首席执行官Ellison的发言可以看出Oracle对网络计算的信心,他说:“Oracle公司的成败依赖于互联网是否能够成为将来的主流计算方式,如果答案是‘是’,Oracle就赢了”。 Oracle公司是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州 Redwood shore。2000年(99年6月到2000年5月)营业额达101亿美元,再创Oracle公司销售额历史新高,比去年增长了13亿美元,盈利增长61%,达到21亿美元。Oracle公司现有员工超过三万六千人,服务遍及全球145个国家。 Oracle公司拥有世界上唯一一个全面集成的电子商务套件Oracle Applications R11i,它能够自动化企业经营管理过程中的各个方面,深受用户的青睐,促使Oracle应用软件在2000财年第四季度的销售额达4.47亿美元,与 SAP公司的同期应用软件销售额3.52亿美元相比,多出近1亿美元,这一事实表明,Oracle已经是世界最大的应用软件供应商。Oracle电子商务套件涵盖了企业经营管理过程中的方方面面,虽然它在不同的方面分别面对不同的竞争对手,而Oracle电子商务解决方案的核心优势就在于它的集成性和完整性,用户完全可以从Oracle公司获得任何所需要的应用功能,更重要的是,它们具有一致的基于Inte.net技术的应用体系结构,而如果用户想从其它厂商处获得Oracle电子商务所提供的完整功能,不仅需要从多家厂商分别购买不同的应用,而且需要另请咨询公司把这些不同的应用装配起来,还必须确保它们能够协同地工作。 先进的产品和高效率的企业运作,是Oracle公司利润得以继续增长的重要原因,一年前,Oracle公司确定了通过采用自身的Internet电子商务解决方案,实现每年节省10亿美元企业日常运作费用的目标,这一数据相当于将我们的年度利润率提高10%。 四年前电子商务在全球范围内还仅处于萌芽状态时,Oracle公司便前瞻性地作出了从领先的数据库厂商向以Internet计算为基础的完整的电子商务解决方案供应商转型的战略部署。这一前瞻性战略为Oracle带来了巨大的利益,今天,Oracle能够领先于竞争对手提供包括平台产品、应用产品和完善的服务在内的先进的、完整的、集成的电子商务解决方案,可以无缝集成供应链管理(SCM)、企业资源管理(ERP)、客户资源管理(CRM)和企业商业智能 (BI)和电子商务应用IP(Internet Pocurement)、Exchange、Portal-to-go等产品。Oracle从低端到高端的所有方案100%基于Internet应用体系结构,都可以通过Web安全、直接地访问,使企业能够通过Web完成包括报价、定单、支付、执行、服务等在内的企业业务过程的所有环节,帮助企业将现有业务内容快速转移到电子商务,迅速获得来自电子商务的高效益。 Oracle应用产品包括财务、供应链、制造、项目管理、人力资源和市场与销售等150多个模块,荣获多项世界大奖,现已被全球近7600多家企业所采用。由于在电子商务方面的杰出表现,Oracle公司在美国Mongan Stanley公司最新公布的权威性全球企业1000强中,从去年的第122名一跃成为第13名,成为全球第二大独立软件公司和最大的电子商务解决方案供应商。目前, Amazon和Dell等全球十个最大的Internet电子商务网站、全球十个最大的B-to-B网站中的九个、93%的上市.COM公司、65家“财富全球100强”企业均不约而同地采用Oracle电子商务解决方案。
下面给大家介绍一下有磁Oracle闪回数据归档技术
Oracle 9i的Flashback Query是Oracle第一次引入闪回技术,该技术使得一些逻辑误操作不再需要利用归档日志和数据库备份进行时间点恢复。而在Oracle 10g当中,更是引入flashback version query、flashback transaction query、flashback database、flashback table和flashback drop等特性,大大简化了Flashback Query的使用。
在上面的诸多闪回技术当中,除了Flashback Database(依赖于闪回日志)之外,其他的闪回技术都是依赖于Undo撤销数据,都与数据库初始化参数UNDO_RETENTION密切相关(该参数决定了撤销数据在数据库中的保存时间)。它们是从撤销数据中读取信息来构造旧数据的。这样就有一个限制,就是undo中的信息不能被覆盖。而undo段是循环使用的,只要事务提交,之前的undo信息就可能被覆盖,虽然可以通过 undo_retention等参数来延长undo的存活期,但这个参数会影响所有的事务,设置过大,可能导致undo tablespace快速膨胀。
Oracle 11g则为flashback家族又带来一个新的成员:Flashback Data Archive。该技术与以上所说的诸多闪回技术的实现机制不同,通过将变化数据另外存储到创建的闪回归档区(Flashback Archive)中,以和undo区别开来,这样就可以为闪回归档区单独设置存储策略,使之可以闪回到指定时间之前的旧数据而不影响undo策略。并且可以根据需要指定哪些数据库对象需要保存历史变化数据,而不是将数据库中所有对象的变化数据都保存下来,这样可以极大地减少空间需求。
注意,Flashback Data Archive并不是记录数据库的所有变化,而只是记录了指定表的数据变化。所以,Flashback Data Archive是针对对象的保护,是Flashback Database的有力补充。
通过Flashback Data Archive,可以查询指定对象的任何时间点(只要满足保护策略)的数据,而且不需要用到undo,这在有审计需要的环境,或者是安全性特别重要的高可用数据库中,是一个非常好的特性。缺点就是如果该表变化很频繁,对空间的要求可能很高。