CN102567489A - 搜索文件 - Google Patents

搜索文件 Download PDF

Info

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
Application number
CN2011104323319A
Other languages
English (en)
Other versions
CN102567489B (zh
Inventor
A.A.多施
J-L.庞
B.W.拉奇博尔斯基
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102567489A publication Critical patent/CN102567489A/zh
Application granted granted Critical
Publication of CN102567489B publication Critical patent/CN102567489B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1873Versioning 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所述的系统,其中所述搜索引擎还可操作来通过执行动作以响应于文件的新版本被复制到所述备份存储设备而更新所述索引,所述动作包括:
维护从所述索引中的令牌至表示所述文件的各版本的对象的任何引用,所述引用至少存在于所述文件被复制到所述备份存储设备之前;
针对所述文件的新版本中找到的每个令牌,将新令牌添加到所述索引中;以及
将从所述新令牌到表示所述文件的各版本的对象的引用添加到所述索引中。
CN201110432331.9A 2010-12-21 2011-12-21 搜索文件 Active CN102567489B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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.