CN1949213A - 文件服务器、文件提供方法和记录介质 - Google Patents
文件服务器、文件提供方法和记录介质 Download PDFInfo
- Publication number
- CN1949213A CN1949213A CNA2006101108540A CN200610110854A CN1949213A CN 1949213 A CN1949213 A CN 1949213A CN A2006101108540 A CNA2006101108540 A CN A2006101108540A CN 200610110854 A CN200610110854 A CN 200610110854A CN 1949213 A CN1949213 A CN 1949213A
- Authority
- CN
- China
- Prior art keywords
- file
- directory path
- virtual directory
- institute
- location information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/188—Virtual file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
一种文件服务器,其提供文件到客户机并且包括:获取部分,其当从客户机接收到文件请求时,从所接收的文件请求中指示的文件位置信息中获取唯一标识所请求文件的文件ID和目录路径;判断部分,其判断对应于所获得的文件ID的文件是否存在于所获得的目录路径中;以及提供部分,作为该判断的结果,如果对应于所获得的文件ID的文件存在,则该提供部分获取对应于所获得的文件ID的文件,并将所获得的文件作为所请求文件提供给客户机,其中,作为该判断的结果,如果对应于所获得文件ID的文件不存在,确定对应于所获得文件ID的当前目录路径,并生成指示所确定的当前目录路径以及所获得的文件ID的文件位置信息,并响应该文件请求将所生成的文件位置信息提供给客户机。
Description
优先权信息
本发明要求享有2005年10月12日提交的日本专利申请号2005-297278的优先权,在此将该申请整体引入作为参考。
技术领域
本发明涉及一种用于管理多个文件的文件管理系统。
背景技术
在本领域的相关技术包括在日本专利特开平11-3265号公报中公开的技术。在该技术中,文件服务器通过将一个称为句柄的唯一的标识符添加到每个文件来管理文件。然后,作为文件的URL,将其中指定了相关系统的服务器名称和所述文件句柄的虚拟URL提供给用户,而不是标识传统文件位置(服务器名称和至服务器中指示所述文件的存储位置的目录的路径)的URL。当用户使用所述虚拟URL访问所述系统时,所述系统从所述文件的句柄中确认它的位置并将其提供给所述用户。这种机制使得可以响应用户的请求找到文件,而与在数据管理系统中该文件已经移动到的位置(目录)无关。
另一方面,当使用FTP(文件传输协议)访问文件时,所述URL包括指示所述文件的存储位置的目录路径的符号。因此,用户能够通过参考所述URL,确定对应于所述URL的文件的存储位置。例如,当使用ftp://abc.co.jp/pub/incoming/readme.txt的URL访问文件时,用户能够确定该readme.txt存储在主机名为abc.co.jp的FTP服务器的目录路径/pub/incoming/中。
发明内容
在管理多个文件的文件服务器中,其中文件的存储位置被改变,本发明通过使用所述改变之前的文件位置信息,使得能够访问所述文件,并通过参考用于访问所述文件的文件位置信息,使得用户能够确定所述文件的存储位置。
根据本发明的一个方面,提供了一种计算机可读介质,其存储使计算机执行响应文件请求而提供文件的过程的程序。该过程包括:在从客户机接收到文件请求时,从所接收的文件请求中指示的文件位置信息中获取唯一标识所请求文件的文件ID和目录路径;判断对应于所获得的文件ID的文件是否存在于所获得的目录路径中;以及作为该判断的结果,如果对应于所获得的文件ID的文件存在,则获取对应于所获得的文件ID的文件并将所获得的文件作为所请求文件提供给该客户机,其中,作为该判断的结果,如果对应于所获得文件ID的文件不存在,则确定对应于所获得文件ID的当前目录路径,并生成指示所确定的当前目录路径以及所获得的文件ID的文件位置信息,并响应该文件请求将所生成的文件位置信息提供给该客户机。
根据本发明,即使是文件的存储位置改变了,客户机也能够通过使用该改变之前的文件位置信息访问该文件,并且用户能够通过参考用于访问该文件的文件位置信息,确定该文件的存储位置。
附图简述
以下将结合附图对本发明进行详细描述,其中:
图1示出了实施例和第一个到第三个和第五个变型示例中的文件管理系统的配置;
图2示出了文件位置信息的一个示例;
图3是实施例和第一个到第四个变型示例中的文件服务器的功能方框图;
图4示出了虚拟目录的分层结构的一个例子;
图5示出了虚拟目录信息的一个例子;
图6示出了文件信息的一个例子;
图7是一个流程图,示出了当实施例中的文件请求处理器接收到一个文件请求时的过程;
图8是一个流程图,示出了当第一个变型示例中的文件请求处理器接收到文件请求时的过程;
图9示出了文件位置信息的一个例子;
图10示出了虚拟目录的分层结构的一个例子;
图11示出了虚拟目录信息的一个例子;
图12示出了文件信息的一个例子;
图13示出了虚拟目录的分层结构的一个例子;
图14示出了文件信息的一个例子;
图15是一个流程图,示出了当第二个变型示例中的文件请求处理器接收到文件请求时的过程;
图16是一个流程图,示出了当第三个变型示例中的文件请求处理器接收到文件请求时的过程;
图17是第四个变型示例中的文件管理系统的配置;
图18是一个流程图,示出了当第四个变型示例中的文件请求处理器在另外一个文件服务器查询关于所请求文件是否存在时的过程;
图19是一个流程图,示出了当第四个变型示例中的文件请求处理器从另外一个文件服务器接收关于所请求文件是否存在的查询时的过程;
图20示出了在第五个变型示例中的文件服务器的功能方框图;
图21示出了移动历史的一个例子;以及
图22示出了文件位置信息的一个例子。
具体实施方式
以下参考附图描述本发明的实施例。
图1是表示实施例中的文件管理系统的系统组成的示意图。该系统包括文件服务器10和客户机30,两者都连接到网络50,例如LAN(局域网)或者因特网。
文件服务器10管理表示文件的实际存储位置的实际目录和表示所述文件的虚拟存储位置的虚拟目录。所述文件通常指的是数据的集合,例如有文本数据、图像数据、视频数据等等,可以通过网络50与文件服务器10和客户机30相互交换这些数据。
客户机30传输包括关于所请求文件的文件位置信息的文件请求到文件服务器10。基于从客户机30接收到的文件位置信息,文件服务器10搜索所请求文件并将所获得文件提供给客户机30。
所述文件位置信息具有全局唯一的文件ID,用于唯一确定至少所请求文件和指示所请求文件的虚拟存储位置的虚拟目录路径。例如通过使用URL(统一资源定位器)符号,描述所述文件位置信息。图2示出了文件请求目标的主机名称100、所请求文件的虚拟目录路径102和所请求文件的文件ID104。
作为全局唯一的文件ID,可以使用称为UUID(通用唯一标识符)或者GUID(全局唯一标识符)的128位标识信息。附带地,为了保证全局唯一性,UUID包括,例如,UUID生成的时间或者安装在用于生成UUID的机器上的网卡的MAC(媒介访问控制)地址。
图3是实施例中的文件服务器10的功能方框图。在图3中,文件请求处理器12接收从客户机30传输来的文件请求,基于文件请求中所指示的文件位置信息搜索所请求文件,并将所获得的文件作为所请求文件传输到客户机30。文件存储器14在相应指定的实际目录下存储文件。
虚拟目录管理器16保留虚拟目录信息17。当虚拟目录有图4所示的分层结构时,虚拟目录信息17具有图5所示的信息。如图5所示,在虚拟目录信息17中指示了虚拟目录的虚拟目录名称110和上一级的父虚拟目录的虚拟目录名称112之间的关联。在图5中,具有父虚拟目录名“null”的虚拟目录是根目录。文件请求处理器12能够通过参考虚拟目录信息17,确认当前虚拟目录的结构。
文件管理器18保留文件信息19。图6示出了文件信息19的一个例子。如图6所示,文件信息19指示了文件ID120、表示文件的虚拟存储位置的虚拟目录路径122、文件名称124和表示文件的实际存储位置的实际目录路径126之间的关联。文件请求处理器12能够通过参考文件信息19,确认表示文件虚拟存储位置的虚拟目录和表示文件实际存储位置的实际目录。
接下来参考图7所示的流程图,描述在从客户机30接收到文件请求的情况中文件请求处理器12的过程。
当文件请求处理器12从客户机30接收到文件请求时,从在所述文件请求中指示的文件存储位置中获得(S100)所请求文件的虚拟目录路径和文件ID。文件请求处理器12通过参考文件信息19判断所请求文件是否存在(S102)。即,文件请求处理器12搜索在文件信息19中注册的文件ID,寻找所请求文件的文件ID。作为判断结果,如果所请求文件不存在(S102的判断结果为否定的“否”),则文件请求处理器12发出一个错误通知(S116)到发出所述文件请求的客户机30,指示所请求文件不存在。
另一方面,作为S102的判断结果,如果所请求文件存在(S102的判断结果为肯定的“是”),则文件请求处理器12通过参考文件信息19,判断所请求文件是否存在(S104)在所获得的虚拟目录路径中。即,判断具有所获得的虚拟目录路径与所获得的文件ID的组合的信息是否已经被登录在文件信息19中。作为所述判断的结果,如果所请求文件存在于所获得的虚拟目录路径中(S104的判断结果为“是”),则文件请求处理器12通过参考文件信息19,确定(S106)对应于所获得的文件ID的实际目录路径。接下来,文件请求处理器12从在所确定的实际目录路径的最低层中示出的实际目录中获得所请求文件(S108),并将所请求文件提供给(S110)发出所述文件请求的客户机30。
另一方面,作为S104的判断结果,如果所请求文件不存在于所获得的虚拟目录路径中(S104的判断结果为“否”),则文件请求处理器12判断所请求文件已经从文件位置信息中指示的虚拟目录路径中移走。然后文件请求处理器12通过参考文件信息19,确定对应于所请求文件的文件ID的当前虚拟目录路径(S112)。接下来,文件请求处理器12生成指示所确定的虚拟目录路径和所请求文件的文件ID的新的文件位置信息,并将生成的文件位置信息提供(S114)给发出所述文件请求的客户机30。如果响应来自文件服务器10的文件请求,为客户机30提供了文件位置信息,所请求文件被判断为已经移走,因此将指示所提供的文件位置信息的新的文件请求传输到文件服务器10。
根据以上所述的本实施例,即使是所请求文件已经移走并且使用先前的文件位置信息对文件服务器10进行文件请求,也为客户机30提供新的文件位置信息。因此,如果使用新的文件位置信息再次对文件进行请求,客户机30能够最终获得所请求文件。此外,由于响应文件请求将新的文件位置信息提供给客户机30,用户能够确定所请求文件已经转移到另外一个虚拟目录。此外,当客户机30请求文件时使用的文件位置信息包括指示所述文件的虚拟存储位置的虚拟目录路径。因此,通过参考所述文件位置信息,用户能够确定所述文件存在于哪个目录之下。
以下将描述该实施例的第一个变型示例。在第一个变型示例中,所请求文件已经转移到另外一个虚拟目录,与上述实施例的不同在于,文件请求处理器12响应文件请求,将文件位置信息连同所请求文件提供给发出该请求的客户机30。
以下参考图8所示的流程图,描述在从客户机30接收文件请求的第一个变型示例中的文件请求处理器12的过程。这里与图7相同的过程指定相同的参考字符并且省略了它们的描述。以下描述从S104开始的过程。
在图8中,当所请求文件已经转移到另外一个虚拟目录时,即,当在步骤S104的判断结果为“否”时,文件请求处理器12通过参考文件信息19,确定(S120)对应于所请求文件的实际目录路径和当前虚拟目录路径。接下来,文件请求处理器12从位于所确定的实际目录路径的最低层的实际目录中获得(S122)所请求文件。此外,文件请求处理器12生成指示所确定的当前虚拟目录路径的新的文件位置信息,并将所述文件位置信息和获得的所请求文件提供(S124)给发出所述文件请求的客户机30。
根据以上所述的第一个变型示例,如果客户机30使用先前的文件位置信息对文件服务器10进行文件请求,即使是在所请求文件已经移走的情况中,响应所述文件请求,可以获得所请求文件和新的文件位置信息。然后用户能够确定所述文件转移到哪个虚拟目录中。
接下来将描述实施例的第二个变型示例。第二个修改过的例子变型示例相对于上述实施例和第一个修改过的例子变型示例的不同在于,所述文件位置信息中所指示的虚拟目录路径是由全局以及唯一地标识所述虚拟目录的虚拟目录ID进行配置的。类似文件ID,所述虚拟目录ID能够采用UUID或者GUID。图9示出了当使用URL时在第二个变型示例中的文件位置信息的一个例子。如图9所示,所述文件位置信息包括文件请求目标的主机名称100、由虚拟目录ID形成的虚拟目录路径106、和所请求文件的文件ID104。
图10示出了第二个变型示例中的虚拟目录的分层结构的一个例子。如图10所示,在第二个变型示例中,将全局唯一的虚拟目录ID指定给每个虚拟目录。通过采用这种方式将全局唯一的虚拟目录ID指定给虚拟目录,具有相同名称的若干个虚拟目录能够存在于相同的层次中,例如图10所示的目录“soft”。
图11示出了保留在第二个变型示例中的虚拟目录管理器16中的虚拟目录信息17的一个例子。如图11所示,在第二个变型示例中的虚拟目录信息17指示虚拟目录名称110、虚拟目录的虚拟目录ID114以及位于该虚拟目录上面一个级别的父虚拟目录ID116之间的关联。
图12示出了保留在第二个变型示例中的文件管理器18中的文件信息19的一个例子。如图12所示,在第二个变型示例中的文件信息19指示了在文件ID120、父虚拟目录ID128(其是文件的虚拟存储位置)、文件名称124以及实际目录路径126(其是文件的实际存储位置)之间的关联。
在第二个变型示例中,将全局唯一的虚拟目录ID指定给每个虚拟目录,如上所述。因此,如果能够确定所述文件的虚拟存储位置的父虚拟目录的虚拟目录ID,则文件请求处理器12通过核对虚拟目录ID和虚拟目录信息17,可以确定所述文件的虚拟存储位置的虚拟目录路径。因此,在第二个变型示例中,在文件信息19中指示所述文件的虚拟存储位置的父虚拟目录ID128,而不是所述文件的虚拟存储位置的虚拟目录路径122。
当在实施例或者第一个变型示例中文件移动时,文件管理器18必须确定从目标虚拟目录到位于比虚拟目录更高层次的根目录的所有的虚拟目录,并将从被确定的虚拟目录中形成的虚拟目录路径重新登录到文件信息19中。另一方面,在第二个变型示例中,即使是文件移动了,文件管理器18仅仅需要确定目标虚拟目录并将所确定的虚拟目录的虚拟目录ID重新登录到文件信息19中。例如,如图13所示,如果文件“price”已经从虚拟目录“fileserver”移动到虚拟目录“scanserver”,则文件管理器18仅仅需要将文件信息19中的文件“price”的父虚拟目录ID从“dir4”变到“dir5”。
以下参考图15中所示的流程图,描述在第二个变型示例中,当从客户机30接收到文件请求时文件请求处理器12的过程。
当从客户机30接收到所述文件请求时,文件请求处理器12从在所述文件请求中指示的文件位置信息中获得(S200)所请求文件的虚拟目录路径和文件ID。文件请求处理器12通过参考文件信息19,判断(S202)所请求文件是否存在。作为该判断的结果,如果所请求文件不存在(S202的判断结果为“否”),则文件请求处理器12发出一个错误通知(S218)到发出所述文件请求的客户机30,所述错误通知指示所请求文件不存在。
另一方面,作为S202的判断的结果,如果所请求文件存在(S202的判断结果为“是”),则文件请求处理器12通过参考文件信息19,确定(S204)所请求文件现在虚拟保存的虚拟目录的虚拟目录ID,即父虚拟目录ID。接下来,文件请求处理器12通过参考来自所确定的父虚拟目录ID的虚拟目录信息17,判断(S206)所获得的虚拟目录路径是否与父目录移动向上直到到达根目录而生成的路径相匹配。如果判断的结果是匹配(S206的判断结果为“是”),则文件请求处理器12通过参考文件信息19,确定(S208)对应于所获得文件ID的实际目录路径。接下来,文件请求处理器12从在所确定的实际目录路径的最低层所指示的实际目录中获得(S210)所请求文件,并将所请求文件提供(S212)给发出所述文件请求的客户机30。
另一方面,如果由S206的判断未得出匹配(S206的判断结果为“否”),则文件请求处理器12判断所请求文件已经从所述文件位置信息中指示的虚拟目录路径移走。然后,文件请求处理器12通过参考虚拟目录信息17,生成(S214)具有在最底层的所确定的父虚拟目录ID的虚拟目录路径。接下来,文件请求处理器12生成指示所请求文件的文件ID以及所生成虚拟目录路径的文件位置信息,并将所生成文件位置信息提供(S216)给发出所述文件请求的客户机30。
根据以上描述的第二个变型示例,即使是所请求文件已经移走并且使用先前的文件位置信息对文件服务器10进行文件请求,也为客户机30提供新的文件位置信息。因此,如果使用新的文件位置信息再次对文件进行请求,客户机30能够最终获得所请求文件。此外,由于响应文件请求将新的文件位置信息提供给客户机30,用户能够确定所请求文件已经转移到另外一个虚拟目录。此外,当客户机30请求文件时使用的文件位置信息包括指示所述文件的虚拟存储位置的虚拟目录路径。因此,通过参考所述文件位置信息,用户能够确认所述文件存在于哪个目录之下。
此外,将全局唯一的虚拟目录ID指定给每个虚拟目录。因此,根据第二个变型示例,具有相同名称的若干个虚拟目录能够存在于相同的层次。
接下来将要描述实施例的第三个变型示例。如同在第一个变型示例中,当所请求文件已经转移到另外一个虚拟目录时,文件请求处理器12响应于文件请求,将所请求文件连同所述文件位置信息提供给发出所述文件请求的客户机30。
图16是一个流程图,示出了当从客户机30接收到文件请求时文件请求处理器12的过程。为图16中与图15中的那些过程相同的过程指定了相同的参考字符,并且省略了它们的描述。以下将要描述从S206开始的过程。
如果图16中的所请求文件已经移动到另外一个虚拟目录,即如果S206的判断结果为“否”,则文件请求处理器12通过参考文件信息19,确定(S220)对应于所请求文件的当前虚拟目录路径以及实际目录路径。接下来,文件请求处理器12从位于所确定的实际目录路径的最低层的实际目录获得(S222)所请求文件。此外,文件请求处理器12通过参考虚拟目录信息17,生成(S224)具有所确定的父虚拟目录ID的在最底层的虚拟目录路径。文件请求处理器12生成指示所生成虚拟目录路径以及所请求文件的文件ID的新的文件位置信息,并将所述新的文件位置信息和所获得的请求文件提供(226)给发出所述文件请求的客户机30。
根据以上所述的第三个变型示例,即使是所请求文件已经移走并且使用先前的文件位置信息对文件服务器10进行文件请求,客户机30响应所述文件请求,能够获得所请求文件和新的文件位置信息。
接下来将要描述实施例的第四个变型示例。在第四个变型示例中,在所述文件管理系统中排列了多个文件服务器,并且将要描述文件在这些文件服务器之间的移动。
图17示出了在第四个变型示例中的文件管理系统的配置。如图17所示,多个文件服务器10通过网络50连接。每个文件服务器都指定了在所述文件管理系统中的全局唯一的服务器ID。所述服务器ID例如是主机名称或者IP地址。
在上述实施例和变型示例中,文件请求服务器12搜索在文件信息19中登录的文件ID,以查看是否包含所请求文件的文件ID。如果不能找到所述文件ID,则将一个错误通知发送到发出所述文件请求的客户机30(图7和图8中的S116,图15和图16中的S218)。然而,在第四个变型示例中,如果不能找到所请求文件,则文件请求处理器12在其他文件服务器10上查询是否存储了所请求的文件。
图18是一个流程图,示出了当如果不能找到所请求文件,文件请求处理器12在另外一个文件服务器查询时的过程;
在图18中,文件请求处理器12首先检测(S300)其他文件服务器。通过从文件请求处理器12向网络50广播用于对其他服务器进行检测的预先确定的消息,可以执行对其他服务器的检测。其他服务器具有用于识别和响应所述用于对其他服务器进行检测的消息的协议。即,在接收到所述用于对其他服务器进行检测的消息之后,这些文件服务器根据所述协议响应文件请求处理器12。文件请求处理器12从其他文件服务器接收所述响应。其结果是,能够发现形成所述系统的其他文件服务器。另外一个方法是使每个文件服务器都存储其他文件服务器的服务器ID的列表。
如果不能找到其他文件服务器(S302的判断为“否”),则文件请求处理器12发出一个错误通知(S310)到发出该请求的客户机30。另一方面,如果找到其他文件服务器(S302的判断为“是”),则文件请求处理器12向其他文件服务器发送一个查询(S304),该查询包括包含在文件位置信息中并从客户机30接收到的文件ID。如果接收到该查询的其他文件服务器拥有对应于所述文件ID的文件,则将对应于所述文件的新的文件位置信息提供给文件请求处理器12。以下将描述接收到所述查询的其他文件服务器的操作。
作为该查询的结果,如果发现受到查询的其他文件服务器没有所述文件(S306的判断为“否”),则重复对其他文件服务器的检测(S300)和相应的查询(S302),直到不能检测到其他文件服务器为止。另一方面,作为该查询的结果,如果其他受到查询的文件服务器拥有所述文件(S306的判断为“是”),则文件请求处理器12将从其他所查询的文件服务器接收到的文件位置信息提供(S308)给发出该请求的客户机30。
接下来将要参考图19所示的流程图,描述当从其他文件服务器接收到上述查询时文件请求处理器12的过程。
在图19中,文件请求处理器12从该查询中提取(S400)出所请求文件的文件ID。接下来,文件请求处理器12通过参考文件信息19,搜索(S402)所提取的文件ID。作为所述搜索的结果,如果不能找到所述文件ID(S404的判断结果为“否”),则文件请求处理器12通知(S406)查询文件服务器所述文件不存在。
另一方面,如果作为所述搜索的结果,所述文件存在(S404的判断结果为“是”),则文件请求处理器12通过参考虚拟目录信息17和文件信息19,生成所述文件的虚拟目录路径。可以采用与上述实施例或者变型示例相同的方式实现虚拟目录路径的生成。接下来,文件请求处理器12生成文件位置信息,以包括至少所生成的虚拟目录路径、所述文件的文件ID以及它自己的服务器ID,并将所述文件位置信息提供(S408)给查询文件服务器。
根据以上所述的第四个变型示例,如果所请求文件在接收到所述文件请求的文件服务器上不存在,但是所请求文件在另外一个文件服务器中确实存在,则将对应于所请求文件的文件位置信息提供给发出所述文件请求的客户机30。因此,客户机30通过使用响应于所述文件请求而接收到的新的文件位置信息,可以获得所请求文件。
接下来,将要描述实施例的第五个变型示例。关于保留文件已经在虚拟目录之间移动时的历史,第五个变型示例不同于上述实施例和变型示例。
图20是在第五个变型示例中文件服务器10的功能方框图。为图20中与图3中的那些功能方框图相同的功能方框图被指定相同的参考字符并省略对它们的描述。一个文件移动管理器20监视文件在虚拟目录之间的移动,并保留移动历史21。如图21所示,所述移动历史21指示所请求文件的文件ID130、移动之前的虚拟目录路径132、以及移动之后的虚拟目录路径134。
如果通过执行上述实施例和变型示例中所述的过程,判断所请求文件已经移走,并且文件请求处理器12参考所述移动历史21,而不生成对应于所请求文件的虚拟目录路径。然后文件请求处理器12从对应于所请求文件的文件ID的移动之前的虚拟目录路径中,搜索与所述文件位置信息中指示的虚拟目录路径相匹配的移动之前的虚拟目录路径。然后文件请求处理器12通过参考所述移动历史21,确定对应于所找到的移动之前的虚拟目录路径的移动之后的虚拟目录路径,并生成新的文件位置信息,以包含所确定的虚拟目录路径。
如果在上述的第五个变型示例中,所请求的文件已经移走,则文件请求处理器12通过参考在文件移动管理器20中所保留的移动历史21,确定移动之后的虚拟目录路径。
在上述实施例和变型示例中,在所述文件请求中指示的文件位置信息被描述为包括如图2和图9所示的虚拟目录路径。然而,由于在所述文件管理系统中,文件ID是全局唯一的标识符,因此只要识别文件ID,就能够确定所请求文件。因此,在如图22所示的文件请求中指示的文件位置信息中所指示的文件请求过程中,文件请求处理器12能够仅仅从主机名称100和所请求文件的文件ID104确定所请求文件。在该情况中,可以对文件请求处理器12进行设计,使得生成所述文件位置信息,以包括如图2和图9所示的虚拟目录路径,并且将所生成的文件位置信息连同所请求文件一起提供给发出文件请求的客户机30。其结果是,如果用户仅仅知道所请求文件的文件ID,也能够获得所请求文件。此外,在该情况中,用户能够通过参考所提供的文件位置信息,推测所请求文件目前存在于哪个目录下。在上述实施例和变型示例中,文件ID被描述为全局唯一的标识符。然而,如果文件不是在多个文件服务器之间共享,而是在每个文件服务器上被单独管理,则文件ID不必是全局唯一的标识符,并且可以使用在单个文件服务器中是唯一标识符的文件ID。
此外,在该文件请求中指示的文件位置信息可以指示实际目录路径而不是虚拟目录路径。
Claims (7)
1.一种文件服务器,其提供文件到客户机,所述文件服务器包括:
获取部分,其当从所述客户机接收到文件请求时,从所接收的文件请求中指示的文件位置信息中获取唯一标识所请求文件的文件ID和目录路径;
判断部分,其判断对应于所获得的文件ID的文件是否存在于所获得的目录路径中;以及
提供部分,作为所述判断的结果,如果对应于所获得的文件ID的文件存在,则所述提供部分获取对应于所获得的文件ID的文件,并将所获得的文件作为所请求文件提供给所述客户机,其中,
作为所述判断的结果,如果对应于所获得文件ID的文件不存在,确定对应于所获得文件ID的当前目录路径,并生成指示所确定的当前目录路径以及所获得的文件ID的文件位置信息,并响应所述文件请求将所生成的文件位置信息提供给所述客户机。
2.根据权利要求1所述的文件服务器,其中
所述目录是指示文件的虚拟存储位置的虚拟目录;
通过参考关联文件ID、所述文件的当前虚拟目录路径以及指示所述文件的实际存储位置的实际目录路径的文件信息,确定对应于所请求文件ID的当前虚拟目录路径,并且基于所确定的当前虚拟目录路径是否与所获得的虚拟目录路径相匹配,判断对应于所获得的文件ID的文件是否存在于所获得的虚拟目录路径中;
如果所确定的当前虚拟目录路径与所获得的虚拟目录路径相匹配,则判定所请求文件存在于所获得的虚拟目录路径中,通过参考所述文件信息确定对应于所获得的文件ID的实际目录路径,从所确定的实际目录路径获得对应于所获得的文件ID的所述文件,并将所获得的文件作为所请求文件提供给所述客户机。
3.根据权利要求2所述的文件服务器,其中
如果所确定的虚拟目录路径与所获得的虚拟目录路径不匹配,则判断所请求文件不存在于所获得的虚拟目录路径中,生成指示所确定的虚拟目录路径以及所获得的文件ID的文件位置信息,并响应所述文件请求将所生成的文件位置信息提供给所述客户机。
4.根据权利要求1所述的文件服务器,其中
所述目录是指示文件的虚拟存储位置的虚拟目录;
指示文件位置信息的虚拟目录路径包括唯一标识虚拟目录的至少一个目录ID;
通过参考关联文件ID、指示所述文件的虚拟存储位置的当前虚拟目录的目录ID、以及指示所述文件的实际存储位置的实际目录路径的文件信息,确定其中虚拟存储了对应于所获得的文件ID的文件的当前虚拟目录的目录ID;基于所确定的目录ID是否与所获得的虚拟目录路径中的最底层的目录ID相匹配,判断对应于所获得的文件ID的文件是否存在于所获得的虚拟目录路径中;
如果所述目录ID匹配,则判断所请求文件存在于所获得的虚拟目录路径中,确定对应于所获得的文件ID的实际目录路径,从所确定的实际目录路径获得所述文件,并将所获得的文件作为所请求文件提供给所述客户机。
5.根据权利要求4所述的文件服务器,其中
如果所述目录ID不匹配,则判断所请求文件不存在于所获得的虚拟目录路径中,通过参考指示有关当前虚拟目录结构的信息的虚拟目录信息,使用在该最底层的所确定的目录ID生成虚拟目录路径,生成指示所生成的虚拟目录路径以及所获得的文件ID的文件位置信息,并响应所述文件请求将所生成的文件位置信息提供给所述客户机。
6.一种计算机可读介质,其存储使计算机执行响应文件请求而提供文件的过程的程序,所述过程包括:
在从客户机接收到文件请求时,从所接收的文件请求中指示的文件位置信息中获取唯一标识所请求文件的文件ID和目录路径;
判断对应于所获得的文件ID的文件是否存在于所获得的目录路径中;以及
作为所述判断的结果,如果对应于所获得的文件ID的文件存在,则获取对应于所获得的文件ID的文件并将所获得的文件作为所请求文件提供给所述客户机,其中,
作为所述判断的结果,如果对应于所获得文件ID的文件不存在,则确定对应于所获得文件ID的当前目录路径,并生成指示所确定的当前目录路径以及所获得的文件ID的文件位置信息,并响应所述文件请求将所生成的文件位置信息提供给所述客户机。
7.一种文件提供方法,用于文件服务器将文件提供给客户机,所述文件提供方法包括所述文件服务器的下列步骤:
在从所述客户机接收到文件请求时,从所接收的文件请求中指示的文件位置信息中获取唯一标识所请求文件的文件ID和目录路径;
判断对应于所获得的文件ID的文件是否存在于所获得的目录路径中;以及
作为所述判断的结果,如果对应于所获得的文件ID的文件存在,则获取对应于所获得的文件ID的文件并将所获得的文件作为所请求文件提供给所述客户机,其中,
作为所述判断的结果,如果对应于所获得文件ID的文件不存在,则确定对应于所获得文件ID的当前目录路径,并生成指示所确定的当前目录路径以及所获得的文件ID的文件位置信息,并响应所述文件请求将所生成的文件位置信息提供给所述客户机。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP297278/2005 | 2005-10-12 | ||
JP2005297278A JP2007108905A (ja) | 2005-10-12 | 2005-10-12 | ファイルサーバ、ファイル提供方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1949213A true CN1949213A (zh) | 2007-04-18 |
CN100435146C CN100435146C (zh) | 2008-11-19 |
Family
ID=37911998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101108540A Expired - Fee Related CN100435146C (zh) | 2005-10-12 | 2006-08-15 | 文件服务器和文件提供方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20070083485A1 (zh) |
JP (1) | JP2007108905A (zh) |
CN (1) | CN100435146C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872356A (zh) * | 2010-05-31 | 2010-10-27 | 中兴通讯股份有限公司 | 一种内存数据库处理性能的方法与系统 |
CN105227661A (zh) * | 2015-09-30 | 2016-01-06 | 深圳天珑无线科技有限公司 | 文件分享方法及系统、服务器 |
CN105989007A (zh) * | 2015-01-27 | 2016-10-05 | 珠海金山办公软件有限公司 | 一种文件路径处理方法及装置 |
CN110795394A (zh) * | 2019-11-01 | 2020-02-14 | 网易(杭州)网络有限公司 | 一种文件的获取方法和装置 |
CN114979119A (zh) * | 2022-05-23 | 2022-08-30 | 深圳市云语科技有限公司 | 一种在文件传输系统通过虚拟路径支持多存储的方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080243962A1 (en) * | 2007-03-30 | 2008-10-02 | Yasuyuki Mimatsu | Method and apparatus for providing and managing a virtual storage namespace |
CN101903952B (zh) * | 2007-12-17 | 2012-08-22 | 松下电器产业株式会社 | 记录装置、再现装置、记录方法以及再现方法 |
JP5095436B2 (ja) * | 2008-02-12 | 2012-12-12 | ソニー株式会社 | Bgm付きスライドショー表示システム、bgm付きスライドショー表示方法、情報処理装置、再生装置及びプログラム |
JP5786701B2 (ja) * | 2011-12-16 | 2015-09-30 | 富士通株式会社 | 修復システム、修復方法及びプログラム |
US9628560B2 (en) | 2013-03-08 | 2017-04-18 | Dropbox, Inc. | Sharing a content item |
JP6459339B2 (ja) * | 2014-09-22 | 2019-01-30 | 富士ゼロックス株式会社 | 情報管理装置、情報管理プログラム |
US10372694B2 (en) * | 2014-10-08 | 2019-08-06 | Adobe Inc. | Structured information differentiation in naming |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5930801A (en) * | 1997-03-07 | 1999-07-27 | Xerox Corporation | Shared-data environment in which each file has independent security properties |
WO1999042934A2 (en) * | 1998-02-20 | 1999-08-26 | Storm Systems, Llc | File system performance enhancement |
US7327387B2 (en) * | 2000-02-21 | 2008-02-05 | Fujifilm Corporation | Image pick-up information transmitting system and remote control method for an information transmitting system |
JP4186456B2 (ja) * | 2001-11-28 | 2008-11-26 | 沖電気工業株式会社 | 分散ファイル共有システムおよびその制御方法 |
US7644136B2 (en) * | 2001-11-28 | 2010-01-05 | Interactive Content Engines, Llc. | Virtual file system |
KR100484138B1 (ko) * | 2002-05-08 | 2005-04-18 | 삼성전자주식회사 | 관계형 데이터베이스에서 정규 경로식 질의를 처리하는xml 인덱싱 방법과 자료구조 |
JP4320195B2 (ja) * | 2003-03-19 | 2009-08-26 | 株式会社日立製作所 | ファイルストレージサービスシステム、ファイル管理装置、ファイル管理方法、id指定型nasサーバ、および、ファイル読出方法 |
JP4415594B2 (ja) * | 2003-07-23 | 2010-02-17 | ソニー株式会社 | サーバ装置、サーバ装置用プログラムおよびサーバ装置の情報処理方法 |
US20070088702A1 (en) * | 2005-10-03 | 2007-04-19 | Fridella Stephen A | Intelligent network client for multi-protocol namespace redirection |
-
2005
- 2005-10-12 JP JP2005297278A patent/JP2007108905A/ja not_active Withdrawn
-
2006
- 2006-06-14 US US11/452,837 patent/US20070083485A1/en not_active Abandoned
- 2006-08-15 CN CNB2006101108540A patent/CN100435146C/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872356A (zh) * | 2010-05-31 | 2010-10-27 | 中兴通讯股份有限公司 | 一种内存数据库处理性能的方法与系统 |
CN101872356B (zh) * | 2010-05-31 | 2013-08-07 | 中兴通讯股份有限公司 | 一种内存数据库处理性能的方法与系统 |
CN105989007A (zh) * | 2015-01-27 | 2016-10-05 | 珠海金山办公软件有限公司 | 一种文件路径处理方法及装置 |
CN105989007B (zh) * | 2015-01-27 | 2019-12-27 | 珠海金山办公软件有限公司 | 一种文件路径处理方法及装置 |
CN105227661A (zh) * | 2015-09-30 | 2016-01-06 | 深圳天珑无线科技有限公司 | 文件分享方法及系统、服务器 |
CN105227661B (zh) * | 2015-09-30 | 2019-04-02 | 深圳天珑无线科技有限公司 | 文件分享方法及系统、服务器 |
CN110795394A (zh) * | 2019-11-01 | 2020-02-14 | 网易(杭州)网络有限公司 | 一种文件的获取方法和装置 |
CN110795394B (zh) * | 2019-11-01 | 2022-09-30 | 网易(杭州)网络有限公司 | 一种文件的获取方法和装置 |
CN114979119A (zh) * | 2022-05-23 | 2022-08-30 | 深圳市云语科技有限公司 | 一种在文件传输系统通过虚拟路径支持多存储的方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2007108905A (ja) | 2007-04-26 |
CN100435146C (zh) | 2008-11-19 |
US20070083485A1 (en) | 2007-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1949213A (zh) | 文件服务器、文件提供方法和记录介质 | |
CN1873641A (zh) | 数据管理系统、数据服务器和数据管理方法 | |
JP5404766B2 (ja) | ルーティングをリクエストするための方法とシステム | |
JP5389153B2 (ja) | クラスに基づいてルーティングをリクエストするための方法とシステム | |
US8352615B2 (en) | Content management | |
JP4144882B2 (ja) | 情報処理装置、情報システム、プロキシ処理方法、及びプログラムと記録媒体 | |
US7620732B2 (en) | Apparatus for and method of setting communication path | |
CN1802019A (zh) | 操作用于位置信息系统的网关的方法 | |
CN1249973C (zh) | 存在及会话处理信息 | |
CN1194512C (zh) | 信息设备、网关设备及其控制方法 | |
CN1925485A (zh) | 数据服务器、数据管理方法和数据管理系统 | |
CN1677981A (zh) | 通信设备,名称解析方法和程序 | |
CN1866249A (zh) | 数据管理系统、数据服务器以及数据管理方法 | |
CN1529460A (zh) | 基于全球网络定位的全局负载均衡方法 | |
CN1770718A (zh) | 用于建立双向隧道的方法和系统 | |
CN1424657A (zh) | 设备信息获取方法、服务器设备和计算机可读存储介质 | |
CN1764191A (zh) | 用于动态更新会话状态亲缘性的方法和系统 | |
CN1901546A (zh) | 信息处理装置 | |
CN1930848A (zh) | 用于万维网服务处理的方法和系统 | |
EP2153625A1 (en) | Mobile device file sharing method and apparatus | |
CN1708007A (zh) | 服务提供系统、服务提供方法及其程序 | |
CN101494558A (zh) | 网络设备管理装置、其控制方法及网络系统 | |
EP1039692A2 (en) | Network peripheral server discovery method | |
CN1554200A (zh) | 使用关键字名称用于提供位置相关信息的系统及其方法 | |
CN101039250A (zh) | 一种图片共享系统和方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081119 Termination date: 20170815 |