数据的动态大块到砖块转换的制作方法

文档序号:6570805阅读:577来源:国知局
专利名称:数据的动态大块到砖块转换的制作方法
技术领域
^^开内容总体上涉及数据保护、存档、数据管理及信息管理。
背景技术
数据服务器将关键生产数据存放在其存储系统中。通常要求存储系统
提供一定等级的数据可用性;sj艮务可用性。通常要求数据;sj良务对范围从介质故障到数据中心故障的多种故障有恢复能力。通常,利用可以包括对全部生产数据或部分生产数据的基于磁带的备份在内的一系列的数据保护方案来部分地满足该要求。
另外,其它服务器通常需要同时地访问同一关键生产数据。这些应用包括数据保护应用、站点复制应用、搜索应用、发现应用、分析应用以及监^ :督应用。已利用包括设立具有关键生产数据的副本的专用分析服务器在内的一系列的数据管理方案来满足这种需要。典型的数据保护及管理方案具有一些公知的局限性。例如,在某些情况下,对服务器的直接的访问会导致生产服务器的不稳定及影响性能的负荷。其它局限性与使得对#数据的访问费时且低效的、传统的磁带存储的串行性及脱机性有关。
无论使用何种类型的备份存储,常规的数据保护及管理的一些最显著的局限源自生产系统所存储的复杂的数据的特性。图i是现有技术系统ioo的框图,该图例示了一些上述的局限。系统IOO包括生产系统及实用
系统。生产系统包括一个或更多个生产服务器及存储有大量复杂的生产数据的生产数据库。通常以大量的方式对复杂的数据进行存储及传送,并且复杂的数据通常为不顺从除了专门被设计成与该生产系统接口的生产系统或应用之外的应用或实体的操作的、难以读取的格式。复杂的数据也称
作大块(bulk)数据。另一方面,项数据通常包括多种应用格式的较小的数据项。项数据的一个示例是AdobeAcrobatTM文件或电子邮件消息,但是存在许多其它示例。项数据也称作砖块(brick)数据。
生产系统的示例包括诸如Microsoft Exchange 的消息系统。在Exchange 的情况下,通过项接口应用编程接口 ( API )来访问Exchange 服务器的客户端应用包括诸如Outlook 的应用程序(也称作应用)。当用户希望使用Outlook 来访问诸如个人电子邮件的项时,所使用的协议包括消息应用编程接口协议(MAPI协议)、邮局协议第3版(POP3)、因特网消息访问协议(IMAP或IMAP4)或其它协i义中的一个协议。这种类型的访问在项级是适当的,但是对于访问以大块的方式(或以复杂的数据格式)存储在生产服务器上的大量的项、或进行针对这些项的传送、搜索或审核功能而言是很慢的。
为了进行*功能,生产系统包括到生产服务器及数据库以及*应用的^^接口 。实用系统4吏用^^应用来进行对整个生产^i:据库文件的大块* (也称作大块传送或大块复制)。被传送来的生产数据库文件作为大块^#而被存储在实用系统中(或其它地方,但通常不在生产系统中)。为了在出故障的情况下恢复生产数据库文件,使用^^应用来将大块*传送到生产服务器。
如果需要从大块备份中访问项级的数据(例如,为了恢复特定的"丢失的"电子邮件),必须将大块M传送到生产服务器或可以使用项接口API来访问^^的生产数据库的其它位置。这是极其地緩慢、低效且易出错的。
为了解决访问*项的问题,常规的实用系统还可以通过使用前面提到、用于通过项接口 API来访问大块生产数据的协议(MAPI、 SMTP、POP3等)来进行分开的砖块M。同样,因为这是非常慢的,所以这通常以非常有限的方式进行。例如,在企业中仅管理人员能让他们的消息通信受砖块(bricks )备份的保护。砖块^#涉及使用MAPI或SMTP来直接地访问生产数据库,以例如检索项数据。这个緩慢的过程加重了服务器的负荷,并可能影响服务器性能。当需要访问或恢复砖块转中的项时,
是使用项接口 API及前面所列的协议来访问的。
针对大块*及砖块备份二者分别地访问生产数据库增加了生产系统的负荷,并且可能对性能产生负面的影响。并且,保持两套不一致的备份数据(大块及砖块)是容易出错的,并且可能无法满足不同的遵从性要求。此外,在常规的系统中,没有供个别的企业用户来寻找及恢复他们自己丢失或删除的数据的机制。这增加了信息技术(IT)人员的工作负荷。
常规的实用系统不能在同时允许对可用的(项)格式的生产数据的有效的访问的同时完整地#该生产数据。 一些现有的应用专门^Li殳计成进行诸如审计及法律发现的功能,但是这些应用通常读取不在生产系统中的数据,这对系统的性能产生负面的影响。其它现有的应用使用MAPI或SMTP来费力且緩慢地建立从生产数据库中提取出的砖块项的存档。
日益迫切地需要在同时允许对可用的(项)格式的生产数据的有效的访问的同时完整地##该生产数据的能力。例如,出于审计目的、监视目的、法律发现目的及其它目的,企业越来越需要M生产数据并提供对该生产数据的访问。
合并引用
通过引用将本说明书中所提及的各出版物及专利申请的全部内容合并在此,等同于特别地且单独地指明通过引用而合并各单独的出版物或专利申请。


