CN102567489A - 搜索文件 - Google Patents
搜索文件 Download PDFInfo
- Publication number
- CN102567489A CN102567489A CN2011104323319A CN201110432331A CN102567489A CN 102567489 A CN102567489 A CN 102567489A CN 2011104323319 A CN2011104323319 A CN 2011104323319A CN 201110432331 A CN201110432331 A CN 201110432331A CN 102567489 A CN102567489 A CN 102567489A
- Authority
- CN
- China
- Prior art keywords
- file
- index
- search
- token
- quoting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1873—Versioning file systems, temporal file systems, e.g. file system supporting different historic versions of files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
此处描述的本主题的各个方面涉及搜索文件。在各个方面,搜索引擎不仅能搜索当前文件,而且能搜索满足查询的文件的已删除和先前的版本。搜索引擎可维护便于搜索的索引。此外,搜索引擎还不仅可确定满足查询的文件,而且可确定哪个(哪些)文件版本满足该查询。
Description
背景技术
计算机可用于存储丰富的信息。例如,该信息可被包括在文档、电子表格、图像、数据库、电子邮件、其他内容等中。一些用户使用分层文件夹/文件系统来组织他们在存储设备上的数据,以便他们可在以后更好地找到数据。其他用户将他们的许多数据放置在相对少的目录中。在任一情况下,随着时间流逝,增加了想起数据被存储在何处的难度。
此处要求的主题不限于解决任何劣势或仅在诸如上述的那些环境中操作的实施例。相反,仅提供该背景技术以例示可实践此处描述的一些实施例的一个示例技术领域。
发明内容
简要地,此处描述的主题的各个方面涉及搜索文件。在各个方面,搜索引擎不仅能搜索当前文件,而且能搜索满足查询的文件的已删除的和先前的版本。搜索引擎可维护便于搜索的索引。此外,搜索引擎还不仅可确定满足查询的文件,而且可确定哪个版本(多个)的文件满足该查询。
提出本发明内容来简要地标识以下在具体实施方式中进一步描述的主题的一些方面。本发明内容既不意图标识所要求主题的关键或重要特征,也不意图被用于限制所要求主题的范围。
除非上下文另行明确指示,短语“此处描述的主题”指的是在具体实施方式中描述的主题。术语“方面”将被解读为“至少一个方面”。标识在具体实施方式中描述的本主题的方面不意图标识所要求主题的关键或重要特征。
上述方面和此处描述的本主题的其他方面通过例子的方式来例示且并不限于附图中,在附图中,类似参考数字指示类似的单元,且其中。
附图说明
图1是表示此处描述的本主题的各方面可并入其中的示例通用计算环境的框图;
图2是一般地表示根据此处描述的本主题的各方面的系统的框图;
图3是例示了根据此处描述的本主题的各方面、其中在搜索中可能错过文件的一些版本的示例索引的一部分;
图4是例示了根据此处描述的本主题的各方面、可被用于更穷尽搜索的示例索引的一部分的框图;
图5是一般地表示根据此处描述的本主题的各方面、可在更新索引时发生的示例动作的流程图;以及
图6是一般地表示根据此处描述的本主题的各方面、可在响应于查询时发生的示例动作的流程图。
具体实施方式
定义
如此处所使用的,术语“包括”及其变形将被解读为意指“包括但不限于”的开放式术语。术语“或”将被解读为“和/或”,除非上下文另行明确指示。术语“基于”将被解读为“至少部分地基于”。术语“一个实施例”和“实施例”将被解读为“至少一个实施例”。术语“另一实施例”将被解读为“至少一个其他实施例”。
如此处所使用的,诸如“一”、“一个”和“该”的术语包含一个或多个指示的项目或动作。具体地,在权利要求中,对于项目的引用一般地意指存在至少一个这样的项目,并且对于动作的引用意指执行动作的至少一个实例。
此处有时使用术语“第一”、“第二”、“第三”等。在权利要求中使用这些术语不是意图暗示排序而是用于标识目的。例如,短语“第一版本”和“第二版本”不必意指第一版本就是第一个版本或在第二版本之前被创建、或甚至第一版本在第二版本之前被要求或操作。相反,这些短语被用于标识不同的版本。
标题仅为方便的目的;可在其标题指示给定话题的章节之外发现关于该话题的信息。
以下可(显式和隐式的)包括其他定义。
实例操作环境
图1例示了适合的计算系统环境100的例子,可在其上实现此处描述的本主题的各方面。计算系统环境100仅是适合的计算环境的一个例子,且不意图暗示对于此处描述的主题的各方面的使用或功能范围的任何限制。计算环境100也不应被解释为具有涉及在示例操作环境100中例示的任何一个组件或组件组合的任何依赖性或要求。
此处描述的本主题的各方面可用大量的其他通用或专用计算系统环境或配置来操作。适合与此处描述的本主题的各方面一起使用的公知计算系统、环境或配置的例子包括个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微控制器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机、大型计算机、个人数字助理(PDA)、游戏设备、打印机、包括机顶、媒体中心或其他电器的电器、汽车嵌入或附连计算设备、其他移动设备、包括任何以上系统或设备的分布式计算环境等。
此处描述的本主题的各方面可在由计算机执行的诸如程序模块之类的计算机可执行指令的一般环境中描述。一般地,程序模块包括例程、程序、对象、组件、数据结构等,其执行具体的任务或实现具体的抽象数据类型。此处描述的本主题的各方面还可在分布式计算环境中实现,其中由通过通信网络链接的远程处理设备执行任务。在分布式计算环境中,程序模块可位于包括存储器存储设备的本地和远程计算存储介质二者中。
参照图1,用于实现此处描述的本主题的各方面的示例系统包括以计算机110形式的通用计算设备。计算机可包括能够执行指令的任何电子设备。计算机110的组件可包括处理单元120、系统存储器130和将包括系统存储器在内的各种系统组件耦连至处理单元120的系统总线121。系统总线121可以是一些总线结构类型中的任何一种,其包括存储器总线或存储器控制器、外设总线和使用各种总线体系架构的任何一种的本地总线。通过例子的方式而非限制,这样的体系架构包括工业标准体系架构(ISA)总线、微通道体系架构(MCA)总线、增强的ISA(EISA)总线、视频电子标准协会(VESA)本地总线、也被称为夹层总线的外设组件互连(PCI)总线、外设组件互连扩展(PCI-X)总线、高级图形端口(AGP)和PCI高速(PCIe)。
计算机110典型地包括各种计算机可读介质。计算机可读介质可以是可由计算机110访问的任何可得的介质,并包括易失性和非易失性介质,以及可移除和不可可移除介质。通过例子的方式而非限制,计算机可读介质可包括计算机存储介质和通信介质。
计算机存储介质包括以任何方法或技术实现的、用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字多用盘(DVD)或其他光盘存储设备、磁带盒、磁带、磁盘存储设备或其他磁存储设备,或可被用于存储期望的信息并可由计算机110访问的任何其他介质。
通信介质典型地在调制的数据信号(诸如载波或其他传输机制)中体现计算机可读指令、数据结构、程序模块或其他数据,并包括任何信息递送介质。术语“调制的数据信号”意指按照在信号中编码信息的方式设置或改变其一个或多个特性的信号。通过例子的方式而非限制,通信介质包括诸如有线网络或直接线连接的有线介质,和诸如声学、RF、红外的和其他无线介质的无线介质。以上任何的组合也应被包括在计算机可读介质的范围内。
系统存储器130包括以易失性和/或非易失性存储器形式的计算机存储介质,诸如只读存储器(ROM)131和随机存取存储器(RAM)132。包含帮助在计算机110内的元件之间传送信息(诸如在启动期间)的基本例程的基本输入/输出系统133(BIOS)典型地被存储在ROM131中。RAM 132典型地包含由处理单元120立即访问和/或当前操作的数据和/或程序模块。通过例子的方式而非限制,图1例示了操作系统134、应用程序135、其他程序模块136和程序数据137。
计算机110还包括其他可移除/不可移除、易失性/非易失性计算机存储介质。仅通过例子的方式,图1例示了从不可移除、非易失性磁介质读取或写入其中的硬盘驱动器141,从可移除、非易失性磁盘152读取或写入其中的磁盘驱动器151,以及从诸如CD ROM或其他光学介质之类的可移除、非易失性光盘156读取或写入其中的光盘驱动器155。可在示例操作环境中使用的其他可移除/不可移除、易失性/非易失性计算机存储介质包括磁带盒、闪存卡、数字多用盘、其它光盘、数字视频带、固态RAM、固态ROM等。硬盘驱动器141可通过接口140连接至系统总线121,磁盘驱动器151和光盘驱动器155可以由诸如接口150之类的、用于可移除非易失性存储器的接口而连接至系统总线121。
以上讨论和图1中例示的驱动器及其相关联的计算机存储介质为计算机110提供了计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图1中,硬盘驱动器141被例示为存储操作系统144、应用程序145、其他程序模块146和程序数据147。注意,这些组件与操作系统134、应用程序135、其他程序模块136和程序数据137可以是相同的或不同的。此处给予操作系统144、应用程序145、其他程序模块146和程序数据147的不同数字以至少例示它们是不同的副本。
用户可通过诸如键盘162和指示设备161(通常是指鼠标、跟踪球或触摸板)之类的输入设备在计算机110中键入命令和信息。其他输入设备(未示出)可包括麦克风、控制杆、游戏垫、圆盘式卫星天线、扫描仪、触摸感应屏、书写板等。经常通过耦连至系统总线的用户输入接口160将这些和其他输入设备连接至处理单元120,但可能由诸如并行端口、游戏端口或通用串行总线(USB)的其他接口或总线结构来连接。
还可经由诸如视频接口190之类的接口将监视器191或其他类型的显示设备连接至系统总线121。除监视器之外,计算机还可包括诸如扬声器197和打印机196之类、可通过输出外设接口195来连接的其他外设输出设备。
计算机110可使用与诸如远程计算机180之类的一个或多个远程计算机的逻辑连接在网络环境中操作。虽然图1中仅例示了存储器存储设备181,但是远程计算机180可以是个人计算机、服务器、路由器、网络PC、对等设备或其他通常网络节点,并典型地包括上述关于计算机110描述的许多或所有元件。图1中描绘的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但还可包括其他网络。这样的网络环境是办公室、企业范围的计算机网络、内联网和因特网中的普通事物。
当在LAN网络环境中使用时,通过网络接口或适配器170将计算机110连接至LAN 171。当在WAN网络环境中使用时,计算机110可包括用于通过诸如因特网之类的WAN 173建立通信的调制解调器172或其他手段。可经由用户输入接口160或其他适当的机构将调制解调器172(其可以是内部或外部的)连接至系统总线121。在网络环境中,可将相对于计算机110描绘的程序模块或其部分存储在远程存储器存储设备中。通过例子的方式而非限制,图1例示了驻留在存储器设备181上的远程应用程序185。将预想到,示出的网络连接是示例,并可使用在计算机之间建立通信链接的其他手段。
查找数据
如前所述,随着时间过去,想起数据被存储在何处变得更加困难。图2是一般地表示根据此处描述的本主题的各方面的系统的框图。如例示,系统200包括搜索引擎205、备份存储设备210、当前存储设备215,并还可包括其他组件(未示出)。逻辑上,搜索引擎205搜索存储在备份存储设备210和当前存储设备215中的各文件,以生成搜索结果220。
搜索引擎205可以位于一个或多个计算设备上。例如,这样的设备可包括个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微控制器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机、大型计算机、蜂窝电话、个人数字助理(PDA)、游戏设备、打印机、包括机顶、媒体中心或其他电器的电器、汽车嵌入或附连的计算设备、其他移动设备、包括任何以上系统或设备的分布式计算环境等。可被配置为充当搜索引擎205的示例设备包括图1中的计算机110。
备份存储设备210和当前存储设备215(以下有时统称为文件存储设备)可包括能够存储数据的任何存储介质。术语数据将被宽泛地解读以包括可以由一个或多个计算机存储元件表示的任何事物。逻辑上,数据可被表示为在易失性或非易失性存储器中的一系列的1和0。在具有非二进制存储介质的计算机中,可按照存储介质的容量表示数据。数据可被组织成数据结构的不同类型,其包括诸如数字、字母等简单的数据类型,分层的、链接的或其他相关的数据类型,包括多个其他数据结构或简单数据类型的数据结构等。数据的一些例子包括信息、程序代码、程序状态、程序数据、其他数据等。可使用结合图1描述的计算机存储介质实现文件存储设备。
文件存储设备可以是内部的、外部的,或包括位于提供搜索引擎205的设备内部和外部二者的组件。
文件存储设备可包括相同或不同类型的一个或多个物理设备。诸如提供搜索引擎205的计算机的设备可依靠作为默认存储设备的当前存储设备215来存储诸如文件和目录之类的文件系统对象或其他数据(以下有时被称为文件)。来自当前存储设备215的文件可被备份到备份存储设备210上。
例如,当前存储设备215可包括当前正由计算机使用的文件。当添加文件时,当前存储设备215可包括所添加的文件。当文件被删除时,可从当前存储设备215移除该文件。
另一方面,备份存储设备210可包括当前包含在当前存储设备215上的文件的先前版本,以及已从当前存储设备215删除的文件的版本。
响应于查询,搜索引擎205可逻辑地搜索当前存储设备215的文件以及备份存储设备210的文件。使用了术语“逻辑地”,因为可以有许多方式来搜索备份存储设备210和当前存储设备215的内容。例如,在一个实施例中,搜索引擎205可响应于查询,而搜索当前存储设备215的每个文件以及备份存储设备210的每个文件。如果文件满足查询的条件,则可在搜索结果220中包括文件的指示符(例如,文件名和可能的版本)。
作为另一例子,搜索引擎205可通过搜索索引225来搜索备份存储设备210和当前存储设备215。索引225可包括被映射至当前存储设备215和备份存储设备210中的一个或多个文件的关键字集。当当前存储设备215中的文件被更新时,可从索引225中删除对文件的旧索引,并索引文件的新内容以及将其放置在索引225中。
当文件被删除时,可在备份存储设备210上维护该文件的先前版本的副本。在一个实施例中,仅有备份存储设备210中的已删除文件的最新版本被索引到索引225中。在另一实施例中,已删除文件的每个已删除版本被索引到索引225中。例如,如果文件被删除、重新创建并再次被删除,则可将已删除的版本索引到索引225中。在该例子中,当搜索引擎205接收查询时,搜索引擎可通过搜索索引225来搜索当前存在于当前存储设备215上的所有文件以及已从当前存储设备215删除的文件的最新版本。
以该方式来搜索可产生少于将会满足查询的文件的所有版本(如结合图3更详细地描述)。例如,如果用户从文件删除字并保存文件,且如果需要已删除的字以满足查询,则即使文件的先前版本会已满足了查询,查询也将不会返回该文件。
此处有时使用短语“满足查询”等。满足查询意指满足查询的条件。例如,查询可包括条件的列表。例如,用户可能想要具有名字包括“简历”的所有文件的列表。在该情况下,用户可发出查询,其包括文件名包括“简历”的条件。在其名字中包括“简历”名字的文件的所有版本都满足该查询。
图3是例示了根据此处描述的本主题的各方面、在搜索中可能错过文件的一些版本的示例索引的一部分的框图。转向图3,在时间301,文件305包括字狗和猫。索引可具有引用文件305的令牌狗和猫。在时间302,文件305包括字狗和猴。在该时间,索引可具有引用文件305的令牌狗和猴。在时间303,文件305被删除。在该时间,索引可仍包括令牌狗和猴(其可指示文件305的已删除版本)。使用以上技术,即使在时间301处文件305中包括猫,在时间303处,针对包括字猫的文件的搜索也不会产生文件305。
在一些实现方式中,特别地对于在搜索文件中的第一趟(pass),以上行为可以是可接受的。在其他实现方式中,可能需要对更旧和已删除版本的更穷尽搜索。
图4是例示了根据此处描述的本主题的各方面、可用于更穷尽的搜索的示例索引的一部分的框图。在该例子中,当在时间402处,不是从索引中删除到文件的先前引用,而是修改文件405,对于文件的任何旧令牌(例如,猫)的所有引用都被保持,且用于在文件中发现的任何新字(例如,猴)的令牌被添加至索引中。当在时间403删除文件时,维护索引中从所有先前令牌到该文件的引用。其允许搜索曾包含在文件中的关键字。
数字405所引用的框可包括表示文件版本的对象。这个对象可包括数据结构,其包括例如文件的标识符,诸如如下更详细描述的那样、使用类别来查找文件版本的名字。
转到图2,为了实现这个更穷尽的搜索能力,在一个实现方式中,当文件首先被备份到备份存储设备210时,文件被索引并被添加到索引数据结构。当文件的另一版本被备份到备份存储设备210时,在索引225中维护文件的所有旧索引,同时在将用于包含在文件中的新字的任何新令牌和引用添加至索引225中。
当文件被删除时,在一个实现方式中,在从当前存储设备215删除文件之前,将就在删除之前存在的文件复制到备份存储设备210,且如上所述如同文件已改变那样进行索引。该索引捕获在最近的版本存储在备份存储设备上之后但在文件被删除之前,可能已被添加到文件的任何新令牌。此后,可从当前存储设备215中删除文件。该实现方式可被用于搜索直到文件被删除时存在于该文件的任何备份版本中的所有关键字。
在另一实现方式中,当文件被删除时,在删除之前,文件未被复制到备份存储设备210,但维护从令牌至备份存储设备210中的文件的最后版本的引用且未进行删除。该实现方式可能失去针对发生在备份到备份存储设备210的最后版本和就在删除之前存在于当前存储设备215上的版本之间的改变的搜索能力。
以上更穷尽的搜索机制可指示文件的至少一个版本满足搜索查询,而无需指示哪个具体的版本(多个)满足搜索查询。例如,当针对对于文件进行的改变而把令牌添加至索引时,令牌可引用表示文件版本的对象。例如,该对象可包括数据结构,其包括诸如标识文件但未直接标识文件的具体版本的名字之类的标识符。为了确定满足搜索查询的具体版本(多个),可在当前存储设备215中搜索文件的当前版本,并在备份存储设备210中搜索文件的先前版本。然后,可定位并返回满足查询的文件的特定版本。
题为“FILE SYSTEM BACKUP USING CHANGE JOURNAL”的美国专利申请(2010年12月3日提交,代理人案号No.330624.01,申请号为12/959,401)公开了可被用于分类文件版本并基于文件名获得版本的一个示例机制,该申请转让给本专利申请的受让人并通过引用合并与此。基于此处的教导,本领域的那些技术人员可意识到可利用用于实现该能力的其他机制而无需背离此处描述的本主题的各方面的精神或范围。
在一个实施例中,根据事件,搜索引擎205可更新索引225,这些事件包括:1)当前存储设备215中的文件被改变;或2)文件被复制到备份存储设备。在第一种情况下,可删除不指示其他文件的令牌和在索引中引用当前存储设备215中已改变的文件的引用,并可基于文件的新内容创建新令牌和引用。在第二种情况下,可保持所有的旧令牌和引用,并针对从文件的最后版本以来为新的内容添加一个或多个单元。在这个实现方式中,搜索引擎205可仅使用索引225来查找文件(或表示文件的多个版本的对象)以满足查询。一旦文件已被查找到,可考虑诸如在上述美国专利申请中公开的类别之类的附加信息,来确定文件的何种版本满足该查询。
在备份存储设备210上创建文件的备份版本的数据保护引擎(未示出)可被配置为仅从当前存储设备215复制受保护的文件。受保护的文件可被单独指定和/或是被指定为受保护的目录的后代(descendant)的文件。例如,文件c:\mydata.txt可以被单独指定为受保护的,且目录c:\mydata可以被指定为受保护的。在后一种情况中,存在于c:\mydata或它的子目录或他们的子目录中的任何一个中的所有文件都可以受保护。
在这个情况下,当前存储设备215存储文件的当前版本,备份存储设备210存储当前存储设备215的受保护的文件的先前版本以及已从当前存储设备215删除的受保护的文件的版本。
此外,搜索引擎205如何基于已改变的文件来更新索引225可以通过已改变的文件是受保护的文件还是不受保护的文件确定。例如,响应于不受保护的文件已改变的指示,搜索引擎205可执行动作,包括:
1、从索引225删除对于不受保护的文件的先前引用。该先前引用存在于不受保护文件被改变之前;
2、从索引225删除仅引用不受保护的文件的先前令牌。换句话说,如果令牌仅引用被改变的不受保护文件,则可删除令牌;
3、在不受保护的文件被改变之后,将针对不受保护文件中查找到的每个令牌将新令牌添加到索引225中;以及
4、在不受保护的文件被改变之后,将从索引中的令牌至不受保护文件的引用添加到索引225中,其中相应的令牌存在于不受保护的文件中。例如,对于在文件中查找到的每个令牌,对在索引225中的相应令牌进行更新以引用该文件。
如果文件是被复制到备份存储设备的受保护文件,则搜索引擎将执行动作,包括:
1、维护从索引中的令牌至表示文件版本的对象的任何引用。换句话说,如先前结合图4所述,不删除对于文件的引用;
2、将针对文件新版本中查找到的每个令牌,将新令牌添加到索引225。例如,如果文件包括当前未在索引225中找到的令牌,则这些令牌可被添加至索引225中;以及
3、将从新令牌至表示文件版本的对象的引用添加到索引225中。例如,这指的是针对文件中找到的每个新令牌,添加对该文件的附加引用。
当从当前存储设备删除受保护文件时,搜索引擎205可维护该索引,以便保持从索引中的令牌至表示已删除文件的对象的任何索引。
可以多级(stage)执行搜索。在第一级,搜索引擎205可搜索当前存储设备以查找满足查询的当前版本,并搜索备份存储设备以发现满足查询的已删除文件。然后,如果期望更穷尽的搜索,则搜索引擎205可实施包括受保护文件先前版本的搜索(例如,通过创建和搜索包括受保护文件的所有令牌的索引)。
图5-6是流程图,其一般地表示根据此处描述的本主题的各方面而可发生的示例动作。为了解释的简明性起见,将结合图5-6描述的方法描绘或描述为一系列动作。将理解并预想到,此处描述的本主题的各方面不由例示的动作和/或由动作的次序所限制。在一个实施例中,动作按照以下描述的次序发生。然而,在其他实施例中,动作可并行、以另一次序和/或与此处未呈现和描述的其他动作一起发生。此外,不要求所有例示的动作以实现根据此处描述的本主题的各方面的方法。另外,那些本领域技术人员将理解和预想到,方法可被替代地经由(via)状态图表示为一系列不相关的状态或表示为事件。
图5是一般地表示根据此处描述的本主题的各方面、可在更新索引时发生的示例动作的流程图。转到图5,在框505,动作开始。在框510,接收文件已改变的指示。例如,参考图2,搜索引擎205可接收当前存储设备215上的文件已改变的指示。例如,可从通过扫描目录以基于属性或内容等查看文件是否已改变来监视文件改变的组件接收该指示。
在框515,作出关于文件是否在受保护的命名空间中的确定。例如,受保护的命名空间包括路径(例如,c:\mydata),其指示是该路径后代的任何文件要被备份到备份存储设备。例如,参照图2,搜索引擎可参考数据结构(未示出)以检查文件是否在受保护的命名空间中。
如果文件在受保护的命名空间中,则动作在框520处继续;否则,动作在框525处继续。
在框520,针对包括在文件中的新令牌,将新引用添加到索引中。另外,在索引中保持对于文件的先前引用。这允许搜索确定文件的更旧版本是否满足查询。保持对于文件的先前引用的一个示例方式包括,如果文件在被改变之前和之后包括该令牌,则覆写(overwrite)从索引中的令牌至该文件的每个先前引用。例如,参照图2,搜索引擎205可将针对包括在新文件中的新令牌而将对受保护文件的新引用添加到索引225中。
在框525,删除对于文件的引用(如有的话),且文件被重新索引以在索引中添加对文件的引用。例如,参照图2,搜索引擎205可删除对于不受保护文件的旧引用,并添加对于该文件的新引用以考虑对于文件的改变。重新索引不受保护文件以在索引中添加对于文件的引用的一个示例方式包括,将包括在文件中的但还不在索引中的任何新令牌添加到索引中,并添加来自包括在索引中并也包括在文件中的令牌的引用。
在框530,可执行其他动作(如有的话)。例如,如果接收文件已被删除的指示,则搜索引擎可在索引中维护(或重新索引)任何现存的、从令牌到表示存在于备份存储设备的文件的一个或多个版本的对象的引用。
作为另一例子,可在搜索引擎处接收查询。作为响应,搜索引擎可搜索索引225以查找满足查询的文件集合。集合可包括来自当前存储设备和/或备份存储设备的一个或多个文件。
另外,如果备份存储设备上的备份文件满足查询,则搜索引擎还可搜索备份文件的版本以发现满足该查询的至少一个版本。然后,搜索引擎可提供满足查询的至少一个版本的指示(例如,诸如集合之类的数据结构)。
图6是一般地表示根据此处描述的本主题的各方面、可在响应于查询时发生的示例动作的流程图。如前所述,结合各个框描述的动作可并行或同时进行。例如,搜索当前存储设备可与搜索备份存储设备(例如,如果经由索引进行搜索)并行或同时进行。
转向图6,在框605,动作开始。在框610,接收搜索满足查询的文件的请求。例如,参照图2,搜索引擎205可接收满足查询的请求。
在框615,在当前存储设备中搜索满足查询的当前文件。例如,参照图2,搜索引擎205可搜索当前存储设备215以查找满足查询的当前文件。
在框620,在备份存储设备中搜索也满足查询的、已从当前存储设备删除的文件。例如,参照图2,搜索引擎可搜索备份存储设备210以查找满足查询的文件。
在框625,可执行其他动作(如有的话)。例如,搜索引擎可接收当前存储设备上的不受保护文件已改变的指示,并且作为响应,可重新索引文件。如前所述,这个重新索引可包括:
1、将包括在文件中的但尚未在索引中的任何新令牌添加到索引中,以及
2、添加从包括在索引中的令牌至文件(令牌也包括在该文件中)的引用。
作为另一例子,搜索引擎还可在备份存储设备中搜索满足查询的文件的版本,以标识满足查询的特定版本。搜索备份存储设备可包括搜索索引,该索引针对在文件的任何版本中找到的每个令牌,包括对表示文件版本的对象的单个索引。
作为其他动作的另一例子,可接收文件已被或将要被复制到备份存储设备的指示。作为响应,在维护索引中对文件的所有先前引用的同时,搜索引擎可更新索引针对包括在文件中的每个新令牌来引用文件。
从前述具体实施方式可以看出,已描述了涉及搜索的方面。尽管此处描述的主题的各方面易经历各种修改和替代构造,但在附图中示出并已在上文详细描述了其中某些例示实施例。然而,应理解,这不意图将要求的主题的各方面限制至公开的特定形式,而是相反,意图是将覆盖落入此处描述的主题的各个方面的精神和范围内的所有修改、替代构造和等同物。
Claims (10)
1.一种至少部分地由计算机实现的方法,所述方法包括:
获得(510)文件已改变的指示;
检查(530)所述文件是否在受保护的命名空间中,在受保护的命名空间中的文件被指定为备份到备份存储设备;
如果所述文件在受保护的命名空间中,则将所述文件中包括的任何新令牌添加(520)到索引,将从新令牌至所述文件的引用添加到所述索引中,并在所述索引中保持先前对所述文件的引用;以及
如果所述文件不在受保护的命名空间中,则删除(525)先前在所述索引中存在的、如果有的对所述文件的各引用,并重新索引所述文件,以在所述索引中添加对所述文件的引用。
2.如权利要求1所述的方法,其中获得文件已改变的指示包括:接收所述文件已被或将要被复制到所述备份存储设备的指示,并且其中保持先前对所述文件的引用包括:如果所述文件在被改变之前和之后包括令牌,则覆写从所述索引中的令牌至所述文件的先前引用。
3.一种具有计算机可执行指令的计算机存储介质,当所述指令被执行时执行动作,包括:
接收(610)搜索满足查询的文件的请求;以及
在当前存储设备中搜索(615)满足所述查询的当前文件;以及
在备份存储设备搜索(620)已从所述当前存储设备删除的、也满足所述查询的已删除文件。
4.如权利要求3所述的计算机存储介质,还包括:接收在所述当前存储设备上的文件已改变的指示,并作为响应,从所述索引中删除对所述文件的引用,并重新索引所述文件以将对所述文件的引用添加到所述索引中。
5.如权利要求4所述的计算机存储介质,其中重新索引所述文件以将对所述文件的引用添加到所述索引中包括:
将包括在所述文件中的但尚未在所述索引中的任何新令牌添加到所述索引中,以及
添加从所述索引中的令牌到所述文件的引用,其中所述令牌也被包括在所述文件中。
6.如权利要求3所述的计算机存储介质, 还包括:接收文件已被或将要被复制到所述备份存储设备的指示,并作为响应,更新索引以针对所述文件中包括的每个新令牌引用所述文件,同时维护在所述索引中对所述文件的所有先前引用。
7.一种计算环境中的系统,包括:
当前存储设备(215),可操作来存储文件的当前版本;
备份存储设备(210),可操作来存储所述当前存储设备的受保护文件的先前版本以及已从所述当前存储设备删除的受保护文件的版本;以及
搜索引擎(205),可操作来搜索所述当前存储设备以查找满足查询的当前版本,并搜索所述备份存储设备以查找满足所述查询的已删除文件,所述已删除文件先前已从所述当前存储设备中删除了。
8.如权利要求7所述的系统,其中所述搜索引擎可操作来搜索所述当前存储设备以查找满足查询的当前版本,以及搜索所述备份存储设备以查找满足所述查询的已删除文件包括:所述搜索引擎可操作来搜索索引。
9.如权利要求8所述的系统,其中所述搜索引擎还可操作来通过执行动作以响应于接收到已改变了所述当前存储设备上的不受保护的文件的指示而更新所述索引,所述动作包括:
从所述索引中删除对于所述不受保护的文件的先前引用,所述先前引用存在于所述不受保护的文件被改变之前;
从所述索引中删除仅引用所述不受保护的文件的先前令牌,所述先前令牌存在于所述不受保护的文件被改变之前;
在所述不受保护的文件被改变之后,将为所述不受保护文件中找到的每个令牌将新令牌添加到所述索引中;
将从所述索引的令牌至所述不受保护文件的引用添加到所述索引中,其中在所述不受保护的文件被改变之后,相应的令牌存在于所述不受保护文件中。
10.如权利要求8所述的系统,其中所述搜索引擎还可操作来通过执行动作以响应于文件的新版本被复制到所述备份存储设备而更新所述索引,所述动作包括:
维护从所述索引中的令牌至表示所述文件的各版本的对象的任何引用,所述引用至少存在于所述文件被复制到所述备份存储设备之前;
针对所述文件的新版本中找到的每个令牌,将新令牌添加到所述索引中;以及
将从所述新令牌到表示所述文件的各版本的对象的引用添加到所述索引中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/973,949 US8620894B2 (en) | 2010-12-21 | 2010-12-21 | Searching files |
US12/973949 | 2010-12-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102567489A true CN102567489A (zh) | 2012-07-11 |
CN102567489B CN102567489B (zh) | 2015-01-07 |
Family
ID=46235735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110432331.9A Active CN102567489B (zh) | 2010-12-21 | 2011-12-21 | 搜索文件 |
Country Status (2)
Country | Link |
---|---|
US (4) | US8620894B2 (zh) |
CN (1) | CN102567489B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105431838A (zh) * | 2013-05-01 | 2016-03-23 | 微软技术许可有限责任公司 | 串流内容和占位符 |
CN106605221A (zh) * | 2014-08-21 | 2017-04-26 | 卓普网盘股份有限公司 | 具有用于即时索引的方法的多用户搜索系统 |
US10977324B2 (en) | 2015-01-30 | 2021-04-13 | Dropbox, Inc. | Personal content item searching system and method |
US11120089B2 (en) | 2015-01-30 | 2021-09-14 | Dropbox, Inc. | Personal content item searching system and method |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9824091B2 (en) | 2010-12-03 | 2017-11-21 | Microsoft Technology Licensing, Llc | File system backup using change journal |
US8620894B2 (en) | 2010-12-21 | 2013-12-31 | Microsoft Corporation | Searching files |
US9229818B2 (en) | 2011-07-20 | 2016-01-05 | Microsoft Technology Licensing, Llc | Adaptive retention for backup data |
US11487707B2 (en) * | 2012-04-30 | 2022-11-01 | International Business Machines Corporation | Efficient file path indexing for a content repository |
CN105512325B (zh) * | 2015-12-21 | 2018-12-25 | 华为技术有限公司 | 多版本数据索引的更新、删除与建立方法及装置 |
US10956387B2 (en) | 2016-12-30 | 2021-03-23 | Dropbox, Inc. | Accessing historical content items of a content management system through placeholders |
EP3579594B1 (en) * | 2017-03-09 | 2023-05-31 | LG Electronics Inc. | Method for transferring user equipment capability and apparatus for supporting same |
US11003543B2 (en) * | 2018-04-27 | 2021-05-11 | EMC IP Holding Company LLC | Generic metadata tags with namespace-specific semantics in a storage appliance |
CN110740148B (zh) * | 2018-07-19 | 2022-03-29 | 中国移动通信集团海南有限公司 | 内容资源的处理方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040093323A1 (en) * | 2002-11-07 | 2004-05-13 | Mark Bluhm | Electronic document repository management and access system |
US20050050054A1 (en) * | 2003-08-21 | 2005-03-03 | Clark Quentin J. | Storage platform for organizing, searching, and sharing data |
CN101162469A (zh) * | 2007-11-09 | 2008-04-16 | 清华大学 | 基于快照的细粒度文件与目录版本管理方法 |
CN101326497A (zh) * | 2005-12-13 | 2008-12-17 | 国际商业机器公司 | 产生到特定时间点的备份集 |
CN101601029A (zh) * | 2005-08-18 | 2009-12-09 | Emc公司 | 数据对象搜索和检索 |
Family Cites Families (174)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2575543B2 (ja) * | 1990-04-04 | 1997-01-29 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 同時アクセス管理方法 |
US6597347B1 (en) | 1991-11-26 | 2003-07-22 | Itu Research Inc. | Methods and apparatus for providing touch-sensitive input in multiple degrees of freedom |
US5757360A (en) | 1995-05-03 | 1998-05-26 | Mitsubishi Electric Information Technology Center America, Inc. | Hand held computer control device |
US5680640A (en) | 1995-09-01 | 1997-10-21 | Emc Corporation | System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state |
JP3254642B2 (ja) * | 1996-01-11 | 2002-02-12 | 株式会社日立製作所 | 索引の表示方法 |
US5973670A (en) | 1996-12-31 | 1999-10-26 | International Business Machines Corporation | Tactile feedback controller for computer cursor control device |
US6076051A (en) * | 1997-03-07 | 2000-06-13 | Microsoft Corporation | Information retrieval utilizing semantic representation of text |
JP3640502B2 (ja) | 1997-06-18 | 2005-04-20 | 富士写真フイルム株式会社 | メディア残量提示方法 |
US7346586B1 (en) | 1997-07-15 | 2008-03-18 | Silverbrook Research Pty Ltd | Validation protocol and system |
US6297838B1 (en) | 1997-08-29 | 2001-10-02 | Xerox Corporation | Spinning as a morpheme for a physical manipulatory grammar |
US6079000A (en) | 1997-12-30 | 2000-06-20 | Unisys Corporation | XPC backup for in-process audit |
US6219034B1 (en) | 1998-02-23 | 2001-04-17 | Kristofer E. Elbing | Tactile computer interface |
US6189016B1 (en) | 1998-06-12 | 2001-02-13 | Microsoft Corporation | Journaling ordered changes in a storage volume |
US6466901B1 (en) * | 1998-11-30 | 2002-10-15 | Apple Computer, Inc. | Multi-language document search and retrieval system |
US6397308B1 (en) | 1998-12-31 | 2002-05-28 | Emc Corporation | Apparatus and method for differential backup and restoration of data in a computer storage system |
DE19917660A1 (de) | 1999-04-19 | 2000-11-02 | Deutsch Zentr Luft & Raumfahrt | Verfahren und Eingabeeinrichtung zum Steuern der Lage eines in einer virtuellen Realität graphisch darzustellenden Objekts |
US7418435B1 (en) * | 1999-08-05 | 2008-08-26 | Oracle International Corporation | Multi-model access to data |
US6675205B2 (en) | 1999-10-14 | 2004-01-06 | Arcessa, Inc. | Peer-to-peer automated anonymous asynchronous file sharing |
US6526418B1 (en) | 1999-12-16 | 2003-02-25 | Livevault Corporation | Systems and methods for backing up data files |
US6625623B1 (en) | 1999-12-16 | 2003-09-23 | Livevault Corporation | Systems and methods for backing up data files |
US6981040B1 (en) | 1999-12-28 | 2005-12-27 | Utopy, Inc. | Automatic, personalized online information and product services |
EP1247215A4 (en) | 2000-01-10 | 2009-04-29 | Iron Mountain Inc | LAYER ARCHITECTURE AS AN INTERFACE BETWEEN APPLIANCES AND APPLICATIONS |
JP3404651B2 (ja) | 2000-03-30 | 2003-05-12 | 財団法人理工学振興会 | 三次元入力装置 |
US7062567B2 (en) * | 2000-11-06 | 2006-06-13 | Endeavors Technology, Inc. | Intelligent network streaming and execution system for conventionally coded applications |
US6662281B2 (en) | 2001-01-31 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Redundant backup device |
SG103289A1 (en) * | 2001-05-25 | 2004-04-29 | Meng Soon Cheo | System for indexing textual and non-textual files |
US6662198B2 (en) | 2001-08-30 | 2003-12-09 | Zoteca Inc. | Method and system for asynchronous transmission, backup, distribution of data and file sharing |
US7162587B2 (en) | 2002-05-08 | 2007-01-09 | Hiken Michael S | Method and apparatus for recovering redundant cache data of a failed controller and reestablishing redundancy |
ATE392667T1 (de) * | 2002-05-27 | 2008-05-15 | Sap Ag | Verfahren und computersystem zum indexieren strukturierter dokumente |
AU2003231951A1 (en) | 2002-05-31 | 2003-12-19 | Fujitsu It Holdings, Inc. | Method and system for intelligent storage management |
US20040010524A1 (en) | 2002-07-12 | 2004-01-15 | Wallace Michael W. | Efficient method and system for delivering resources in broadcast environment |
US8417678B2 (en) | 2002-07-30 | 2013-04-09 | Storediq, Inc. | System, method and apparatus for enterprise policy management |
US6934822B2 (en) | 2002-08-06 | 2005-08-23 | Emc Corporation | Organization of multiple snapshot copies in a data storage system |
US7240104B2 (en) | 2002-08-21 | 2007-07-03 | Defywire, Inc. | Method and apparatus for managing resources stored on a communication device |
WO2004025498A1 (en) | 2002-09-10 | 2004-03-25 | Exagrid Systems, Inc. | Method and apparatus for managing data integrity of backup and disaster recovery data |
US7051174B2 (en) | 2002-09-24 | 2006-05-23 | International Business Machines Corporation | Method, system, and program for restoring data in cache |
US7386529B2 (en) * | 2002-12-19 | 2008-06-10 | Mathon Systems, Inc. | System and method for managing content with event driven actions to facilitate workflow and other features |
US8131691B1 (en) * | 2002-12-30 | 2012-03-06 | Symantec Operating Corporation | System and method for updating a search engine index based on which files are identified in a file change log |
KR100537503B1 (ko) | 2002-12-31 | 2005-12-19 | 삼성전자주식회사 | 공간형정보입력장치 구성 방법, 재구성 방법, 착용인식방법 및그 장치 |
US8375008B1 (en) * | 2003-01-17 | 2013-02-12 | Robert Gomes | Method and system for enterprise-wide retention of digital or electronic data |
US6823493B2 (en) | 2003-01-23 | 2004-11-23 | Aurilab, Llc | Word recognition consistency check and error correction system and method |
US7478096B2 (en) | 2003-02-26 | 2009-01-13 | Burnside Acquisition, Llc | History preservation in a computer storage system |
US7421438B2 (en) | 2004-04-29 | 2008-09-02 | Microsoft Corporation | Metadata editing control |
SE525128C8 (sv) | 2003-03-26 | 2005-08-03 | Systemok Ab | En anordning för att återställa åtminstone en av filer, mappar och applikationsassocierade filer i en dator till ett tidigare tillstånd |
US6839724B2 (en) | 2003-04-17 | 2005-01-04 | Oracle International Corporation | Metamodel-based metadata change management |
JP4124348B2 (ja) | 2003-06-27 | 2008-07-23 | 株式会社日立製作所 | 記憶システム |
US7769607B2 (en) | 2003-08-07 | 2010-08-03 | Indianola Development Company, L.L.C. | Method of enhancing value of pension plan assets |
US7225208B2 (en) | 2003-09-30 | 2007-05-29 | Iron Mountain Incorporated | Systems and methods for backing up data files |
US8417673B2 (en) * | 2003-10-07 | 2013-04-09 | International Business Machines Corporation | Method, system, and program for retaining versions of files |
US20050091271A1 (en) | 2003-10-23 | 2005-04-28 | Kasy Srinivas | Systems and methods that schematize audio/video data |
US20050203851A1 (en) * | 2003-10-25 | 2005-09-15 | Macrovision Corporation | Corruption and its deterrence in swarm downloads of protected files in a file sharing network |
US7168001B2 (en) * | 2004-02-06 | 2007-01-23 | Hewlett-Packard Development Company, L.P. | Transaction processing apparatus and method |
US20050210041A1 (en) | 2004-03-18 | 2005-09-22 | Hitachi, Ltd. | Management method for data retention |
US7277905B2 (en) | 2004-03-31 | 2007-10-02 | Microsoft Corporation | System and method for a consistency check of a database backup |
US7167880B2 (en) | 2004-04-14 | 2007-01-23 | Hitachi, Ltd. | Method and apparatus for avoiding journal overflow on backup and recovery system using storage based journaling |
US7831561B2 (en) | 2004-05-18 | 2010-11-09 | Oracle International Corporation | Automated disk-oriented backups |
US7386566B2 (en) | 2004-07-15 | 2008-06-10 | Microsoft Corporation | External metadata processing |
US7702618B1 (en) * | 2004-07-26 | 2010-04-20 | Google Inc. | Information retrieval system for archiving multiple document versions |
US7502961B2 (en) * | 2004-09-09 | 2009-03-10 | Microsoft Corporation | Method, system, and apparatus for providing alert synthesis in a data protection system |
US7769709B2 (en) * | 2004-09-09 | 2010-08-03 | Microsoft Corporation | Method, system, and apparatus for creating an archive routine for protecting data in a data protection system |
US7567974B2 (en) * | 2004-09-09 | 2009-07-28 | Microsoft Corporation | Method, system, and apparatus for configuring a data protection system |
US20080077570A1 (en) * | 2004-10-25 | 2008-03-27 | Infovell, Inc. | Full Text Query and Search Systems and Method of Use |
US7904913B2 (en) | 2004-11-02 | 2011-03-08 | Bakbone Software, Inc. | Management interface for a system that provides automated, real-time, continuous data protection |
WO2006055758A2 (en) | 2004-11-17 | 2006-05-26 | Avalere, Inc. | Systems and methods for managing digital assets |
US7627547B2 (en) | 2004-11-29 | 2009-12-01 | Oracle International Corporation | Processing path-based database operations |
US20060117048A1 (en) | 2004-11-30 | 2006-06-01 | Microsoft Corporation | Method and system of synchronizing filter metadata after a restore |
US7496565B2 (en) | 2004-11-30 | 2009-02-24 | Microsoft Corporation | Method and system for maintaining namespace consistency with a file system |
US7610307B2 (en) | 2004-11-30 | 2009-10-27 | Microsoft Corporation | Method and system of detecting file system namespace changes and restoring consistency |
CN100349127C (zh) | 2004-12-03 | 2007-11-14 | 华为技术有限公司 | 嵌入式系统数据备份装置及方法 |
US20060129618A1 (en) * | 2004-12-10 | 2006-06-15 | Albert Maier | Method and a computer system for synchronising backups of objects and of meta data about the objects |
US7480654B2 (en) | 2004-12-20 | 2009-01-20 | International Business Machines Corporation | Achieving cache consistency while allowing concurrent changes to metadata |
WO2006071560A2 (en) | 2004-12-23 | 2006-07-06 | Solera Networks, Inc. | Network packet capture distributed storage system |
US7272592B2 (en) | 2004-12-30 | 2007-09-18 | Microsoft Corporation | Updating metadata stored in a read-only media file |
US7685106B2 (en) * | 2005-04-29 | 2010-03-23 | International Business Machines Corporation | Sharing of full text index entries across application boundaries |
US7991767B2 (en) * | 2005-04-29 | 2011-08-02 | International Business Machines Corporation | Method for providing a shared search index in a peer to peer network |
US7774322B2 (en) * | 2005-05-25 | 2010-08-10 | Microsoft Corporation | File transfer error handling |
US7933936B2 (en) | 2005-06-10 | 2011-04-26 | Network Appliance, Inc. | Method and system for automatic management of storage space |
US7464126B2 (en) | 2005-07-21 | 2008-12-09 | International Business Machines Corporation | Method for creating an application-consistent remote copy of data using remote mirroring |
US20070027935A1 (en) | 2005-07-28 | 2007-02-01 | Haselton William R | Backing up source files in their native file formats to a target storage |
CA2618135C (en) | 2005-08-09 | 2014-10-28 | Nexsan Technologies Canada Inc. | Data archiving system |
US7685175B2 (en) | 2005-08-12 | 2010-03-23 | Michael Lee Carroll | Content manager |
US7716171B2 (en) * | 2005-08-18 | 2010-05-11 | Emc Corporation | Snapshot indexing |
US8601225B2 (en) | 2005-09-16 | 2013-12-03 | Inmage Systems, Inc. | Time ordered view of backup data on behalf of a host |
US7831789B1 (en) | 2005-10-06 | 2010-11-09 | Acronis Inc. | Method and system for fast incremental backup using comparison of descriptors |
US7899662B2 (en) | 2005-10-12 | 2011-03-01 | Storage Appliance Corporation | Data backup system including a data protection component |
JP4883986B2 (ja) | 2005-11-16 | 2012-02-22 | 株式会社日立製作所 | 計算機システム、管理計算機及びデータリカバリ方法 |
US7660807B2 (en) | 2005-11-28 | 2010-02-09 | Commvault Systems, Inc. | Systems and methods for cataloging metadata for a metabase |
CN100426246C (zh) | 2005-12-28 | 2008-10-15 | 英业达股份有限公司 | 存储系统的高速缓存的数据的保护方法 |
US8015441B2 (en) | 2006-02-03 | 2011-09-06 | Emc Corporation | Verification of computer backup data |
US20070208918A1 (en) | 2006-03-01 | 2007-09-06 | Kenneth Harbin | Method and apparatus for providing virtual machine backup |
CN102269592B (zh) | 2006-03-15 | 2015-11-25 | 高通股份有限公司 | 基于传感器的定向系统 |
US8417746B1 (en) * | 2006-04-03 | 2013-04-09 | F5 Networks, Inc. | File system management with enhanced searchability |
DK2013974T3 (en) | 2006-04-07 | 2018-10-29 | Data Storage Group Inc | DATA COMPRESSION AND DATA STORAGE TECHNOLOGY |
US7441092B2 (en) | 2006-04-20 | 2008-10-21 | Microsoft Corporation | Multi-client cluster-based backup and restore |
US7809685B2 (en) | 2006-04-21 | 2010-10-05 | Ricoh Co., Ltd. | Secure and efficient methods for logging and synchronizing data exchanges |
US9195665B2 (en) | 2006-04-28 | 2015-11-24 | Hewlett-Packard Development Company, L.P. | Method and system for data retention |
US20090048860A1 (en) | 2006-05-08 | 2009-02-19 | Corbis Corporation | Providing a rating for digital media based on reviews and customer behavior |
US7613750B2 (en) | 2006-05-29 | 2009-11-03 | Microsoft Corporation | Creating frequent application-consistent backups efficiently |
US7882064B2 (en) | 2006-07-06 | 2011-02-01 | Emc Corporation | File system replication |
US8384665B1 (en) | 2006-07-14 | 2013-02-26 | Ailive, Inc. | Method and system for making a selection in 3D virtual environment |
US20080034004A1 (en) | 2006-08-04 | 2008-02-07 | Pavel Cisler | System for electronic backup |
US8121977B2 (en) | 2006-08-30 | 2012-02-21 | Iwmage Systems, Inc. | Ensuring data persistence and consistency in enterprise storage backup systems |
US7830571B2 (en) * | 2006-09-28 | 2010-11-09 | Ricoh Company, Ltd. | System, apparatus and method for document management |
US7797323B1 (en) | 2006-10-11 | 2010-09-14 | Hewlett-Packard Development Company, L.P. | Producing representative hashes for segments of a file |
US20080091895A1 (en) | 2006-10-11 | 2008-04-17 | Inventec Corporation | Cache data backup method and system for computer clustering systems |
US7882077B2 (en) * | 2006-10-17 | 2011-02-01 | Commvault Systems, Inc. | Method and system for offline indexing of content and classifying stored data |
US7636712B2 (en) * | 2006-11-14 | 2009-12-22 | Microsoft Corporation | Batching document identifiers for result trimming |
CN101201766A (zh) | 2006-12-14 | 2008-06-18 | 英业达股份有限公司 | 设备信息修复系统及方法 |
US8874517B2 (en) | 2007-01-31 | 2014-10-28 | Hewlett-Packard Development Company, L.P. | Summarizing file system operations with a file system journal |
US20080263103A1 (en) | 2007-03-02 | 2008-10-23 | Mcgregor Lucas | Digital asset management system (DAMS) |
US8126854B1 (en) * | 2007-03-05 | 2012-02-28 | Emc Corporation | Using versioning to back up multiple versions of a stored object |
US7693813B1 (en) | 2007-03-30 | 2010-04-06 | Google Inc. | Index server architecture using tiered and sharded phrase posting lists |
US7783677B2 (en) | 2007-03-30 | 2010-08-24 | Microsoft Corporation | Tracking file system namespace changes during transactions |
US7720819B2 (en) | 2007-04-12 | 2010-05-18 | International Business Machines Corporation | Method and apparatus combining revision based and time based file data protection |
US20080270396A1 (en) * | 2007-04-25 | 2008-10-30 | Michael Herscovici | Indexing versioned document sequences |
US7822927B1 (en) | 2007-05-14 | 2010-10-26 | Emc Corporation | Dynamically configurable reverse DNLC lookup |
US8332907B2 (en) * | 2007-06-22 | 2012-12-11 | Microsoft Corporation | Detection and management of controlled files |
US20090228777A1 (en) * | 2007-08-17 | 2009-09-10 | Accupatent, Inc. | System and Method for Search |
US8346731B1 (en) * | 2007-09-28 | 2013-01-01 | Symantec Corporation | Techniques for global single instance indexing for backup data |
US8650615B2 (en) | 2007-09-28 | 2014-02-11 | Emc Corporation | Cross domain delegation by a storage virtualization system |
US7890714B1 (en) | 2007-09-28 | 2011-02-15 | Symantec Operating Corporation | Redirection of an ongoing backup |
KR101433859B1 (ko) | 2007-10-12 | 2014-08-27 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 파일 데이터 관리 방법 |
KR101078287B1 (ko) | 2007-12-14 | 2011-10-31 | 한국전자통신연구원 | 다중 복제를 지원하는 분산 파일 시스템에서 데이터 서버의복구 방법 및 그에 적당한 메타데이터 스토리지 및 저장방법 |
US8312023B2 (en) * | 2007-12-21 | 2012-11-13 | Georgetown University | Automated forensic document signatures |
US7877626B2 (en) | 2007-12-31 | 2011-01-25 | Datadirect Networks, Inc. | Method and system for disk storage devices rebuild in a data storage system |
JP5075653B2 (ja) * | 2008-01-21 | 2012-11-21 | 株式会社日立製作所 | データベース管理方法、データベース管理装置、データベース管理プログラム、及び、データベースシステム |
US8375396B2 (en) | 2008-01-31 | 2013-02-12 | Hewlett-Packard Development Company, L.P. | Backup procedure with transparent load balancing |
JP5319133B2 (ja) * | 2008-02-07 | 2013-10-16 | キヤノン株式会社 | 文書管理システム、文書管理方法およびプログラム |
US20090292677A1 (en) | 2008-02-15 | 2009-11-26 | Wordstream, Inc. | Integrated web analytics and actionable workbench tools for search engine optimization and marketing |
US8174412B2 (en) | 2008-03-05 | 2012-05-08 | Ca, Inc. | Combined hash for variable data chunks |
US9690786B2 (en) * | 2008-03-17 | 2017-06-27 | Tivo Solutions Inc. | Systems and methods for dynamically creating hyperlinks associated with relevant multimedia content |
US8856088B2 (en) * | 2008-04-01 | 2014-10-07 | Microsoft Corporation | Application-managed file versioning |
CN201233581Y (zh) | 2008-04-23 | 2009-05-06 | 鲁东大学 | 通过指纹识别生成密码的鼠标 |
WO2009134772A2 (en) * | 2008-04-29 | 2009-11-05 | Maxiscale, Inc | Peer-to-peer redundant file server system and methods |
US20090289110A1 (en) | 2008-05-22 | 2009-11-26 | Paul Regen | Wireless Biometric Computer Mouse with Integrated Credit Card Reader |
US7987289B2 (en) | 2008-06-24 | 2011-07-26 | Microsoft Corporation | Participating in cloud as totally stubby edge |
US7596620B1 (en) | 2008-11-04 | 2009-09-29 | Aptana, Inc. | System and method for developing, deploying, managing and monitoring a web application in a single environment |
US8255430B2 (en) | 2008-08-26 | 2012-08-28 | Caringo, Inc. | Shared namespace for storage clusters |
US8238256B2 (en) | 2008-09-08 | 2012-08-07 | Nugent Raymond M | System and method for cloud computing |
WO2010036889A1 (en) | 2008-09-25 | 2010-04-01 | Bakbone Software, Inc. | Remote backup and restore |
US8271996B1 (en) | 2008-09-29 | 2012-09-18 | Emc Corporation | Event queues |
US20100083109A1 (en) | 2008-09-29 | 2010-04-01 | Smart Technologies Ulc | Method for handling interactions with multiple users of an interactive input system, and interactive input system executing the method |
WO2010065271A2 (en) * | 2008-11-25 | 2010-06-10 | Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations | Systems and methods for providing continuous file protection at block level |
CA2743438A1 (en) * | 2008-12-12 | 2010-06-17 | F. Hoffmann-La Roche Ag | Method for managing data from analysis appliances |
US20100153313A1 (en) | 2008-12-15 | 2010-06-17 | Symbol Technologies, Inc. | Interface adaptation system |
US8219759B2 (en) | 2009-03-16 | 2012-07-10 | Novell, Inc. | Adaptive display caching |
US8769055B2 (en) * | 2009-04-24 | 2014-07-01 | Microsoft Corporation | Distributed backup and versioning |
US8380952B2 (en) | 2009-05-29 | 2013-02-19 | Hitachi, Ltd. | Storage system and data storage method using storage system which decides size of data to optimize the total of data size transfer efficiency |
US20100306171A1 (en) * | 2009-06-02 | 2010-12-02 | Microsoft Corporation | Timeline Experience for Restore User Interface |
JP4930555B2 (ja) | 2009-07-09 | 2012-05-16 | 富士通株式会社 | 制御装置、制御方法およびストレージシステム |
US9058298B2 (en) * | 2009-07-16 | 2015-06-16 | International Business Machines Corporation | Integrated approach for deduplicating data in a distributed environment that involves a source and a target |
US20120016778A1 (en) | 2009-07-28 | 2012-01-19 | Mathias Salle | Controlling cloud services |
US20110055559A1 (en) | 2009-08-27 | 2011-03-03 | Jun Li | Data retention management |
US8271653B2 (en) | 2009-08-31 | 2012-09-18 | Red Hat, Inc. | Methods and systems for cloud management using multiple cloud management schemes to allow communication between independently controlled clouds |
US8458186B2 (en) * | 2009-11-06 | 2013-06-04 | Symantec Corporation | Systems and methods for processing and managing object-related data for use by a plurality of applications |
US8595188B2 (en) | 2009-11-06 | 2013-11-26 | International Business Machines Corporation | Operating system and file system independent incremental data backup |
US8447734B2 (en) | 2009-11-30 | 2013-05-21 | Hewlett-Packard Development Company, L.P. | HDAG backup system with variable retention |
WO2011113042A2 (en) | 2010-03-12 | 2011-09-15 | Copiun, Inc. | Distributed catalog, data store, and indexing |
US20110246721A1 (en) | 2010-03-31 | 2011-10-06 | Sony Corporation | Method and apparatus for providing automatic synchronization appliance |
US8423735B2 (en) | 2010-05-21 | 2013-04-16 | International Business Machines Corporation | Space reservation in a deduplication system |
WO2011149558A2 (en) | 2010-05-28 | 2011-12-01 | Abelow Daniel H | Reality alternate |
US8473458B2 (en) * | 2010-07-29 | 2013-06-25 | Accenture Global Services Limited | Document migration |
US8527556B2 (en) * | 2010-09-27 | 2013-09-03 | Business Objects Software Limited | Systems and methods to update a content store associated with a search index |
US8533489B2 (en) * | 2010-09-29 | 2013-09-10 | Microsoft Corporation | Searchable symmetric encryption with dynamic updating |
US8666944B2 (en) | 2010-09-29 | 2014-03-04 | Symantec Corporation | Method and system of performing a granular restore of a database from a differential backup |
US8713024B2 (en) * | 2010-11-22 | 2014-04-29 | Microsoft Corporation | Efficient forward ranking in a search engine |
US20120143824A1 (en) | 2010-12-02 | 2012-06-07 | Microsoft Corporation | Protecting files that include editable metadata |
US9824091B2 (en) | 2010-12-03 | 2017-11-21 | Microsoft Technology Licensing, Llc | File system backup using change journal |
US9047363B2 (en) * | 2010-12-14 | 2015-06-02 | Oracle International Corporation | Text indexing for updateable tokenized text |
US8627025B2 (en) | 2010-12-21 | 2014-01-07 | Microsoft Corporation | Protecting data during different connectivity states |
US8620894B2 (en) | 2010-12-21 | 2013-12-31 | Microsoft Corporation | Searching files |
US8484356B1 (en) | 2011-06-08 | 2013-07-09 | Emc Corporation | System and method for allocating a storage unit for backup in a storage system with load balancing |
US9229818B2 (en) | 2011-07-20 | 2016-01-05 | Microsoft Technology Licensing, Llc | Adaptive retention for backup data |
US10417337B2 (en) * | 2015-09-02 | 2019-09-17 | Canon Kabushiki Kaisha | Devices, systems, and methods for resolving named entities |
-
2010
- 2010-12-21 US US12/973,949 patent/US8620894B2/en not_active Expired - Fee Related
-
2011
- 2011-12-21 CN CN201110432331.9A patent/CN102567489B/zh active Active
-
2013
- 2013-11-20 US US14/085,699 patent/US20140081917A1/en not_active Abandoned
- 2013-11-25 US US14/089,150 patent/US9870379B2/en active Active
-
2017
- 2017-12-06 US US15/833,582 patent/US11100063B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040093323A1 (en) * | 2002-11-07 | 2004-05-13 | Mark Bluhm | Electronic document repository management and access system |
US20050050054A1 (en) * | 2003-08-21 | 2005-03-03 | Clark Quentin J. | Storage platform for organizing, searching, and sharing data |
CN101601029A (zh) * | 2005-08-18 | 2009-12-09 | Emc公司 | 数据对象搜索和检索 |
CN101326497A (zh) * | 2005-12-13 | 2008-12-17 | 国际商业机器公司 | 产生到特定时间点的备份集 |
CN101162469A (zh) * | 2007-11-09 | 2008-04-16 | 清华大学 | 基于快照的细粒度文件与目录版本管理方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105431838A (zh) * | 2013-05-01 | 2016-03-23 | 微软技术许可有限责任公司 | 串流内容和占位符 |
US10264039B2 (en) | 2013-05-01 | 2019-04-16 | Microsoft Technology Licensing, Llc | Streaming content and placeholders |
CN105431838B (zh) * | 2013-05-01 | 2019-05-03 | 微软技术许可有限责任公司 | 串流内容和占位符 |
CN106605221A (zh) * | 2014-08-21 | 2017-04-26 | 卓普网盘股份有限公司 | 具有用于即时索引的方法的多用户搜索系统 |
CN106605221B (zh) * | 2014-08-21 | 2020-09-08 | 卓普网盘股份有限公司 | 具有用于即时索引的方法的多用户搜索系统 |
US10817499B2 (en) | 2014-08-21 | 2020-10-27 | Dropbox, Inc. | Multi-user search system with methodology for personal searching |
US10853348B2 (en) | 2014-08-21 | 2020-12-01 | Dropbox, Inc. | Multi-user search system with methodology for personalized search query autocomplete |
US10977324B2 (en) | 2015-01-30 | 2021-04-13 | Dropbox, Inc. | Personal content item searching system and method |
US11120089B2 (en) | 2015-01-30 | 2021-09-14 | Dropbox, Inc. | Personal content item searching system and method |
Also Published As
Publication number | Publication date |
---|---|
US20180189335A1 (en) | 2018-07-05 |
US9870379B2 (en) | 2018-01-16 |
CN102567489B (zh) | 2015-01-07 |
US20140081948A1 (en) | 2014-03-20 |
US11100063B2 (en) | 2021-08-24 |
US8620894B2 (en) | 2013-12-31 |
US20140081917A1 (en) | 2014-03-20 |
US20120158689A1 (en) | 2012-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102567489B (zh) | 搜索文件 | |
US20210350070A1 (en) | Distributed Document Co-Authoring and Processing | |
US7996380B2 (en) | Method and apparatus for processing metadata | |
CN102567140B (zh) | 使用变化日志的文件系统备份 | |
US8775426B2 (en) | Interface to navigate and search a concept hierarchy | |
KR101312834B1 (ko) | 검색 경보 결과들 전송 방법, 검색 경보 결과들 전송 시스템, 및 컴퓨터 판독가능 저장 메모리 | |
US20100138446A1 (en) | System and methods for metadata management in content addressable storage | |
US9864736B2 (en) | Information processing apparatus, control method, and recording medium | |
US8615477B2 (en) | Monitoring relationships between digital items on a computing apparatus | |
CN102567457A (zh) | 对象模型到键值数据模型的映射 | |
MX2008000520A (es) | Indice y busqueda de contenedor inteligente. | |
CN102880714A (zh) | 文件清理方法及装置 | |
US9846697B2 (en) | Indexing data updates associated with an electronic catalog system | |
JP4670968B2 (ja) | 情報管理プログラム及び情報管理システム | |
US20140358868A1 (en) | Life cycle management of metadata | |
CN102804202A (zh) | 内容网格搜索 | |
CN102567451A (zh) | 产生数据模型 | |
CN104778192A (zh) | 表示可内容寻址存储系统的目录结构 | |
CN116186133A (zh) | 一种融合正排与倒排索引的电子文档管理方法 | |
EP3343395B1 (en) | Data storage method and apparatus for mobile terminal | |
US8495025B2 (en) | Foldering by stable query | |
CN106354802A (zh) | 一种附件检索方法及装置 | |
US9230011B1 (en) | Index-based querying of archived data sets | |
CN104285221A (zh) | 对跨各内容源的内容的高效原地保留 | |
JP5783010B2 (ja) | インデックス管理プログラム、インデックス管理装置及び検索システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150423 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150423 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |