CN102819570B - 一种数据访问方法、装置及系统 - Google Patents
一种数据访问方法、装置及系统 Download PDFInfo
- Publication number
- CN102819570B CN102819570B CN201210250619.9A CN201210250619A CN102819570B CN 102819570 B CN102819570 B CN 102819570B CN 201210250619 A CN201210250619 A CN 201210250619A CN 102819570 B CN102819570 B CN 102819570B
- Authority
- CN
- China
- Prior art keywords
- data
- metadata
- access request
- file system
- super
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据访问方法、装置及系统。代理服务器预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存,之后,接收应用服务器发起的数据访问请求,当所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;当所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。本发明实施例公开的数据访问方法、装置及系统,不需要磁头寻道硬磁盘来访问超元数据,直接对缓存的超元数据进行读取或更新操作,能够快速的响应应用服务器的数据访问请求,提升存储服务器的文件系统的服务质量。
Description
技术领域
本发明涉及网络存储技术领域,更具体的说,涉及一种数据访问方法、装置及系统。
背景技术
文件系统是对文件存储器空间进行组织分配,负责文件存储并对存入的文件进行保护和检索的系统。文件系统中的数据一般包括两部分:文件数据和元数据。其中,文件数据包括目录数据和实际数据;而元数据是用来组织和管理文件数据的数据。
随着信息化时代的快速发展,各领域的数据信息量也迅速膨胀扩大。一般情况下,会采用文件系统对这些海量的数据进行管理和存储。由于这些存储的数据需要随时查阅或实时更新,因此要求文件系统中的数据能够方便快速地被访问。
现有技术中,在对文件系统的数据进行访问时,通常是通过磁头寻道硬磁盘的方式来确定待访问的数据,即根据文件系统中各个磁盘之间的逻辑对应关系,查找到需要访问的数据。
为了便于理解,下面列举一个访问文件系统中的数据的例子。例如文件系统中共有20个存储块,依次编号为0、1、2、3……19;如果此时需要访问文件系统中的某一数据,服务器首先找到的是第0号存储块,第0号存储块根据访问请求中携带的信息(可以理解为线索信息),索引找到第3号存储块,在找到所述第3号存储块后,第3号存储块根据线索信息索引找到第1号存储块,在找到第1号存储块后,第1号存储块根据线索信息索引找到第9号存储块,进而从第9号存储块中定位所要访问的待访问数据。可见,访问文件系统中的数据首先都需要经过数个或数十个不同磁盘间相互查找的过程定位待访问数据,进而对待访问数据进行访问。
综上所述可以看出,现有技术数据访问方法中,定位待访问数据都需要通过磁头寻道硬磁盘来访问待访问数据,这种方法由于受到磁盘机械结构的限制,导致了文件系统的响应时间增长,降低了服务质量。
发明内容
有鉴于此,本发明提供了一种数据访问方法、装置及系统,以使得应用服务器在访问文件系统中的数据,尤其是访问目录数据和元数据时,能够快速响应应用服务器的数据访问请求,提升服务质量。
为实现上述目的,本发明提供如下技术方案:
一种数据访问方法,预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存,该方法包括:
接收应用服务器发起的数据访问请求;
当所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;
当所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。
一种数据访问装置,包括:
缓存器,用于预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;
访问接收模块,用于接收应用服务器发起的数据访问请求,并将所述数据访问请求发送给第一判断模块;
第一判断模块,用于接收所述访问接收模块发送的所述数据访问请求,判断所述数据访问请求是否为超元数据访问请求;
超元数据操作模块,用于在所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;
请求转发模块,用于在所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。
一种数据访问系统,包括应用服务器、代理服务器和存储服务器;
所述存储服务器用于存储文件系统;
所述应用服务器用于向所述代理服务器发起数据访问请求;
所述代理服务器用于预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;接收应用服务器发起的数据访问请求,当所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;当所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。
经由上述的技术方案可知,与现有技术相比,本发明实施例公开了一种数据访问方法、装置及系统,所述方法中,代理服务器预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;包括:接收应用服务器发起的数据访问请求,判断所述数据访问请求中索引信息指示的数据是否为目录数据和元数据中的至少一个,如果是,对所述超元数据进行读取或更新操作;如果否,将所述数据访问请求发送至所述文件系统。通过本发明实施例公开的文件系统数据的访问方法、装置及系统,不需要磁头寻道硬磁盘来访问超元数据,直接对缓存的超元数据进行读取或更新操作,能够快速的响应应用服务器的数据访问请求,提升了存储服务器中文件系统的服务质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的数据访问方法的流程示意图;
图2为图1所示实施例中超元数据读取操作流程图;
图3为图1所示实施例中超元数据更新操作流程图;
图4为本发明实施例公开的另一种数据访问方法流程示意图;
图5为本发明实施例公开的数据访问装置的结构示意图;
图6为图5所示实施例中超元数据操作模块结构示意图;
图7为图5所示实施例中另一个超元数据操作模块结构示意图;
图8为本发明实施例公开的另一种数据访问装置的结构示意图;
图9为本发明实施例公开的数据访问系统的结构示意图;
图10为本发明实施例公开的另一种数据访问系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例公开的数据访问方法的流程示意图,参见图1所示,所述数据访问方法中,代理服务器预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;所述方法可以包括:
步骤101:接收应用服务器发起的数据访问请求。
为了为应用服务器提供其想要查找的数据,首先需要接收应用服务器发起的数据访问请求。
步骤102:判断所述数据访问请求是否为超元数据访问请求,具体可以是判断所述数据访问请求中索引信息指示的数据是否为目录数据和元数据中的至少一个,如果是,进入步骤103;如果否,进入步骤104。
由于本发明实施例中是预先将文件系统中所有的目录数据和元数据作为超元数据保存起来的,因此,可以首先判断所述数据访问请求需要访问的数据是否为超元数据;其中,可以通过一个缓存器将文件系统中所有的目录数据和元数据作为超元数据保存起来,这样,当所述数据访问请求需要访问的数据为超元数据时,可以直接在所述缓存器中确定所述数据访问请求中索引信息指示的数据,而不需要在文件系统中通过现有技术中磁头寻道硬磁盘的方法来查找索引信息指示的数据。
步骤103:对所述超元数据进行读取或更新操作。
在判断出所述数据访问请求访问的数据是超元数据的情况下,直接在预先保存的超元数据中找到所述索引信息指示的数据即可;进而可以根据所述数据访问请求中的要求对所述索引信息指示的数据进行相应的读取或更新操作。
其中,所述对超元数据进行读取操作的具体步骤可以参见图2,图2为图1所示实施例中超元数据读取操作流程图,如图2所示,对超元数据的读取可以包括:
步骤201:获取所述数据访问请求中索引信息指示的数据,所述索引信息指示的数据为目录数据和元数据中的一个或多个。
步骤202:将所述索引信息指示的数据发送给所述应用服务器。
在所述数据访问请求为超元数据读取请求时,可以直接将在预先保存的超元数据中查找到的,所述索引信息指示的数据发送给所述应用服务器。
其中,所述对超元数据进行更新操作的具体步骤可以参见图3,图3为图1所示实施例中超元数据更新操作流程图,如图3所示,对超元数据的更新可以包括:
步骤301:判断所述数据访问请求中索引信息指示的数据中是否包括超元数据中不存在的数据;如果是,进入步骤302;如果否,进入步骤303。
数据更新请求又包括数据增加、修改和删除请求;本实施例中,针对不同的数据访问请求,处理方法也不同,因此需要在确定所述数据访问请求中索引信息指示的数据为超元数据的情况下,按照是否将需要原来不是超元数据的数据增加为超元数据的条件,进一步确定所述数据访问请求为超元数据增加请求还是超元数据修改、删除或读取请求。
当所述数据访问请求中的索引信息指示的数据为目录数据和元数据中的至少一个时,该索引信息指示的数据可以是索引数据,也可以是组织管理文件数据的数据。
步骤302:从所述文件系统中获取所述超元数据中不存在的数据,并加入所述超元数据。
步骤302能够保证包括目录数据和元数据的超元数据的及时更新。
步骤303:根据所述数据访问请求修改或删除所述索引信息指示的数据。
其中,如果所述数据访问请求对索引信息指示的数据的更新操作为删除操作,例如,1目录下原来有第一数据块、第二数据块和第三数据块,这些数据块中存储的也是目录数据,所述索引信息指示的数据为1目录下的第三数据块,更新操作为将1目录下的第三数据块删除。
对超元数据的更新操作可能需要将一些原本不是超元数据的数据更新为超元数据,也可能将原来是超元数据的数据更新为文件数据,而这些数据往往都是以存储块的形式存在的,因此,预先保存的超元数据可能就会从文件系统中载入新的超元数据块,或删除原有的超元数据块。例如:1目录下有1、2、3、4、5共5个子目录块,根据数据更新请求,需要将存储文件数据的数据存储块11增加为1目录下的第6块子目录块,那么此时文件数据块11就会变为超元数据块,而预先保存的超元数据块中没有所述文件数据块11,这就需要代理服务器将所述文件数据块11作为超元数据从所述存储服务器的文件系统中读取并保存。
在所述更新所述索引信息指示的数据的过程中删除某超元数据时,例如:1目录下有1、2、3、4、5共5个子目录时,更新操作删除了第5个子目录,如果第5个子目录对应第9超元数据块,那么在1目录下删除第5个子目录,同时还需要删除第5个子目录对应的第9超元数据块。
在步骤102的判断结果为否的情况下,进入步骤104。
步骤104:将所述数据访问请求发送至所述存储服务器的文件系统。
在判断出所述数据访问请求访问的数据不是超元数据的情况下,那么所述索引信息指示的数据就是文件数据,而本发明实施例中,预先保存的只有超元数据,即目录数据和元数据,因此,需要保存所述超元数据的主体,例如代理服务器,将所述数据访问请求发送至文件系统处理,由所述文件系统确定所述数据访问请求需要访问的数据。
本实施例中,代理服务器预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存。之后,代理服务器接收应用服务器发起的数据访问请求,判断所述数据访问请求访问的数据是否为目录数据和元数据,如果是,从预先保存的超元数据中获取所述索引信息指示的数据;如果否,将所述数据访问请求发送至所述文件系统。该方法不需要通过磁头寻道硬磁盘的方法来访问超元数据,而是直接对缓存的超元数据进行访问,能够快速的响应应用服务器的数据访问请求,提升了存储服务器的服务质量。
上述实施例描述了在对存储服务器中的数据进行访问时,如何定位待访问数据并对超元数据进行操作的过程。本发明实施例在上述实施例的基础上,进一步描述了代理服务器将根据数据访问请求对待访问数据进行访问操作的过程同步更新到存储服务器的文件系统。本实施例公开的数据的访问方法同样预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存。图4为本发明实施例公开的另一种数据访问方法流程示意图,参见图4所示,所述方法可以包括:
步骤401:接收应用服务器发起的数据访问请求。
步骤402:判断所述数据访问请求是否为超元数据访问请求,具体可以是判断所述数据访问请求中的索引信息指示的数据是否为目录数据和元数据中的至少一个,如果是,进入步骤403;如果否,进入步骤404。
步骤403:对所述超元数据进行读取或更新操作;并发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统中与所述索引信息指示的数据对应的数据。
步骤403:将所述数据访问请求发送至所述文件系统。
依据所述数据访问请求进行增加、修改或删除操作的同时,发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统中与所述索引信息指示的数据对应的数据。
在所述数据访问请求为超元数据更新请求时,由于所述数据访问请求对所述索引信息指示的数据的更新操作实际上是需要对文件系统中存储的数据进行的更新操作,因此在超元数据根据所述数据访问请求进行更新后,需要将所述更新操作同步到文件系统。
在一个示意性的示例中,所述同步更新指令可以携带更新日志,则所述代理服务器发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统数据中与所述索引信息指示的数据对应的数据的过程可以包括:发送同步更新指令到所述文件系统,以使所述文件系统依据所述更新日志更新文件系统数据中与所述索引信息指示的数据对应的数据;所述更新日志记载了对所述索引信息指示的数据的更新情况,该更新可以是增加数据内容、修改数据内容和/或删除数据内容;所述文件系统在接收到所述更新日志后,可以依据所述更新日志对所述索引信息指示的数据进行相同的操作。
在另一个示意性的示例中,所述同步更新指令可以携带更新后的超元数据,则所述发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统数据中与所述索引信息指示的数据对应的数据的过程可以包括:发送同步更新指令到所述文件系统,以使所述文件系统用所述更新后的超元数据替换文件系统数据中与所述索引信息指示的数据对应的数据;在这个示例中,存储服务器直接用更新后的超元数据覆盖所述文件系统中对应的数据。
本实施例中,所述方法不需要通过磁头寻道硬磁盘的方法来访问超元数据,而是直接对缓存的超元数据进行读取或更新操作,能够快速的响应应用服务器的的超元数据访问请求,并能够将数据访问请求对所述代理服务器中存储的超元数据进行的操作同步到所述文件系统。所述方法整体提升了存储服务器的服务质量。
上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了一种装置,能够对应的依次执行上述方法实施例中的步骤。下面给出具体的实施例进行详细说明。图5为本发明实施例公开的数据访问装置的结构示意图,参见图5所示,所述数据访问装置50可以包括:
缓存器501,用于预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存。
访问接收模块502,用于接收应用服务器发起的数据访问请求,并将所述数据访问请求发送给第一判断模块。
第一判断模块503,用于接收所述访问接收模块发送的所述数据访问请求,判断所述数据访问请求是否为超元数据访问请求,具体可以是判断所述数据访问请求中索引信息指示的数据是否为目录数据和元数据中的至少一个。
超元数据操作模块504,用于在所述第一判断模块的判断结果为是的情况下,对所述超元数据进行读取或更新操作。
在一个示意性的示例中,所述超元数据操作模块504的具体结构可以参见图6,图6为图5所示实施例中超元数据操作模块结构示意图,如图6所示,可以包括:
数据获取模块601,用于获取所述数据访问请求中索引信息指示的数据,所述索引信息指示的数据为目录数据和元数据中的一个或多个。
数据发送模块602,用于将所述索引信息指示的数据发送给所述应用服务器。
在另一个示意性的示例中,所述超元数据操作模块504的具体结构可以参见图7,图7为图5所示实施例中另一个超元数据操作模块结构示意图,如图7所示,可以包括:
第二判断模块701,用于判断所述数据访问请求中索引信息指示的数据中是否包括超元数据中不存在的数据;
第一处理模块702,用于在所述第二判断模块的判断结果为是时,从所述文件系统中获取所述超元数据中不存在的数据,并加入所述超元数据;
第二处理模块703,用于在所述第二判断模块的判断结果为否时,根据所述数据访问请求修改或删除所述索引信息指示的数据。
所述数据访问装置50还包括请求转发模块505,用于在所述第一判断模块的判断结果为否的情况下,将所述数据访问请求发送至所述存储服务器的文件系统。
本实施例中,所述数据访问装置可以是代理服务器。
本实施例中,代理服务器能够预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存。之后,代理服务器接收应用服务器发起的数据访问请求,判断所述数据访问请求中索引信息指示的数据是否为为目录数据和元数据时,如果是,对所述超元数据进行读取或更新操作;如果否,将所述数据访问请求发送至所述文件系统。代理服务器不需要通过磁头寻道硬磁盘的方法来访问超元数据,而是直接对缓存的超元数据进行访问,能够快速的响应应用服务器的数据访问请求,提升了存储服务器的服务质量。
上述实施例描述了在对存储服务器中的数据进行访问时,定位待访问数据的装置。本发明实施例在上述实施例的基础上,进一步描述了代理服务器将根据数据访问请求对待访问数据进行访问操作同步更新到存储服务器的文件系统的装置结构。图8为本发明实施例公开的另一种数据访问装置的结构示意图,参见图8所示,所述数据访问装置80可以包括:
缓存器501,用于预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存。
访问接收模块502,用于接收应用服务器发起的数据访问请求。
第一判断模块503,用于判断所述数据访问请求中索引信息指示的数据是否为超元数据访问请求,具体可以是判断所述数据访问请求中目录数据和元数据中的至少一个。
超元数据操作模块504,用于在所述第一判断模块的判断结果为是的情况下,对所述超元数据进行读取或更新操作。
请求转发模块505,用于在所述第一判断模块的判断结果为否的情况下,将所述数据访问请求发送至所述存储服务器的文件系统。
同步更新模块801,用于在所述超元数据操作模块404进行更新操作时,发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统中与所述索引信息指示的数据对应的数据。
在根据所述数据访问请求对所述索引信息指示的数据进行更新操作时,可能需要将一些原本不是超元数据的数据更新为超元数据,也可能将原来是超元数据的数据更新为文件数据,而这些数据往往都是以存储块的形式存在的,因此,预先保存的超元数据可能就会从文件系统中载入新的超元数据块,或删除原有的超元数据块。
本实施例中,所述装置不需要通过磁头寻道硬磁盘的方法来访问超元数据,而是直接对缓存的超元数据进行读取或更新操作,能够快速的响应应用服务器的的超元数据访问请求,并能够将对代理服务器中存储的超元数据进行的更新操作同步到所述文件系统。所述装置整体提升了存储服务器的服务质量。
图9为本发明实施例公开的数据访问系统结构图,参见图9所示,所述数据访问系统90可以包括存储器901和与所述存储器901进行通信的处理器902;其中,所述存储器901中存储有所述处理器902可执行的程序代码:所述程序代码包括:
第一程序代码,用于获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存。
第二程序代码,用于接收应用服务器发起的数据访问请求。
第三程序代码,用于判断所述数据访问请求是否为超元数据访问请求。
第四程序代码,用于在所述第三程序代码的判断结果为是的情况下,对所述超元数据进行读取或更新操作。
第五程序代码,用于在所述第三判断模块的判断结果为否的情况下,将所述数据访问请求发送至所述存储服务器的文件系统。
所述处理器用于获取上述程序代码,并执行。
本实施例中,所述数据的系统能够通过处理器执行存储器中的操作指令,完成预先获取文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;并在接收到的应用服务器发起的数据访问请求中索引信息指示的数据为目录数据和/或元数据时,从预先保存的超元数据中确定所述索引信息指示的数据;在所述索引信息指示的数据不是超元数据时,将所述数据访问请求发送至所述文件系统等操作。该系统不需要通过磁头寻道硬磁盘的方法来访问超元数据,而是直接对缓存的超元数据进行读取或更新操作,能够快速的响应应用服务器的数据访问请求,提升了存储服务器的服务质量。
图10为本发明实施例公开的另一种数据访问系统的结构示意图,参见图10所示,所述数据访问系统100可以包括应用服务器1001、代理服务器1002和存储服务器1003;
其中,所述存储服务器1003用于存储文件系统;所述应用服务器1001用于向所述代理服务器发起数据访问请求。
所述代理服务器1002用于预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;接收应用服务器发起的数据访问请求,当所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;当所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。
本发明实施例中的各个功能结构都可以使用现有技术中能够实现相同功能的处理器和集成电路来实现。
本实施例中,所述代理服务器不需要通过磁头寻道硬磁盘的方法来访问超元数据,而是直接对缓存的超元数据进行读取或更新操作,能够快速的响应应用服务器的的超元数据访问请求,并能够针对超元数据访问请求的类型不同进行不同的操作,整体提升了存储服务器的服务质量。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (12)
1.一种数据访问方法,其特征在于,预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据通过所述文件系统外的一个缓存器保存,该方法包括:
接收应用服务器发起的数据访问请求;
当所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;
当所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。
2.根据权利要求1所述的方法,其特征在于,所述对超元数据进行读取操作包括:
从所述缓存器获取所述数据访问请求中索引信息指示的数据,所述索引信息指示的数据为目录数据和元数据中的一个或多个;
将所述索引信息指示的数据发送给所述应用服务器。
3.根据权利要求1所述的方法,其特征在于,所述对超元数据进行更新操作包括:
判断所述数据访问请求中索引信息指示的数据中是否包括超元数据中不存在的数据;
如果是,从所述文件系统中获取所述超元数据中不存在的数据,并加入所述超元数据;
如果否,根据所述数据访问请求修改或删除所述索引信息指示的数据。
4.根据权利要求3所述的方法,其特征在于,还包括:依据所述数据访问请求更新所述索引信息指示的数据时,发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统中与所述索引信息指示的数据对应的数据。
5.根据权利要求4所述的方法,其特征在于,所述同步更新指令携带更新日志,则所述发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统数据中与所述索引信息指示的数据对应的数据,包括:
发送同步更新指令到所述文件系统,以使所述文件系统依据所述更新日志更新文件系统数据中与所述索引信息指示的数据匹配的目录数据和/元数据。
6.根据权利要求4所述的方法,其特征在于,所述同步更新指令携带更新后的超元数据,则所述发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统数据中与所述索引信息指示的数据匹配的数据,包括:
发送同步更新指令到所述文件系统,以使所述文件系统将所述更新后的超元数据替换文件系统数据中与所述索引信息指示的数据匹配的目录数据和/或元数据。
7.一种数据访问装置,其特征在于,包括:
缓存器,用于预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;所述缓存器位于所述文件系统之外;
访问接收模块,用于接收应用服务器发起的数据访问请求,并将所述数据访问请求发送给第一判断模块;
第一判断模块,用于接收所述访问接收模块发送的所述数据访问请求,判断所述数据访问请求是否为超元数据访问请求;
超元数据操作模块,用于在所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;
第一判断模块请求转发模块,用于在所述数据访问请求为非超元数据访问请求时,第一判断模块将所述数据访问请求发送至所述存储服务器的文件系统。
8.根据权利要求7所述的装置,其特征在于,所述超元数据操作模块包括:
数据获取模块,用于获取所述数据访问请求中索引信息指示的数据,所述索引信息指示的数据为目录数据和元数据中的一个或多个;
数据发送模块,用于将所述索引信息指示的数据发送给所述应用服务器。
9.根据权利要求7所述的装置,其特征在于,所述超元数据操作模块包括:
第二判断模块,用于判断所述数据访问请求中索引信息指示的数据中是否包括超元数据中不存在的数据;
第一处理模块,用于在所述第二判断模块的判断结果为是时,从所述文件系统中获取所述超元数据中不存在的数据,并加入所述超元数据;
第二处理模块,用于在所述第二判断模块的判断结果为否时,根据所述数据访问请求修改或删除所述索引信息指示的数据。
10.根据权利要求9所述的装置,其特征在于,还包括:
同步更新模块,用于在所述超元数据操作模块进行更新操作时,发送同步更新指令到所述文件系统,以使所述文件系统依据所述同步更新指令更新文件系统中与所述索引信息指示的数据对应的数据。
11.一种数据访问系统,其特征在于,包括应用服务器、代理服务器和存储服务器;
所述存储服务器用于存储文件系统;
所述应用服务器用于向所述代理服务器发起数据访问请求;
所述代理服务器用于预先获取存储服务器的文件系统中所有的目录数据和元数据,并将所述目录数据和所述元数据作为超元数据保存;接收应用服务器发起的数据访问请求,当所述数据访问请求为超元数据访问请求时,对所述超元数据进行读取或更新操作;当所述数据访问请求为非超元数据访问请求时,将所述数据访问请求发送至所述存储服务器的文件系统。
12.根据权利要求11所述的数据访问系统,其特征在于,所述代理服务器为权利要求7-10中任意一项所述的数据访问装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210250619.9A CN102819570B (zh) | 2012-07-19 | 2012-07-19 | 一种数据访问方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210250619.9A CN102819570B (zh) | 2012-07-19 | 2012-07-19 | 一种数据访问方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102819570A CN102819570A (zh) | 2012-12-12 |
CN102819570B true CN102819570B (zh) | 2015-09-30 |
Family
ID=47303681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210250619.9A Active CN102819570B (zh) | 2012-07-19 | 2012-07-19 | 一种数据访问方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102819570B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103235754B (zh) * | 2013-04-24 | 2016-10-05 | 曙光信息产业(北京)有限公司 | 分布式文件系统中请求的处理方法和装置 |
CN107330095A (zh) * | 2017-07-04 | 2017-11-07 | 郑州云海信息技术有限公司 | 一种访问管理方法及装置 |
CN108897822A (zh) * | 2018-06-21 | 2018-11-27 | 郑州云海信息技术有限公司 | 一种数据更新方法、装置、设备及可读存储介质 |
CN109144413A (zh) * | 2018-07-27 | 2019-01-04 | 郑州云海信息技术有限公司 | 一种元数据管理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103616B1 (en) * | 2003-02-19 | 2006-09-05 | Veritas Operating Corporation | Cookie-based directory name lookup cache for a cluster file system |
CN102299960A (zh) * | 2011-08-22 | 2011-12-28 | 盛乐信息技术(上海)有限公司 | 基于p2p技术的网络文件系统及方法 |
CN102521224A (zh) * | 2010-09-17 | 2012-06-27 | 微软公司 | 目录租赁 |
CN102567427A (zh) * | 2010-12-30 | 2012-07-11 | 中国移动通信集团公司 | 一种对象数据处理方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4378029B2 (ja) * | 1999-04-27 | 2009-12-02 | キヤノン株式会社 | データ処理方法及び装置及び記憶媒体 |
-
2012
- 2012-07-19 CN CN201210250619.9A patent/CN102819570B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103616B1 (en) * | 2003-02-19 | 2006-09-05 | Veritas Operating Corporation | Cookie-based directory name lookup cache for a cluster file system |
CN102521224A (zh) * | 2010-09-17 | 2012-06-27 | 微软公司 | 目录租赁 |
CN102567427A (zh) * | 2010-12-30 | 2012-07-11 | 中国移动通信集团公司 | 一种对象数据处理方法及装置 |
CN102299960A (zh) * | 2011-08-22 | 2011-12-28 | 盛乐信息技术(上海)有限公司 | 基于p2p技术的网络文件系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102819570A (zh) | 2012-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102629247B (zh) | 一种数据处理方法、装置和系统 | |
US8719237B2 (en) | Method and apparatus for deleting duplicate data | |
US9817835B2 (en) | Efficient data synchronization for storage containers | |
CN105677250B (zh) | 对象存储系统中的对象数据的更新方法和更新装置 | |
CN107491523B (zh) | 存储数据对象的方法及装置 | |
CN107943718B (zh) | 一种清理缓存文件的方法和装置 | |
CN107122410A (zh) | 一种缓存更新方法及装置 | |
CN103186622B (zh) | 一种全文检索系统中索引信息的更新方法以及装置 | |
CN104794228A (zh) | 一种搜索结果提供方法及装置 | |
CN111190962B (zh) | 一种文件同步方法、装置及本地终端 | |
CN102819570B (zh) | 一种数据访问方法、装置及系统 | |
CN110888837B (zh) | 对象存储小文件归并方法及装置 | |
CN109460345B (zh) | 实时数据的计算方法及系统 | |
CN104598652B (zh) | 一种数据库查询方法及装置 | |
IL158292A (en) | System and method for reorganizing stored information | |
CN111190899B (zh) | 一种埋点数据处理方法、装置、服务器及存储介质 | |
CN115840731A (zh) | 文件处理方法、计算设备及计算机存储介质 | |
CN111831691B (zh) | 一种数据读写方法及装置、电子设备、存储介质 | |
CN114968111A (zh) | 一种数据删除方法、装置、设备和计算机可读存储介质 | |
CN106899558B (zh) | 访问请求的处理方法、装置和存储介质 | |
CN110716924B (zh) | 删除过期数据的方法和装置 | |
CN107992763B (zh) | 一种文件系统的掉电保护方法及装置 | |
CN104700030A (zh) | 一种病毒数据查找方法、装置及服务器 | |
KR101588375B1 (ko) | 데이터베이스 관리 방법 및 데이터베이스 관리 시스템 | |
US10747438B1 (en) | Reporting using archived data |
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 |