图l是包括实用系统的现有技术系统的框图。
图2是根据实施例的、进行一次通过(one-pass )保护及数据管理的数据替代(surrogation )系统的框图。
图3是根据实施例的、包括具有多个生产服务器;M目对应的数据库的
生产系统的数据替代系统的框图。
图4是示出根据实施例的捕捉操作、应用操作及提取操作的框图。图5是根据实施例的在进行镜像时使用的*捕捉的框图。图6是根据实施例的在进行镜像时使用的快照捕捉的框图。
图7是根据实施例的在进行镜像时使用的复制捕捉的框图。
图8是根据实施例的在进行镜像时使用的持续数据保护(CDP)捕捉的框图。
图9是示出根据实施例的、生成来自生产系统的日志文件的增量更新或差量更新的框图。
图10是根据实施例的、包括使用^tit (retro-fit)后的日志传送来创建合成完整副本的镜像处理的系统的框图。
图11 ;l根据实施例的、获得并应用日志文件的处理的框图。
图12是例示包括根据实施例的应用日志文件的镜像处理的实施例的流程图。
图13是根据另一实施例的镜像处理的流程图。
图14是根据实施例的、包含提取组件的实用系统1400的框图。
图15是根据实施例的索引处理的流程图。
图16是根据实施例的散列表的框图。
图17是例示祁^据实施例的动态提取、或大块到砖块处理的流程图。
图18是例示根据实施例的、对索引项的自助访问的框图。
图19是根据实施例的、具有这里所描述的数据替代能力的实用系统框架的框图。
具体实施例方式
这里描述了多维数据替代以;M目对应的系统及方法。这里所描述的实施例对生产服务器数据库进行镜像处理,包括通过对到不具备日志传送能力的系统(包括数据库系统、企业数据库系统或其它系统)的日志传送进行^Ut来创建合成完整副本。例如,这里所描述的镜像处理可以用于将日志传送能力与非关系数据库或文件系统数据的数据库相结合。
出于包括保护、存档及分析中的一个或更多个的目的,镜像处理保持最新的企业生产数据的主机外(off-host)副本。镜像处理可选地利用(leverage)诸如备除、复制、快照或持续数据保护(CDP)的较低级的机制,来构造用于使准实时的生产数据在可信、可伸缩且可扩展的同时、 以不破坏生产主机的方式对应用可用的聚集系统及方法。在一个实施例 中,镜像处理包括从生产系统接收原始数据的副本(包括生产数据库的初 始副本)。在多个实例中,从生产系统接收到变化数据。变化数据包含对 原始数据的改变的信息。通过在接收到变化数据时应用该变化数据来生成 并维护副本的更新版本。在一个实施例中,变化数据包括日志文件,但实 施例并不限于此。在不同的实例中,变化数据包括原始数据之间的增量差 异的数据,或者作为另一种选择,包括原始数据之间的差量差异的数据。
数据替代的实施例使得能够在将数据移动、延U后处理最少化的同 时实现开放式数据管理应用的主机。实施例在以易于对数据的定位及访问 的方式存储数据的同时对数据提供保护。描述了应用感知一次通过
(one-pass)保护及数据管理,包括使用日志传送来创建数据库的合成 完整副本(这里也称作"合成完整副本(synthetic fulls)")的生产服务器 数据库镜像处理;以及复制数据从"大块"形式到"砖块"形式的高效的 且动态的转换。该转换是动态的,这是因为可以以定期的、正在进行的方 式运行大块到砖块处理以对镜像数据库进行转换。因为生产系统一生成曰 志文件就可以应用这些日志文件,所以镜像处理以准实时的方式将生产数 据库的镜像副本保持为最新的。这导致准实时地反映对生产数据的改变 的、可访问的且准确的存档。
与不包括内在的日志传送的现有系统相比,这里所描述的实施例提供 了许多优点。例如,当进行合成完整副本时,任何恶化均立刻得到催生 (catalyze )。这与具有基于磁盘的*或基于磁带的*的典型的系统形 成对比。在典型的系统中,*数据库的完整副本并保存对数据库的增量 更新(以日志文件的形式)。在生产服务器出故障的情况下,通常必须立 即应用所有的日志文件。如果遇到被破坏的文件,或者任何原因导致处理 失败,则既不能访问"主"生产服务器也不能访问M数据。
这里所描述的实施例所提供的另 一优点是使用较少的存储空间。由于 与仅对日志文件进行存储的现有系统相比,随着根据不同的间隔、计划、 事件等生成日志文件而将日志文件耗用掉,所以用于存储日志文件的存储 空间显著地减少。
还描述了对应用感知(a卯lication-aware)砖块数据的存储,包括通
过用于"自助访问"(包括个人用户访问、审计员访问、监视;sj^t^问
等)的友好的用户界面来使以期望的终端用户格式对砖块数据的访问更容易。在一个实施例中,可以使用预先存在的消息应用(例如,Microsoft Outlook)来访问应用感知砖块数据,而在其它实施例中可以写入定制应 用。在一个实施例中,从生产大块数据中提取从该大块数据转换而来的砖 块数据,并将该砖块数据作为索引项存储在索引项库中,同时提科目关联 的元数据并将其存储在另一数据库(例如,SQL服务器数据库)中。
本发明的实施例包括提供对生产数据的全部的信息管理的实用系统 的组件。信息管理将项搜索及恢复功能、审计功能、监^Ui:督功能、法 律发现功能、遵从性(compliance)功能、存档功能、*功能以及突难 恢复功能结^来。信息管理使得能够通过进行一次通过保护及数据管理 (包括将大块格式的非结构化数据或半结构化数据转换成应用感知项格 式并以可访问的方式将其存储起来)来实现所有这些功能等。 一次通过保 护及数据管理方法不在生产系统(或主机系统)中进行,因此不会导致性 能劣化。
图2是根据实施例的进行一次通过保护及数据管理的数据替代系统 的框图。这里参照不同的实施例而描述的数据替代包括使得能够实现针对 生产服务器的一系列的数据管理解决方案并使生产服务器客户端的能力 增强的系统及方法。
系统200包括生产系统及实用系统。生产服务器的示例是通常称作企 业服务器的任何服务器,但是实施例并不限于此。例如,Microsoft Exchange 服务器用作生产服务器的一个示例。生产系统包括4吏客户端 应用(也称作客户端)对生产数据库中的项(也称作数据库文件)的访问 更容易的高级项接口 API。客户端包括向终端用户提供对生产服务器或企 业服务器的访问的任何客户端设备或应用。客户端的示例是Microsoft Outlook ,但是这里所描述的实施例并不限于此。客户端使用适当的协 议来与项接口 API进行通信。在生产服务器是消息服务器的情况下,协 议包括消息应用编程接口协议(MAPI协议)、邮局协议第3版(POP3 )、 因特网消息访问协议(IMAP或IMAP4)等。
生产系统还包括用于使得用户可以出于备份目的或其它目的而以大 块形式复制生产数据库中的数据中的一些或全部的一个或更多个低级备
份接口 ;M目对应的^#应用。
系统200还包括实用系统。如这里进一步描述的那样,实用系统在生
产数据生成之后对该生产数据进行镜像。镜像处理导致总是可以容易地利 用生产数据库的准实时的且准确的副本。在不同的实施例中,数据库的准实时的且准确的副本用于多种目的,这些目的的范围从生产数据库完全故 障的情况下的灾难恢复到创建包含生产数据库的可容易地访问的砖块级 (项级)存档的索引对象库。
镜像处理包括从生产系统传送数据库文件,以及以定期的方式从生产 系统传送日志文件。捕捉组件将数据库文件要么全部地要么以增量的方式 从生产系统传送到实用系统的镜像库。应用组件以接近连续的方式应用日 志文件以将传送来的数据库文件保持为最新的。下面将要进一步描述的提 取组件从镜像库中动态地提取项。在一个实施例中,提取组件遍历数据库 文件的结构以识别并提取项及元数据。索引组件脊争个项索引,以使得以 后对索引项库的搜索高效且智能。提取组件对镜像库进行操作的频率是可 设定的。例如,可将^^取组件设定成在最初捕捉到生产数据库且最初应用
日志文件之后每30分钟操作一次。频率可以较大或较小,并且例如可以 取决于可从生产系统获得新的日志文件的频率来设定该频率。作为另 一种 选择,提取组件可以以事件驱动的方式进行操作,例如,在新的日志文件 或一定数量的新日志文件可用时操作。动态应用处理及提取处理的结果是 准实时地反映对生产数据库的改变的、可容易地访问的且准确的存档。也 可以在要求时调用提取组件。
在这里为方便起见参照Microsoft Exchange 示例而描述的不同的 实施例中,提取组件及索引组件包括使性能最优化的许多特征。这些特征 包括使项单实例化,以使得相同的项不被存储多于一次,从而节省存储空 间。这些特征&包括检测对项的改变(包括隐蔽的改变)以及检测已被移 动的项。这里所描述的实施例提供了针对存档、复制、灾难恢复等的用于 以应用感知的方式存储数据的、还提供可验汪的不可否认、可m^的产销 监管链等的完整的解决方案。
如图2所示,数据管理应用的主机可通过不同的API或通过网络访 问来访问索引对象库。访问索引对象库的应用/功能包括(但并不限于) 对项数据的个人自助服务、监^LJ^督、法律发现、遵从性、灾难恢复、 存档、审计及生命周期管理。
贯穿示出或描述数据库的4^Hf内容,即使未示出或描述一个或更多 个相对应的服务器,也暗示了所述服务器。例如,生产数据库暗示生产服 务器,实用数据库暗示实用服务器。在这里所描述的各个实施例中,实用 服务器是包括这里所描述的并要求保护的数据替代或镜像方法及设备的 近线服务器。所描述的数据替代或镜像方法及设备的实施例包括可从加利福尼亚州Santa Clara的Mimosa System公司得到的产品,包括用于 Microsoft Exchange Server Disaster Recovery Option的NearPointTM。 数据替代或镜像方法及设备的实施例包括与近线服务器相结合的附加模 块。在一个实施例中,近线服务器是可从Mimosa System得到的 NearPointTM服务器。
镜像处理生成提供企业生产系统上的生产数据与实用系统上的数据 之间的关系的镜^Jt据。实用系统将镜^JL据存储在镜像数据库(也称作 镜像库)中。实用系统可以可选地利用近线存储来降低成本。
在一个实施例中,镜像处理是在数据替代中保持相对最新的、生产企 业数据的副本的方法,数据替代在这种情况下包括镜^Jt据库。可以将该 数据可选地转变成多种可选的格式并增加元数据。
生产系统和/或实用系统可以是单个计算机,或者它们可以是集群式 系统、复制式系统和/或分布式系统。生产系统和/或实用系统可以在同一 数据中心中,或者它们可以是远离的。在一个实施例中,生产系统与实用 系统之间的主要的连接是通过局域网(LAN)、城域网(MAN)或广域网 (WAN )。可以可选地使用存储区域网(SAN)来进行数据访问及数据移 动。
这里所指的客户端及服务器可以是任何类型的基于处理器的装置和/ 或基于处理器的装置的组合。对系统和/或服务器的引用单数形式可以包 括该系统或服务器的多个实例。这里所描述的系统实施例的各个组成部分 之间的连接可以包括适合于主机系统配置的无线连接、有线连接、有线/ 无线混合连接及其它网络连接类型。网络组成部分和/或系统组成部分之 间的连接可以包括一种类型的网络、多个网络和/或网络的组合中的任一
种以;M目对应的网络组成部分,所勤目对应的网络组成部分包括但不限于
(此处仅举几例)广域网(WAN)、局域网(LAN)、城域网(MAN)、 专用网络、后端网及因特网。这里所使用的诸如传输、互联或网络之类的 术语涵盖常规的以太网、存储区域网(SAN)和/或其它类型的网络。协 议可以涵盖传输控制协议(TCP) /网际协议(IP) (TCP/IP)及分层 协议、互联网小型计算机系统接口 ( SCSI X iSCSI )、光纤信道、InfiniBand、 超传输(HT)、虚拟接口 (VI)、远程直接内存访问(RDMA)及一系列 的其它协议。
图3是包括具有多个生产服务器;M目对应的数据库的生产系统的系
统300的框图。在一个实施例中,生产服务器是消息服务器,数据库是消息数据库,但实施例并不限于此。生产服务器可以包括消息服务器、协作 服务器、门户或数据库服务器。生产服务器存放各种结构化数据、半结构 化数据及非结构化数据。这些服务器可以是独立的、集群的、复制的、网
格(grid)的组元、虚拟化的或者任何组合或变型。出于例示的目的而使 用的示例是Microsoft Exchange 服务器,但是这里所描述的实施例并不 限于此。
如前所述,实用系统包括镜像库。镜像库包含从消息数据库中的一个 或更多个消息数据库接收到的镜像数据。捕捉组件获得生产数据的副本, 应用(或"应用(apply)")组件按下文所进一步描述的方式将镜像数据 保持为最新的。
捕捉组件被构造为减少对生产系统操作的中断。捕 &件能够以可伸 缩且高性能的方式、安全且可靠地捕捉生产数据。所捕捉到的数据在此可 以不同地称作数据、生产数据、生产数据库等。通常,所捕捉到的数据是
包括应用数据、数据库、存储组、邮箱数据;sj艮务器数据中的一个或更多
个的生产数据库文件。
捕捉组件将lt据提供^^象库,以高效且低成本地将镜像副^可能 地保持为最新的。捕捉组件可以包括*方法、快照方法、复制方法及持 续数据保护(CDP)方法,但并不限于此。下面将详细地描述被构造成在 一个实施例中使用的各种捕捉组件。
在一个实施例中,应用组件是数据类型所固有的。在另选的实施例中, 对应用组件进行^tit以用于特定的数据类型。通常,企业应用存在于关系 数据库上。诸如Oracle , DB2顶及Microsoft SQL 服务器的能力相对 较强的数据库提^H更于应用的直接重用的日志传送机制。然而,能力相对 较弱的数据库和/或其它半结构化数据或非结构化数据不包括日志传送能 力。Microsoft Exchange 服务器是存在于不支持日志传送的数据库上的 企业服务器的示例。这里所描述的镜像处理提供支持对数据库和/或其它 半结构化数据或非结构化数据的镜《象处理的日志传送能力。
实施例的提取(或"提取(extract)")组件可选地将数据格式^目对 复杂的应用格式转换成数据管理应用可直接地使用的格式。提取组件提供 高性能的、可伸缩的、无损的、灵活的且可扩展的数据转换能力。这里所 描述的提取能力由诸如Microsoft Exchange 服务器的系统来提供。例 如,Microsoft Exchange 服务器提供的MAPI及协议,这种接口和协议 相对地难以在远程的实用服务器或管理服务器上部署,而且通常不满足管理应用的性能及可伸缩性要求。
索引对象库(IOR)包括对象数据库中的已提取出的(或转换后的) 数据对象以及元数据数据库(也称作元数据库或"元数据库(metabase)") 中的与所^象有关的元数据。这里所使用的对象表示应用感知格式的数 据项。存储在对象数据库中的对象的示例是电子邮件消息体,但还有很多 其它示例。
可选的过滤器向数据管理应用提供用于对提取处理进行调整或参数 设置的API或Web服务能力。
可选的索引机制对索引对象库中的数据及元数据进行操作以寻找模 式及关系。当索引机制找到有关的信息时,利用该新信息;M"元数据进行 增强。可选的是,可以由数据管理应用通过过滤器来引导索引机制。
在一个实施例中,数据管理应用使API或Web服务在聚集数据正在 被语义索引时访问该聚集数据。例如,数据管理应用可以在有关的附加数 据或元数据已被添加到索引对象库中时得到主动通知或回调。在一个实施 例中,实用系统主动地参与对生产服务器的功能的影响、引导、加入或扩 充。作为实用系统的一部分的应用可以通itit反馈环或负反馈环以及生产
服务器功能的增加而成为生产服务器工作流中的主动参与者或被动参与 者,以解决现有的痛点或通过增值来增加产出率。
图3的实施例包括具有三个消息服务器及一个近线服务器的结构。可 以有其它部署变型,包括不同数量的同构生产服务器或异构生产服务器、 以及可以是集群的、分布式的、网格的一部分或虚拟化的复杂的近线服务 器。尽管图3示出了三个消息服务器,但是可以向多个任意的同构服务器 /异构服务器提供等同的服务。尽管图3示出了单个近线服务器,但是实 际上它可以是集群的、分布式的、复制的或虚拟化的,并且可以分跨多个 机器或多个站点。
这里参照示例主机系统来描述镜像方法的实施例。作为示例,在提供 Microsoft Exchange 服务器的应用组件的日志传送的背景下描述镜像 处理,但是这里所描述的镜像处理并不限于Microsoft Exchange 服务 器。
图4是示出根据实施例的捕捉组件、应用组件及提取组件的框图。捕 捉组件生成或提供生产数据的基线完整副本。可以将该完整副4^据直接 地传送给用于将密集的应用格式转换成后处理实体所期望的另一格式的提取组件。这里也将该转换处理称作提取或大块到砖块转换。
在捕捉组件不提供应用一致的数据时,实施例可以可选地包括在提取 之前对完整副本数据进行清洁和/或修复。在下面将要进一步描述的实施
例中,在日志文件(作为示例,示出了 "日志文件"l及"日志文件"2) 生成时将它们从生产系统传出,并且将它们应用于完整副本,以将完整副 本保持为最新的,作为生产数据库的镜像副本。
将镜像处理的捕捉组件构造成使用可以包括*、快照、复制和/或 持续数据保护的一个或更多个数据捕捉能力。图5是根据实施例的在进行 镜像时使用的4^捕捉的框图。#捕捉使用由在生产系统上所运行的应 用所提供的^^ API。在这个示例中,生产系统为Microsoft Exchange 服务器,但是并不限于此。将实用系统构造成偶尔地获得完整备份并频繁 地获得增量^#或差量*。通常按照默认的计划或者管理员设置的计划 来运行这两个机制。其它增强或变型包括用于检测到生产系统上已生成新 的日志文件并拉过来副本("动态日志传送")的能力、或者用于当正在生 产系统上写入日志文件时"跟踪(tailing)"日志文件的机制。
图6是根据实施例的在进行镜像时使用的快照捕捉的框图。快照捕捉 的快照要么是崩溃一致的要么是应用一致的。通常,通过在无应用参与的 情况下打破镜像而获得的"热分离"快照往往是崩溃一致的。应用一致的 快照机制的示例是Microsoft Data Protection ManagerTM。快照要么可以 是本地的,这要求管理服务器共同位于同一数据中心中,要么可以是远程 的。生产系统及实用系统可以是单个计算机,或是它们可以是集群的、复 制的和/或分布式的。用于控制及通信的传输通常为LAN、 MAN或WAN。 可选的SAN可以使数据移动更有效。
对于崩溃一致的快照,可以使用另外的机制来验证快照的一致性(并 且可能重复该处理,直到可获得相当一致的副本为止)。所述另外的机制 可以清洁并/或修复数据,以使其为应用祸:好准备。
图7是根据实施例的在进行镜像时使用的复制捕捉的框图。复制可以 是数据中心内本地进行的,或者其可以是通过MAN、 WAN或SAN远程 进行的。复制在可以用于捕捉的实用系统上保持副本。常规的复制共享崩 溃一致的镜像的特性,并且可以利用捕捉到可能为应用一致的时间点的 "事件流"iMt复制进行注释。生产系统及实用系统可以是单个计算机, 或者它们可以是集群的、复制的和/或分布式的。用于控制及通信的传输 包括LAN、 MAN和/或WAN。可选的SAN可以使数据移动更有效。使用复制来捕捉生产数据包括使用这样的复制技术捕捉源(例如, 生产系统)处的每一个相关写入,并将所捕捉到的写入传播到目标(例如, 实用系统)以对其应用数据的副本,从而使副本成为最新。该复制可以是 同步式的、异步式的或准同步混合式的。生产系统及实用系统可以是单个 计算机,或者它们可以是集群的、复制的或分布式的。如同快照捕捉的情 况,可以使用另外的机制来验证快照的一致性,并且清洁并/或修复数据, 以使其为应用做好准备。
图8是根据实施例的在进行镜像时使用的CDP捕捉操作的框图。捕 捉组件提供在生产系统上已发生的改变流,并提供移动到"任何时间点" (APIT)的能力。利用与生产系统上的事件同步的事件流来注释实施例 的改变(APIT)流。可以将定位器模块构造成选择对于应用的使用言最 适当的时间点。生产系统及实用系统可以是单个计算机,或者它们可以是 集群式系统、复制式系统和/或分布式系统。用于控制及通信的传输包括 LAN、 MAN或WAN。可选的SAN使数据移动更有效。
图9是示出根据实施例的生成来自生产系统的日志文件的增量更新 或差量更新的框图。对日志文件(这里也称作日志(logs)或事务日志) 的更新包括将来自捕捉操作的数据加到具有先前的数据库及日志的镜像 库中。对日志的更新包括将日志文件应用于数据库以使该数据库成为最新 的应用^Mt或日志应用操作(也称作日志传送)。
对日志的更新可以可选地包括提取操作或大块到砖块转换操作,如这 里进一步描述的那样。对得自日志应用操作的数据进行提取操作,以将所 得到的数据从密集的应用格式转换成供各种数据管理应用后续使用的一 个或更多个目标格式。
图10是根据实施例的包括使用^tit后的日志传送来创建合成完整副 本的镜像处理的系统1000的框图。系统1000包括进行预写式日志处理的 生产系统。出于例示的目的,将参照作为生产系统的组fl^的Microsoft Exchange 来描述图10,但实施例并不限于此。在一个实施例中,生产 系统包括Microsoft Exchange 服务器及Microsoft Exchange 数据库。 尽管仅示出了一个数据库,但是生产系统包括一个或更多个数据库。
应用与生产数据库(其在Microsoft Exchange 的情况下称作 Exchange数据库或EDB)进行通信。当应用检测到对数据库的改变时, 它对日志文件进行预写式日志处理。这包括对日志文件追加信息,这比每 次发生改变时遍历数据库结构并更新数据库要快得多。追加到日志文件中的信息反映了对数据库中的数据做出的具体改变。
惰性写入装置取得针对数据库的所有已记录但未提交的改变,并将它 们写入到磁盘。使用这些日志文件的一个原因是,如果系统突然崩溃,则 当系统恢复时,系统可以重放日志文件,从而恢复所有丢失的数据。预写 式日志处理通常用于数据库系统,但是其它系统可以具有处理对数据的改 变的不同方式。
在数据库系统中使用日志文件的另一方式是创建镜像数据库以在服 务器损失或站点损失时提供^#。这被不同地称作日志传送、日志应用或 合成完整副本。这些术语中的任一术语暗示取得对生产服务器的增量改变 并将它们应用于实用服务器上的数据库副本以使该副本成为最新的各种
方法。 一些系统(包括Microsoft Exchange )不支持日志传送。无法支
持日志传iHxt数据^^操作、数据存档操作及数据发现操作引入很大的限
制。例如,常规上,被设计成向Microsoft Exchange (或不具备日志传 送能力的其它系统)提供数据^#操作、数据存档操作及数据发现操作的 第三方应用i^EDB并获得数据库的批量版本。如果这个应用重复地获 得批量数据库而不应用日志文件,则许多数据库及许多日志文件会积IM^ 来,从而成为麻烦。因而,为了将数据复原回到Exchange ,必须在复 原时将所有积聚的日志文件应用于EDB。这使得常规的第三方应用的恢 复时间目标(RTO)很长。
如这里所描述地利用合成完整副本来进行镜像处理,允许随着产生日 志文件而耗用掉它们,从而改善RTO。另外,根据将要描述的实施例, 因为可以得到当前的EDB (包括所应用的日志文件)的副本,所以提取 并转换到砖块形式变得可行。
根据实施例,系统1000还包括具有镜像库及IOR的实用系统。 一开 始,将生产数据库从生产系统复制到实用系统上的镜^Nt据库中。另夕卜 在日志文件生成时将它们从生产系统传输到镜像库。实施例中的镜像库也 存储有STM文件。STM文件是/^格式的用于多媒体的文件,典型地为 电子邮件。
在一个实施例中,根据^tit后的日志传送操作,每次生成日志文件时, 实用系统接收到该日志文件,并将其应用于镜^lt据库。作为另一种选择, 可以在应用之前对日志文件进行批处理。以应用感知方式将镜^Jt据库中 的数据提取到索引对象库中,并按照使得即^A实用系统外部的数据管理 应用也能容易地定位并访问该数据的方式将其存储起来。日志文件的处理的框图。由
Microsoft Exchange 所使用的可扩展存储引擎(ESE )或"引擎"(这里 也称作恢复引擎)也称作JET Blue,是来自Microsoft的索引顺序访问方 法(ISAM)数据存储技术。引擎使得客户端应用可以经由索引访问及顺 序访问来对数据进行存储和检索。在用于对生产数据库进行镜像的实施例 中,实用系统调用引擎,将引擎引向数据库(在这种情况下为EDB)并 用于便于镜像处理(包括日志传送及日志应用)。
在一个实施例中,使EDB头指向作为起始日志文件号的特定的日志 文件号,然后引擎运行。引擎遍历每个日志文件,并例如通过检查校验和 来检查完整性。引擎开始将来自日志文件的事务应用到镜^Jt据库中。引 擎顺序M历日志文件,应用每个日志文件。例如,图11中示出了曰志 文件1至日志文件4。当引擎结束应用最后一个日志文件(日志文件4) 时,数据库1指示数据准备好被复原到生产数据库的"已恢复"状态。 在已恢复状态中,再无日志文件可被应用于数据库。在Microsoft Exchange 中,这种状态称作"干净关闭(clean shutdown)"状态。这 种行为是>^>磁带成为主要^#存储介质时起就有的产物(artifact)。例如, 如果将备份存储到磁带上并从磁带中检索*,则从不需要应用日志文件 多于一次。因而,在一次应用日志文件之后,EDB自动地i^V再无日志 文件可被应用的状态。常规上,当生产数据库已被#时,它被转入可以 应用日志文件的"已##"状态。在Microsoft Exchange 中,这种状态 称作"脏关闭(dirty shutdown)"状态。
根据实施例,为了在任意时间应用日志文件,允许EDB在最后一个 日志文件(例如,日志文件4)之后iiX干净关闭状态。然后,将EDB 头修改成指示其处于脏关闭状态。当实用系统准名"圩应用新的一组日志文 件时,EDB处于脏关闭状态,并且引擎能够应用日志文件。这称作将脏 的比特接在EDB的适当的头字段中。EDB及EDB头对特定的实施例是 特殊的,但并不限于此。在不同的实施例中,其它系统可以使用如下不同 的数据库在这些数据库中,存在头或其它结构性元数据,可以对所述头 或其它结构性元数据进行操作,以实现使得可以使用数据库引擎来应用日 志文件(如所描述的)的结果。引擎可以是用于恢复数据库(包括应用已 对数据库做出^未应用于数据库的改变)的任一恢复引擎。
图12是例示包括根据实施例的应用日志文件的镜像处理的实施例的 流程图。处理开始,确定是否是第一次运行镜像处理。第一次运行该处理可能发生在镜像库为空时、或者刚安装好实用系统和/或镜像组件时、或 者创建了新的库时。如果是第一次运行该处理,则获取生产数据库的完整 副本。这包括将生产数据库文件完整地复制到镜^lt据库中。
如果不是第一次运行该处理,则获取增量副本。为了获得增量副本, 确定是否存在足够的未应用的日志。如果不存在足够的未应用的日志,则 该处理等待足够的日志。在一个实施例中,这包括返回到最初的起始点。 如果存在足够的未应用的日志,则确定日志是否是顺序的。如果日志文件 不是顺序的,则不能应用它们,并获得lt据库的完整副本。作为另一种选 择,专门地访问生产系统以获取"缺失的"日志文件。因为日志文件的本 质是可能具有相互依赖性的多个事务,所以日志文件必须是顺序的。例如, 按与微处理器指令的领域相似的方式,数据库事务可以被提交或取消提 交。
如果存在足够的日志文件,则对合适的EDB头进行更新。在实践中, 存在多个EDB,所以存在多个EDB头。将头更新成参考未被应用的第一 个日志文件。调用数据库恢复引擎(在这种情况下为ESE )。引擎用于通 过应用日志文件来,制EDB。根据稍后将要描述的实施例二复制的EDB
将EDB头更新成指示已^#状态或脏关闭状态,处理返回到起始点。
图12例示了不支持日志传送的生产数据库系统的实施例。实施例也 适用于其它系统,例如,文件系统。为了保持一组文件的更新副本,处理 从获取一整组文件开始。后来,获得文件系统中的所有已改 变的文件,并 且前一副4*菱写。作为另一种选择,可以仅获得差异并将其应用于前一 副本。这是合成完整副本的另一示例。^tit后的日志传送的实施例适用于 任何应用数据或非结构化lt据。
镜像处理是否保留日志文件以及将日志文件保留多久取决于日志文 件是否包括任何未提交的事务。如前所述,每个日志文件可以包括若干事 务,并且这些事务中的几个事务可能是未完成的。在某个点有"开始"事务, 在另一点有相对应的"结束"事务。当镜像处理遇到"开始"事务时,将其用 开括号括起来。当遇到相对应的"结束"事务时,关闭括号。在确认被括号 括起来的链中的每个事务都成功地完成之前,将"开始"事务与后来的"结
束"事务之间的所有的事M存起来。如果并非每个事务都成功地完成, 则将所述链中的所有的事务回退(roll back)。保留适当的日志文件便于 回退。因此,日志文件会积l^来,并且当应用它们时,检查未完成的事务。如果不存在与日志文件相关联的未完成的事务,则将该日志文件删除。 如M在与日志文件相关联的未完成的事务,则^该日志文件。
图13是根据另一实施例的镜像处理的流程图,在该实施例中,作为 生产系统的一部分的数据库恢复引擎被引向生产数据的副本并用于便于 镜像及日志传送。在示例中,数据库恢复引擎是Jet Blue ExchangeTM数据 库引擎的一部分,但实施例并不限于此。图13例示了参照图12而描述的 用于防止EDB 1已恢复状态的方法的另选方法。图13例示了连续日志 应用处理,根据该处理,为了使恢复引擎可以多次应用日志文件而使该引 擎停止。
生产系统包括生产数据库(例如,EDB)、生产数据库应用(例如, Exchange )及日志文件(或"日志(logs)")。实用系统包括镜像数据 库M生产系统传送来的多个日志文件。实用系统的实施例接收到生产数 据的副本。最初,接收到整个生产数据库文件的基线副本并将其存储在镜 像库中。当生产系统生成变化数据时,实用系统接收到该变化数据。变化 数据是记录有对数据库文件做出的改变的任意数据。在一个实施例中,变 化数据是一个或更多个日志文件。在一个实施例中,将日志文件从远程的 ExchangeTM服务器传输到实用系统的近线服务器。在一个实施例中,日 志传送的频率是由计划预先确定的,但是可以按其它方式(例如,管理员 通过数据管理应用)确定该频率,或者日志传送可以是事件驱动的。
使用恢复引擎来将变化数据应用于副本。在不具备日志传送能力的系 统(例如,ExchangeTM)中,在应用日志文件之后,将正被操作的数据 库的状态改变成不允许进一步应用日志文件。在一个实施例中,通过使恢 复引擎停止来防止副本1该状态。当有另外的日志文件准备好被应用 时,使恢复引擎启动,从而应用所述另外的日志文件。
图13中所例示的处理是与Microsoft ExchangeTM相关联地进行描述 的。然而,该处理适用于其它消息和协作服务器。该处理还可扩展到使用 结构化数据、半结构化数据或非结构化数据的一般应用。尽管本示例示出 了生产数据库或生产服务器,但是可以向多个同构或异构的数据库或服务 器提供等同的服务。相似的是,尽管本示例描述了在一个实施例中包括近 线服务器的单个镜像数据库,但是在不同的实施例中,镜^lt据库可以是 集群的、分布式的、复制的、虚拟化的,并且可以分跨多个机器或多个站
图14是根据实施例的包括提取组件的实用系统1400的框图。镜像库包含大块格式的数据库文件。出于提供示例的目的,大块格式包括作为由
Exchange 所使用的数据结构的B+树结构。通常,在按照B+树来组织 数据库文件时,仅Exchange 可以对该数据库文件进行操作。并且,在 实用系统上运行Exchange是很繁瑣的。根据实施例,拔^取组件进行大块 到砖块处理,该大块到砖块处理包括1到被捕捉到并被存放在实用系统 上(例如,近线服务器上)的镜4象库中的Exchange 数据中。如前所述, 镜像库还包括STM文件及日志文件。
实施例的提取组件进行"原始读取"方法及"智能提取"方法。原始 读取方法系统地读取B+树,包括数据结构、数据M内容。因为B+树实 际上参考到若干个表(例如,邮箱表、文件夹表、消息表及附件表),因 此可以进行有限次数(在一种情况下,根据该树结构,为4次)的查找来 搜索叶子项。查找项包括在不是叶子节点的节点处做分支判决,直到找到 叶子节点为止。
智能提取方法从利用原始读取方法而读出的原始结构中提取有用的 项;5UL数据。在一个实施例中,将在翁:据库结构中找到的相同的层次结构 结构复制在目录结构或文件系统中。在一个实施例中,目录结构在镜4象库 (未示出)中,但实施例并不限于此。在目录结构中,项(例如,文件夹、 邮箱、电子邮件体、电子邮件头、电子邮件附件等)私故置在叶子节点处。 任何应用可以1到目录结构中并查看项。在一个实施例中,提取组件创 建针对所遇到的各Exchange 服务器的目录、针对各存储组的目录等, 下至叶子项。以这种方式,数据库结构中的密集的数据^L^露在任何应用 无需对Exchange 进行使性能劣化的访问就可以遍历并搜索的文件系统 中。实际的项(叶子项)可以是任何格式的,例如,HTML、 Adobe Acrobat 等。
可选的是,将被提取出的项放置在复合容器(例如,ZIP文件或CAB 文件)中来存储。
可选的是,可以将从生产数据库中提取出的项压缩和/或加密。
在一个实施例中,根据分层存储方案,将从生产数据库中提取出的项 存储在许多存储位置中的一个存储位置。位置可以指一种存储介质和/或 实际的位置。在一个实施例中,分层存储方案包括用于根据内容、年龄、 重要性、发件人或收件人来将项放置在层中的预先确定的准则以及许多其 它准则。实施例包括用于动态地确定对每个项而言适合于将其存储在其中 的层的算法。提取组件包括用于对例如经OutlookTM或ExchangeTM压缩的项进行 解压缩的解压缩算法。提取组件有效地提取数据。在一个实施例中,第一 次对EDB进行大块到砖块转换时,对结构进行分析,并且多个提取线程 运行,该多个线程中的各线程负责一个邮箱,以使得并行地提取多个邮箱。
索引组件对通过提取处理或大块到砖块处理而创建的目录结构进行 遍历以全部进行索引。索引组件寻找消息类型、消息内容等。索引组件创 建使得可以对项进行全搜索的索引。例如,可以对字"Tabasco"的出现 进行搜索。作为另一示例,可以对讨论1150号缺陷的用户进行搜索。数 据替代系统容易地进行这样的搜索,然而使用Exchange 来进行这样的 搜索是很昂贵的。
将索引的项存储在索引对象库中,并且将与索引的项相关联的元数据 存储在元数据库中。生产数据库文件中的元数据指示数据库结构,包括数 据^t数据库文件中的位置。存在关于项的元数据、关于指示诸如哪个文 件夹在哪个邮箱中之类的事情的元数据等。还存在关于元数据的元数据。 在一个实施例中,元数据库包括SQL服务器及SQL数据库。
图15是例示根据实施例的索引处理的流程图。该处理开始对特定的 项进行操作。作为示例,项例如可以是Acrobat 文件。该处理访问项的 专有格式,包括确定该格式为何格式。然后,该处理对项的文本进行分析, 并在遇到字时将字令牌化。字是可以被令牌化的普通符号,但是格式中所 包含的任何其它符号都可以被令牌化。对令牌化的字进行过滤。在一个实 施例中,过滤包括去除"噪声"字(例如,"the"、 "a"等)。可以根据任 何预定的过滤准则来进行过滤以实现排除或包括任何字或符号。
然后,项中的在过滤之后留下的字用于添加到索引查找表中。如果字 以前遇到过,则它已经被包含在表中。在这种情况下,将到"新的"位置 的指针包含在表中。如果字以前未遇到过,则它不在表中,因此将该字及 其关联的指针都添加到表中。以这种方式,建立镜像数据库中的所有的字 的索引。
数据替代系统的实施例包括多种最优化。 一种最优化称作变化^C取。 在一个实施例中,原始读取处理在B+树的各节点处比较最新修改曰期。 变化提取包括确定邮箱、文件夹、消息及附件的最新修改时间的算法。如 果最新修改时间与先前的最新修改时间没有不同,则读取不进行到B+树 中的更低层。这大大地缩短了在最初完全地提取生产数据库之后的提取时 间。例如,最初提取可能花费6小时,而后续的提取(每30分钟进行一次)可能花费5分钟至10分钟。变化提取不能处理诸如用户将项从一个 文件夹移动到另一文件夹的多种情况。其它最优化对项进行更详细的检查 以检测诸如移动及删除的改变。下面将描述这些其它最优化。在一个实施 例中,为了提高效率,提取处理为两部处理,但是实施例并不限于此。第 一部包括运行得很快的变化提取。第二部在带外运行,捕捉诸如移动及删 除的改变。
另 一种最优化称作单实例化或去除重复。每次进行大块到砖块提取处 理时,提取组件查看生产数据库文件的历史图,该历史图随时间而不断地 改变。然而,自上次大块到砖块处理以后,很多项(消息或附件等)可能 未改变。根据实施例,拔:取组件确定在先前的大块到砖块处理的过程中是 否已将项存储在实用系统上。如果是这样,则没有必类峻用更多的存储空 间来再次存储该项。而是将到现有的消息的指针存储起来。
另 一种最优化称作变化实例化,祁^据这种最优化,仅保存对项的改变, 而不是整个改变后的项。作为示例,假设将带有附件的消息从Peter发送 给Roy。 Roy对附件做出改变并将其发送给Rick, Rick继续发送该附件 (也许有改变或没有改变),等。在提取组件对数据库文件进行操作时, 它得知存在附件文档的四个实例。在一个实施例中,对实例的密码核^验和 进行比较。如果对项做出改变,则与该项相关联的校验和改变。在一个实 施例中,如果单实例化揭示存在附件文档的四个不同的版本,则进行求差 异(diff)以找到差异。如果原始版本与后来的版本之间的差异相对地小, 则将原始版M储起来,并且对于后来的版本仅存储差异。
在检测改变时的另 一考虑是,为了遵从性目的而应当有效地存储所有 的改变。不应当覆写较旧的版本,以使得可以重新创建准确的历史图。在 一个实施例中,在第一次提取消息时,将消息及附件务沐地以加密的方式 散列,将消息及附件唯一地识别为字符串。该校验和或散列也称作集合消 息校验和。后来,当为做出请求的用户检索到该消息时,生成另一校验和, 并将该另 一校验和与在存储时计算出的校验和相比较以确定它们是否匹 配。如果它们不匹配,则所请求的项在这期间被触及了。
返回到该处理中的在将要被存储的消息最初地散列时的点,在生成集 合校验和之后,将消息分解成消息头、消息体及零个或更多个附件。对集 合消息中的所有的单独的项进行检查以确定以前是否看到过它们,包括对 校验和或散列进行比较。将散列存储在将各散列与项的存储位置关^来 的表中。这构成了将散列映射到存储位置的散列表。在一个实施例中,将散列表作为元数据保持在元数据库中,但是实施例并不限于此。
因为如果用户无论何时访问项,则散列改变,所以存储项的加密散列
提供了篡改检测。另夕卜,加密散列便于检测被移动的项。如果消息^L从一 个位置移动到另一位置,则尽管它并不是新的项,但是它最初表现为新的 项。实施例包括关于自上次以后哪些消息消失了以及自上次以后哪些消息 出现过的变化检测。实施例还进行加密散列,以确定消息是否确实是新的。 实施例还检查作为MAPI性质的、项的条目ID。无论项被移动到哪里或 被移动了多少次,条目ID都不改变。
当在提取处理中遇到带有附件的不同消息时,附件可能是相同的。在 分解这些消息时,检查附件的校验和。在遇到先前已被存储的附件时,将 到该先前已被存储的附件的指针存储起来。
在一个实施例中,还保持每个项的引用计数。例如,每次遇到附件时, 将引用计数递增。每次删除附件(例如,因为删除了消息)时,引用计数 递减。在一个实施例中,将引用计数作为元数据保持在元数据库中,但是 实施例并不限于此。
图16是根据实施例的散列表的框图。该散列表包括左侧的用于引用 计数的栏。引用计数O(CNTO)指项O,并以此类推。引用计数按前面描
述的方式递增或递减。散列表还包括右侧的用于散列号;M目对应的位置的
数据库(DB)栏。各散列号唯一地确定一项。各位置条目指向所关联的 项在索引对象库中的位置。
图17例示了根据实施例的提取处理或大块到砖块处理的流程图。大 块到砖块处理开始对包含来自生产系统的、以正在进行的方式应用日志文 件而将其保持为最新的镜^lt据库文件的镜^lt据库进行操作。在一个实 施例中,做出镜像数据库的单独的副本,并且提取组件对该副本进行操作, 但是实施例并不限于此。
列举数据库文件的结构性元数据。在所给出的示例中,引用了
Exchange 数据库结构,但是实施例适用于任何数据库结构。结构性元 数据指示如何布置数据库、时间戳信息等。然后,列举项元数据。对数据
库结构中的文件夹进行遍历以对改变的文件夹进行定位。这包括检查时间 戳。如果文件夹未改变,则文件夹的内容未改变,因此该处理不进入到该 文件夹中。列举改变的文件夹中/下的叶子项,并且对各叶子文件夹进行 求差异以确定自上次运行提取处理以后发生了哪些改变。将项与它们的元数据一起提取。将项例如分解成消息体、消息头、附件等。将分解后的项 与适当的信息一起存储在前述散列表中。然后,该处理结束。但是,该处
理通常以定期的方式(例如,每30分钟)自动地重新运行。这保持索引 对象库由可作为存档、*等而被访问的、非常新的数据来填充。作为另 一种选择,提取处理或大块到砖块处理可以祁^据需要、在管理员要求时运 行。
图18例示了根据实施例的对索引项的自助访问的框图。如前所述, 很多应用可以容易地对保持在实用系统中的索引项库中的、来自生产系统 的项的最新存档进行访问。索引项库本质上是包含任意应用格式的项的可 搜索的文件系统。另外,元数据库(在一个实施例中为SQL服务器及SQL
数据库)存储有使得能够实现穷举搜索功能、审计功能、监视功能;sj&督
功能的完整且准确的元数据。图18例示了包括作为由Mimosa System 公司所提供的一次通过保护及数据管理(例如,如图2中所例示的)的一 部分的自助服务的实施例。
生产系统包括Microsoft Exchange 服务器及数据库。在其它实施例 中,可以存在多种生产服务器及数据库来替代ExchangeTM。在时间Tl, Exchange 服务器向用户节点处的用户呈示逻辑视图。所述用户节点是 诸如个人计算机(PC)的任何访问设备。用户通过诸如OutlookTM的客 户端应用来观看逻辑视图。对于逻辑视图,Exchange 服务器具有很多 邮箱。用户通常仅能访问该用户自己的邮箱。用户邮箱具有依次可以包括 注释、日历项、消息、任务等的多个文件夹。并且文件夹还可以具有其它 文件夹。叶子节点为诸如消息的项。
该逻辑视图是与包括邮箱存储器中的多个存储组内所包含的EDB、 STM及日志文件的、Exchange服务器的"物理"视图相对照的。在以大 块提取数据时,是在物理视图中,而在以砖块提取数据时,是在逻辑视图 中。如这里所描述的, 一次通过保护及数据管理使得可以在无需緩慢的、 单独的砖块提取的情况下完全地以砖块形式存档。另夕卜,在砖块级或逻辑 视图,任何数据管理应用可容易地访问存档。
参考在时间Tl的用户节点,显示了具有消息视图的Outlook 画面。 在消息视图的左侧分层次地布置有文件夹的列表。消息视图的右侧为消息 项的列表。该视图只是应用所呈示的视图的一个示例。在T1, Outlook 可能正在使用MAPI(也可能是POP3或其它消息协议)来与Exchange 对话。在Tl,每次用户点击文件夹时就看到由Exchange 使用MAPI而呈示的视图。
然而,在左侧的列表中存在由Mimosa 所创建的、称作Mimosa 存档(可以将其重新命名)的专用文件夹。当用户点击Mimosa 文件夹 时,使用与MAPI不同的协议。在一个实施例中,文件夹调用正在与 Mimosa 实用系统对话的网络服务。对用户而言显然的是,在点击 Mimosa 文件夹之后,不与Exchange通信。这个技术称作"文件夹主 页"。
在一个实施例中,文件夹主页能力使得用户可以使用Outlook 消息 视图来访问索引对象库。点击Mimosa 文件夹调用访问Mimosa 实用 系统的网络链接,该MimosaTM实用系统包括如前所述的Mimosa NearPointTM服务器上的索引对象库以及包含元数据的SQL服务器及 SQL数据库'
在时间T2 (点击Mimosa 文件夹之后),用户节点的显示看似 Outlook 消息视图,但是右侧信息是由Mimosa 来呈示的。例如,显 示的右侧可以识别要针对搜索请求而输入的信息。当用户做出请求(无论 是搜索请求还是浏览请求)时,该请求被传送到SQL数据库,以使用所 存储的元数据来识别该用户的文件夹、附件、消息等。向用户呈示元数据 的虚拟视图,所以他们可以看到他们的邮箱、文件夹、附件等。如果用户 点击附件并指示期望查看该附件,则找到消息或附件,将其重新构造并发 送回。用户可以^^壬一常用方式对被返回的项进行操作,例如,呈示消息、 转发消息、删除消息等。
在一个实施例中,点击Mimosa 文件夹呈示快速搜索视图。在快速 搜索视图中,用户可以输入搜索词并点击回车。网络服务(例如,SOAP、 XML、 HTTP等)呈示该搜索词,并且Mimosa 对该搜索词进行分析 以确定应当呈示什么视图。Mimosa 进行针对与搜索词相关联的项的数 据库搜索。然后,将返回的搜索结果呈示在Outlook 画面的右侧。
用户查找的内容可能被存储在存储器的多层中的任一层中。例如,根 据实施例的信息生命周期管理功能,按照不同的因素(包括年龄)而将项 智能地脱机存储(例如,远程*储在磁带上)。取决于项是什么或者读 者是谁,可以快速地或不太快i^险索到该项。如果用户搜索,机存储的 消息,则可以快速地返回诸如信息头的元数据(而不是消息体)以供查看。 在^f艮多情况下,用户可能不需要查看比元数据更多。然而,如果用户想要 查看脱Wt据,则用户可以选择一个或更多个脱机消息,并指示要检索它们。处理M带中检索所请求的消息,并将它们异步地返回。例如,在请
求之后一小时左右,用户接收到带有所有请求的消息的.pst文件。
图18例示了能够利用这里所描述的数据替代方法及设备来实现的强 大且深入的数据管理能力的仅一个示例。许多其它使用是可能的,并且很
多应用(例如,除了 OutlOOkTM之外)可以按^f艮多其它方式来访问索引对 象库。例如,如果用户是审计员,则该用户可以查看允许他们查看的多个 邮箱。如果用户在进行电子发现,则该用户可以使用做查询并给予用户得
到的数据的胖客户端。通常,审计员进行监^SJfe督。这包括查看消息、
对其做注释、做笔记、然后将该消息存储回存档中。在这种情况下,存储 用于反映审计员的注释的另外的附加元数据。消息及经注释的元数据总是 可访问的。后来,如果有人想要进行法律发现,则可将所有有关的消息及
所有的元数据(例如,审计员的注释)例如作为.pst文件来输出。
使用这里所描述的实施例,使多层数据管理变得容易。例如,较高级 的审计员可能需要评述较低级别的审计员的行为。较低级别的审计员可能 做简单的模式匹配。可能有许多较低级别的审计员。
可以将较低级别的审计员的工作传送给高级审计员来查看。企业可能
还需要将审计结果结^^来以IHE审计员确实正在做他们的工作。例如, 可能期望审计员每天查看X个消息。能够证明这种情况的发生通常是与
法律或规则的遵从性所需的。实施例使得能够实现这种及很多其它类型的 定制审计、,及报告。审计员或用户能够看到他们自己的、数据的逻辑
视图。在消息生产系统的示例中,可以由Exchange 来呈示逻辑视图, 但是利用Mimosa 来对数据进行存档、管理及访问。
图19是根据实施例的具有这里所描述的数据替代能力的实用系统体 系结构的框图。实用系统包括与镜像数据库、差异数据库及索引对象库
(IOR)数据库相通信的一个或更多个近线服务器(为方便起见仅示出了 一个近线服务器)。实用系统还包括一个或更多个结构化查询语言(SQL) 服务器。SQL服务器是由Microsoft所出品的关系数据库管理系统
(RDBMS )。它的主要查询语言是Transact-SQL,是ANSI/ISO标准SQL 的一种实现。也可以4吏用其它RDBMS。而且,可以使用多于一个SQL 服务器。SQL服务器使用SQL数据库及存储日志文件的日志数据库。
实用系统还包括框架、多个处理程序(handler)及队列(例如,示 出了通知队列及任务队列)。实用系统还包括工作流。在一个实施例中, 实用系统接收到请求。请求的示例包括计时器被激活、或者用户或管理员做出请求。请求将其自身表现为被置于通知队列中的通知。框架从通知队
列中4WEf知,并在工作流中查询它,以确定如何处理这个特定的通知。 框架查询工作流,然后取决于它从工作流中所获悉的而调用适当的处理程 序。框架将通知置于任务队列中。处理程序从任务队列中取得通知并接着 按适当的方式处理该通知。
框架确定是否成功地处理了请求,并确定接下来JW什么。框架查看 工作流以得到下一通知并调用下一处理程序,处理继续。该体系结构允许 "热代码加载"。例如,在一个实施例中,将包括与这里所描述的数据替代 能力有关的代码在内的实用系统软件代码以处理程序的形式编写。这是有 利的,特别是在现场的系统的情况下,这是因为可以通过简单地安装一个 或更多个新的处理程序来容易地更新系统。如果新的处理程序有任何问 题,则可以废弃该新的处理程序而使用其本来要替代的处理程序。
预期包括对结构化数据、半结构化数据及非结构化数据的大块到砖块 转换的多维替代的许多变型例在所要求保护的本发明的范围内。在不同的 实施例中,大块到砖块转换是动态的,这与根据预先确定的计划而发生相 对照。
在不同的实施例中,这里所描述的大块到砖块转换可以对具有除了明 确地描述的生产服务器及数据库之外的生产服务器及数据库的不同的生 产系统进行操作。例如,可以按这里所描述的方式对任意结构化数据、半 结构化数据及非结构化数据进行操作。
尽管这里使用使得能够实现电子邮件的消息服务器及数据库来说明 实施例,但是所描述的实施例同样适用于即时消息(IM )、 IP语音(VOIP) 消息及其它形式的数据。在某些情况下,已经将语音邮件消息作为电子邮 件附件而存储在Exchange中,使得可以将语音邮件消息作为项数据而按 照这里所描述的方式对其进行操作。本发明的实施例还适用于这里未明确 地描述的、许多其它形式的lt据或系统体系结构。
在不同的实施例中,索引对象库对于数据管理应用的可用性可以是针 对正被处理修改的实际的数据,或者可以是针对该数据的副本,或者可以 是它们的某种组合。这可以以API或网络服务的形式或者等同的形式得 到。
上述多维替代的组件可以包括一起操作的计算组件及设备的任何集 合。多维替代的组件还可以是更大的计算机系统或网络内的组件或子系统。多维替代的组件还可以按任意数量的组合连接在任意数量的组件(未
示出)(例如,其它总线、控制器、存^i殳备及数据输入/输出(1/0)设
备)之中。此外,可以将多维替代的功能分布于任意数量的其它基于处理 器的组件之中或其它基于处理器的组件的任一组合之中。
实施例的信息管理包括以下方法该方法包括确定数据的第一结构。 实施例的第一结构是专有结构。实施例的方法包括使用第一结构的信息来 对数据的项进行分析。实施例的方法包括通过将项组织成保持第一结构的 层次结构的第二结构来动态地转换数据。
实施例的方法包括经由多个应用来提供对第二结构中的项的至少一 部分的访问。
实施例的提供访问包括使用与用于访问第 一结构的数据的第 一协议 不同的第二协议来提供访问。
实施例的方法包括使用第二协议来访问第二结构并使用第 一协议来 访问第一结构。实施例的第一协议与第二协议不同。
实施例的第一协议包括消息应用编程接口 (MAPI)协议、邮局协议 (POP)及因特网消息访问协议(IMAP)中的一个或更多个。
实施例的第二结构存储在第二服务器上。实施例的数据的原始版M 储在第一服务器上。
实施例的分析是按照预定的间隔来进行的。
实施例的分析是根据数据的状态的改变来进行的。
实施例的分析是根据数据的可用性来进行的。
实施例的分析包括对项中的多个项的并行的分析。
实施例的分析包括系统地读取数据的信息。实施例的信息包括l良项 中的一个或更多个。
实施例的表包括邮箱表、文件夹表、消息表及附件表中的一个或更多个。
实施例的项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件 附件中的一个或更多个。
实施例的方法包括在第二服务器上生成数据的镜像副本。实施例的数 据的原始版;^储在第一服务器上。实施例的分;f斤包括对镜《象副本的项ii行分冲斤。
实施例的方法包括对项中的一个或更多个项进行解压缩。
实施例的组织包括将项的信息的第 一部分传送到第 一文件中并将项 的信息的第二部分传送到第二文件中。
实施例的组织包括将项索引到第二结构。
实施例的组织包拾逸历第 一结构并对项的信息进行定位。
实施例的项的信息包括项的类型及内容中的一个或更多个。
实施例的索引包括生成与项相对应的索引。实施例的索引包括使用项 的信息来将项与索引相关联。
实施例的方法包括将每个项的修改信息与该项的前一实例的修改信 息相比较。实施例的方法包括,在修改信息表明自前一实例以后项未被修 改时,将遍历停止在第一结构中的当前节点处。
实施例的修改信息包括修改日期及修改时间中的一个或更多个。
实施例的方法包括确定项是否为先前已被存储在第二结构中的先前 遇到过的项。实施例的方法包括生成到先前遇到过的项的指针。
实施例的方法包括将每个项的修改信息与该项的前一 实例的修改信 息相比较。实施例的方法包括,在修改信息表明自前一实例以后项被修改 过时,将该项的差异信息索引。
实施例的差异信息包括项的当前版本与至少 一个先前修改过的版本 之间的改变的信息。
实施例的组织包括通过生成校验和来将项的每个实例的信息散列。
实施例的方法包括通过对第二结构中的项的不同实例的校验和进行 比较来确定自组织以后项是否被改变。实施例的确定是响应于从第二结构 中检索项的请求而进行的。
实施例的方法包括将校验和传送到散列表。
实施例的方法包括将项分解成至少 一个组成部分。
实施例的项是电子邮件消息,其中,至少一个组成部分包括消息头、 消息体及消息附件中的一个或更多个。
实施例的索引包括将项传送到索引对象库中。实施例的索引包括将项的元数据传送到元数据库中。
实施例的方法包括在第二服务器处接收多个变化数据。实施例的变化 数据描述对第一服务器中的数据的增量改变。实施例的方法包括在第二服 务器处生成数据的更新版本。实施例的生成更新版本包括将变化数据应用 于第二服务器上的、数据的副本。实施例的方法包括使用第二服务器中的 组成部分的修改后的信息来控制应用。
实施例的组成部分包括数据的副本的结构性元数据。
实施例的组成部分包括变化数据的日志文件。
实施例的方法包括修改组成部分。
实施例的组成部分是副本的结构性元数据。
实施例的修改包括检测副本的第 一状态。实施例的第 一状态指示已将 变化数据应用于副本。
实施例的修改包括将第一状态改变成第二状态。实施例的第二状态是
以下状态从该状态,能够通it^]"更新版本应用另外的变化数据来生成另 —更新版本。
实施例的将第 一状态改变成第二状态包括修改副本的结构性元数据。
实施例的另外的日志文件是在生成更新版本之后被接收到的。
实施例的方法包括更新副本的结构性元数据为参考第 一未应用变化 数据。实施例的第一未应用变化数据是未应用于副本的第一个日志文件。
实施例的应用包括调用第一服务器的引擎。
实施例的组成部分是变化数据的日志文件。
实施例的应用包^用第一服务器的引擎,终止包括使该引擎停止。 实施例的方法包括在第二服务器处接收来自第一服务器的、数据的副本。
实施例的副本是完整副本及增量副本中的 一个或更多个。
实施例的方法包括将更新版本传送到索引对象库。
实施例的生成响应于自动触发、计时器通知、事件通知、轮询及请求 中的至少一个。
实施例的自动触发包括响应于至少一个预先指定的参数而自动地引发的触发。
实施例的自动触发包括更新版本的内容。
实施例的计时器通知包括与排定事件相对应的通知,所述排定事件包
括维护^Mt、用户活动、服务器活动及数据填入^Mt中的至少一个。
实施例的事件通知包括与对数据的项的改变相对应的通知。
实施例的请求包括用户、服务器及应用中的一个或更多个对数据的访 问尝试及配置尝试中的至少一个。
实施例的第二服务器包括近线服务器。
实施例的生成是准实时的并维护数据的完全的完整性及一致性。
实施例的方法包括维护更新版本。实施例的维护包括通it) t更新版本 应用至少一组日志文件来生成另 一更新版本。实施例的至少一组日志文件 在时间上比多个日志文件更晚地被接收到。
实施例的第一服务器包括本地服务器、远程服务器、数据服务器、消 息服务器、电子邮件服务器、即时消息服务器、ip语音服务器、协作服
务器、消息和协作服务器、Exchange服务器、门户、客户关系管理(CRM) 服务器、企业资源规划(ERP)服务器、企业对企业服务器及内容管理服 务器中的一个或更多个。
实施例的数据是Exchange数据,实施例的第一结构是b+树结构。
实施例的第二结构是复合数据容器。
实施例的层次结构是〗吏用元数据来保持的。
实施例的层次结构是4吏用文件结构来保持的。
实施例的信息管理包括以下方法该方法包括确定数据的第一结构。 实施例的方法包括将数据动态地转换成保持第 一结构的层次结构的第二 结构。实施例的方法包括利用多个应用经由与用于访问第一结构的数据的 第 一协议不同的第二协议来提供对第二结构的数据的访问。
实施例的动态地转换包括对数据的项进行分析并将项组织成第二结构。
实施例的分析是根据预定的间隔、lt据的状态的改变及数据的可用性 中的一个或更多个而进行的。
实施例的分析包括系统地读取数据的信息,该信息包括l良项中的一个或更多个。
实施例的表包括邮箱表、文件夹表、消息表及附件表中的一个或更多 个,其中,项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件附 件中的一个或更多个。
实施例的第二结构存储在近线服务器上。实施例的数据的原始版^ 储在第一服务器上。
实施例的方法包括在近线服务器上生成数据的镜像副本。实施例的数 据的原始版4^储在第一服务器上。
实施例的转换包括将数据的项组织成第二结构。
实施例的组织包括将项的信息的第 一部分传送到第 一文件中并将项 的信息的第二部分传送到第二文件中。
实施例的组织包括将项索引到第二结构。
实施例的组织包拾逸历第 一结构并对项的信息进行定位。
实施例的方法包括将项中的每个项分解成至少一个组成部分。
实施例的项是电子邮件消息。实施例的至少一个组成部分包括消息 头、消息体及消息附件中的一个或更多个。
实施例的信息管理包括计算机可读介质,该计算机可读介质包括可执 行指令,当在处理系统中执行可执行指令时,可执行指令通过确定数据的 第一结构来支持对数据的大块到砖块提取,其中,第一结构是专有结构。
实施例的指令在被执行时,使用第一结构的信息iMf数据的项进行分析。 实施例的指令在被执行时,通过将项组织成保持第一结构的层次结构的第 二结构来动态地转换数据。
实施例的信息管理包括以下系统该系统包括连接到包含原始数据的 第一服务器的近线服务器。实施例的系统包括连接到近线服务器并被构造 成确定数据的第一结构的转换系统。实施例的第一结构是专有结构。实施 例的转换系统被构造成使用第一结构的信息来对数据的项进行分析。实施 例的转换系统被构造成通过将项组织成保持第一结构的层次结构的第二 结构来动态地转换数据。
实施例的系统被构造成经由多个应用来提供对第二结构中的项的至 少一部分的访问。实施例的提供访问包括使用与用于访问第 一结构的数据的第 一协议 不同的第二协议来提供访问。
实施例的系统被构造成允许第二协议访问第二结构。实施例的第 一协 议用于访问第一结构。实施例的第一协议与第二协议不同。
实施例的第一协议包括消息应用编程接口 (MAPI)协议、邮局协议 (POP)及因特网消息访问协i义(IMAP)中的一个或更多个。
实施例的第二结构存储在近线服务器上。实施例的数据的原始版M 储在第一服务器上。
实施例的系统被构造成按照预定的间隔来进行分析。
实施例的系统被构造成根据数据的状态的改变来进行分析。
实施例的系统被构造成根据数据的可用性来进行分析。
实施例的系统被构造成对项中的多个项同时地进行分析。
实施例的系统被构造成通过系统地读取数据的信息来进行分析,该信 息包括t良项中的一个或更多个。
实施例的表包括邮箱表、文件夹表、消息表及附件表中的一个或更多个。
实施例的项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件 附件中的一个或更多个。
实施例的系统被构造成在近线服务器上生成数据的镜像副本。实施例 的数据的原始版M储在第一服务器上。
实施例的分析包括对镜像副本的项进行分析。
实施例的系统被构造成对项中的一个或更多个项进行解压缩。
实施例的系统被构造成通过将项的信息的第 一部分传送到第 一文件 中并将项的信息的第二部分传送到第二文件中来进行组织。
实施例的系统被构造成通过将项索引到第二结构来进行组织。
实施例的系统被构造成通过遍历第 一结构并对项的信息进行定位来 进行组织。
实施例的项的信息包括项的类型及内容中的一个或更多个。
实施例的系统被构造成通过生成与项相对应的索引来索引。实施例的转换系统被构造成通过使用项的信息来将项与索引相关^而进行索引。
实施例的系统被构造成将每个项的修改信息与该项的前一实例的修 改信息相比较。实施例的系统被构造成在修改信息表明自前一实例以后项 未被修改时,将遍历停止在第一结构中的当前节点处。
实施例的修改信息包括修改日期及修改时间中的一个或更多个。
实施例的系统被构造成确定项是否为先前已被存储在第二结构中的 先前遇到过的项。实施例的系统被构造成生成到先前遇到过的项的指针。
实施例的系统被构造成将每个项的修改信息与该项的前一 实例的修 改信息相比较。实施例的系统被构造成在修改信息表明自前一实例以后项 被修改过时,将该项的差异信息索引。
实施例的差异信息包括项的当前版本与至少 一个先前修改过的版本 之间的改变的信息。
实施例的系统被构造成通过生成校验和来将项的每个实例的信息散 列从而进行组织。
实施例的系统被构造成通过对第二结构中的项的不同实例的校验和 进行比较来确定自组织以后项是否被改变。实施例的确定是响应于从第二 结构中检索项的请求而进行的。
实施例的系统被构造成将校验和传送到散列表。
实施例的系统被构造成将项分解成至少一个组成部分。
实施例的项是电子邮件消息。实施例的至少一个组成部分包括消息 头、消息体及消息附件中的一个或更多个。
实施例的系统被构造成通过将项传送到索引对象库中来索引。
实施例的系统被构造成在近线服务器处接收多个变化数据,其中,变 化数据描述对第 一服务器中的数据的增量改变。实施例的系统被构造成在 近线服务器处生成数据的更新版本。实施例的生成更新版本包括将变化数 据应用于近线服务器上的、数据的副本。实施例的系统被构造成使用近线 服务器中的组成部分的修改后的信息来控制应用。
实施例的组成部分包括数据的副本的结构性元数据。
实施例的组成部分包括变化数据的日志文件。实施例的系统被构造成修改组成部分。 实施例的组成部分是副本的结构性元数据。
实施例的系统被构造成通过检测副本的第一状态来进行修改。实施例 的第一状态指示已将变化数据应用于副本。
实施例的系统被构造成通过将第一状态改变成第二状态来进行修改。
实施例的第二状态是以下状态从该状态,能够通it^"更新版本应用另外 的变化数据来生成另 一更新版本。
实施例的将第一状态改变成第二状态包括修改副本的结构性元数据。
实施例的另外的日志文件是在生成更新版本之后被接收到的。
实施例的系统被构造成更新副本的结构性元数据为参考第 一未应用 变化数据。实施例的第 一未应用变化数据是未应用于副本的第 一个日志文 件。
实施例的系统被构造成通过调用第 一服务器的引擎来进行应用。 实施例的组成部分是变化数据的日志文件。
实施例的系统被构造成通过调用第一服务器的引擎来进行应用,终止 包括使该引擎停止。
实施例的系统被构造成在近线服务器处接收来自第一服务器的、数据 的副本。
实施例的副本是完整副本及增量副本中的一个或更多个。
实施例的系统被构造成将更新版本传送到索引对象库。
实施例的系统被构造成响应于自动触发、计时器通知、事件通知、轮 询及请求中的至少一个而进行生成。
实施例的自动触发包括响应于至少一个预先指定的参数而自动地引
发的触发o
实施例的自动触发包括更新版本的内容。
实施例的计时器通知包括与排定事件相对应的通知,所述排定事件包 括维护操作、用户活动、服务器活动及数据填入操作中的至少一个。
实施例的事件通知包括与对数据的项的改变相对应的通知。
实施例的请求包括用户、服务器及应用 的一个或更多个对数据的访问尝试及配置尝试中的至少一个。
实施例的系统被构造成准实时地生成并维护数据的完全的完整性及 一致性。
实施例的系统被构造成通过对更新版本应用至少 一组日志文件来生 成另一更新版本,从而保持更新版本,至少一组日志文件在时间上比多个 日志文件更晚地被接收到。
实施例的第一服务器包括本地服务器、远程服务器、数据服务器、消 息服务器、电子邮件服务器、即时消息服务器、IP语音服务器、协作服
务器、消息和协作服务器、Exchange服务器、门户、客户关系管理(CRM) 服务器、企业资源规划(ERP)服务器、企业对企业服务器及内容管理服 务器中的一个或更多个。
实施例的数据是Exchange数据,实施例的第一结构是B+树结构。
实施例的第二结构是复合数据容器。
实施例的层次结构是4吏用元数据来保持的。
实施例的层次结构是4吏用文件结构来保持的。
实施例的信息管理包括以下系统该系统包括连接到包含原始数据的 第 一服务器的近线服务器。实施例的系统包括连接到近线服务器并被构造 成确定数据的第 一结构的转换系统。实施例的转换系统被构造成将数据动 态地转换成保持第一结构的层次结构的第二结构。实施例的转换系统被构 造成利用多个应用经由与用于访问第一结构的数据的第一协议不同的第 二协议来提供对第二结构的数据的访问。
实施例的系统被构造成通过对数据的项进行分析并将该项组织成第 二结构来动态地转换。
实施例的系统被构造成根据预定的间隔、数据的状态的改变及数据的 可用性中的一个或更多个来进行分析。
实施例的系统被构造成通过系统地读取数据的信息来进行分析,该信 息包括t良项中的一个或更多个。
实施例的表包括邮箱表、文件夹表、消息表及附件表中的一个或更多 个,其中,项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件附 件中的一个或更多个。实施例的第二结构存储在近线服务器上。实施例的数据的原始版4^ 储在第一服务器上。
实施例的系统被构造成在近线服务器上生成数据的镜像副本。实施例 的数据的原始版^储在第一服务器上。
实施例的系统被构造成通过将数据的项组织成第二结构来进行转换。
实施例的系统被构造成通过将项的信息的第 一部分传送到第 一文件 中并将项的信息的第二部分传送到第二文件中来进行组织。
实施例的系统被构造成通过将项索引到第二结构来进行组织。
实施例的系统被构造成通过遍历第 一结构并对项的信息进行定位来 进行组织。
实施例的系统被构造成将项中的每个项分解成至少一个组成部分。
实施例的项是电子邮件消息。实施例的至少一个组成部分包括消息 头、消息体及消息附件中的一个或更多个。
实施例的信息管理包括以下设备该设备包括连接到近线服务器的转 换系统。实施例的转换系统被构造成确定数据的第一结构。实施例的数据 存储在连接到近线服务器的第 一服务器上。实施例的转换系统被构造成将 数据动态地转换成保持第 一结构的层次结构的第二结构。实施例的转换系 统被构造成利用多个应用经由与用于访问第 一结构的数据的第 一协议不 同的第二协议来提供对第二结构的数据的访问。
实施例的信息管理包括以下方法该方法包括接收原始数据的副本以 及包含对原始数据的改变的信息的变化数据。实施例的方法包括通过在接 收到变化数据时将该变化数据应用于副本来生成并维护副本的更新版本。 实施例的方法包括通过组织数据的项来将更新版本从第一结构动态地转 换成保持第 一结构的层次结构的第二结构。
实施例的生成并维护是与接收异步的。
实施例的应用是根据间隔的。实施例的间隔是基于时间及事件中的一 个或更多个的。
实施例的变化数据包括多个实例的原始数据之间的增量差异的数据。 实施例的变化数据包括多个实例的原始数据之间的差量差异的数据 实施例的方法包括使用组成部分的修改后的信息来控制应用。实施例的原始数据存储在第 一服务器处,副M储在第二服务器处。 实施例的组成部分是第二服务器中的组成部分。
实施例的第 一服务器包括近线服务器。
实施例的第二服务器包括本地服务器、远程服务器、数据库服务器、 消息服务器、电子邮件服务器、即时消息服务器、IP语音服务器、协作
服务器、消息和协作服务器、Exchange服务器、门户、客户关系管理 (CRM)服务器、企业资源规划(ERP)服务器、企业对企业服务器及 内容管理服务器中的一个或更多个。
实施例的组成部分包括副本的结构性元lt据。
实施例的组成部分包括变化数据的日志文件。
实施例的方法包括修改组成部分。
实施例的组成部分是副本的结构性元数据。
实施例的修改包括检测副本的第一状态。实施例的第一状态指示已将 变化数据应用于副本。
实施例的修改包括将第一状态改变成第二状态。实施例的第二状态是 以下状态从该状态,能够通itxt更新版本应用另外的变化数据来生成另 —更新版本。
实施例的将第一状态改变成第二状态包括修改副本的结构性元数据。
实施例的变化数据是多个日志文件。实施例的组成部分是多个日志文 件中的日志文件。
实施例的应用包括调用存放有原始数据的第一服务器的引擎,控制包 括使该引擎停止。
实施例的方法包括确定第一结构。实施例的第一结构是专有结构。实 施例的方法包括使用第一结构的信息来对数据的项进行分析。实施例的分 析包括系统地读取数据的信息。实施例的信息包括表及项中的一个或更多 个。实施例的表包括邮箱表、文件夹表、消息表及附件表中的一个或更多 个。实施例的项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件 附件中的一个或更多个。
实施例的组织包括将翁:据的项索引到第二结构。
实施例的组织包拾逸历第一结构并对项的信息进行定位。实施例的项的信息包括项的类型及内容中的一个或更多个。
实施例的索引包括生成与项相对应的索引。实施例的索引包括4吏用项 的信息来将项与索引相关联。
实施例的方法包括将每个项的修改信息与该项的前一实例的修改信 息相比较。实施例的方法包括,在修改信息表明自前一实例以后项未被修 改时,将遍历停止在第一结构中的当前节点处。
实施例的方法包括确定项是否为先前已被存储在第二结构中的先前 遇到过的项。实施例的方法包括生成到先前遇到过的项的指针。
实施例的方法包括将每个项的修改信息与该项的前一实例的修改信 息相比较。实施例的方法包括,在修改信息表明自前一实例以后项被修改 过时,将项的差异信息索引。
实施例的差异信息包括项的当前版本与至少 一个先前修改过的版本 之间的改变的信息。
实施例的组织包括通过生成校验和来将项的每个实例的信息散列。
实施例的方法包括通过对第二结构中的项的不同实例的校验和进行 比较来确定自组织以后项是否被改变。实施例的确定是响应于从第二结构 中检索项的请求而进行的。
实施例的方法包括将校验和传送到散列表。
实施例的方法包括将项分解成至少 一个组成部分。
实施例的索引包括将项传送到索引对象库中。
实施例的索引包括将项的元数据传送到元数据库中。
实施例的方法包括经由多个应用来提供对第二结构中的项的至少一 部分的访问。
实施例的提供访问包括使用与用于访问第 一结构的数据的第 一协议 不同的第二协议来提供访问。
实施例的方法包括将更新版本传送到索引对象库。
实施例的生成是准实时的并维护原始数据的完全的完整性及一致性。
实施例的原始数据包括应用数据、数据库、存储组、邮箱数据;sj艮务
器翁:据中的一个或更多个。实施例的方法包括保持更新版本。实施例的保持包括通it^"更新版本 应用至少一组日志文件来生成另一更新版本。实施例的至少一组日志文件 在时间上比多个日志文件更晚地被接收到。
实施例的信息管理包括以下方法该方法包括在第一服务器处接收多 个变化数据。实施例的变化数据包括对第二服务器中的原始数据的改变的 信息.实施例的方法包括通过将多个变化数据中的至少一个变化数据应用 于原始数据的副本并使用第 一服务器中的组成部分的修改后的信息来控 制应用,从而在第一服务器处动态地生成并维护原始数据的副本的更新版 本。实施例的方法包括通过组织数据的项来将数据从第一结构动态地转换 成保持第一结构的层次结构的第二结构.
实施例的信息管理包括计算机可读介质,该计算机可读介质包含可执 行指令,当在处理系统中执行可执行指令时,可执行指令通过接收原始数 据的副本以及包含对原始数据的改变的信息的变化数据来支持信息管理, 所述指令在被执行时,通过在接收到变化数据时将该变化数据应用于副本 来生成并维护副本的更新版本。所述指令在被执行时,通过组织数据的项 来将更新版本从笫 一结构动态地转换成保持第 一结构的层次结构的第二 结构。
实施例的信息管理包括以下系统该系统包括连接到包含原始数据的 一个或更多个服务器的近线服务器。实施例的系统包括连接到近线服务器 并被构造成接收原始数据的副本以及包含对原始数据的改变的信息的变 化数据的信息系统。实施例的信息系统被构造成通it^接收到变化数据时 将该变化数据应用于副本来生成并维护副本的更新版本。实施例的信息系 统被构造成通过组织数据的项来将更新版本从第 一结构动态地转换成保 持第 一结构的层次结构的第二结构。
实施例的系统被构造成与接收异步地生成并维护。
实施例的系统被构造成应用包括才Nt间隔来进行应用。实施例的间隔 是基于时间及事件中的 一个或更多个的。
实施例的变化数据包括多个实例的原始数据之间的增量差异的数据。
实施例的变化数据包括多个实例的原始数据之间的差量差异的数据。
实施例的系统被构造成使用组成部分的修改后的信息来控制应用。
实施例的原始数据存储在第一服务器处,副^储在第二服务器处。 实施例的组成部分是第二服务器中的组成部分。实施例的第 一服务器包括近线服务器。
实施例的第二服务器包括本地服务器、远程服务器、数据库服务器、 消息服务器、电子邮件服务器、即时消息服务器、IP语音服务器、协作
服务器、消息和协作服务器、Exchange服务器、门户、客户关系管理 (CRM)服务器、企业资源规划(ERP)服务器、企业对企业服务器及 内容管理服务器中的一个或更多个。
实施例的组成部分包括副本的结构性元lt据。
实施例的组成部分包括变化数据的日志文件。
实施例的系统被构造成修改组成部分'
实施例的组成部分是副本的结构性元数据。
实施例的系统被构造成通过检测副本的第 一状态来进行修改。第 一状 态指示已将变化数据应用于副本。
实施例的系统被构造成通过将第一状态改变成第二状态来进行修改。 第二状态是以下状态从该状态,能够通it^"更新版本应用另外的变化数 据来生成另 一更新版本。
实施例的系统被构造成通过修改副本的结构性元数据来将第一状态 改变成第二状态。
实施例的变化数据是多个日志文件。实施例的组成部分是多个日志文 件中的日志文件。
实施例的系统被构造成通过调用存放有原始数据的第一服务器的引 擎来进行应用,控制包括使该擎停止。
实施例的系统被构造成确定第一结构。实施例的第一结构是专有结
构o
实施例的系统被构造成使用第一结构的信息来对数据的项进行分析。
实施例的系统被构造成通过系统地读取数据的信息来进行分析。实施 例的信息包括^J良项中的一个或更多个。
实施例的表包括邮箱表、文件夹表、消息l良附件表中的一个或更多个。
实施例的项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件 附件中的一个或更多个。实施例的系统被构造成通过将数据的项索引到第二结构来进行组织。
实施例的系统被构造成通过遍历笫 一结构并对项的信息进行定位来 进行组织。
实施例的项的信息包括项的类型及内容中的一个或更多个。
实施例的系统被构造成通过生成与项相对应的索引来索引。实施例的 系统被构造成通过使用项的信息来将项与索引相关私火而索引。
实施例的系统被构造成将每个项的修改信息与该项的前一 实例的修 改信息相比较。实施例的系统被构造成在修改信息表明自前一实例以后项
未^L修改时,将遍历停止在第一结构中的当前节点处。
实施例的系统被构造成确定项是否为已被存储在第二结构中的先前 遇到过的项。实施例的系统被构造成生成到先前遇到过的项的指针。
实施例的系统被构造成将每个项的修改信息与该项的前一 实例的修 改信息相比较。实施例的系统被构造成在修改信息表明自前一实例以后项 被修改过时,将项的差异信息索引。
实施例的差异信息包括项的当前版本与至少一个先前修改过的版本 之间的改变的信息。
实施例的系统被构造成通过生成校验和来将项的每个实例的信息散 列从而进行组织。
实施例的系统被构造成通过对第二结构中的项的不同实例的校验和 进行比较来确定自组织以后项是否被改变。实施例的确定是响应于从笫二 结构中检索项的请求而进行的。
实施例的系统被构造成将校验和传送到散列表。
实施例的系统被构造成将项分解成至少一个组成部分。
实施例的系统被构造成通过将项传送到索引对象库中来索引。
实施例的系统被构造成经由多个应用来提供对第二结构中的项的至 少一部分的访问。
实施例的系统被构造成通过使用与用于访问第 一结构的数据的第一 协议不同的第二协议来提供访问,从而提供访问。
实施例的系统被构造成将更新版本传送到索引对象库。实施例的系统被构造成准实时地生成并维护原始数据的完全的完整 性及一致性。
实施例的原始数据包括应用数据、数据库、存储组、邮箱数据^J艮务 器数据中的一个或更多个。
实施例的系统被构造成通过对更新版本应用至少一组日志文件来生 成另一更新版本,从而保持更新版本。实施例的至少一组日志文件在时间
上比多个日志文件更晚地^L接收到。
实施例的信息管理包括以下系统该系统包括连接到包含原始数据的 一个或更多个服务器的近线服务器。实施例的系统包括连接到近线服务器 并被构造成接收多个变化数据的信息系统。实施例的变化数据包括对原始 数据的改变的信息。实施例的信息系统被构造成通过将多个变化数据中的 至少 一个变化数据应用于原始数据的副本并使用近线服务器中的组成部 分的修改后的信息来控制应用,从而在近线服务器处动态地生成并维护原 始数据的副本的更新版本。实施例的信息系统被构造成通过组织数据的项 来将数据从第 一结构动态地转换成保持第 一结构的层次结构的第二结构。
实施例的信息管理包括以下设备该设备包M构造成接收原始数据 的副本以及包含对原始数据的改变的信息的变化数据的信息系统。实施例 的信息系统被构造成通过在接收到变化数据时将该变化数据应用于副本 来生成并维护副本的更新版本。实施例的信息系统被构造成通过组织数据 的项来将更新版本从第 一结构动态地转换成保持第 一结构的层次结构的 第二结构。
可以将这里所描述的多维替代的方面实现为被编程到包括可编程逻 辑器件(PLD )(例如,现场可编程门阵列(FPGA )、可编程阵列逻辑(PAL ) 器件、电可编程逻辑和存储器件及标准的基于单元的器件)以及专用集成 电路(ASIC)的多种电路中的任一种中的功能性。用于实现多维替代的 方面的一些其它可能性包括具有存储器(例如,电可擦除可编程只读存 储器(EEPROM))的微控制器、"式微处理器、固件、软件等。此夕卜, 可以在具有基于软件的电路仿真的微处理器、离散逻辑电路(时序的及组 合的)、定制器件、模糊(神经)逻辑电路、量子器件及上述器件类型的 任意组合中实现多维替代的方面。任何基础的器件技术可以以多种组件类 型来提供,例如,金属氧化物半导体场效应晶体管(MOSFET)技术(例 如,互补型金属氧化物半导体(CMOS ))、双极技术(例如,射极耦合逻 辑(ECL))、聚合物技术(例如,硅共轭聚合物结构及金属共轭聚合物-金属结构)、数字模拟混合等。
应当注意,可以使用在各种计算机可读介质中实现的数据和/或指令来描述这里所公开的多维替代的各种组件。在其中可以实现这种格式化的数据和/或指令的计算机可读介质包括(但并不限于)各种形式的非易失性存储介质(例如,M储介质、磁存储介质或半导体存储介质)以及可以用于通过无线信令介质、光信令介质或有线信令介质或者其任意组合来传送这种格式化的数据和/或指令的载波。载波传送这种格式化的数据和/或指令的示例包括(但并不限于)经由一个或更多个数据传送协议(例如,
HTTP、 FTP、 SMTP等)在因特网和/或其它计算机网络上的传送(上载、下载、电子邮件等)。当在计算机系统内经由一个或更多个计算机可读介质而接收到多维替代的基于这种数据和/或指令的表达时,计算机系统内的处理实体(例如, 一个或更多个处理器)可以与一个或更多个其它计算;^序的执行相协同iW所i^达ii行处理。
除非上下文清楚地要求,否则贯穿说明书及权利要求书,应当将词"包括"、"包含"等理解为与排他性意味或穷举性意^M目对的包含性意味,也就是说,应理解为"包括但并不限于"的意味。使用单数或复数的词也分别地包括复数或单数。另外,词"这里"、"下文中"、"以上"、"以下,,及类似含义的词是指本申请整体,而并非本申请的任何特定的部分。当在参考两个或更多个事物的列表时^f吏用词"或"时,该词涵盖对该词的下列所有解释列表中的事物中的任一个,列表中的事物的4^,以及列表中的事物的任一组合。
对所例示的多维替代的实施例的以上描述并不旨在穷举多维替代或将多维替代限于所^Hf的确切形式。尽管这里出于例示的目的而描述了多维替代的具体实施例及示例,但是如同相关领域中的技术人员将认识到的,多维替代的范围内的各种等同的变型例是可能的。可以将这里所提供的多维替代的教示应用于其它处理系统及方法,而并非仅用于上述系统及方法。
可以对上述不同的实施例的要素及行为进行组合,以提供其它实施例。可以按照以上详细的描述而对多维替代及方法做出这些或其它改变。
总体而言,在以下权利要求书中,不应当将所使用的术语解释为将多
维替代及方法限于在说明书及权利要求书中所公开的具体实施例,而应当将其解释为包括根据权利要求书来操作的所有的处理系统。因此,多维替
代不受本公开内容的限制,而是由权利要求书来完全地确定多维替代的范围。
尽管下面以某些权利要求形式来呈示多维替代的某些方面,但U明人以任意数量的权利要求形式来预期多维替代的各个方面。例如,尽管仅将多维替代的一个方面详述为在机器可读介质中实现,但是可以以类似的方式将其它方面在机器可读介质中实现。因此,发明人保留在提交本申请
权利要求
1.一种方法,包括确定数据的第一结构,其中,所述第一结构是专有结构;使用所述第一结构的信息来对所述数据的项进行分析;以及通过将所述项组织成保持所述第一结构的层次结构的第二结构来动态地转换所述数据。
2. 根据权利要求1所述的方法,该方法包括经由多个应用来提供对 所述第二结构中的所述项的至少 一部分的访问。
3. 根据权利要求2所述的方法,其中,所述提供访问包括使用与用 于访问所述第 一结构的所述数据的第 一协议不同的第二协议来提供访问。
4. 根据权利要求1所述的方法,该方法包括使用第二协议来访问所 述第二结构并使用第一协议来访问所述第一结构,其中,所述第一协议与所述第二协议不同。
5. 根据权利要求4所述的方法,其中,所述第一协议包括消息应用 编程接口 ( MAPI )协议、邮局协议(POP )及因特网消息访问协议(IMAP) 中的一个或更多个。
6. 根据权利要求1所述的方法,其中,所述第二结构存储在第二服务器上,其中,所述数据的原始版;M"储在第一服务器上。
7. 根据权利要求1所述的方法,其中,所述分析是按照预定的间隔 来进行的。
8. 根据权利要求1所述的方法,其中,所述分析是根据所述数据的 状态的改变来进行的。
9. 根据权利要求1所述的方法,其中,所述分析是根据所述数据的 可用性来进行的。
10. 根据权利要求l所述的方法,其中,所述分析包括对所述项中的 多个项的并行的分析。
11. 根据权利要求l所述的方法,其中,所述分析包括系统地读取所 述数据的信息,该信息包括表及所述项中的一个或更多个。
12. 根据权利要求11所述的方法,其中,所W包括邮箱表、文件夹表、消息表及附件表中的一个或更多个。
13. 根据权利要求11所述的方法,其中,所述项包括文件夹、邮箱、 电子邮件体、电子邮件头及电子邮件附件中的一个或更多个。
14. 根据权利要求l所述的方法,该方法包括在第二服务器上生成所 述数据的镜像副本,其中,所述数据的原始版M储在第一服务器上。
15. 根据权利要求14所述的方法,其中,所述分析包括对所述镜像 副本的项进行分析。
16. 根据权利要求l所述的方法,该方法包括对所述项中的一个或更 多个项进行解压缩。
17. 根据权利要求l所述的方法,其中,所述组织包括将所述项的信 息的第 一部分传送到第 一文件中并将所述项的信息的第二部分传送到第 二文件中。
18. 根据权利要求1所述的方法,其中,所述组织包括将所述项索引 到所述第二结构。
19. 根据权利要求18所述的方法,其中,所^ia织包拾逸历所述第一结构并对所述项的信息进行定位。
20. 根据权利要求19所述的方法,其中,所述项的所述信息包括所 述项的类型及内容中的一个或更多个。
21. 根据权利要求19所述的方法,其中,所述索引包括 生成与所述项相对应的索引;以及^^用所述项的所述信息来将所述项与所述索引相关联。
22. 根据权利要求19所述的方法,该方法包括将每个项的修改信息与该项的前一实例的修改信息相比较;以及在所述修改信息表明自所述前一实例以后所述项未被修改时,将所述 遍历停止在所述第 一结构中的当前节点处。
23. 根据权利要求22所述的方法,其中,所述修改信息包括修改日 期及l务改时间中的一个或更多个。
24. 根据权利要求19所述的方法,该方法包括确定项是否为先前已^L存储在所述第二结构中的先前遇到过的项;以及生成到所述先前遇到过的项的指针。
25. 根据权利要求19所述的方法,该方法包括将每个项的修改信息与该项的前一实例的修改信息相比较;以及在所述修改信息表明自所述前一实例以后所述项被修改过时,将所述 项的差异信息索引。
26. 根据权利要求25所述的方法,其中,所述差异信息包括所述项 的当前版本与至少 一个先前l务改过的版本t间的改变的信息。
27. 根据权利要求19所述的方法,其中,所述组织包括通过生成校 验和来将所述项的每个实例的信息散列。
28. 根据权利要求27所述的方法,该方法包括通过对所述第二结构 中的所述项的不同实例的校验和进行比较来确定自所述组织以后所述项 是否被改变,该确定是响应于从所述第二结构中检索所述项的请求而进行 的。
29. 根据权利要求27所述的方法,该方法包括将所述校验和传送到 散列表。
30. 根据权利要求19所述的方法,该方法包括将所述项分解成至少 一个组成部分。
31. 根据权利要求30所述的方法,其中,所述项是电子邮件消息, 其中,所述至少一个组成部分包括消息头、消息体及消息附件中的一个或 更多个。
32. 根据权利要求18所述的方法,其中,所述索引包括将所述项传 送到索引对象库中。
33. 根据权利要求18所述的方法,其中,所述索引包括将所述项的 元数据传送到元数据库中。
34. 根据权利要求l所述的方法,该方法包括在第二服务器处接收多个变化数据,其中,所述变化数据描述对第一 服务器中的所述数据的增量改变;在所述第二服务器处生成所述数据的更新版本,其中,生成所述更新 版本包括将所述变化数据应用于所述第二服务器上的、所述数据的副本;以及使用所述第二服务器中的组成部分的修改后的信息来控制所述应用。
35. 根据权利要求34所述的方法,其中,所述组成部分包括所述数 据的所述副本的结构性元数据。
36. 才艮据权利要求34所述的方法,其中,所述组成部分包括所述变 化数据的日志文件。
37. 根据权利要求34所述的方法,该方法包括修改所述组成部分。
38. 根据权利要求37所述的方法,其中,所述组成部分是所述副本 的结构性元数据。
39. 根据权利要求37所述的方法,其中,所述修改包括检测所述副 本的第一状态,其中,所述第一状态指示已将所述变化数据应用于所述副 本。
40. 根据权利要求39所述的方法,其中,所述修改包括将所述第一 状态改变成第二状态,其中,所述第二状态是以下状态从该状态,能够 通过对所述更新版本应用另外的变化数据来生成另一更新版本。
41. 根据权利要求40所述的方法,其中,将所述第一状态改变成所 述第二状态包括^务改所述副本的所述结构性元lt据。
42. 根据权利要求39所述的方法,其中,所述另外的日志文件是在 生成所述更新版R后被接收到的。
43. 根据权利要求34所述的方法,该方法包括更新所述副本的结构 性元数据为参考第一未应用变化数据,其中,所述第一未应用变化数据是 未应用于所述副本的第一个日志文件。
44. 根据权利要求34所述的方法,其中,所述应用包括调用所述第 一服务器的引擎。
45. 根据权利要求37所述的方法,其中,所述组成部分是所述变化 数据的日志文件。
46. 根据权利要求45所述的方法,其中,所述应用包括调用所述第 一服务器的引擎,所述终止包括使该引擎停止。
47. 根据权利要求34所述的方法,该方法还包括在所述第二服务器 处接收来自所述第一服务器的、所述数据的副本。
48. 根据权利要求47所述的方法,其中,所述副本是完整副本及增 量副本中的一个或更多个。
49. 根据权利要求34所述的方法,该方法还包括将所述更新版本传 送到索引对象库。
50. 根据权利要求34所述的方法,其中,所述生成响应于自动触发、 计时器通知、事件通知、轮询及请求中的至少一个。
51. 根据权利要求50所述的方法,其中,所述自动触发包括响应于 至少一个预先指定的参数而自动地引发的触发。
52. 根据权利要求51所述的方法,其中,所述自动触发包括所述更 新版本的内容。
53. 根据权利要求50所述的方法,其中,所述计时器通知包括与排 定事件相对应的通知,所述排定事件包括维护操作、用户活动、服务器活 动及数据填AJMt中的至少一个。
54. 根据权利要求50所述的方法,其中,所述事件通知包括与对所 述数据的所述项的改变相对应的通知。
55. 根据权利要求50所述的方法,其中,所述请求包括用户、服务 器及应用中的一个或更多个对所述数据的访问尝试及配置尝试中的至少一个。
56. 根据权利要求34所述的方法,其中,所述第二服务器包括近线 服务器。
57. 根据权利要求34所述的方法,其中,所述生成是准实时的并维 护所述数据的完全的完整性及一致性。
58. 根据权利要求34所述的方法,该方法包括维护所述更新版本, 所述维护包括通过对所述更新版本应用至少一组日志文件来生成另 一更 新版本,所述至少一组日志文件在时间上比所述多个日志文件更晚地被接 收到。
59. 根据权利要求i所述的方法,其中,所述第一服务器包括4^y艮务器、远程服务器、数据服务器、消息服务器、电子邮件服务器、即时消 息服务器、IP语音服务器、协作服务器、消息和协作服务器、Exchange 服务器、门户、客户关系管理(CRM)服务器、企业资源规划(ERP) 服务器、企业对企业服务器及内容管理服务器中的一个或更多个。
60. 祁^据权利要求1所述的方法 所述第一结构是B+树结构。
61. 根据权利要求1所述的方法
62. 根据权利要求1所述的方法 来保持的。
63. 根据权利要求1所述的方法 构来保持的。
64. —种方法,包括 确定数据的第一结构; 将所述数据动态地转换成保持所述第 一结构的层次结构的第二结构;以及利用多个应用经由与用于访问所述第一结构的所述数据的第一协议 不同的第二协议来提供对所述第二结构的所述数据的访问。
65. 根据权利要求64所述的方法,其中,所述动态地转换包括对所 述数据的项进行分析并将所述项组织成所述第二结构。
66. 根据权利要求65所述的方法,其中,所述分析是根据预定的间 隔、所述数据的状态的改变及所述数据的可用性中的一个或更多个来进行 的。
67. 根据权利要求65所述的方法,其中,所述分析包括系统地读取 所述数据的信息,该信息包括表及所述项中的一个或更多个。
68. 根据权利要求67所述的方法,其中,所述表包括邮箱表、文件 夹表、消息表及附件表中的一个或更多个,其中,所述项包括文件夹、邮 箱、电子邮件体、电子邮件头及电子邮件附件中的一个或更多个。
69. 根据权利要求64所述的方法,其中,所述第二结构存储在近线 服务器上,其中,所述数据的原始版本存储在第一服务器上。
70. 根据权利要求64所述的方法,该方法包括在近线服务器上生成 所述数据的镜像副本,其中,所述数据的原始版;M"储在第一服务器上。
71. 根据权利要求64所述的方法,其中,所述转换包括将所述数据 的项组织成所述第二结构。,其中,所述数据是Exchange数据, ,其中,所述第二结构是复合数据容 ,其中,所述层次结构SJ吏用元数据 ,其中,所述层次结构是使用文件结
72. 根据权利要求71所述的方法,其中,所i^ia织包括将所述项的 信息的第 一部分传送到第 一文件中并将所述项的信息的第二部分传送到 第二文件中。
73. 根据权利要求71所述的方法,其中,所述组织包括将所述项索 引到所述第二结构。
74. 根据权利要求71所述的方法,其中,所^ia织包拾逸历所述第一结构并对所述项的信息进行定位。
75. 根据权利要求74所述的方法,该方法包括将所述项中的每个项 分解成至少一个组成部分。
76. 根据权利要求75所述的方法,其中,所述项是电子邮件消息, 其中,所述至少一个组成部分包括消息头、消息体及消息附件中的一个或 更多个。
77. —种计算机可读介质,该计算机可读介质包括可执行指令,当在 处理系统中执行所述可执行指令时,所述可执行指令通过以下处理来支持 对数据的大块到砖块提取确定^:据的第一结构,其中,所述第一结构是专有结构;使用所述第一结构的信息来对所述数据的项进行分析;以及通过将所述项组织成保持所述第 一结构的层次结构的第二结构来动 态地转换所述数据。
78. —种系统,包括连接到包含原始数据的第一服务器的近线服务器;以及连接到所述近线服务器并被构造成确定数据的第 一结构的转换系统, 其中,所述第一结构是专有结构,该转换系统被构造成使用所述第一结构 的信息来对所述数据的项进行分析,该转换系统被构造成通过将所述项组 织成保持所述第 一结构的层次结构的第二结构来动态地转换所述数据。
79. 根据权利要求78所述的系统,其中,所述近线服务器被构造成 经由多个应用来提供对所述第二结构中的所述项的至少 一部分的访问。
80. 根据权利要求79所述的系统,其中,所述提供访问包括使用与 用于访问所述第 一结构的所述数据的第 一协议不同的第二协议来提供访 问。
81. 根据权利要求78所述的系统,其中,所述近线服务器被构造成 允许第二协议访问所述第二结构,其中,第 一协议用于访问所述第 一结构, 其中,所述第一协议与所述第二协议不同。
82. 根据权利要求81所述的系统,其中,所述第一协议包括消息应 用编程接口 (MAPI)协议、邮局协议(POP)及因特网消息访问协议(IMAP)中的一个或更多个。
83. 根据权利要求78所述的系统,其中,所述第二结构存储在所述 近线服务器上,其中,所述数据的原始版;M"储在第一服务器上。
84. 根据权利要求78所述的系统,其中,所述转换系统被构造成按 照预定的间隔来进行分析。
85. 根据权利要求78所述的系统,其中,所述转换系统被构造成根 据所述数据的状态的改变来进行分析。
86. 根据权利要求78所述的系统,其中,所述转换系统被构造成根 据所述数据的可用性来进行分析。
87. 根据权利要求78所述的系统,其中,所述转换系统被构造成对 所述项中的多个项同时地进行分析。
88. 根据权利要求78所述的系统,其中,所述转换系统被构造成通 过系统地读取所述数据的信息来进行分析,所述信息包括表及所述项中的 一个或更多个。
89. 根据权利要求88所述的系统,其中,所述表包括邮箱表、文件 夹表、消息表及附件表中的一个或更多个。
90. 根据权利要求88所述的系统,其中,所述项包括文件夹、邮箱、 电子邮件体、电子邮件头及电子邮件附件中的一个或更多个。
91. 根据权利要求78所述的系统,其中,所述近线服务器被构造成 在所述近线服务器上生成所述数据的镜像副本,其中,所述数据的原始版 本存储在第一服务器上。
92. 根据权利要求91所述的系统,其中,所述分析包括对所述镜像 副本的项进行分析。
93. 根据权利要求78所述的系统,其中,所述转换系统被构造成对 所述项中的一个或更多个项进行解压缩。
94. 根据权利要求78所述的系统,其中,所述转换系统被构造成通 过将所述项的信息的第 一部分传送到第 一文件中并将所述项的信息的第 二部分传送到第二文件中来进行组织。
95. 根据权利要求78所述的系统,其中,所述转换系统被构造成通 过将所述项索引到所述第二结构来进行组织。
96. 根据权利要求95所述的系统,其中,所述转换系统被构造成通 逸逸历所述第 一结构并对所述项的信息进行定位来进行组织。
97. 根据权利要求96所述的系统,其中,所述项的信息包括所述项 的类型及内容中的一个或更多个。
98. 根据权利要求96所述的系统,其中,所述转换系统被构造成通 过以下处理来索引生成与所述项相对应的索引;以及使用所述项的所述信息来将所述项与所述索引相关联。
99. 根据权利要求96所述的系统,其中,所述转换系统被构造成将每个项的修改信息与该项的前一实例的修改信息相比较;以及在所述修改信息表明自所述前一实例以后所述项未被修改时,将所述 遍历停止在所述第一结构中的当前节点处。
100. 根据权利要求99所述的系统,其中,所述修改信息包括修改曰 期及J务改时间中的一个或更多个。
101. 根据权利要求96所述的系统,其中,所述转换系统被构造成 确定项是否为先前已被存储在所述第二结构中的先前遇到过的项;并且生成到所述先前遇到过的项的指针。
102. 根据权利要求96所述的系统,其中,所述转换系统被构造成将每个项的修改信息与该项的前一实例的修改信息相比较;并且在所述修改信息表明自所述前一实例以后所述项被修改过时,将所述 项的差异信息索引。
103. 根据权利要求102所述的系统,其中,所述差异信息包括所述 项的当前版本与至少 一个先前l务改过的版本之间的改变的信息。
104. 根据权利要求96所述的系统,其中,所述转换系统被构造成通 过生成校验和来将所述项的每个实例的信息散列从而进行组织。
105. 根据权利要求104所述的系统,其中,所述转换系统被构造成 通过对所述第二结构中的所述项的不同实例的校验和进行比较来确定自 所述组织以后所述项是否被改变,该确定是响应于从所述第二结构中检索 所述项的请求而ii行的。
106. 根据权利要求104所述的系统,其中,所述转换系统被构造成 将所述校验和传送到散列表。
107. 根据权利要求96所述的系统,其中,所述转换系统被构造成将 所述项分解成至少一个组成部分。
108. 根据权利要求107所述的系统,其中,所述项是电子邮件消息, 其中,所述至少 一个组成部分包括消息头、消息体及消息附件中的 一个或 更多个。
109. 根据权利要求95所述的系统,其中,所述转换系统被构造成通 过将所述项传送到索引对象库中来索引。
110. 根据权利要求95所述的系统,其中,所述转换系统被构造成通 过将所述项的元数据传送到元数据库中来索引。
111. 根据权利要求78所述的系统,该系统被构造成在所述近线服务器处接收多个变化数据,其中,所述变化数据描ii^ 第一服务器中的所述数据的增量改变;在所述近线服务器处生成所述数据的更新版本,其中,生成所述更新 版本包括将所述变化数据应用于所述近线服务器上的、所述数据的副本; 以及使用所述近线服务器中的组成部分的修改后的信息来控制所述应用。
112. 根据权利要求lll所述的系统,其中,所述组成部分包括所述数 据的所述副本的结构性元数据。
113. 根据权利要求lll所述的系统,其中,所述组成部分包括所述变 化数据的日志文件。
114. 根据权利要求111所述的系统,该系统被构造成修改所i^i且成部分。
115. 根据权利要求114所述的系统;其中,所述组成部分是所述副 本的结构性元数据。
116. 根据权利要求114所述的系统,该系统^L构造成通过检测所述 副本的第一状态来进行修改,其中,所述第一状态指示已将所述变化数据应用于所述副本。
117. 根据权利要求116所述的系统,该系统被构造成通过将所述第 一状态改变成第二状态来进行修改,其中,所述第二状态是以下状态从 该状态,能够通过对所述更新版本应用另外的变化数据来生成另一更新版 本。
118. 根据权利要求117所述的系统,其中,将所述第一状态改变成 所述第二状态包括修改所述副本的所述结构性元数据。
119. 根据权利要求116所述的系统,其中,所述另外的日志文件是 在生成所述更新版本之后^L接收到的。
120. 根据权利要求111所述的系统,该系统被构造成更新所述副本 的结构性元数据为参考第一未应用变化数据,其中,所述第一未应用变化 数据是未应用于所述副本的第 一个日志文件。
121. 根据权利要求111所述的系统,该系统被构造成通过调用所述 第一服务器的引擎来进行应用。
122. 根据权利要求114所述的系统,其中,所述组成部分是所述变 化数据的日志文件。
123. 才艮据权利要求122所述的系统,该系统被构造成通过调用所述 第一服务器的引擎来进行应用,所述终止包括使该引擎停止。
124. 根据权利要求111所述的系统,该系统被构造成在所述近线服 务器处接收来自所述第一服务器的、所述数据的副本。
125. 根据权利要求124所述的系统,其中,所述副本是完整副本及 增量副本中的一个或更多个。
126. 根据权利要求111所述的系统,该系统被构造成将所述更新版 本传送到索引对象库。
127. 根据权利要求111所述的系统,该系统被构造成响应于自动触 发、计时器通知、事件通知、轮询及请求中的至少一个而进行生成。
128. 根据权利要求127所述的系统,其中,所述自动触发包括响应 于至少一个预先指定的M而自动地引发的触发。
129. 根据权利要求128所述的系统,其中,所述自动触发包括所述 更新版本的内容。
130. 根据权利要求127所述的系统,其中,所述计时器通知包括与 排定事件相对应的通知,所述排定事件包括维护^Mt、用户活动、服务器 活动及数据填入操作中的至少 一个。
131. 根据权利要求127所述的系统,其中,所述事件通知包括与对 所述数据的所述项的改变相对应的通知。
132. 根据权利要求127所述的系统,其中,所述请求包括用户、服 务器及应用中的一个或更多个对所述数据的访问尝试及配置尝试中的至 少一个。
133. 根据权利要求111所述的系统,该系统被构造成准实时地生成 并维护所述数据的完全的完整性及一致性。
134. 根据权利要求111所述的系统,该系统被构造成通it^所述更 新版本应用至少一组日志文件来生成另 一更新版本,从而保持所述更新版 本,所述至少一组日志文件在时间上比所述多个日志文件更晚地被接收 到。
135. 根据权利要求78所述的系统,其中,所述第一服务器包括本地 服务器、远程服务器、数据服务器、消息服务器、电子邮件服务器、即时 消息服务器、IP语音服务器、协作服务器、消息和协作服务器、Exchange 服务器、门户、客户关系管理(CRM)服务器、企业资源规划(ERP) 服务器、企业对企业服务器及内容管理服务器中的一个或更多个。
136. 根据权利要求78所述的系统,其中,所述数据是Exchange数 据,所述第一结构是B+树结构。
137. 根据权利要求78所述的系统,其中,所述第二结构是复合数据 容器。
138. 根据权利要求78所述的系统,其中,所述层次结构是使用元数 据来保持的。
139. 根据权利要求78所述的系统,其中,所述层次结构是使用文件 结构来保持的。
140. —种系统,包括连接到包含原始数据的第一服务器的近线服务器;以及连接到所述近线服务器并被构造成确定数据的第 一结构的转换系统, 该转换系统被构造成将所述数据动态地转换成保持所述第 一结构的层次 结构的第二结构,该转换系统被构造成利用多个应用经由与用于访问所述第一结构的所述数据的第一协议不同的第二协议来提供对所述第二结构 的所述lt据的访问。
141. 根据权利要求140所述的系统,该系统被构造成通it^t所述数 据的项进行分析并将所述项组织成所述第二结构来动态地转换。
142. 才艮据权利要求141所述的系统,该系统^L构造成根据预定的间 隔、所述数据的状态的改变及所述数据的可用性中的 一个或更多个来进行 分析。
143. 根据权利要求141所述的系统,该系统被构造成通过系统地读 取所述数据的信息来进行分析,所述信息包括表及所述项中的 一个或更多 个。
144. 根据权利要求143所述的系统,其中,所述表包括邮箱表、文 件夹表、消息^J5L附件表中的一个或更多个,其中,所述项包括文件夹、 邮箱、电子邮件体、电子邮件头及电子邮件附件中的一个或更多个。
145. 根据权利要求140所述的系统,其中,所述第二结构存储在所 述近线服务器上,其中,所述数据的原始版M储在所述第一服务器上。
146. 根据权利要求140所述的系统,该系统包括在所述近线服务器 上生成所述数据的镜像副本,其中,所述数据的原始版M储在所述第一 服务器上。
147. 根据权利要求140所述的系统,该系统被构造成通过将所述数 据的项组织成所述第二结构来进行转换。
148. 根据权利要求147所述的系统,该系统被构造成通过将所述项 的信息的第一部分传送到第一文件中并将所述项的信息的第二部分传送 到第二文件中来进行组织。
149. 根据权利要求147所述的系统,该系统被构造成通过将所述项 索引到所述第二结构来进行组织。
150. 根据权利要求147所述的系统,该系统被构造成通过遍历所述第 一结构并对所述项的信息进行定位来进行组织。
151. 根据权利要求150所述的系统,该系统被构造成将所述项中的 每个项分解成至少 一个组成部分。
152. 根据权利要求151所述的系统,其中,所述项是电子邮件消息, 所述至少一个组成部分包括消息头、消息体及消息附件中的一个或更多 个。
153. —种设备,包括连接到近线服务器的转换系统,所述转换系统 被构造成确定数据的第一结构,其中,所述数据存储在连接到所述近线服 务器的第 一服务器上,所述转换系统被构造成将所述数据动态地转换成保 持所述第一结构的层次结构的第二结构,所述转换系统被构造成利用多个 应用经由与用于访问所述第 一结构的数据的第 一协议不同的第二协议来 提供对所述第二结构的所述数据的访问。
154. —种方法,包括接收原始数据的副本以及包含对所述原始数据的改变的信息的变化 数据;通过在接收到所述变化数据时将所述变化数据应用于所述副本来生 成并维护所述副本的更新版本;以及通过组织所述数据的项来将所述更新版本从第 一结构动态地转换成 保持所述第 一结构的层次结构的第二结构。
155. 根据权利要求154所述的方法,其中,所述生成并维护是与所 述接收异步的。
156. 根据权利要求154所述的方法,其中,所述应用是根据间隔的, 其中,所述间隔是基于时间及事件中的一个或更多个的。
157. 根据权利要求154所述的方法,其中,所述变化数据包括多个 实例的所述原始数据之间的增量差异的数据。
158. 根据权利要求154所述的方法,其中,所述变化数据包括多个 实例的所述原始数据之间的差量差异的数据
159. 根据权利要求154所述的方法,该方法包括使用组成部分的修 改后的信息来控制所述应用。
160. 根据权利要求159所述的方法,其中,所述原始数据存储在第一服务器处,所述副M储在第二服务器处,其中,所述组成部分是所述 第二服务器中的组成部分。
161. 根据权利要求160所述的方法,其中,所述第一服务器包括近 线服务器。
162. 根据权利要求160所述的方法,其中,所述第二服务器包括本 地服务器、远程服务器、数据库服务器、消息服务器、电子邮件服务器、 即时消息服务器、IP语音服务器、协作服务器、消息和协作服务器、 Exchange服务器、门户、客户关系管理(CRM)服务器、企业资源规划(ERP )月艮务器、企业对企业服务器及内容管理服务器中的一个或更多个。
163. 根据权利要求159所述的方法,其中,所述组成部分包括所述 副本的结构性元lt据。
164. 根据权利要求159所述的方法,其中,所述组成部分包括所述 变化数据的日志文件。
165. 根据权利要求159所述的方法,该方法包括修改所述组成部分。
166. 根据权利要求165所述的方法,其中,所述组成部分是所述副 本的结构性元数据。
167. 根据权利要求165所述的方法,其中,所述修改包括检测所述 副本的第一状态,其中,所述第一状态指示已将所述变化lt据应用于所述 副本。
168. 根据权利要求167所述的方法,其中,所述修改包括将所述第 一状态改变成第二状态,其中,所述第二状态是以下状态从该状态,能 够通过对所述更新版本应用另外的变化数据来生成另 一更新版本。
169. 根据权利要求167所述的方法,其中,将所述第一状态改变成 所述第二状态包括修改所述副本的所述结构性元数据。
170. 根据权利要求165所述的方法,其中,所述变化数据是多个日 志文件,其中,所述组成部分是所述多个日志文件中的一个日志文件。
171. 根据权利要求170所述的方法,其中,所述应用包括调用存放 有所述原始数据的第一服务器的引擎,所述控制包括使该引擎停止。
172. 根据权利要求154所述的方法,该方法包括确定所述第一结构, 其中,所述第一结构是专有结构。
173. 根据权利要求172所述的方法,该方法包括使用所述第一结构 的信息iW"所述数据的项进行分析。
174. 根据权利要求173所述的方法,其中,所述分析包括系统地读 取所述数据的信息,所述信息包括l良所述项中的一个或更多个。
175. 根据权利要求174所述的方法,其中,所述表包括邮箱表、文 件夹表、消息表及附件表中的一个或更多个。
176. 根据权利要求174所述的方法,其中,所述项包括文件夹、邮 箱、电子邮件体、电子邮件头及电子邮件附件中的一个或更多个。
177. 根据权利要求154所述的方法,其中,所述组织包括将所述数 据的项索引到所述第二结构。
178. 根据权利要求177所述的方法,其中,所述组织包拾逸历所述 第一结构并对所述项的信息进行定位。
179. 根据权利要求178所述的方法,其中,所述项的所述信息包括 所述项的类型及内容中的一个或更多个。
180. 根据权利要求178所述的方法,其中,所述索引包括 生成与所述项相对应的索引;以及使用所述项的所述信息来将所述项与所述索引相关联。
181. 祁*据权利要求178所述的方法,该方法包括将每个项的修改信息与该项的前一实例的修改信息相比较;以及在所述修改信息表明自所述前一实例以后所述项未被修改时,将所述 遍历停止在所述第一结构中的当前节点处。
182. 根据权利要求178所述的方法,该方法包括确定项是否为先前已被存储在所述第二结构中的先前遇到过的项;以及生成到所述先前遇到过的项的指针。
183. 根据权利要求178所述的方法,该方法包括将每个项的修改信息与该项的前一实例的修改信息相比较;以及在所述修改信息表明自所述前一实例以后所述项被修改过时,将所述 项的差异信息索引。
184. 根据权利要求183所述的方法,其中,所述差异信息包括所述 项的当前版本与至少 一个先前4务改过的版^MJ'司的改变的信息。
185. 根据权利要求178所述的方法,其中,所述组织包括通过生成 校验和来将所述项的每个实例的信息散列。
186. 根据权利要求185所述的方法,该方法包括通过对所述第二结 构中的所述项的不同实例的校验和进行比较来确定自所述组织以后所述 项是否被改变,该确定是响应于从所述第二结构中检索所述项的请求而进 行的。
187. 根据权利要求185所述的方法,该方法包括将所述校验和传送 到散列表。
188. 才艮据权利要求178所述的方法,该方法包括将所述项分解成至 少一个组成部分。
189. 根据权利要求177所述的方法,其中,所述索引包括将所述项 传送到索引对象库中。
190. 根据权利要求177所述的方法,其中,所述索引包括将所述项 的元数据传送到元数据库中。
191. 根据权利要求154所述的方法,该方法包括经由多个应用来提 供对所述第二结构中的所述项的至少一部分的访问。
192. 根据权利要求191所述的方法,其中,所述提供访问包括使用 与用于访问所述第 一结构的所述数据的第 一协议不同的第二协议来提供 访问。
193. 根据权利要求154所述的方法,该方法包括将所述更新版本传 送到索引对象库。
194. 根据权利要求154所述的方法,其中,所述生成是准实时的并 维护所述原始数据的完全的完整性及一致性。
195. 根据权利要求154所述的方法,其中,所述原始数据包括应用数据、数据库、存储组、邮箱数据;sj良务器数据中的一个或更多个。
196. 根据权利要求154所述的方法,该方法包括保持所述更新版本, 所述保持包括通过对所述更新版本应用至少一组日志文件来生成另一更 新版本,所述至少一组日志文件在时间上比所述多个日志文件更晚地^L接 收到。
197. —种方法,包括在第一服务器处接收多个变化数据,所述变化数据包括对第二服务器中的原始数据的改变的信息;通过将所述多个变化数据中的至少一个变化数据应用于所述原始数据的副本并使用所述第 一服务器中的组成部分的修改后的信息来控制所述应用,从而在所述第一服务器处动态地生成并维护所述原始数据的所述副本的更新版本;以及通过组织所述数据的项来将所述数据从第一结构动态地转换成保持所述第一结构的层次结构的第二结构。
198. —种计算机可读介质,该计算机可读介质包含可执行指令,当在处理系统中执行所述可执行指令时,所述可执行指令通过以下处理来支持信息管理接收原始数据的副本以及包含对所述原始数据的改变的信息的变化数据;通过在接收到所述变化数据时将所述变化数据应用于所述副本来生成并维护所述副本的更新版本;以及通过组织所述数据的项来将所述更新版本从第 一结构动态地转换成保持所述第 一结构的层次结构的第二结构。
199. 一种系统,包括连接到包含原始数据的一个或更多个服务器的近线服务器;以及连接到所述近线服务器并被构造成接收原始数据的副本以及包含对所述原始数据的改变的信息的变化数据的信息系统,该信息系统被构造成维护所述副本的更新版本,该信息系统被构造成通过组织所述数据的项来将所述更新版本从第 一结构动态地转换成保持所述第 一结构的层次结构的第二结构。
200. 根据权利要求199所述的系统,该系统被构造成与所述接收异步地生成并维护。
201. 根据权利要求199所述的系统,该系统被构造成应用包括根据间隔来进行应用,其中,所述间隔是基于时间及事件中的一个或更多个的。
202. 根据权利要求199所述的系统,其中,所述变化数据包括多个实例的所述原始数据之间的增量差异的翁:据。
203. 根据权利要求199所述的系统,其中,所述变化数据包括多个实例的所述原始数据之间的差量差异的数据。
204. 根据权利要求199所述的系统,该系统被构造成使用组成部分的修改后的信息来控制所述应用。
205. 根据权利要求204所述的系统,其中,所述原始数据存储在第一服务器处,所述副M储在第二服务器处,其中,所述组成部分是所述第二服务器中的组成部分。
206. 根据权利要求205所述的系统,其中,所述第一服务器包括近线服务器。
207. 根据权利要求205所述的系统,其中,所述第二服务器包括本地服务器、远程服务器、数据库服务器、消息服务器、电子邮件服务器、即时消息服务器、IP语音服务器、协作服务器、消息和协作服务器、Exchange服务器、门户、客户关系管理(CRM)服务器、企业资源规划(ERP )服务器、企业对企业服务器及内容管理服务器中的一个或更多个。
208. 根据权利要求204所述的系统,其中,所述组成部分包括所述副本的结构性元lt据。
209. 根据权利要求204所述的系统,其中,所述组成部分包括所述变化数据的日志文件。
210. 根据权利要求204所述的系统,该系统被构造成修改所述组成部分。
211. 根据权利要求210所述的系统,其中,所述组成部分是所述副本的结构性元数据。
212. 根据权利要求210所述的系统,该系统被构造成通过检测所述副本的第一状态来进行修改,其中,所述第一状态指示已将所述变化数据应用于所述副本。
213. 根据权利要求212所述的系统,该系统被构造成通过将所述第一状态改变成第二状态来进行修改,其中,所述第二状态是以下状态从该状态,能够通过对所述更新版本应用另外的变化数据来生成另一更新版本。
214. 根据权利要求212所述的系统,该系统被构造成通过修改所述副本的所述结构性元数据来将所述第 一状态改变成所述第二状态。
215. 根据权利要求210所述的系统,其中,所述变化数据是多个日志文件,其中,所述组成部分是所述多个日志文件中的日志文件。
216. 根据权利要求215所述的系统,该系统被构造成通过调用存放有所述原始数据的第一服务器的引擎来进行应用,所述控制包括使该擎停止。
217. 才艮据权利要求199所述的系统,该系统被构造成确定所述第一结构,其中,所述第一结构是专有结构。
218. 根据权利要求217所述的系统,该系统被构造成使用所述第一结构的信息iMt所述数据的项进行分析。
219. 才艮据权利要求218所述的系统,该系统被构造成通过系统地读取所述数据的信息来进行分析,所述信息包括表及所述项中的一个或更多个。
220. 根据权利要求219所述的系统,其中,所W包括邮箱表、文件夹表、消息表及附件表中的一个或更多个。
221. 根据权利要求219所述的系统,其中,所述项包括文件夹、邮箱、电子邮件体、电子邮件头及电子邮件附件中的一个或更多个。
222. 根据权利要求199所述的系统,该系统被构造成通过将所述数据的项索引到所述第二结构来进行组织。
223. 根据权利要求222所述的系统,该系统被构造成通过遍历所述第 一结构并对所述项的信息进行定位来进行组织。
224. 根据权利要求223所述的系统,其中,所述项的所述信息包括所述项的类型及内容中的一个或更多个。
225. 才艮据权利要求223所述的系统,该系统被构造成通过以下处理来索引生成与所述项相对应的索引;以及使用所述项的所述信息来将所述项与所述索引相关联。
226. 根据权利要求223所述的系统,该系统被构造成将每个项的修改信息与该项的前一实例的修改信息相比较;并且在所述修改信息表明自所述前一实例以后所述项未被修改时,将所述遍历停止在所述第一结构中的当前节点处。
227. 才艮据权利要求223所述的系统,该系统被构造成确定项是否为已^L存储在所述第二结构中的先前遇到过的项;并且生成到所述先前遇到过的项的指针。
228. 根据权利要求223所述的系统,该系统被构造成将每个项的修改信息与该项的前一实例的修改信息相比较;并且在所述修改信息表明自所述前一实例以后所述项被修改过时,将所述项的差异信息索引。
229. 根据权利要求228所述的系统,其中,所述差异信息包括所述项的当前版本与至少 一个先前修改过的版本之间的改变的信息。
230. 才艮据权利要求223所述的系统,该系统被构造成通过生成校验和来将所述项的每个实例的信息散列从而进行组织。
231. 根据权利要求230所述的系统,该系统被构造成通过对所述第所述项是否被改变,该确定是响应于从所述第二结构中检索所述项的请求而进行的。
232. 根据权利要求230所述的系统,该系统被构造成将所述校验和传送到散列表。
233. 祁^据权利要求223所述的系统,该系统被构造成将所述项分解成至少一个组成部分。
234. 根据权利要求222所述的系统,该系统被构造成通过将所述项传送到索引对象库中来索引。
235. 根据权利要求222所述的系统,该系统被构造成通过将所述项的元数据传送到元数据库中来索引。
236. 根据权利要求199所述的系统,该系统祐^构造成经由多个应用来提供对所述第二结构中的所述项的至少 一部分的访问。
237. 根据权利要求236所述的系统,该系统被构造成通过使用与用于访问所述第 一结构的所述数据的第 一协议不同的第二协议来4^供访问,从而提供访问。
238. 根据权利要求199所述的系统,该系统被构造成将所述更新版本传送到索引对象库。
239. 根据权利要求1所述的系统,该系统被构造成准实时地生成并维护所述原始数据的完全的完整性及一致性。
240. 根据权利要求199所述的系统,其中,所述原始数据包括应用数据、数据库、存储组、邮箱数据;sj艮务器数据中的一个或更多个。
241. 根据权利要求199所述的系统,该系统被构造成通过对所述更新版本应用至少一组日志文件来生成另 一更新版本,从而保持所述更新版本,所述至少一组日志文件在时间上比所述多个日志文件更晚地被接收到。
242. —种系统,包括连接到包含原始数据的一个或更多个服务器的近线服务器;以及连接到所述近线服务器并被构造成接收多个变化数据的信息系统,所述变化数据包括对所述原始数据的改变的信息,该信息系统被构造成通过将所述多个变化数据中的至少 一个变化数据应用于所述原始数据的副本并使用所述近线服务器中的组成部分的修改后的信息来控制所述应用,从而在所述近线服务器处动态地生成并维护所述原始数据的所述副本的更新版本,所述信息系统被构造成通过组织所述数据的项来将所述数据从第一结构动态地转换成保持所述第 一结构的层次结构的第二结构。
243. —种设备,包括被构造成接收原始数据的副本以及包含对所述原始数据的改变的信息的变化数据的信息系统,所述信息系统被构造成通护所述副本的更新版本,所述信息系统被构造成通过组织所述数据的项来将所述更新版本从第 一结构动态地转换成保持所述第 一结构的层次结构的第二结构。
全文摘要
提供了多维替代系统及方法,所述系统及方法使用从至少一个数据源(包括生产系统)接收到的数据的信息及大量数据改变来生成至少一个最新数据替代。所描述的实施例还对最新数据替代进行大块到砖块转换。还将砖块级数据(或项数据)索引,并按照应用感知的方式将其存储起来。很多数据管理应用可以容易地对所存储的项数据进行访问,以用于整合项搜索及恢复功能、审计功能、监视及监督功能、法律发现功能、遵从性功能、存档功能、备份功能、灾难恢复功能等。大块到砖块转换以及对所存储的项数据的访问不在生产系统中进行,因此不会造成生产系统性能劣化。
文档编号G06F17/30GK101578599SQ200680056034
公开日2009年11月11日 申请日期2006年10月2日 优先权日2006年8月7日
发明者T·M·拉维, 罗伊·P·德索扎 申请人:米谋萨系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1