CN101568919A - 具有分布式存储的联网计算机系统中的单个数据视图 - Google Patents

具有分布式存储的联网计算机系统中的单个数据视图 Download PDF

Info

Publication number
CN101568919A
CN101568919A CNA2006800252932A CN200680025293A CN101568919A CN 101568919 A CN101568919 A CN 101568919A CN A2006800252932 A CNA2006800252932 A CN A2006800252932A CN 200680025293 A CN200680025293 A CN 200680025293A CN 101568919 A CN101568919 A CN 101568919A
Authority
CN
China
Prior art keywords
computer
data object
identification sets
file
computer system
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
CNA2006800252932A
Other languages
English (en)
Other versions
CN101568919B (zh
Inventor
M·萨姆基
J·布雷扎克
A·K·亚达弗
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 CN101568919A publication Critical patent/CN101568919A/zh
Application granted granted Critical
Publication of CN101568919B publication Critical patent/CN101568919B/zh
Expired - Fee Related 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/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • 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/188Virtual file systems
    • G06F16/192Implementing virtual folder structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

主机计算机系统获得对应于一准则的、对计算机网络中的内容的聚集视图的请求。主机计算机系统查询联网计算机系统以标识对应于该准则的数据对象。每一作出响应的计算机系统向主机计算机系统提供储存在该作出响应的计算机系统处的指定数据对象的标识集。主机计算机系统合并各标识集以对用户形成内容的聚集视图。如果指定数据对象被复制到联网计算机,则主机计算机系统在查询结果中提供指定数据对象的一个实例。因此,促进了文件同步的并发利用以及数据对象的聚集视图。如果指定数据对象被储存在主机计算机系统处,则主机计算机系统阻断对联网计算机的关于指定数据对象的查询。

Description

具有分布式存储的联网计算机系统中的单个数据视图
背景
随着个人计算机的普及,用户通常拥有或使用一台以上机器。例如,许多商用和个人用户同时拥有或使用台式机和膝上型计算机或其它移动客户机设备。拥有或能够访问多台机器的用户可在不同的时刻为不同的目的而使用不同的机器,然而仍经常期望查询或访问所有这些机器上的常用文件或其它内容。应用程序、数据库和其它资源通常缺少支持用户在一组公共的机器之间漫游或共享文件的能力。
在企业和其它大规模计算网络中常见的受管计算网络环境中,计算网络包括诸如主域控制器等通过维护口令和许可来调节用户访问的集中网络授权机构。该集中网络授权机构还可管理网络的授权用户对本地储存的数据文件的访问。
与受管计算网络形成对比,在家庭和其它小规模网络中常见的非受管计算网络通常不包含用于调节用户访问的主域控制器或集中数据文件存储。相反,许多非受管计算网络在调节使用该网络上的各种计算设备的用户安全授权方面需要个别用户管理。此外,大多数非受管网络需要额外的用户参与和知识来存储和取回储存在网络上的各个计算设备上的内容。
联网计算设备之一上的共享存储位置的创建是在受管和非受管网络中提供更集中的数据存储的一种尝试。该共享存储位置可用作数据的指定存储,而不管用户当前正在使用哪一联网计算设备。尽管该方法试图集中化存储,但该方法因要求用户记住集中共享存储位置的位置和名称而会变得不完善。此外,在共享存储位置被重命名、移动或以其它方式修改的情况下,用户可能无法访问所需内容。
对定义数据储存在哪里的漫游用户配置文件的维护是用于受管网络中数据文件的更集中化存储的另一种方法。尽管漫游用户配置文件能协助定位储存在各个位置中的数据文件,但漫游配置文件的存储和更新对计算机网络的处理和存储器资源造成了极大的负担。因此,当联网计算设备的数目增长时,漫游用户配置文件的负担也随之增长。
将本地文件系统动作重定向到网络上的指定存储位置是受管和非受管网络中的数据文件的更集中化存储的又一种方法。例如,对本地存储位置的内容的请求可以被自动重定向以检索网络上的指定存储位置的内容,该位置可能远离计算设备。类似地,本地地储存数据的请求可被自动重定向以将所选内容储存在网络上的指定存储位置处。尽管该方法允许所有数据请求定向到中央存储位置而无需用户知道指定位置的位置,但该方法阻碍了对本地机器上的内容的存储和检索。此外,在指定存储位置被重命名、移动或以其它方式修改的情况下,用户可能无法访问所需内容。
用户通常希望以给定文件的最新或完整版本来工作,而不管他们碰巧正在使用什么机器。
概述
主机计算机系统获得对计算机网络中对应于一准则的内容的聚集视图的请求。该主机计算机系统查询联网计算机系统以根据该准则来标识数据对象。每一作出响应的计算机系统提供了储存在响应计算机上的指定数据对象的标识集。主机计算机系统合并该标识集以形成提供给用户的内容的聚集视图。
根据本发明的一个说明性方面,如果指定数据对象被复制到联网计算机,则主机计算机系统在查询结果中提供指定数据对象的一个实例。因此,可促进对数据对象的文件同步和聚集视图的并发利用。
根据本发明的另一说明性方面,如果指定数据对象被储存在主机计算机系统上,则主机计算机系统阻断对联网计算机的关于指定数据对象的查询。
根据本发明的又一说明性方面,一计算机系统向联网计算机查询分布在计算机网络中的数据对象。该计算机系统包括一内容查询服务模块,该模块接收标识指定数据对象的请求、获得储存在联网计算机上的指定数据对象的标识集、删除复制数据对象的多个标识、以及合并该标识集以向用户提供内容的聚集视图。
根据本发明的再一说明性方面,可响应于文件的聚集视图调用文件同步以在计算机系统上复制出现在聚集列表中的文件。
提供本概述以用简化的形式提出对以下详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于协助确定所要求保护的主题的范围。
附图简述
当结合附图阅读时,可以更好地理解以上本发明的概述以及以下示例性实施例的详细描述,附图作为示例而非对于所要求保护的本发明的局限被包括在内。
图1是可用于实现本发明的各方面的常规通用数字计算环境的示例的功能框图。
图2是根据本发明的一个说明性方面的非受管计算机网络的框图,该网络包括本地储存变化的内容的三个计算设备。
图3是根据本发明的一个说明性方面的图2的计算机网络的框图,它示出了用户数据请求和内容查询的启动。
图4是根据本发明的一个说明性方面的图2的计算机网络的框图,它示出了来自联网计算设备的匹配内容标识符的返回和合并。
图5是根据本发明的一个说明性方面的图2的计算机网络的框图,它示出了网络中每一计算设备处处理聚集视图请求的结果。
图6是示出根据本发明的一个说明性方面的由联网计算设备实现的聚集视图创建例程的流程图。
图7A-7D是示出根据本发明的一个说明性方面的用于显示对应于聚集视图的合并的内容标识符的屏幕显示的框图。
图8是示出根据本发明的一个说明性方面的由联网计算设备实现的聚集视图远程文档处理例程的流程图。
图9是根据本发明的各说明性实施例的用于自动化对等文件同步的系统和方法可在其中操作的环境。
图10示出了根据本发明的各说明性实施例的描绘可结合文件同步使用的文件版本管理逻辑的界面。
图11示出了根据本发明的某些说明性实施例的其中用于文件的对等同步的系统和方法可用两台以上参与机器来操作的环境。
图12示出了根据本发明的各说明性实施例的总体文件漫游和同步处理的流程图。
图13A-C示出了根据本发明的一个说明性实施例的对计算机网络中的分布式存储的查询结果的情形。
图14示出了根据本发明的一个说明性实施例的支持对具有分布式存储的联网计算机的查询的流程图。
图15示出了根据本发明的一个说明性实施例的查询具有分布式存储的联网计算机的计算机系统。
详细描述
一般而言,本发明的各方面对应于一种用于生成储存在计算机网络中的各个计算设备内的内容的聚集视图的系统和方法。本发明的某些具体方面对应于一种用于自动查询定义的网络中的计算设备并生成合并的查询响应的视图的系统和方法。尽管本发明将相对于其中所有网络计算设备都具有用于该网络的所有授权用户的公共安全配置文件的计算设备网络来描述的,但相关领域的技术人员将认识到,本发明可以在其中每一计算设备可对授权网络用户维护单独的安全配置文件的替换计算网络中实现。此外,相关领域的技术人员将认识到,本发明的部分或全部方面可在具有用于调节用户访问的集中网络授权机构的受管计算机网络中实施。因此,相对于本发明所描述的实施例本质上是说明性的,并且不应被解释为限制。
转向附图,其中相同的标号指代相同的元素,本发明被视为在一合适的计算环境中实现。尽管并非所需,但本发明将在诸如程序模块等由个人计算机执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等等。此外,本领域的技术人员可以理解,本发明可以用其它计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费者电子设备、网络PC、小型机、大型计算机等。本发明也可以在其中任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实施。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
以下描述以对可在根据本发明的某些方面的受保护网络组中使用的通用计算设备的描述开始。现在转向图1,以常规个人计算机20的形式示出了通用计算设备,包括处理单元21、系统存储器22以及将包括系统存储器的各类系统组件耦合至处理单元21的系统总线23。系统总线23可以是若干种总线结构的任一种,包括存储器总线或存储器控制器、外围总线以及使用各类总线体系结构中任一种的局部总线。系统存储器包括只读存储器(ROM)24和随机存取存储器(RAM)25。基本输入/输出系统(BIOS)26包含如在启动时协助在个人计算机20内的元件之间传输信息的基本例程,它可被储存在ROM 24中。个人计算机20还包括用于对硬盘60进行读写的硬盘驱动器27,用于对可移动磁盘29进行读写的磁盘驱动器28,以及用于对可移动光盘31,如CD-ROM或其它光介质进行读写的光盘驱动器30。
硬盘驱动器27、磁盘驱动器28以及光盘驱动器30分别通过硬盘驱动器接口32、磁盘驱动器接口33和光盘驱动器接口34连接至系统总线23。驱动器及其相关的计算机可读介质为个人计算机20提供了计算机可执行指令、数据结构、程序模块和其它数据的非易失性存储。尽管这里描述的示例环境采用了硬盘60、可移动磁盘29以及可移动光盘31,但本领域的技术人员可以理解,示例性操作环境中也可以使用可储存数据的可由计算机访问的其它类型的计算机可读介质,诸如盒式磁带、闪存卡、数字视频盘、Bernoulli盒式磁盘、随机存取存储器、只读存储器、存储区域网等等。
多个程序模块可被储存在硬盘60、磁盘29、光盘31、ROM 24或RAM 25中,包括操作系统35、一个或多个应用程序36、其它程序模块37以及程序数据38。用户可以通过诸如键盘40和定点设备42等输入设备向个人计算机20输入命令和信息。其它输入设备(未示出)可包括话筒、操纵杆、游戏垫、圆盘式卫星天线、扫描仪等等。这些和其它输入设备通常通过耦合至系统总线的串行端口接口46连接到处理单元21,但也可通过其它接口连接,如并行端口、游戏端口或通用串行总线(USB)或网络接口卡。监视器47或其它类型的显示设备也通过接口,如视频适配器48连接到系统总线23。除监视器之外,个人计算机通常包括其它外围输出设备(未示出),如扬声器和打印机。
个人计算机20可以使用到一个或多个远程计算机,如远程计算机49的逻辑连接在联网环境中操作。远程计算机49可以是另一个人计算机、服务器、路由器、网络PC、对等设备或其它常见的网络节点,并通常包括许多或所有以上相对于个人计算机20所描述的元件,尽管在图1中仅示出了存储器存储设备50。图1描述的逻辑连接包括局域网(LAN)51和广域网(WAN)52。这类联网环境常见于办公室、企业范围计算机网络、内联网以及因特网。
当在LAN联网环境中使用时,个人计算机20通过网络接口或适配器53连接至局域网51。当在WAN联网环境中使用时,个人计算机20通常包括调制解调器54或用于通过WAN 52建立通信的其它装置。调制解调器54可以是内置或外置的,它通过串行端口接口46连接至系统总线23。在联网环境中,相对于个人计算机20所描述的程序模块或其部分可储存在远程存储器存储设备中。可以理解,示出的网络连接是示例性的,也可以使用在计算机之间建立通信链路的其它装置。
图2是示出根据本发明的各说明性方面的计算机网络100的框图,该网络包括三个计算设备102、104和106。计算设备102、104和106可被实施为可用于将内容保持到计算机网络100的各种设备中的任一种。计算设备的示例包括但不限于,个人计算设备、手持式计算设备、基于服务器的计算设备、个人数字助理、移动电话、单机存储器设备、具有某种类型的存储器的电子设备等等。
在本发明的一个说明性实施例中,每一计算设备102、104和106维护对应于每一授权用户的唯一安全标识符(“SID”)的安全信息数据库108。数据库108也可维护将唯一用户SID与诸如管理员、用户、审阅者等一组或多组用户以及该组的唯一安全标识符相关联的信息。根据该说明性实施例,安全信息数据库108在计算设备102、104和106中的每一个处复制,使得包括用户SID在内的用户的安全配置文件可在计算设备102、104和106中的任一个处访问。
如图2所示,对特定用户,第一计算设备102“机器A”在诸如硬盘驱动器或其它大容量存储设备等可由用户以某种方式访问的本地存储位置上维护第一文件110“文件A”。类似地,第二计算设备104“机器B”维护第二文件“文件B”,第三机器106“机器C”维护第三文件114“文件C”,该第二和第三文件都可由用户以某种方式访问。(计算设备102、104和106可以是如图1所示的个人计算机。)如将在以下更详细解释的,在本发明的一个说明性实施例中,每一文件110、112、114维护指示哪些用户SID和组SID具有访问特定文件的许可的访问控制列表(“ACL”)。另外,每一文件ACL还可指示对特定用户SID或组SID可具有的访问类型的限制。例如,文件ACL可指示特定用户可访问文件以读取文件,但是不能以任何方式修改该文件。此外,每一文件ACL还可指示对应于创建该文件和/或最后编辑该文件的用户SID的文件的当前所有者。然而,在常规的数据管理方法下,用户必须记住每一个数据的精确位置来远程地访问数据。尽管对数据的管理是关于ACL来描述的,但是相关领域的技术人员将认识到,也可利用诸如安全加密、数字权限管理等其它数据管理。
参考图3-5,将描述在计算机网络100的三个计算设备102、104和106中的聚集视图请求的发起和处理。参考图3,该过程以用户在机器A 102处接收到内容标识请求开始。基于与特定用户或用户帐号相关联的唯一SID,机器A 102启动对应于该唯一SID以及可用于选择数据的各种准则中的任一个的本地内容查询。准则的示例包括关键词搜索、文件类型、日期范围。与本地内容查询同时地,或在处理本地查询之后,机器A 102自动向网络100中的计算设备104、106启动分布式内容查询。由于说明性网络中的每一计算设备内的安全配置文件具有复制的安全配置文件数据库108,因此机器A 102可向每一计算设备发出相同的内容查询。此外,尽管图3示出了网络100上的每一计算设备接收分布式内容查询,机器A也可将内容请求限于网络100内的计算设备的一个子集。
参考图4,接收内容请求的每一计算设备处理该请求,并返回标识匹配内容和该内容的位置的信息。例如,在该说明性示例中,机器B 104将返回标识文件B 112及其在机器B的存储系统内的具体位置的信息。同样,机器C 106将返回标识文件C及其在机器C的存储系统内的具体位置的信息。在本发明的一个说明性实施例中,位于每一计算设备处的内容不被发送到作出请求的计算设备。此外,如将在以下更详细解释的,也可处理先前储存的内容请求响应或高速缓存的内容请求响应。
一旦机器A 102接收到查询响应,查询结果即被合并。在本发明的一个说明性实施例中,合并的结果被具体化为不带对内容的位置或起源的直接引用的所有匹配内容的单个表示。然而,机器A 102可从用户获得附加指令以为作出请求的用户排序或以其它方式组织合并的结果。例如,机器A 102可按照大小、日期、起源等来排序合并的内容。再者,机器A 102可将附加视觉提示关联到合并的结果以标识特定数据,诸如储存在当前不可用的计算设备上的数据。
图5是图2的计算机网络100的框图,它示出了在该网络中的每一计算设备处处理聚集视图请求的结果。出于图5的目的,假定计算设备102、104和106中的每一个发出了聚集视图请求,并且每一计算设备的内容未被更改。机器A 102的聚集视图示出文件A 110、文件B 112和文件C 114,其中文件B和文件C以虚线示出以表示它们在机器A的远程储存。类似地,机器B 104的聚集视图以虚线示出与所示的文件A 110和文件C 114相同的内容,以表示它们被远程地储存。最后,机器C 106的聚集视图以虚线示出与所示的文件A 110和文件B 112相同的内容,以表示它们被远程地储存。基于每一计算设备102、104和106处的聚集视图,用户可访问相同的内容而无需了解其实际位置。此外,在计算设备中的一个或多个不可用的情况下,计算设备仍可用指示该内容当前不可用的附加视觉提示来示出储存在不可用机器上的内容。
图6是示出根据本发明的各方面由诸如计算设备102、104、106等网络计算设备实现的聚集视图创建例程600的流程图。在框602处,获得创建内容的聚集视图的用户请求。在本发明的一个说明性实施例中,该聚集视图请求可直接对应于用户对显示内容的任何类型的应用程序或模块的访问。例如,聚集视图请求可对应于软件应用程序内的打开文件的请求。类似地,聚集视图创建请求可对应于文件系统管理程序的启动。再者,聚集视图请求可在特定事件发生时,诸如在一天中特定的时间、在计算设备通电之后、在计算设备连接到网络之后等等被自动生成。
在框604处,计算设备向本地计算设备文件系统查询匹配内容查询的内容。在本发明的一个说明性实施例中,该内容查询采用了数据库查询的形式,诸如微软公司的SQL数据库支持的查询函数。该数据库查询包括用于确定匹配内容的一组准则。在本发明的一个说明性实施例中,该查询包括匹配由用户SID安全性令牌标识的用户能访问的所有内容的请求。另外,该查询可包括可用于匹配内容的任意数目的附加准则,诸如关键词搜索、文件类型、数据范围等等。计算设备存储系统然后可接受该查询,并标识匹配该查询准则的任何内容。相关领域的技术人员将理解,查询串的某些或所有部分,诸如用户SID,可被自动输入而无需另外的用户输入。或者,查询串的某些部分,诸如附加搜索准则可由用户在请求搜索时指定,或者可作为计算设备的配置的一部分被预定。
在判别框606处,进行测试以确定是否有额外的计算设备连接到网络100。在本发明的一个说明性实施例中,对额外计算设备的测试可对应于对连接到网络的每一计算设备的轮询。或者,对额外计算设备的测试可限于由系统管理员或用户定义的计算设备的一个特定子集。如果网络内有额外计算设备,则在框608处,与用户相关联的计算设备向该额外计算设备发送内容查询。在本发明的一个说明性实施例中,由于用户的安全配置文件,例如SID被复制到每一计算设备,因此内容查询可以是相同的。或者,如果用户的安全配置文件改变,则每一内容查询可以是独特的以适应各种用户安全标识符。框606和608将重复,直到查询了网络100内的所有计算设备或计算设备的子集。根据本发明的一个说明性实施例,查询结果以内容标识符以及诸如统一名称位置(“UNC”)路径等用于定位该内容的路径的形式被发送到作出请求的计算设备。如上所述,内容无需被移至该作出请求的计算设备。另外,作出请求的计算设备无需制作该内容的副本。此外,在本发明的一个说明性实施例中,计算设备可在诸如RAM或高速缓存等存储器中维护先前从远程计算机接收到的内容请求回复的副本。除了从远程计算设备发出新内容请求之外,计算设备还可取回对同一远程计算设备的先前已接收的内容请求,并开始处理该先前已接收的内容请求。一旦接收到新的内容请求,计算设备就可更新该响应并储存新结果以供随后使用。
一旦查询了所有联网的计算设备,在判别框610处,进行测试以确定是否有当前不可用的任何先前联网的计算设备。本领域的技术人员将理解,任意数目的计算设备可能临时不可用,诸如被断电、在无线通信范围之外、或当前未对接到网络连接。如果有当前不可用的任何先前联网的计算设备,则在框612处,该计算设备试图取回对该不可用计算设备的先前已储存的内容请求结果。
一旦查询了所有计算设备,在框614处,作出请求的计算设备合并内容查询结果作为聚集列表。在本发明的一个说明性实施例中,该计算设备可过滤或以其它方式处理合并结果。另外,该计算设备可归档、高速缓存或以其它方式储存合并结果以在随后的聚集列表创建中使用。在框616处,生成合并内容标识符视图并将其显示给用户以供操纵。在本发明的一个说明性实施例中,合并的结果以包括来自所有计算设备的内容的平面视图表示给用户。此外,在该说明性实施例中,内容的起源最初不被显示给用户。然而,相关领域的技术人员将理解,作出请求的计算设备可执行附加过滤或组织来将匹配内容显示给用户。例如,作出请求的计算设备可按照各种属性,诸如数据大小、数据类型、标题、日期准则等来排序匹配内容。此外,内容的起源的位置可作为初始视图的一部分或作为用户请求上可用的附加数据的一部分被直接提供给用户。再者,在计算设备之一不可用的情况下,合并视图可用诸如透明图标等特殊视觉提示来表示给用户,该特殊视觉提示向用户指示该内容可能储存在不可用计算设备上但是当前不能访问。在另一说明性实施例中,计算设备可利用聚集视图的先前储存的记录,并将其与当前聚集视图进行比较。计算设备然后可指示哪些文件已被修改、移除或添加。在框618处,例程600终止。
图7A-7D是示出根据本发明的一个说明性实施例的用于以聚集列表视图来显示合并内容标识符的各种屏幕显示的框图。参考图7A,屏幕显示700可包括允许用户选择感兴趣的各种文件位置的第一显示部分702。屏幕显示700还可包括用于显示储存在所选文件空间中的特定内容的第二显示部分704。参考先前图2-5的示例,如果用户要通过操纵对应于“我的文档”的图形图标706,或启动对查看对应于当前用户的所有文件的请求来启动聚集视图请求,则计算设备将执行例程600。所得的三个文件110、112、114然后在第二显示部分704中向用户显示,而无需用户了解内容的来源。与其形成对比,在传统文件系统管理下,用户需要单独访问每一计算设备文件系统以标识感兴趣的每一特定文件的位置。例如,如果文件110、112和114分别对应于图标708、710和712,则用户通常需要单独访问每一图标来查看由聚集视图创建的相同文件。
参考图7B,屏幕显示700的第二部分中的一个或多个内容标识符可包括协助用户的视觉提示。例如,如果计算设备当前未连接到网络,且作出请求的计算设备利用了先前高速缓存的或归档的内容请求,则该内容可如对文件112所示的在视觉上作出区分。在本发明的一个说明性实施例中,不可用内容可用虚线边框和/或以半透明方式来显示。在另一示例中,由计算设备确定为自从前一聚集视图请求以来已被修改的内容可如对文件114所示地向用户高亮显示。在本发明的一个说明性实施例中,修改的数据可在屏幕显示700上高亮显示。
参考图7C和7D,计算设备可自动排序合并的匹配内容请求。另外,计算设备可获得排序合并的匹配内容请求的用户输入。在本发明的一个说明性实施例中,合并的匹配内容可根据内容的位置来分组。参考图7C,屏幕显示700可包括指示位置的标识的附加标识符714、716、718。也可在屏幕显示700上显示附加的存储位置级别。在本发明的另一实施例中,合并的匹配内容可根据数据的各种属性来分组。参考图7D,屏幕显示可包括显示数据的标题、存储中的数据的大小以及数据文件的类型的列表视图。如果数据要如图7D所示按照大小来排序,则文件A 720将在列表的顶部,之后是文件C 722和文件B 724。在该说明性实施例中,用户可通过操纵屏幕显示700来改变排序准则。尽管图7C和7D示出了各种排序示例,但相关领域的技术人员将理解,其它排序准则和/或屏幕显示也被包括在本发明的范围之内。
参考图8,将描述用于操纵聚集视图中的内容的例程800。在框802处,获得操纵显示在聚集视图中的内容的请求。相关领域的技术人员将理解,对内容的操纵可包括用主机软件应用程序打开数据文件、修改内容、删除内容、复制内容和/或移动内容。在框804处,作出请求的计算设备从本地安全信息数据库108中获得安全标识符。
在判别框806处,进行测试以确定所选内容是否为本地储存的。如果内容是本地储存的,则在框808处,该计算设备用本地安全信息来处理该请求以确定用户是否被授权操纵所选内容。如果内容不是本地储存的,则在判别框810处,进行测试以确定计算设备是否本地维护了所请求数据的副本。在本发明的一个说明性实施例中,该计算设备可在诸如计算设备高速缓存等易失性存储器中维护先前访问的文档的副本。如果文件的副本本地可用,则例程800前进到框808以如上所述用本地安全信息来处理该请求。如果未本地维护所请求文件的副本,则在框812处,作出请求的计算设备将特定用户的安全信息作为令牌连同操纵内容的请求一起发送到实际储存该内容的计算设备。接收计算设备然后利用该安全令牌来处理该请求并发送响应。在框814处,发送计算设备从接收计算设备接收响应。如果在框808或框812处操纵被授权,则在框816处允许用户操纵内容。例程800在框818处终止。
除了如先前所讨论的对联网计算机系统(例如,图2所示的网络100)中的分布式存储查询内容(数据对象)之外,用户通常使用几个计算机系统。例如,用户可在家中或在工作地点具有台式计算机,并且具有用户在旅行时使用的膝上型计算机。在这种情况下,用户可创建或修改一个计算机系统上的文件。用户通常希望将(用户在一个计算机系统上创建或修改的)文件与另一计算机系统同步。以下本发明的说明性实施例支持对相关联用户情形的数据对象同步。
图9示出了根据本发明的一个说明性实施例的用于文件或其它内容的对等同步的系统和方法可在其中操作的环境。用户可使用或访问一组用于商业、个人或其它用途的多个计算机、客户机或其它机器,包括说明性地示为台式计算机的第一机器902,以及说明性地示为膝上型计算机或其它移动计算机的第二机器914。可同步其它计算机、客户机或其它机器,包括例如启用网络的蜂窝电话、启用网络的电子邮件客户机、启用网络的个人数字助理、启用网络的媒体播放器或其它硬件。在所示的操作中,第一机器902和第二机器914可经由诸如通用串行总线连接、火线(FireWire)TM连接、蓝牙(BlutTooth)TM连接、无线保真(WiFi)TM连接或其它有线、无线、光学或其它信道或连接来连接。根据本发明的各说明性实施例,连接918可以如在局域网(LAN)中那样被连续地维持,或者如在某些实施例中在两台或多台参与机器之间间歇地连接。
根据本发明的各说明性实施例,第一机器902可生成并呈现用户界面904,诸如图形用户界面、命令行界面、激活语音的或其它界面,以允许用户访问应用程序、文件、操作系统和其它资源。根据如图所示的说明性实施例,用户可访问同步界面906来激活、选择和管理文件或其它同步功能。同步界面906可以主存在第一机器902的操作系统内,或者在其它实施例中可以被结合在一个或多个应用程序、模块或其它资源中。根据如图所示的说明性实施例,同步界面906可向用户呈现用于标识、激活和管理第一机器902和第二机器914或其它机器或目标之间的同步事件的选择和选项。一般而言,这些同步活动可涉及参与机器之间所选或所发现的文件、文件夹、目录、卷、盘或其它内容、信息、存储或媒体的同步。
根据本发明的各说明性实施例,用户可操纵同步界面906,来选择一组经同步的文件926以便跨参与机器或系统来同步或漫游。该组经同步的文件926例如可包含从储存在第一机器902上的一组本地文件912内,以及从储存在第二机器914上的另一组本地文件916内,或其它文件或信息标识的文件或其它内容。该组经同步的文件926可由主存在第一机器902中的同步引擎908标识、储存和管理。同步引擎908可与在第一机器902内维护的文件系统日志910通信,以跟踪并记录被指定来同步或在该组经同步的文件926内漫游或其它的文件、文件夹、目录、卷或其它内容或信息的状态。在说明性实施例中,第二机器914或其它或另外的参与机器同样可维护同步引擎908、文件系统日志910和其它文件管理资源的另一实例的形式的相同或相似的逻辑,在各实施例中,其每一个同样可被主存在操作系统或其它资源中。
根据本发明的各说明性实施例,该组经同步的文件926也可被配置成包括用户最常使用的目录、文件夹或其它资源,例如,诸如我的文档、我的音乐、桌面、收藏夹等文件夹或其它文件或源的示例性文件夹。常用目录、文件夹或其它源可被配置成向同步引擎908或其它资源自动宣告其对于同步的可用性,以便于由用户通过接受或高亮显示这些源和同步目的地来进行选择或激活。可选择或配置不是一个用户专用的文件夹、目录或其它源来进行同步,例如对同步系统全局的文件夹或其它内容,包括面向任务的项目文件夹、诸如c:\users\public形式的文件夹等公共文件夹、或其它文件夹、目录或其它源。在本发明的这些和其它实施例中,除了手动指定内容之外或作为其替代,文件夹、目录和其它源可由任何一台或多台机器上的发现逻辑来自动发现。同样,在本发明的某些实施例中,除了手动注册目的地机器的地址或标识符之外或作为其替代,可以是供包括在该组参与机器内的候选者的机器也可使用诸如可检测局域网上连接的机器的逻辑或其它逻辑等发现逻辑来自动检测。
为了同步管理,第一机器902、第二机器914或其它机器中的同步引擎908可检测第一机器902、第二机器914或其它机器或硬件的连接状态来确定这些机器享有彼此之间或与其它参与硬件之间经由连接918或其它连接或信道的连通性的情况。例如,同步引擎908可建立通过第一机器902、第二机器914或其它参与机器的可用通信端口的连接,包括通过适当的防火墙资源的隧道。
当例如经由USB或无线连接建立了连通性时,第一机器902中的同步引擎908可认证各参与机器以确保文件同步被正确启动。当验证了经认证的连接时,第一机器902中的同步引擎108可启动各参与机器之间的自动文件漫游、映像制作或同步活动。例如,第一机器902中的同步引擎908可访问该组经同步的文件926以确定位于第一机器902上的哪些文件、文件夹、目录、卷或其它内容需要被传输到第二机器914,同样位于第二机器914上的哪些相似的内容需要被传输到第一机器902,以维护这些机器之间的一组相干或一致的文件或其它信息。
第一机器902中的同步引擎908由此可检查第一机器902的文件系统日志910或第二机器914的文件系统日志910以检查各参与机器上的文件和其它内容的状态、行为或历史。关于该组经同步的文件926的状态、行为、历史或其它元数据或信息不仅可包括指示文件的最近编辑、下载或访问的日期戳信息,而且还可包括诸如文件大小、文件类型、关于文件的先前版本或传输的信息以及其它信息等进一步的信息。
访问关于参与机器上的文件和其它内容的状态的这一和其它信息之后,第一机器的同步引擎908可在一个或多个位置中删除、复制、编辑、重新格式化、改变存储位置、或以其它方式操纵该组经同步的文件926。这些动作可被执行以确保在第一机器902、第二机器914和其它参与机器中维护了给定文件的同一版本。根据本发明的说明性实施例,第一机器902中的同步引擎可向经处理的文件应用增量同步逻辑,以使在各参与机器之间仅漫游自从最后一次同步或其它点以来改变的文件或文件部分。在涉及公司或其它组织LAN的本发明的说明性实施例中,系统管理员可将第一机器902或其它机器的同步引擎908设置为限制特定文件向特定用户的传播,或应用其它同步控制。当应用许可时,可以注意到许可应被安排为使得数据可正确地迁移到所有参与的机器以确保到所有必要目的地的连接路径。根据本发明的各实施例,其它配置也是可能的。
根据本发明的说明性实施例,用户、管理员或操作系统设置可将第一机器902的同步引擎908、第二机器914的同步引擎908或其它资源执行的同步管理、文件传输和其它活动设置为在期望的优先级上执行以作为后台任务来操作,或挂起并继续文件传输活动直到建立或重新建立了宽带连通性,或在其它时间或在其它条件下采取其它动作。根据本发明的说明性实施例,第一机器902、第二机器914或其它参与机器、客户机、设备或硬件例如可由域名服务(DNS)或其它地址或标识符来标识。第一机器902的同步引擎908、第二机器914的同步引擎908或其它同步引擎实例或逻辑可采用自动发现逻辑来检测其它参与机器何时出现在因特网或其它网络上,使得机器可在它们享有因特网或其它连通性的任何点处继续与其它机器的同步活动。
用户可从用户的一组参与机器的任何一个或多个中选择性地或任意地选择用户希望在这些机器之中复制、漫游或同步的文件或其它源内容而没有任何限制。此外,第一机器902、第二机器914和任何其它参与机器可在组的基础上共享一组经同步的文件926,但是这些机器无需直接连接到一起或同时连接在一起来执行本发明的同步操作。相反,同步活动可取决于每一机器或机器的子组或子网络的连接、网络和其它条件自动且有时机地发生。(然而,可以注意,在这些说明性实施例中,该组参与机器能够在总体或累积的基础上实现全桥接或连接的网络,即使机器、机器的子组或子网络在不同的时间、不同的地点或使用不同类型的网络连接来连接)。用户可选择指定位于第一机器902、第二机器914或其它机器上的所有文件来漫游或同步到另一参与机器,以在需要时实现对这些源文件的备份。
依照图10的本发明的说明性实施例,第一机器902的同步逻辑908、第二机器914的同步逻辑或其它逻辑或实例可结合执行文件传输和更新来应用版本管理逻辑1020。在如图所示的说明性实施例中,当同步逻辑908检测到文件的两个实例之间的版本冲突时(例如,准备较老的文件来盖写该同一文件的较新版本),版本管理逻辑1020可向用户呈现一对话框或查询以解决该冲突来重命名或移动过时的文件、替换该文件的另一版本、或采取其它动作。可检测到其它基于版本的和其它冲突。在某些实施例中,并非向用户呈现用于异常处理的丰富界面或除此之外,而是版本管理逻辑1020也可向冲突文件或数据应用自动规则或处理,诸如执行一比较功能来编辑或保存冲突文件、或以其它方式处理不同的版本。
再次可注意到,在本发明的说明性实施例中,诸如在图11中,两台以上机器可在同一自动基础上参与文件同步和相关功能。如图所示的机器集合可至少包括第一机器902、第二机器914、第三机器1122、第四机器1124或其它机器、客户机、计算机或设备来同步所选的文件或其它内容。在各说明性实施例中,机器可经由诸如图9所示的连接918等有线连接直接连接,或通过其它有线、无线或光学连接,包括用于启用网络的蜂窝电话的空中接口来连接。然而,用户可以用相对较小的配置工作来启动对所需文件的选择性同步,而不需要或不依赖于诸如因特网备份服务器等中间存储、逻辑或控制资源。本发明的各实施例因此增强了文件漫游操作的可靠性、速度和互操作性。
图12示出了根据本发明的各说明性实施例的总体文件共享和同步处理。在步骤1202中,处理可以开始。在步骤1204中,用户可启动或登录到第一机器902,诸如个人计算机、膝上型或移动计算机、启用网络的蜂窝电话或其它客户机、机器、硬件或设备。在步骤1206中,用户可选择或激活一组源文件、文件夹、目录或其它源文件、源位置或其它信息或内容,从而高亮显示第一机器902或其它位置上的一组文件。在步骤1208中,用户可指定一组经同步的文件926要在一组工作的计算机或其它机器之间自动同步和管理。在步骤1210中,可由同步引擎908或其它逻辑自动发现指定的一个或多个机器的网络连接状态。在步骤1212中,用户可选择,或者同步引擎908可检索所储存的对一个或多个目的地机器的指定来进行文件或其它数据同步。
在步骤1214中,可建立并向诸如第二机器914或其它计算机、机器、客户机或硬件等所选择的一个或多个机器认证诸如USB或其它有线或无线连接等连接918。在步骤1216中,同步引擎908或其它控制逻辑可启动第一机器902和第二机器914之间该组经同步的文件926的文件传输或其它内容传输。在步骤1218中,第一机器902或第二机器914中的任一个或两者的同步引擎908可向所传输的该组经同步的文件926或其它内容应用数字权限管理或保护逻辑。任何一个或多个参与机器的同步引擎908可自动寻找复制诸如音乐或其它媒体内容等文件或内容的授权或许可证。在授权被拒绝的情况下,可操作的同步引擎908可从目标机器上删除未授权的一个或多个文件、通知用户未授权的副本已被移除、或采取其它动作。
在步骤1220中,第一机器902或第二机器914中的任一个或两者的同步引擎908可向传输的该组经同步的文件926或其它内容应用版本管理逻辑1020以捕获文件的不一致版本、尝试在较新版本上复制的文件的过时版本的实例,或检测其它版本冲突。版本管理逻辑1020可向用户呈现一对话框以获得其优选的对版本冲突的处置,诸如漫游文件的最新版本、重命名或备份文件的过时版本、对冲突版本替换其它文件、或采取其它动作。在步骤1222中,一个或多个参与机器中的同步引擎908或其它逻辑可更新该对应的本地机器或硬件中的文件系统逻辑910。在步骤1224中,处理可重复、返回到前一处理点、跳转到另一处理点或结束。
在本发明的各说明性实施例中,用户可向联网计算机系统查询数据对象以及启动在网络计算机系统中的多个计算机上对所选数据对象的同步。(数据对象是可单独寻址的信息单元。数据对象的示例包括文件、文件夹、目录和电子媒体。)如将讨论的,本发明的各说明性实施例支持可在多个计算机上复制数据对象的用户情形,其中用户向网络计算机系统查询指定的数据对象。
图13A-C示出了根据本发明的一个实施例对计算机网络中的分布式存储的查询结果的情形。图13A-C中的情形对应于由个人计算机1301、1303、1305和1307构成的计算机网络。作为一个示例,当计算机1307的用户在用户的联网台式和膝上型计算机上从家里工作时,该用户查询在2004年6月17日创建的文件。在该示例中,文件A和B是用户在计算机1301上创建的文档,文件C和D是用户在计算机1303上创建的文档,而文件E和F是具有音乐内容的文档。文件X、Y和Z(分别与计算机1301、1303和1305相关联)是在不同于2004年6月17日的日期创建的。
参考图13A,计算机1301储存文件A和B,计算机1303储存文件C和D,而计算机1305储存E和F。计算机1307处的用户生成查询网络1300的请求以获得在2004年6月17日创建的数据对象的标识。计算机1307随后将带有日期准则(2004年6月17日)的查询请求发送给计算机1301、1303和1305。因此,计算机1307从计算机1301接收到带有文件A和B的标识的响应,从计算机1303接收到带有文件C和D的标识的响应,并从计算机1305接收到带有文件E和F的标识的响应。计算机1307组合来自各响应的对指定数据对象的标识,并将查询结果呈现给用户。
图13B所示的情形类似于图13A,不同之处在于文件E和F被复制到计算机1301。(文件的复制先前已讨论,例如,图12。)由此,计算机1301储存文件A、B、E和F,计算机1303储存文件C和D,而计算机1305储存文件E和F。计算机1307处的用户生成查询网络1300的请求以获得在2004年6月17日创建的数据对象的标识。计算机1307然后将带有日期准则(2004年6月17日)的查询请求发送给计算机1301、1303和1305。因此,计算机1307从计算机1301接收到带有文件A、B、E和F的标识的响应,从计算机1303接收到带有文件C和D的标识的响应,并从计算机1305接收到带有文件E和F的标识的响应。计算机1307组合(合并)来自各响应的对指定数据对象的标识符,并将查询结果呈现给用户。然而,如将在图14中更详细讨论的,计算机1307确定由计算机1301标识的文件E和F是与计算机1307标识的相同的文件E和F。因此,显示给用户的查询结果仅包含了文件E和F一次。由此,查询结果指示文件A、B、C、D、E和F而非文件A、B、E、F、C、D、E和F。复制文件通常具有在各目标机器上都相同的名称。然而,本发明的各实施例支持具有不同名称的复制文件。
图13C所示的情形类似于图13A,不同之处在于文件E和F被复制到计算机1301,而文件A被复制到计算机1307。由此,计算机1301储存文件A、B、E和F,计算机1303储存文件C和D,计算机1305储存文件E和F,而计算机1307储存文件A。计算机1307处的用户生成查询网络1300的请求以获得在2004年6月17日创建的数据对象的标识。计算机1307随后将带有日期准则(2004年6月17日)的查询请求发送给计算机1301、1303和1305。然而,计算机1307已具有复制文件A,并且不向计算机1301查询文件A。(在一个实施例中,当计算机1307查询结果时,计算机1307首先检查其高速缓存的结果。如果计算机1307找到一文件,则计算机1307修改对机器1301的传出查询,使得仅向机器1301查询计算机1307上不存在的文件。)因此,计算机1307从计算机1301接收到带有文件B、E和F的标识的响应,从计算机1303接收到带有文件C和D的标识的响应,并从计算机1305接收到带有文件E和F的标识的响应。计算机1307组合来自各响应的对指定数据对象的标识,并将查询结果呈现给用户。
图14示出了根据本发明的一个说明性实施例的支持对具有分布式存储的联网计算机的查询的流程图1400。在步骤1401中,用户的计算机(例如,计算机1307)通过用户界面(例如,如图15所示的用户界面1507)接收查询请求。在步骤1403中,用户的计算机(本地计算机)确定用户计算机上的复制数据对象,并且不向联网计算机(远程计算机)查询储存在用户计算机上的复制数据对象。因此,可增强执行查询的性能。在步骤1405中,用户的计算机向联网计算机查询其余的数据对象。用户的计算机在步骤1407中从联网计算机接收响应。在步骤1409中,仅标识指定数据对象一次。步骤1411合并储存在联网计算机上的指定数据对象以及储存在用户计算机上的数据对象的标识。如由步骤1411确定的查询结果可通过用户界面向用户显示。
除了过程1400提供联网计算机系统中的指定对象的单个视图之外,过程1400还可被扩展,使得未储存在联网计算机上的指定对象可被复制到联网计算机。例如,如图13C所示,查询结果示出文件A、B、C、D、E和F,而仅文件A被储存在计算机1307处。然后可启动文件同步,使得文件B、C、D、E和F也被储存在计算机1307上。
图15示出了根据本发明的一个说明性实施例的查询具有通过网络1513分布式存储的联网计算机的计算机系统1500。在本发明的一个说明性实施例中,计算机系统1500基于如图1所示的计算机平台。计算机系统包括内容查询服务模块1501、复制数据结构1503、对等状态数据结构1505、用户界面1507、网络接口1509和高速缓冲存储器1511。用户界面1507可接口到用户输入设备(例如,键盘)和用户输出设备(例如,显示设备)。
当用户通过用户界面1507请求时,内容查询服务模块1501执行如图14所示的过程1400。内容查询服务模块1501查询联网计算机并通过网络接口1509和网络1513从联网计算机接收响应。如果内容查询服务模块1501确定联网计算机是离线的,则内容查询服务模块1501制止向离线的联网计算机发送查询。在这一情况下,内容查询服务模块1501可向高速缓冲存储器(本地易失性存储器)1511查询来自离线的联网计算机的最近访问的数据对象。
并且,内容查询服务模块1501还在复制数据结构1503中储存关于复制数据对象的信息。例如,如果储存在计算机系统1500上的文件也在联网计算机上复制,则内容查询服务模块1501不向联网计算机查询复制数据对象。在本发明的一个实施例中,内容查询服务模块1501使用搜索索引来确定文件驻留在何处。如果文件被本地复制,则本地机器上的搜索索引将包含该文件的名称。
当内容查询服务模块1501从联网计算机接收到响应时,内容查询服务模块1501合并所选数据对象的标识,并可通过用户界面1507向用户显示查询结果。
如本领域的技术人员可以理解的,具有包含用于控制计算机系统的指令的相关联的计算机可读介质的计算机系统可用于实现此处公开的说明性实施例。
尽管以对结构特征和/或方法动作专用的语言描述了本主题,但是可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求书的示例形式来公开的。

Claims (20)

1.一种连接到计算机网络的本地计算机系统中的其上储存有计算机可执行指令的计算机可读介质,所述指令被配置成执行一种方法,所述方法包括以下步骤:
(a)获得根据一准则来标识指定数据对象的请求;
(b)确定储存在所述本地计算机系统上、并对应于所述指定数据对象的本地标识集的指定数据对象;
(c)向所述计算机网络中的第一计算机系统查询未储存在所述本地计算机上的指定数据对象;
(d)获得储存在所述第一计算机系统处的指定数据对象的第一标识集;以及
(e)合并所述本地标识集和所述第一标识集以形成一合并的标识集。
2.如权利要求1所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(f)从所述合并的标识集生成结果。
3.如权利要求1所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(f)向所述计算机网络中的第二计算机系统查询未储存在所述本地计算机上的指定数据对象;
(g)获得储存在所述第二计算机系统处的指定数据对象的第二标识集;
(h)如果所述第一标识集和所述第二标识集包含复制数据对象的对应标识,则仅维护所述复制数据对象的一个标识;以及
(i)合并所述本地标识集、所述第一标识集和所述第二标识集以形成一合并的标识集。
4.如权利要求2所述的计算机可读介质,其特征在于,(f)还包括被配置成执行以下步骤的计算机可执行指令:
向用户显示所述结果。
5.如权利要求1所述的计算机可读介质,其特征在于,所述计算机网络包括第三计算机系统,并且所述计算机可执行指令还被配置成执行以下步骤:
(f)如果所述第三计算机系统在所述计算机网络中在线,则获得储存在所述第三计算机系统处的指定数据对象的第三标识集;以及
(g)将所述第三标识集与所述第一标识集和所述本地标识集合并。
6.如权利要求1所述的计算机可读介质,其特征在于,所述计算机网络包括第三计算机系统,并且所述计算机可执行指令还被配置成执行以下步骤:
(f)如果所述第三计算机系统离线,则从高速缓冲存储器中获得所述第三计算机系统的指定数据对象的第三标识集。
7.如权利要求1所述的计算机可读介质,其特征在于,(a)包括还被配置成执行以下步骤的计算机可执行指令:
确定所述指定数据对象与对应于用户的唯一标识符相关联。
8.如权利要求7所述的计算机可读介质,其特征在于,所述用户是所述指定数据对象的所有者。
9.如权利要求2所述的计算机可读介质,其特征在于,所述结果是在不标识所述指定数据对象的相关联位置的情况下表示的。
10.如权利要求2所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(g)根据一排序准则来对所述结果分组。
11.如权利要求10所述的计算机可读介质,其特征在于,所述排序准则对应于所述指定数据对象的位置。
12.如权利要求1所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(f)响应于一指定事件的发生启动所述请求。
13.如权利要求1所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(f)限制被查询来标识所述指定数据对象的远程计算机系统的数目。
14.如权利要求1所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(f)基于所述合并的标识集来同步数据对象。
15.如权利要求2所述的计算机可读介质,其特征在于,还具有被配置成执行以下步骤的计算机可执行指令:
(g)高亮显示所述结果中的一条目以指示一相关联的数据对象自从生成标识指定数据对象的前一结果以来已被修改。
16.一种向联网计算机查询分布在计算机网络中的数据对象的计算机系统,所述计算机系统包括:
允许所述计算机系统与所述计算机网络中的第一计算机系统和第二计算机系统通信的网络接口;
用户界面模块;
包含复制数据对象的指示的复制数据结构;以及
内容查询服务模块,它通过所述用户界面模块从用户接收根据一准则来标识指定数据对象的请求、获得储存在所述第一计算机系统处的指定数据对象的第一标识集和储存在所述第二计算机系统处的指定数据对象的第二标识集、根据所述复制数据对象的指示从所述标识集之一中删除复制数据对象的相应标识、以及合并所述第一标识集和所述第二标识集。
17.如权利要求16所述的计算机系统,其特征在于,还包括:
提供关于一远程计算机是否离线的状态信息的对等状态数据结构;以及
其中如果所述远程计算机离线,则所述内容查询服务模块阻断对所述远程计算机的查询。
18.如权利要求17所述的计算机系统,其特征在于,还包括:
储存来自所述远程计算机的先前已访问的数据对象的本地存储器;以及
其中所述内容查询服务模块从所述本地存储器中获得与所述第一标识集和所述第二标识集相关联的指定数据对象的标识集。
19.如权利要求18所述的计算机系统,其特征在于,所述本地存储器包括高速缓冲存储器。
20.一种连接到计算机网络的本地计算机系统中的其上储存有计算机可执行指令的计算机可读介质,所述指令被配置成执行一种方法,所述方法包括以下步骤:
(a)获得根据一准则来标识指定数据对象的请求;
(b)确定储存在所述本地计算机系统上、并对应于所述指定数据对象的本地标识集的指定数据对象;
(c)向第一计算机系统和第二计算机系统查询未储存在所述本地计算机上的指定数据对象;
(d)从所述第一计算机接收带有所述指定对象的第一标识集的第一响应,并从所述第二计算机系统接收带有所述指定数据对象的第二标识集的第二响应;
(e)如果所述第一标识集和所述第二标识集中的每一个都包含相应的复制数据对象的标识,则仅维护所述复制数据对象的一个标识;
(f)合并所述本地标识集、所述第一标识集和所述第二标识集以形成一合并的标识集;以及
(g)从所述合并的标识集生成结果。
CN2006800252932A 2005-07-12 2006-07-10 具有分布式存储的联网计算机系统中的单个数据视图 Expired - Fee Related CN101568919B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/179,433 US7765229B2 (en) 2005-07-12 2005-07-12 Single view of data in a networked computer system with distributed storage
US11/179,433 2005-07-12
PCT/US2006/027073 WO2007008996A2 (en) 2005-07-12 2006-07-10 Single view of data in a networked computer system with distributed storage

Publications (2)

Publication Number Publication Date
CN101568919A true CN101568919A (zh) 2009-10-28
CN101568919B CN101568919B (zh) 2013-01-16

Family

ID=37637932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800252932A Expired - Fee Related CN101568919B (zh) 2005-07-12 2006-07-10 具有分布式存储的联网计算机系统中的单个数据视图

Country Status (9)

Country Link
US (1) US7765229B2 (zh)
EP (1) EP1902395A4 (zh)
JP (1) JP2009501397A (zh)
KR (1) KR20080031256A (zh)
CN (1) CN101568919B (zh)
BR (1) BRPI0613131A2 (zh)
MX (1) MX2008000514A (zh)
RU (1) RU2008101418A (zh)
WO (1) WO2007008996A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078926A (zh) * 2012-12-28 2013-05-01 华为技术有限公司 分布式存储系统的文件访问方法和装置以及系统
CN114546273A (zh) * 2022-02-22 2022-05-27 苏州浪潮智能科技有限公司 聚合特性兼容多站点同步的方法、系统、设备和存储介质

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060101064A1 (en) 2004-11-08 2006-05-11 Sharpcast, Inc. Method and apparatus for a file sharing and synchronization system
US7870478B1 (en) * 2005-10-31 2011-01-11 Adobe Systems Incorporated Repurposing subsections and/or objects
EP1939760A1 (fr) * 2006-12-20 2008-07-02 Gemplus Procédé et dispositif de gestion de données dans un environnement distribué
FR2911467B1 (fr) * 2007-01-17 2009-05-08 Avanquest Software Sa Procede de gestion d'une memoire d'un terminal
US8170989B2 (en) * 2007-07-16 2012-05-01 International Business Machines Corporation Method and system for document management and exchange
CN101951837B (zh) * 2008-02-22 2013-02-13 皇家飞利浦电子股份有限公司 用于采用分布式源进行x射线成像的高分辨率准静态设置
US20090234872A1 (en) * 2008-03-11 2009-09-17 Microsoft Corporation Synchronization of disconnected/offline data processing/entry
US20090327405A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Enhanced Client And Server Systems for Operating Collaboratively Within Shared Workspaces
US8612381B2 (en) 2008-09-12 2013-12-17 International Business Machines Corporation Enhanced synchronization framework providing improved sync granularity
US8650634B2 (en) * 2009-01-14 2014-02-11 International Business Machines Corporation Enabling access to a subset of data
US20100262582A1 (en) * 2009-04-10 2010-10-14 Microsoft Corporation Content synchronization across multiple computers
US20110040788A1 (en) * 2009-08-14 2011-02-17 Ic Manage, Inc. Coherent File State System Distributed Among Workspace Clients
US20140222758A1 (en) * 2009-08-14 2014-08-07 Ic Manage, Inc. Coherent File State Maintained Among Confederated Repositories By Distributed Workspace Apparatuses Backed Up By a File State Ledgerdemain Store
KR100985166B1 (ko) * 2009-11-03 2010-10-05 (주)피스페이스 분산 저장 시스템에서 파일을 동기화하는 장치 및 방법
US8610924B2 (en) 2009-11-24 2013-12-17 International Business Machines Corporation Scanning and capturing digital images using layer detection
US8441702B2 (en) 2009-11-24 2013-05-14 International Business Machines Corporation Scanning and capturing digital images using residue detection
US20110179270A1 (en) * 2010-01-20 2011-07-21 The Provost, Fellows and Scholars of the College of the Holy and Undivided Trinity of Queen Elizab Data Retrieval System
US11308490B2 (en) * 2010-07-28 2022-04-19 Cox Communications, Inc. Security system and method that allows users to securely setup and maintain system security for all business systems
US20180046627A1 (en) * 2011-12-12 2018-02-15 International Business Machines Corporation Pattern triggers while searching an index of data being ingested into a distributed computing system
US20130159408A1 (en) * 2011-12-15 2013-06-20 Microsoft Corporation Action-oriented user experience based on prediction of user response actions to received data
US8880249B2 (en) * 2011-12-30 2014-11-04 General Electric Company System, method, and computer program for an integrated human-machine interface (HMI) of an engine-generator
US10055419B2 (en) * 2012-02-03 2018-08-21 Apple Inc. User interface for accessing documents from a computing device
US10057318B1 (en) * 2012-08-10 2018-08-21 Dropbox, Inc. System, method, and computer program for enabling a user to access and edit via a virtual drive objects synchronized to a plurality of synchronization clients
US20140351364A1 (en) * 2013-02-26 2014-11-27 Einar Rosenberg System, method, and apparatus for using a virtual bucket to transfer electronic data
US20150046557A1 (en) * 2013-02-10 2015-02-12 Einar Rosenberg System, method and apparatus for using a virtual bucket to transfer electronic data
US9331964B2 (en) * 2013-02-26 2016-05-03 Creating Revolutions Llc System, method, and apparatus for using a virtual bucket to transfer electronic data
WO2014174578A1 (ja) * 2013-04-22 2014-10-30 株式会社日立製作所 エッジサーバ及び記憶制御方法
GB2517159A (en) * 2013-08-13 2015-02-18 Sony Comp Entertainment Europe Data processing
CN105141569B (zh) * 2014-05-30 2019-06-21 华为技术有限公司 媒体处理方法及设备
US11544670B2 (en) 2016-08-07 2023-01-03 Verifi Media, Inc. Distributed data store for managing media
US20180121465A1 (en) * 2016-11-01 2018-05-03 Microsoft Technology Licensing, Llc Network-based communication and file sharing system
USD849029S1 (en) * 2016-12-30 2019-05-21 Adobe Inc. Display screen with graphical user interface for a marketing campaign
US10817895B2 (en) 2016-12-30 2020-10-27 Adobe Inc. Marketing campaign system and method
USD845974S1 (en) * 2016-12-30 2019-04-16 Adobe Inc. Graphical user interface for displaying a marketing campaign on a screen
US11334596B2 (en) 2018-04-27 2022-05-17 Dropbox, Inc. Selectively identifying and recommending digital content items for synchronization

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2067633C (en) * 1991-07-24 1996-10-01 Eric Jonathan Bauer Method and apparatus for accessing a computer-based file system
US5668986A (en) * 1991-10-02 1997-09-16 International Business Machines Corporation Method and apparatus for handling data storage requests in a distributed data base environment
US5590319A (en) * 1993-12-15 1996-12-31 Information Builders, Inc. Query processor for parallel processing in homogenous and heterogenous databases
US7165174B1 (en) 1995-02-13 2007-01-16 Intertrust Technologies Corp. Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management
US5708812A (en) 1996-01-18 1998-01-13 Microsoft Corporation Method and apparatus for Migrating from a source domain network controller to a target domain network controller
US6049809A (en) 1996-10-30 2000-04-11 Microsoft Corporation Replication optimization system and method
US5968121A (en) 1997-08-13 1999-10-19 Microsoft Corporation Method and apparatus for representing and applying network topological data
JP2000122910A (ja) * 1998-10-20 2000-04-28 Dainippon Printing Co Ltd データベースシステム、及びそのためのアクセス管理装置
US7076476B2 (en) 1999-03-02 2006-07-11 Microsoft Corporation Method and system for integrated service administration via a directory service
US6751634B1 (en) 1999-08-26 2004-06-15 Microsoft Corporation Method and system for detecting object inconsistency in a loosely consistent replicated directory service
US20030018694A1 (en) 2000-09-01 2003-01-23 Shuang Chen System, method, uses, products, program products, and business methods for distributed internet and distributed network services over multi-tiered networks
JP2002189733A (ja) * 2000-12-22 2002-07-05 Mitsubishi Electric Corp データベース検索システム及び検索サーバ及びプログラムを記録したコンピュータ読み取り可能な記録媒体
US6879564B2 (en) 2001-02-28 2005-04-12 Microsoft Corp. Method for designating communication paths in a network
US20020184361A1 (en) * 2001-05-16 2002-12-05 Guy Eden System and method for discovering available network components
US20030074421A1 (en) * 2001-08-14 2003-04-17 Mieko Kusano Internet access via specific server and via proprietary application for selecting and controlling content: remote and local
US8037181B2 (en) 2002-06-28 2011-10-11 Microsoft Corporation Re-partitioning directories
US7536386B2 (en) * 2003-03-27 2009-05-19 Microsoft Corporation System and method for sharing items in a computer system
US7640324B2 (en) 2003-04-15 2009-12-29 Microsoft Corporation Small-scale secured computer network group without centralized management
JP2005044155A (ja) * 2003-07-23 2005-02-17 I-O Data Device Inc マルチメディア情報機器及びそのファイル管理プログラム並びにマルチメディア情報機器ネットワークシステム及びそのシステムにおけるファイル管理方法
US7620679B2 (en) 2003-10-23 2009-11-17 Microsoft Corporation System and method for generating aggregated data views in a computer network
US20050114777A1 (en) * 2003-11-26 2005-05-26 Yahoo, Inc. Calendar integration with instant messaging
JP2006526215A (ja) * 2004-03-22 2006-11-16 ニトゲン・テクノロジーズ・インコーポレーテッド ストリーミング基盤のコンテンツ分散形ネットワークシステムとファイル分割、併合及び再生方法
US8108429B2 (en) * 2004-05-07 2012-01-31 Quest Software, Inc. System for moving real-time data events across a plurality of devices in a network for simultaneous data protection, replication, and access services
US7739303B2 (en) * 2004-07-22 2010-06-15 International Business Machines Corporation Method, system and program product for verifying access to a data object
US8126870B2 (en) * 2005-03-28 2012-02-28 Sybase, Inc. System and methodology for parallel query optimization using semantic-based partitioning

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078926A (zh) * 2012-12-28 2013-05-01 华为技术有限公司 分布式存储系统的文件访问方法和装置以及系统
CN103078926B (zh) * 2012-12-28 2016-03-30 华为技术有限公司 分布式存储系统的文件访问方法和装置以及系统
CN114546273A (zh) * 2022-02-22 2022-05-27 苏州浪潮智能科技有限公司 聚合特性兼容多站点同步的方法、系统、设备和存储介质
CN114546273B (zh) * 2022-02-22 2023-08-04 苏州浪潮智能科技有限公司 聚合特性兼容多站点同步的方法、系统、设备和存储介质

Also Published As

Publication number Publication date
KR20080031256A (ko) 2008-04-08
WO2007008996A3 (en) 2009-04-16
US7765229B2 (en) 2010-07-27
EP1902395A4 (en) 2011-07-06
CN101568919B (zh) 2013-01-16
JP2009501397A (ja) 2009-01-15
RU2008101418A (ru) 2009-07-20
BRPI0613131A2 (pt) 2011-01-11
WO2007008996A2 (en) 2007-01-18
US20070016586A1 (en) 2007-01-18
MX2008000514A (es) 2008-03-14
EP1902395A2 (en) 2008-03-26

Similar Documents

Publication Publication Date Title
CN101568919B (zh) 具有分布式存储的联网计算机系统中的单个数据视图
US20190050448A1 (en) System and method for building business service model
US6061726A (en) Dynamic rights assignment apparatus and method using network directory services
CN1947110B (zh) 用于在计算机网络中生成聚集数据视图的系统和方法
CN105659234A (zh) 普适搜索架构
US8805924B2 (en) Optimistic concurrency utilizing distributed constraint enforcement
MXPA05005857A (es) Metodo, sistema y aparato para descubrir y conectarse a fuentes de datos.
CN103067463A (zh) 用户root权限集中管理系统和管理方法
US20050216522A1 (en) Multi-tier document management system
CN110199277A (zh) 在数据资源中包括元数据
US20060095432A1 (en) Disclosure control system and method
JP2011519441A (ja) 切断データ/オフラインデータの処理/入力の同期化
EP1861798B1 (en) Automatic intranet service publishing and service access
US20050131825A1 (en) Distributed knowledge management system
US7761476B2 (en) Automatic capture of associations between content within a content framework system
JP2007018153A (ja) 情報検索システム、情報検索装置、情報検索方法、記録媒体及びプログラム
JP5224839B2 (ja) 文書管理システム、文書管理装置、文書管理方法及びプログラム
KR20010107803A (ko) 피투피 기반의 통합 정보제공방법
US20050132120A1 (en) Nomadic digital asset retrieval system
JP2001188760A (ja) 情報処理装置および方法、並びに記録媒体
JP2006185150A (ja) ファイル管理システム、ファイル管理方法およびファイル管理プログラム
JP4492569B2 (ja) ファイル操作制御装置、ファイル操作制御システム、ファイル操作制御方法及びファイル操作制御プログラム
JP2005266964A (ja) 業務対応型エージェントプログラム、業務対応型情報検索支援方法、及び業務対応型情報検索支援装置
JP2008015637A (ja) ファイルデータ管理方法及びそのシステム
JP2002207772A (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: 20150505

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150505

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130116

Termination date: 20140710

EXPY Termination of patent right or utility model