CN1273916C - 用于自动同步分布文档的版本的方法和装置 - Google Patents
用于自动同步分布文档的版本的方法和装置 Download PDFInfo
- Publication number
- CN1273916C CN1273916C CNB001188496A CN00118849A CN1273916C CN 1273916 C CN1273916 C CN 1273916C CN B001188496 A CNB001188496 A CN B001188496A CN 00118849 A CN00118849 A CN 00118849A CN 1273916 C CN1273916 C CN 1273916C
- Authority
- CN
- China
- Prior art keywords
- document
- copy
- retrieval
- source
- destination
- 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.)
- Expired - Fee Related
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99954—Version management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种自动同步分布的文档版本的方法,其同步在分布计算环境中的第一文档的副本。根据第一实施例,在第二文档中嵌入到达用于第一文档的最佳存储库的路径,以及用于第一文档的主存储库的路径。第一文档的副本被从最佳存储库中检索。主存储库被检查以确定所检索的副本是否为第一文档的最新版本。响应对于所检索文档是第一文档的最新版本的判断结果,利用所检索副本对第二文档格式化。
Description
技术领域
本发明一般涉及计算机软件的领域,并且特别涉及在象因特网这样的分布计算环境中的文档副本的管理。
背景技术
因特网已经变成一种文化设备,作为信息和娱乐的来源。许多企业创建因特网网址作为他们市场工作的一个整体部分,把该企业提供的产品或服务通知给客户,或者提供其它用于产生品牌忠诚度的信息。许多联邦、国家和地区政府机构也采用因特网网址用于提供信息的目的,特别是必须通过视频图像与社会的所有部门进行交互作用的机构,这一部门例如国家税务局和国家的干部。在线地提供信息向导和/或公共记录的可搜索数据库,可降低运行成本。
当前,内容提供者和/或作者,无论他们是个人或公司,都通常尝试以如下两种方式中的一种方式在网络上发布他们的资源(文档、标志、数据、图像、等等),这两种方式为:他们提供必须装载所有资源的服务器,或者允许他们的资源被复制在远程位置。一个这样的例子是在网址上的广告横幅。这些方法中的每一个都存在问题。对于前者,作者的服务器必须有极大的带宽以跟得上有可能产生的大量点击次数。通常该带宽是不足的,因此造成广告下载缓慢,从而导致应当“快速”的网页下载缓慢。如果服务器发生故障,该方法还具有世界范围的影响。
对于第二种方法,广告者几乎完全丧失了控制力。在因特网上同步文档/图像/标志在实践上是不可能的。所有广告者能够做的是提供更新,并且希望远程位置即时地更新改变的内容。另外,由于每个网址必须具有不同(但是一致)的副本,可能由不同的名字来标识,并且确定的由不同的唯一网址/路径/文件名来标识,即使许多副本已经被从其它网址下载到用户,文档/图像必须通过网络重新发送到用户例如,无所不在的可口可乐(Coca Cola)标志。因此,不同的名称、或者在不同网址上的相同名称使得浏览器认为它们是不同的文档/图像/标志。
发明内容
因此,提供一种用于分布文档的方法和设备是有利的。
本发明提供一种用于在分布计算环境中同步第一文档的副本的方法。到达用于第一文档的最佳存储库的路径以及到达用于第一文档的主存储库的路径被嵌入在第二文档。第一文档的副本被从最佳存储库中取出。检查主存储库,以确定所取出的副本是否为第一文档的最新版本。响应该判断结果,即所取出副本是第一文档的最新版本,第二文档被用所取出的副本格式化。
本发明的新特点在所附权利要求书中提出。但是,当结合附图阅读本说明书时,该发明本身以及所用的最佳模式、其它目的和优点将在如下参照所示实施例的详细描述得到最好的理解。
根据本发明的第一个方面,一种用于在分布计算环境中同步第一文档的副本的方法,其包括如下步骤:在第二文档中嵌入到达用于第一文档的最佳存储库的路径以及到达至少一个用于第一文档的次级存储库的路径;从该最佳存储库中检索第一文档的一个副本;检查该次级存储库,以判断所检索副本是否为第一文档的最新版本;以及响应所检索副本是第一文档的最新版本的判断结果,利用所检索副本格式化第二文档。
根据本发明的第二各方面,一种用于在分布计算环境中同步第一文档的副本的方法,其包括如下步骤:在第二文档中嵌入到达用于第一文档的最佳存储库的路径、到达至少一个回退存储库的路径、以及到达用于第一文档的主存储库的路径;查询在接收计算机上的高速缓冲存储器,以判断该缓存的文档是否具有匹配任何所述存储库的参考名;响应存在匹配的判断结果,从所述高速缓冲存储器中检索所述第一文档;如果不能从所述高速缓冲存储器中检索第一文档的副本,则从最佳存储库中检索第一文档的副本;如果不能从所述高速缓冲存储器或从所述最佳存储库中检索第一文档的副本,则从回退存储库中检索第一文档的副本;如果不能从所述高速缓冲存储器、从所述最佳存储库、或者从所述回退存储库中检索第一文档的副本,则从主存储库中检索第一文档的副本;用主存储库进行检查,以判断所检索副本是否为第一文档的最新版本;响应该检索的文档是第一文档的最新版本的判断结果,用所检索副本格式化第二文档;响应该检索的文档不是第一文档的最新版本的判断结果,用从主存储库检索的第一文档的副本格式化第二文档。
根据本发明的第三个方面,一种用于在分布计算环境中同步第一文档的副本的系统,其中包括:用于在第二文档中嵌入到达用于第一文档的最佳存储库的路径以及到达用于第一文档的主存储库的路径的装置;用于从最佳存储库检索第一文档的一个副本的装置;用于检查主存储库以确定所检索的副本是否为第一文档的最新版本的一个副本的装置;以及响应对于所检索副本是第一文档的最新版本的判断结果,利用所检索的副本对第二文档格式化的装置。
根据本发明的第四个方面,一种在数据处理系统中用于存取文档的方法,其中包括:接收一个目标文档说明,以检索与该目标文档说明相关的文档,其中该目标文档说明包括该文档的最佳源和主源的标识;从最佳源检索文档;以及查询该主源以确定所检索的文档是否为最新版本文档。
根据本发明的第五个方面,一种在分布数据处理系统中检索文档的方法,其中包括如下步骤:接收一个目标文档说明,以检索与该目标文档说明相关的文档,其中该目标文档说明包括对于该文档的最佳源的标识、多个候选源的标识和主源的标识;查询高速缓冲存储器,其中所述高速缓冲存储器包括所存储文档,其中每个文档包括多个源标识,以确定是否有任何源标识匹配任何所述最佳源标识、所述多个候选源标识、或者所述主源标识;以及响应找到一个匹配的结果,从所述高速缓冲存储器中检索所述目标文档。
根据本发明的第六个方面,一种在分布数据处理系统中检索文档的方法,其中包括如下步骤:接收一个文档,其中包括嵌入在所述文档中的目标文档说明,其中所述目标文档说明包括可以检索目标文档的多个目标文档源;查询在接收者的数据处理系统上的高速缓冲存储器,以确定是否有任何缓存文档匹配任何所述目标文档源;以及响应没有匹配的结果,从所述多个目标文档源的一个中检索所述目标文档,并且缓存所述目标文档。
附图描述
图1示出可以实现本发明的分布数据处理系统的图示;
图2示出可以根据本发明实现的数据处理系统的方框图;
图3示出数据处理系统的方框图;
图4示出本发明的优选实施例;
图5示出本发明的另一个实施例;
图6示出本发明优选实施例的流程图;
图7示出本发明高速缓存机制的流程图;
图8示出用于实现本发明的文档装载功能的伪码的一个实例;
图9示出用于实现本发明的文档检查功能的伪码的一个实例;
图10-11示出网络浏览器的屏幕图像。
具体实施例的详细描述
现在参照附图,特别参照图1,其中示出可以实现本发明的分布数据处理系统的图示。
分布处理系统100是计算机的网络,其中可以实现本发明。分布数据处理系统100包含网络102,它是用于提供在分布数据处理系统100中连接的各种设备和计算机之间的通讯链路的介质。网络102可以包括永久连接,例如线路或光纤线缆,或者通过电话连接进行的暂时连接。
在所示实例中,服务器104与存储装置106一同连接到网络102。另外,客户机108、110和112也连接到网络102。这些客户机108、110和112例如可以是个人计算机或者网络计算机。对于该应用的目的,网络计算机是任何连接到网络并从连接到网络的其它计算机接收程序、数据或者其它应用程序的任何计算机。在所示实例中,服务器104提供数据给客户机108-112,该数据例如引导文件、操作系统图像和应用程序。服务器104还作为用于要被分配给多个客户机和/或其它服务器的文件(例如,图形文件、文档、标语、广告,等等)的存储库。客户机108、110和112是连到服务器104的客户机。分布数据处理系统100可以包括未示出的其它服务器、客户机和其它设备。分布数据处理系统一般还包括打印机。象客户机110这样的客户机可以直接打印到直接附加的打印机。象客户机108和客户机112这样的客户机没有直接附加的打印机。这些客户机可以打印到附在服务器104上的打印机,或者打印到网络打印机,这取决于打印机的类型和文档要求。
在所示实例中,分布数据处理系统100是因特网,网络102表示使用TCP/IP协议套件来相互通信的世界范围的网络和网关的集合。但是,本发明不限于因特网,并且可以使用其它网络包括但不限于局域网(“LAN”)和广域网(“WAN”)。在因特网的中心是由路由数据和信息的几千个商业、政府、教育和其它计算机系统所构成的主节点和主计算机之间的高速数据通信链路的主干。当然,分布数据处理系统100还可以用多个不同类型的网络实现,例如,内部网和局域网。
图1为一个实例而不是对于本发明处理的结构限制。
参照图2,其中示出根据本发明的数据处理系统的方框图,该系统可以用服务器实现,例如图1中的服务器104。数据处理系统200可以是包括多个连接到系统总线206的处理器202和204的对称多处理器(SMP)系统。另外,可以采用单个处理器系统。存储控制器/高速缓冲存储器208还连接到系统总线206,其提供到本地存储器209的接口。输入/输出总线桥路210连接到系统总线206,并且提供一个到输入/输出总线212的接口。如图所示,存储控制器/高速缓冲存储器208和输入/输出总线桥路210可以被集成为一体。
连接到输入/输出总线212的外设部件互连(PCI)总线桥路214提供一个到PCI局部总线216的接口。多个调制解调器218-220可以连接到PCI总线216。典型的PCI总线设备将支持四个PCI扩展槽或者附加连接器。到图1中的网络计算机108-112通信链路可以通过调制解调器218和经附加板(扩展板)连接到PCI局部总线216的网络适配器220提供。
附加PCI总线桥路222和224提供用于附加PCI总线226和228的接口,从它可以支持附加调制解调器和网络适配器。按照这种方式,服务器200可以连接到多个网络计算机。如图所示,存储器映射图形适配器230和硬盘232还可以直接或间接地连接到输入/输出总线212。
本领域内的普通技术人员将认识到图2中所示的硬件可以有所变化。例如,还可以使用其它外围设备,例如硬盘驱动器等等,或者取代所示的硬件。所示的实例不是对本发明的结构的限制。
图2中所示的数据处理系统例如可以是IBM RISC/系统6000,在美国纽约州阿蒙克市的国际商用机器公司(IBM)的一种产品,它运行高级交互执行(AIX)操作系统。
现在参照图3,其中示出可以实现本发明的数据处理系统的方框图。数据处理系统300是客户计算机的一个实例。数据处理系统300还可以用于运行网络浏览器软件,例如Netscape Navigator或者微软Internet Explorer。数据处理系统300采用外围部件互连(PCI)局部总线结构。尽管所示实例采用PCI总线,但是也可以采用其它总线结构,例如Micro Channel(微通道)和ISA(工业标准结构)总线结构。处理器302和主存储器通过PCI桥路308连接到PCI局部总线306。PCI桥路308还可以包括用于处理器302的集成存储控制器和高速缓冲存储器。到PCI局部总线306的其它连接还可以通过直接部件互连,或者通过附加板进行。在所示实例中,局域网(LAN)适配器310、SCSI主总线适配器312和扩展总线接口314通过直接部件连接连接到PCI局部总线306。相反,音频适配器316图形适配器318和音频/视频适配器(A/V)319通过插入到扩展槽中的附加板连接到PCI局部总线306。扩展总线接口314提供用于键盘和鼠标适配器320、调制解调器322、以及附加存储器324的连接。在所示实例中,SCSI主总线适配器312提供用于硬盘驱动器326、磁带驱动器328、CD-ROM驱动器330以及数字视频光盘只读存储器驱动器(DVD-ROM)332的连接。典型的PCI局部总线应用将支持三个或四个PCI扩展槽或者附加连接器。
一种操作系统运行在处理器302上并且用于协调和提供在图3中的数据处理系统300中的各种部件的控制。该操作系统可以是一种市场上可购得的操作系统,例如OS/2,它可以从国际商用机器公司获得。“OS/2”是国际商用机器公司的商标。象JAVA这样的面向对象的编程系统可以与该操作系统相结合而运行,从JAVA程序或者在数据处理系统300上执行的应用程序提供对操作系统调用。用于操作系统的指令、面向对象的操作系统和应用程序或者程序位于象硬盘驱动器326这样的存储设备中,并且被装载到由处理器302所执行的主存储器304上。
本领域内的普通技术人员将认识到,在图3中的硬件可以根据应用而变化。例如,其它外围设备,例如光盘驱动器等等,可以附加在图3中所示的硬件上使用,或者取代图3中所示的硬件。所示实例不是对本发明结构的限制。例如,本发明的处理可以应用于微处理器数据处理系统。
本发明的优选实施例在图4中示出位于本地服务器410上的网址包含目标文件说明(HTML连接,等等),其中包含可以找到目标文档的多个名称和潜在位置。目标文档例如可以是图形文件、文档、标语、广告,等等。一个路径名指向“最佳”位置410,一个或多个路径名指向一个或多个“回退”(fallback)位置420,并且一个路径名指向“主”位置430。象Netscape Navigator或者微软InternetExplorer这样的网络浏览器通过网络102从最佳位置410把目标文档下载到用户450。该“最佳”位置410通常是本地位置,并且通常是用于浏览器下载的目标文档的最快副本。在空闲时间中,浏览器检查下载版本与“主”网址430上的版本,并且如果必要的话,更新目标文档。如果目标文档不能在“最佳”位置410获得,则网络浏览器检查“回退”位置420,并且尝试从“回退”位置420下载目标文档。如果“最佳”位置410和任何“回退”位置420都不能访问,则网络浏览器从“主”位置430下载目标文档。
例如,在当前系统下,HTML可以是这样:
<IMG SRC=”imagos/colelogo.gif”WIDTH=129 HEIGHT=128>
但是,应用本发明,HTML将为如下:
<IMG SRC=“imagos/colelogo.gif”WIDTH=128 HEIGHT=128
ALTSRC=“http://www.logosorver.com/coke/logos/coke.gif”
ALSTSRC=HTTP://www.fallback.com/images/gif/coke/logo.gif
MASTERSRC=http://www.cocacola.com/logos/coke.gif>
因此,“最佳”位置是通过相关链路“images/cokelogo.gif”下载HTML的位置。如果该链路失败(或者因为本地服务器的较差性能),“logoserver.com”和“fallback.com”将被利用所提供的名字而尝试。如果这些链路也失败,则尝试同“cocacola.com”检索“主”副本。应当知道,这些HTML链路一般是嵌入在浏览器搜索的文档中的标签。
在原始HTML文档被完成下载之后,主服务器被询问以确定被显示的文档/图像/标志是否为最新的一个。但是,如果主服务器和回退(fallback)服务器都不可用,则不做比较。另外,如果主服务器和回退服务器都不可用,则网络浏览器继续定期的尝试对它们的访问,以便于把当前文档与主文档相比较。
可选择的是,仅仅当最佳存储库中的副本比特定的时期更早时,即,如果该副本是一天前的,回退存储库和主存储库才被检查。为了在检查优先次序上和最佳存储库相区别,可以将回退存储库和主存储库称为次级存储库。如前所述(对参考附图4的描述),回退存储库可以是一个或多个存储库。因此,将避免对主服务器和回退服务器的不必要访问。
本发明的另一个实施例在图5中示出。在本实施例中,和图4所示的实施例中每个本地服务器570、572、574、576、578和580都通过相同的“回退”服务器420的系统链接回“主”服务器不同,主文档的副本被创建并且存储在几个“始发”服务器560、562和564,并且这些“始发”服务器560、562和564作为“主”服务器430,用于本地服务器570、572、574、576、578和580以及回退服务器(未示出)的分散组(discrete group)。这些“始发”服务器560、562和564通过网络102连接到“主”服务器。本地服务器570、572、574、576、578通过网络102连接到相应地“始发”服务器560、562和564。类似地,用户540、542和544通过网络102连接到相应的本地服务器570、572、574、576、578。对于本领域内的专业人员显然可以看出,可以利用更多或更少的始发服务器和本地服务器以及更多或更少的用户,而不脱离本发明的范围和精神。因此,图5中所示的系统仅仅作为实例而不是作为本发明的限制。
用于用户540的网络浏览器尝试从该网页所在的本地服务器572获得目标文档。如果网络浏览器不能够通过本地服务器572或任何它的回退服务器(未示出)访问目标文档,则用于用户540的网络浏览器从“始发”服务器560下载目标文档。用于用户542的网络浏览器通过本地服务器574下载目标文档,并且如果该尝试以及对所有“回退”服务器的尝试失败,则通过始发服务器562下载目标文档。类似地,用于用户544的网络浏览器通过本地服务器578下载目标文档,并且如果该尝试以及对所有“回退”服务器的尝试失败,则通过始发服务器564下载目标文档。
无论何时当主目标文档被改变时,主服务器430通过网络102对始发服务器560、562和564进行更新。然后“始发”服务器560、562和564对“回退”服务器进行更新,该回退服务器反过来对本地服务器570、572、574、576、578进行更新。因此,目标文档的作者或所有人能够保证被使用的文档是最新副本,而不减慢包含对该目标文档的引用的网页的下载时间。
本发明的优选实施例的流程图在图6中示出。运行象NetscapeNavigator这样的网络浏览程序的用户访问包含到目标文档的多条路径的网页,该文档被包含在所观察的网页中(步骤610)。网络浏览器检查到该目标文档的所有路径的路径名与以前缓存的文档的路径名相比较(步骤615)。如果一个路径名与以前缓存的文档相一致,则以前缓存的版本被用于下载该网页(步骤617)。如果该目标文档以前没有被缓存,则网络浏览器查询最佳位置,以确定该目标文档是否可以从该位置下载(步骤620)。如果该目标文档可以从最佳位置获得,则利用来自该最佳位置的目标文档产生该网页(步骤625)。
如果目标文档不能从最佳位置获得,则网络浏览器查询第一回退位置,以确定该目标文档是否可以获得(步骤630)。如果为是,则利用从回退位置下载的目标文档产生该网页(步骤635)。如果回退位置不可用,则网络浏览器确定是否有另一个回退位置被列出(步骤637)。
如果存在另一个回退位置(步骤637),则网络浏览器查询下一个回退位置,以确定该目标文档是否可以获得(步骤630),并且该处理如上文所述继续进行。如果不存在另一个回退位置(步骤637),则利用从主位置下载的目标文档产生该网页(步骤640)。
如果该网页是利用从缓存版本(步骤617)、最佳位置(步骤625)、或者从回退位置(步骤635)下载的目标文档产生的,则网络浏览器检查下载的目标文档的副本与存在于主位置上的目标文档的版本相比较。如果两者不同,则所下载目标文档必须被更新,以便于与位于主位置的目标文档完全相同(步骤670)。使目标文档不能够从特定位置获得的情况的一个例子是当用于该位置的服务器离线的时候。
关于确定一个图像或文档是否以前被缓存的方法的进一步的细节在此参照图7中所示的流程图给出。当网页被下载时,所有与该网页一同下载的对任何文档的所有参考名被缓存(步骤710)。这样名称包括最佳源名、候选源名、以及主源名。当一个新网页被下载时(步骤720),该浏览器确定用于包含在新网页中的每个文档的最佳源名、候选源名和主源名(步骤730)。然后,浏览器在高速缓冲存储器中搜索与该文档相关的所有参考名(步骤740),以确定是否有一个参考名存在于该高速缓冲存储器中(步骤740)。如果一个与该文档相关的参考名匹配于以前缓存的文档相关的有效名,则以前缓存的文档被下载(步骤760)。如果没有与该文档相关的参考名匹配于缓存的参考名,则浏览器尝试从由该网页所提供的一个位置下载文档(步骤770)。一旦该文档被下载,则它将与每个由网页所提供的参考名一同存储在高速缓冲存储器中(步骤780)。只要该文档保留在高速缓冲存储器中,则在该文档将来被引用的任何时候,它将从该高速缓冲存储器装载。另外,该文档的多个副本将不被缓存。仅仅该文档的一个副本在该高速缓冲存储器中。但是,该副本还将把与该文档相关的所有参考名附加在其本身上。
适合于从多个位置中的一个下载图像的下载算法800的一个实例在图8中示出。部分810指示浏览器尝试从最佳位置“SRC”下载图像。如果该浏览器不能够从最佳位置下载图像,则部分820指示该浏览器尝试从第一回退位置“ALTSRC”下载图像。部分820还指示浏览器尝试每一个相继的回退位置“ALTSRC”,直到该图像被成功地下载,或者知道每个回退位置都被尝试过,并且已经失败。如果在浏览器已经尝试所有回退位置之后,图像还没有被下载,则部分830指示浏览器尝试从主位置“MASTERSRC”下载图像。如果浏览器仍然不能够下载图像,则部分840指示浏览器在该图像所在的显示区域中显示“链接中断”图像。
检验算法900在图9中示出。在该图像被下载之后,在空闲时间中,浏览器进行检验,以保证所下载图像是该图像的最新版本。部分910收集关于所下载图像的数据,这种数据包括参考文档的统一资源定位符(“URL”)、该图像的本地“SRC”名、该图像的“MASTERSRC”名、日期/时间标记、图像文件的大小、以及校验和。部分920指示浏览器查询主源“MASTERSRC”所在的服务器,以确定所下载图像是否过期,或者它是否该图像的最新版本。如果该图像过期,则部分930指示浏览器从包含该图像“MASTERSRC”的主副本的服务器下载图像。部分930还指示浏览器用新的图像来代替高速缓冲存储器中的旧图像,并且使显示该图像的任何位置无效。
参照图10和11将有助于理解本发明的应用。首先参照图10,用户利用网络浏览器1020从网络上下载网页1030。网页1030包含最佳名、替代名和主名,通过它们访问要显示在网页1030上的标志1010。网络浏览器1020从最佳本地服务器下载标志1010(通常是最快的方法),并且把标志1010显示在网页1030上。在空闲时间中,浏览器1020查询标志1010的主源位置,以确定最新的版本是否被下载。在该实例中,最新版本没有被下载。在从主源接收到所下载标志1010过期的通知之后,网络浏览器1020从主源下载更新的标志1110,并且把它显示给用户,如图11中所示。另一方面,如果所下载标志1010已经是该标志1010的最新版本,则由用户所看到的图像将保持相同。因此,本发明使得所分布文档的所有人能够对该文档的内容保持控制,而不减慢包含这些文档的网页的下载时间。
因此,本发明的一个优点是使得网址具有第三方文件(标志、文档、标语、广告,等等)的最快本地副本,而仍然使得作者接近实时地控制该文件。另外,它允许浏览器通过它们的共同“主”和“替代”名来识别共同文档/图像的同一性,减少网页的下载时间,从而减少在网页中加入广告的令人反感的程度。
图8和9中所示的伪码利用线性算法画出,用于澄清对本发明的理解。但是,应当指出,对于实践的原因,所用的实际算法可能是事件驱动算法。应当指出,尽管“图像”被用于图8和9中,但是可以使用任何文档类型,并且受影响的超文本标识语言(“HTML”)标签是任何涉及“SRC”或类似于SRC的成份的标签。另外,应当指出,尽管本发明已经参照仅仅一个主位置进行的描述,但是,只要作者对在每个主位置上的文档的内容具有直接控制,则本发明同样可以应用于多个主位置的情况。另外,主源位置可以是网络服务器。
应当注意,尽管本发明已经在HTML的环境下描述,但是本领域内的专业技术人员可以明显地看出象可扩展标识语言这样的其它标识语言也可以使用。另外,应当知道,本发明应用于万维网(也称为“WWW”)、因特网、内部网、局域网、以及广域网上的文档,并且最佳、回退和主源可以位于这些网络上,以及包括位置类型的各种组合。应当指出,该文档可以是网页,但是不一定是网页。另外,应当指出,如果客户不能够访问主源,则图像可以从一个回退源更新。另外,尽管主要参照图像的更新进行描述,但是应当指出所给的仅仅是一个实例,并且该图像可以由任何类型的文档所代替,其中例如该文档可以包含图像、文本、声音或它们的组合。
应当注意尽管本发明已经对于全功能的数据处理系统进行描述,但是本领域内的普通技术人员将认识到,本发明的处理程序能够以计算机可读介质的形式以及各种形式发布,并且同样可以应用本发明,而与被实际使用以执行该发布的特定类型的信号载体无关。计算机可读介质的例子包括可记录类型的介质,例如软盘、硬盘驱动器、RAM和CD-ROM,以及象数字和模拟通信链路这样的传输型介质。
本发明的描述被给出用于解释和说明的目的,但是不是为了以所公开的形式穷尽本发明,或者对本发明进行限制。本领域内的普通技术人员显然可以作出许多显而易见的改进和变化。本实施例被选择和描述以最好地解释本发明的原理、实际应用、以及使其它普通技术人员能够理解本发明,以便于通过各种改变特定应用的各种实施例。
Claims (25)
1.一种用于在分布计算环境中同步第一文档的副本的方法,其包括如下步骤:
在第二文档中嵌入到达用于第一文档的最佳存储库的路径以及到达至少一个用于第一文档的次级存储库的路径;
从该最佳存储库中检索第一文档的一个副本;
检查该次级存储库,以判断所检索副本是否为第一文档的最新版本;以及
响应所检索副本是第一文档的最新版本的判断结果,利用所检索副本格式化第二文档。
2.根据权利要求1所述的方法,其特征在于,所述次级存储库是一个主存储库。
3.根据权利要求1所述的方法,其特征在于,所述次级存储库是一个回退存储库。
4.根据权利要求1所述的方法,其特征在于,所述路径是由HTML标签所标识的。
5.根据权利要求1所述的方法,其特征在于,所述路径是由超文本所标识的。
6.根据权利要求1所述的方法,其特征在于,所述第一和第二文档位于万维网上。
7.根据权利要求1所述的方法,其特征在于,所述第一和第二文档位于因特网上。
8.根据权利要求1所述的方法,其特征在于,所述第一和第二文档位于内部网上。
9.一种用于在分布计算环境中同步第一文档的副本的方法,其包括如下步骤:
在第二文档中嵌入到达用于第一文档的最佳存储库的路径、到达至少一个回退存储库的路径、以及到达用于第一文档的主存储库的路径;
查询在接收计算机上的高速缓冲存储器,以判断该缓存的文档是否具有匹配任何所述存储库的参考名;
响应存在匹配的判断结果,从所述高速缓冲存储器中检索所述第一文档;
如果不能从所述高速缓冲存储器中检索第一文档的副本,则从最佳存储库中检索第一文档的副本;
如果不能从所述高速缓冲存储器或从所述最佳存储库中检索第一文档的副本,则从回退存储库中检索第一文档的副本;
如果不能从所述高速缓冲存储器、从所述最佳存储库、或者从所述回退存储库中检索第一文档的副本,则从主存储库中检索第一文档的副本;
用主存储库进行检查,以判断所检索副本是否为第一文档的最新版本;
响应该检索的文档是第一文档的最新版本的判断结果,用所检索副本格式化第二文档;
响应该检索的文档不是第一文档的最新版本的判断结果,用从主存储库检索的第一文档的副本格式化第二文档。
10.一种在分布数据处理系统中用于存取文档的方法,其中包括:
接收一个目标文档说明,以检索与该目标文档说明相关的文档,其中该目标文档说明包括该文档的最佳源和主源的标识;
从最佳源检索文档;以及
查询该主源以确定所检索的文档是否为最新版本文档。
11.根据权利要求10所述的方法,其特征在于,该方法在客户机上执行,并且还包括:
响应对于所检索的文档不是当前文档的判断结果,在客户机上利用位于所述主源上的最新版本文档更新在客户机上的所检索的文档。
12.根据权利要求10所述的方法,其特征在于,该主源是一个web服务器。
13.根据权利要求10所述的方法,其中还包括:
响应于所检索的文档是最新版本文档的判断结果,显示所检索的文档。
14.根据权利要求10所述的方法,其特征在于,该目标文档说明是一个超文本标识语言链接。
15.一种在分布数据处理系统中检索文档的方法,其中包括如下步骤:
接收一个目标文档说明,以检索与该目标文档说明相关的文档,其中该目标文档说明包括对于该文档的最佳源的标识、多个候选源的标识和主源的标识;
查询高速缓冲存储器,其中所述高速缓冲存储器包括所存储文档,其中每个文档包括多个源标识,以确定是否有任何源标识匹配任何所述最佳源标识、所述多个候选源标识、或者所述主源标识;以及
响应找到一个匹配的结果,从所述高速缓冲存储器中检索所述目标文档。
16.根据权利要求15所述的方法,其中还包括如下步骤:
响应没有匹配的结果,从所述最佳源标识所指的位置检索文档;
如果不能够从由所述最佳源标识所指定的位置检索所述文档的副本,从由所述多个候选源标识所指定的一个或多个回退位置检索所述文档;
如果不能从由所述最佳源标识或所述多个候选源标识所指定的所述位置检索所述文档的副本,则从由所述主源标识所指定的位置检索所述文档的副本;
检查由所述主源标识所指定的位置,以确定所检索副本是否为所述文档的最新版本的副本;以及
响应对于所检索副本不是所述文档的最新版本的副本的判断结果,更新所检索文档。
17.根据权利要求16所述的方法,其特征在于,还包括:
响应对于所检索副本是所述文档的最新版本的副本的判断结果,显示所检索文档。
18.一种在分布数据处理系统中检索文档的方法,其中包括如下步骤:
接收一个文档,其中包括嵌入在所述文档中的目标文档说明,其中所述目标文档说明包括可以检索目标文档的多个目标文档源;
查询在接收者的数据处理系统上的高速缓冲存储器,以确定是否有任何缓存文档匹配任何所述目标文档源;以及
响应没有匹配的结果,从所述多个目标文档源的一个中检索所述目标文档,并且缓存所述目标文档。
19.根据权利要求18所述的方法,其特征在于,所述目标文档说明以一种标识语言编码。
20.根据权利要求18所述的方法,其特征在于,所述目标文档说明以超文本标识语言编码。
21.根据权利要求18所述的方法,其特征在于,所述多个目标源中的至少一个是web服务器。
22.根据权利要求18所述的方法,其特征在于,所述多个目标源中的至少一个位于链接到因特网的服务器上。
23.根据权利要求18所述的方法,其特征在于,所述多个目标源中的至少一个位于一个内部网服务器上。
24.根据权利要求18所述的方法,其特征在于,所述接收的文档是一个网页。
25.一种用于在分布计算环境中同步第一文档的副本的系统,其中包括:
用于在第二文档中嵌入到达用于第一文档的最佳存储库的路径以及到达用于第一文档的主存储库的路径的装置;
用于从最佳存储库检索第一文档的一个副本的装置;
用于检查主存储库以确定所检索的副本是否为第一文档的最新版本的一个副本的装置;以及
响应对于所检索副本是第一文档的最新版本的判断结果,利用所检索的副本对第二文档格式化的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/335,286 US6381618B1 (en) | 1999-06-17 | 1999-06-17 | Method and apparatus for autosynchronizing distributed versions of documents |
US09/335286 | 1999-06-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1278627A CN1278627A (zh) | 2001-01-03 |
CN1273916C true CN1273916C (zh) | 2006-09-06 |
Family
ID=23311111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB001188496A Expired - Fee Related CN1273916C (zh) | 1999-06-17 | 2000-06-15 | 用于自动同步分布文档的版本的方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US6381618B1 (zh) |
JP (1) | JP3593303B2 (zh) |
CN (1) | CN1273916C (zh) |
GB (1) | GB2356269B (zh) |
TW (1) | TW473660B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100501744C (zh) * | 2007-09-29 | 2009-06-17 | 腾讯科技(深圳)有限公司 | 一种文档同步方法及系统 |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7362775B1 (en) | 1996-07-02 | 2008-04-22 | Wistaria Trading, Inc. | Exchange mechanisms for digital information packages with bandwidth securitization, multichannel digital watermarks, and key management |
US5613004A (en) | 1995-06-07 | 1997-03-18 | The Dice Company | Steganographic method and device |
US7664263B2 (en) | 1998-03-24 | 2010-02-16 | Moskowitz Scott A | Method for combining transfer functions with predetermined key creation |
US6205249B1 (en) | 1998-04-02 | 2001-03-20 | Scott A. Moskowitz | Multiple transform utilization and applications for secure digital watermarking |
US7177429B2 (en) | 2000-12-07 | 2007-02-13 | Blue Spike, Inc. | System and methods for permitting open access to data objects and for securing data within the data objects |
US7457962B2 (en) | 1996-07-02 | 2008-11-25 | Wistaria Trading, Inc | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US5889868A (en) * | 1996-07-02 | 1999-03-30 | The Dice Company | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7095874B2 (en) | 1996-07-02 | 2006-08-22 | Wistaria Trading, Inc. | Optimization methods for the insertion, protection, and detection of digital watermarks in digitized data |
US7346472B1 (en) | 2000-09-07 | 2008-03-18 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US7159116B2 (en) * | 1999-12-07 | 2007-01-02 | Blue Spike, Inc. | Systems, methods and devices for trusted transactions |
US7730317B2 (en) * | 1996-12-20 | 2010-06-01 | Wistaria Trading, Inc. | Linear predictive coding implementation of digital watermarks |
US7664264B2 (en) | 1999-03-24 | 2010-02-16 | Blue Spike, Inc. | Utilizing data reduction in steganographic and cryptographic systems |
US7475246B1 (en) | 1999-08-04 | 2009-01-06 | Blue Spike, Inc. | Secure personal content server |
US7174513B1 (en) * | 1999-08-19 | 2007-02-06 | Gateway Inc. | System and method for advanced network viewing |
GB2361332A (en) * | 2000-04-13 | 2001-10-17 | Int Computers Ltd | Electronic content store |
US7120914B1 (en) * | 2000-05-05 | 2006-10-10 | Microsoft Corporation | Method and system for navigating between program modules |
US7047281B1 (en) | 2000-08-08 | 2006-05-16 | Fineground Networks | Method and system for accelerating the delivery of content in a networked environment |
WO2002012997A1 (en) * | 2000-08-08 | 2002-02-14 | Fineground Networks | Method and system for parameterized web documents |
US20040243540A1 (en) * | 2000-09-07 | 2004-12-02 | Moskowitz Scott A. | Method and device for monitoring and analyzing signals |
US7127615B2 (en) | 2000-09-20 | 2006-10-24 | Blue Spike, Inc. | Security based on subliminal and supraliminal channels for data objects |
US7062486B2 (en) * | 2000-12-05 | 2006-06-13 | International Business Machines Corporation | Method, system and program product for enabling authorized access and request-initiated translation of data files |
US6721846B2 (en) * | 2000-12-28 | 2004-04-13 | Gateway, Inc. | System and method of providing data images over a network with a local image cache |
US7310687B2 (en) | 2001-03-23 | 2007-12-18 | Cisco Technology, Inc. | Methods and systems for managing class-based condensation |
US7159014B2 (en) | 2001-06-04 | 2007-01-02 | Fineground Networks | Method and system for efficient and automated version management of embedded objects in web documents |
US20030014745A1 (en) * | 2001-06-22 | 2003-01-16 | Mah John M. | Document update method |
US9134989B2 (en) | 2002-01-31 | 2015-09-15 | Qualcomm Incorporated | System and method for updating dataset versions resident on a wireless device |
US7287275B2 (en) | 2002-04-17 | 2007-10-23 | Moskowitz Scott A | Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth |
US9092286B2 (en) | 2002-12-20 | 2015-07-28 | Qualcomm Incorporated | System to automatically process components on a device |
US7703000B2 (en) * | 2003-02-13 | 2010-04-20 | Iparadigms Llc | Systems and methods for contextual mark-up of formatted documents |
US7389309B2 (en) * | 2003-02-28 | 2008-06-17 | Microsoft Corporation | Method for managing file replication in applications |
CN100337236C (zh) * | 2003-08-26 | 2007-09-12 | 华为技术有限公司 | 一种使前后台数据库中数据相一致的方法 |
US8626146B2 (en) | 2003-10-29 | 2014-01-07 | Qualcomm Incorporated | Method, software and apparatus for performing actions on a wireless device using action lists and versioning |
WO2005045619A2 (en) * | 2003-10-31 | 2005-05-19 | Landmark Technology Partners, Inc. | Intelligent client architecture computer system and method |
KR100677116B1 (ko) * | 2004-04-02 | 2007-02-02 | 삼성전자주식회사 | 사이클릭 레퍼런싱 방법/장치, 파싱 방법/장치 및 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한기록매체 |
US7689601B2 (en) * | 2004-05-06 | 2010-03-30 | Oracle International Corporation | Achieving web documents using unique document locators |
US20060190547A1 (en) * | 2005-02-24 | 2006-08-24 | Ibm Corporation | Method and apparatus for restricting instant messaging during a scheduled event |
US20060190557A1 (en) * | 2005-02-24 | 2006-08-24 | Ibm Corporation | Method and apparatus for forwarding user information among multiple information handling systems |
US7587596B2 (en) * | 2005-02-24 | 2009-09-08 | International Business Machines Corporation | Method and apparatus for updating information stored in multiple information handling systems |
US20060259521A1 (en) * | 2005-05-16 | 2006-11-16 | Anthony Armenta | Interface for synchronization of documents between a host computer and a portable device |
US7783993B2 (en) * | 2005-09-23 | 2010-08-24 | Palm, Inc. | Content-based navigation and launching on mobile devices |
JP4536034B2 (ja) * | 2006-06-05 | 2010-09-01 | Necシステムテクノロジー株式会社 | 文書管理システム、計算機、文書管理方法、及びプログラム |
CN101743736B (zh) | 2007-06-19 | 2014-07-30 | 高通股份有限公司 | 用于无线环境中的数据集同步的方法和设备 |
GB0801119D0 (en) | 2008-01-22 | 2008-02-27 | Barry Callebaut Ag | Composition |
CN101587480B (zh) * | 2008-05-21 | 2013-08-28 | 鸿富锦精密工业(深圳)有限公司 | Notes文件分布式存储系统及方法 |
US8935633B2 (en) * | 2008-12-10 | 2015-01-13 | International Business Machines Corporation | Providing controlled access to the use of electronic devices |
US20100146499A1 (en) * | 2008-12-10 | 2010-06-10 | International Business Machines Corporation | Controlling Access to Electronic Devices by Meeting Invitees |
JP5193912B2 (ja) * | 2009-03-12 | 2013-05-08 | 株式会社日立製作所 | Web画面表示方法、画像配信方法、サーバ、クライアント及びサーバ・クライアントシステム |
US8335989B2 (en) * | 2009-10-26 | 2012-12-18 | Nokia Corporation | Method and apparatus for presenting polymorphic notes in a graphical user interface |
US20110196887A1 (en) * | 2010-02-08 | 2011-08-11 | Google Inc. | Light-Weight Network Traffic Cache |
CA2810041C (en) | 2010-09-03 | 2015-12-08 | Iparadigms, Llc | Systems and methods for document analysis |
US8688649B2 (en) * | 2010-10-12 | 2014-04-01 | Clinicomp International, Inc. | Scalable computer arrangement and method |
US9626379B1 (en) * | 2011-09-22 | 2017-04-18 | Amazon Technologies, Inc. | Optimistic commit processing for an offline document repository |
CA2769773C (en) * | 2011-11-04 | 2018-01-09 | Gemcom Software International Inc. | System and method for data communication over a network |
JP6175981B2 (ja) * | 2013-08-23 | 2017-08-09 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
CN106570045B (zh) * | 2015-10-13 | 2020-12-08 | 腾讯科技(深圳)有限公司 | 一种数据操作控制方法及其系统、用户终端 |
CN109240848A (zh) * | 2018-07-27 | 2019-01-18 | 阿里巴巴集团控股有限公司 | 一种数据对象标识生成方法及装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5701462A (en) * | 1993-12-29 | 1997-12-23 | Microsoft Corporation | Distributed file system providing a unified name space with efficient name resolution |
US5694597A (en) * | 1994-04-26 | 1997-12-02 | International Business Machines Corporation | Method and system for optimizing access to a datastore |
US5684984A (en) | 1994-09-29 | 1997-11-04 | Apple Computer, Inc. | Synchronization and replication of object databases |
US5625818A (en) | 1994-09-30 | 1997-04-29 | Apple Computer, Inc. | System for managing local database updates published to different online information services in different formats from a central platform |
US5835908A (en) * | 1996-11-19 | 1998-11-10 | Microsoft Corporation | Processing multiple database transactions in the same process to reduce process overhead and redundant retrieval from database servers |
US6014698A (en) * | 1997-05-19 | 2000-01-11 | Matchlogic, Inc. | System using first banner request that can not be blocked from reaching a server for accurately counting displays of banners on network terminals |
US5937392A (en) * | 1997-07-28 | 1999-08-10 | Switchboard Incorporated | Banner advertising display system and method with frequency of advertisement control |
US6751777B2 (en) * | 1998-10-19 | 2004-06-15 | International Business Machines Corporation | Multi-target links for navigating between hypertext documents and the like |
-
1999
- 1999-06-17 US US09/335,286 patent/US6381618B1/en not_active Expired - Lifetime
-
2000
- 2000-06-13 TW TW089111501A patent/TW473660B/zh not_active IP Right Cessation
- 2000-06-15 JP JP2000180511A patent/JP3593303B2/ja not_active Expired - Fee Related
- 2000-06-15 CN CNB001188496A patent/CN1273916C/zh not_active Expired - Fee Related
- 2000-06-16 GB GB0014624A patent/GB2356269B/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100501744C (zh) * | 2007-09-29 | 2009-06-17 | 腾讯科技(深圳)有限公司 | 一种文档同步方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
JP2001034526A (ja) | 2001-02-09 |
TW473660B (en) | 2002-01-21 |
GB2356269B (en) | 2004-02-11 |
JP3593303B2 (ja) | 2004-11-24 |
CN1278627A (zh) | 2001-01-03 |
GB0014624D0 (en) | 2000-08-09 |
GB2356269A (en) | 2001-05-16 |
US6381618B1 (en) | 2002-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1273916C (zh) | 用于自动同步分布文档的版本的方法和装置 | |
CN1146818C (zh) | Web服务器和处理Web页面请求以及显示HTML页面的方法 | |
CN1235143C (zh) | 用于存储提交的网页表格的系统、方法和程序产品 | |
US7386614B2 (en) | Method allowing persistent links to web-pages | |
US7475341B2 (en) | Converting the format of a portion of an electronic document | |
CN1221898C (zh) | 刷新网络代理高速缓存服务器对象的系统和方法 | |
US5999929A (en) | World wide web link referral system and method for generating and providing related links for links identified in web pages | |
EP2021937B1 (en) | Techniques to perform gradual upgrades | |
US8429201B2 (en) | Updating a database from a browser | |
US7702811B2 (en) | Method and apparatus for marking of web page portions for revisiting the marked portions | |
JP4145449B2 (ja) | ウエブ資源を持続的に格納するための方法および装置 | |
US6772208B1 (en) | Method and apparatus to restrict free hyperlinking by internet content distributors to web sites of original content producers | |
US20060010103A1 (en) | Version control in a distributed computing environment | |
US20080046449A1 (en) | System and method for downloading hypertext markup language formatted web pages | |
JP4953811B2 (ja) | ローカルipアドレス変換のための方法と装置 | |
US6442558B1 (en) | Mechanisms for division, storage, reconstruction, generation, and delivery of java class files | |
JP2007524920A (ja) | ウェブコンテンツを増すための方法及びシステム | |
CN1749995A (zh) | 内容相关对象的创建和管理 | |
CN1159665C (zh) | 创建定制数据库的方法和设备 | |
CN1475908A (zh) | 用于将动作与电子文档中的语义标签相关联的方法和系统 | |
CN102124481A (zh) | 在具有广告的网页中嵌入宏 | |
US20060015573A1 (en) | System and method for automatic redirection to stored web resources upon access failure | |
FI106322B (fi) | Osoitteittaminen Internetissä | |
JP3910236B2 (ja) | ハイパーリンク自動生成装置 | |
JP2000194641A (ja) | 持続的ウエブ資源のドメイン名を分析するための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20060906 |