快速数据读写方法和装置制造方法及图纸

技术编号:13009950 阅读:81 留言:0更新日期:2016-03-10 23:30
一种快速数据读写方法,应用于计算机系统中,所述计算机系统包括存储介质、主机以及硬件加速控制器HAC,所述硬件加速控制器通过接口与所述主机和存储介质相连,所述主机包括一中央处理器,所述主机与外部接口相连,所述方法包括:硬件加速控制器HAC接收中央处理器发送的读/写请求,所述读/写请求包括外部需要读取或写入数据的文件的元数据,所述读/写请求由所述中央处理器判断出系统进程发送的命令为到数据读/写请求后生成;根据所述元数据,从所述文件中读取数据;或者,将需要写入所述文件的数据写入所述文件;向所述中央处理器报告数据读/取结果。利用实施例提供的方法,使得文件系统的IO处理由HAC进行,主机可以处理更多的其他业务。

【技术实现步骤摘要】
【国外来华专利技术】快速数据读写方法和装置
本专利技术涉及数据处理领域,尤其涉及一种快速数据读写方法和装置。
技术介绍
一个完整的计算机系统由计算系统,存储系统和网络系统三个系统组成,这三者由一个操作系统来管理;存储系统在操作系统中以文件系统方式存在,文件系统的开销在整个操作系统的性能开销中占很大一部分。现有技术一中,文件系统和设备驱动程序是操作系统的一部分,由CPU负责逻辑操作和数据操作,当需要进行文件的读或写操作时,由进程发起IO请求,该IO请求经过操作系统内核,由CPU处理。其主要步骤如下:进程需要读写文件时向操作系统发起IO请求;内核读取内存中的元数据,对该IO请求包装,比如使得该IO请求包括文件的开始地址,文件的长度等信息,并将该包装后的IO请求发送到设备驱动程序;内核控制设备驱动程序,将读或写数据的请求发送到磁盘,磁盘进行对应的读或写操作;磁盘将数据传送到内存,并更新元数据,以上步骤都需要CPU参与,耗费CPU的计算能力。现有技术二中,对图1A中的软件栈进行修改,修改后的软件栈如图1B所示,图1B中,将文件系统和设备驱动程序从软件剥离,并将文件系统和驱动的相关操作固化在硬件中,使用硬件来完成文件系统和驱动程序的相关操作,但是如果文件系统太大,则元数据太多,而元数据都被保持在内存中,硬件的内存有限,所以硬件能支持的文件大小和个数受限,而且该技术需要修改软件和硬件等多方面的内容,因此不容易集成到现有的操作系统中。
技术实现思路
本专利技术的目的是提供一种快速数据读写方法和装置,以加速文件系统的IO性能。第一方面,本专利技术实施例提供了一种快速数据读写方法,应用于计算机系统中,所述计算机系统包括存储介质、主机以及硬件加速控制器HAC,所述硬件加速控制器通过接口与所述主机和存储介质相连,所述主机包括一中央处理器,所述主机与外部接口相连,所述方法包括:硬件加速控制器HAC接收中央处理器发送的读/写请求,所述读/写请求包括外部需要读取或写入数据的文件的元数据,所述读/写请求由所述中央处理器判断出系统进程发送的命令为到数据读/写请求后生成;根据所述元数据,从所述文件中读取数据;或者,将需要写入所述文件的数据写入所述文件;向所述中央处理器报告数据读/取结果。结合第一方面,在第一种可能的实施方式中,所述读/写请求为读请求时,所述根据所述元数据,从所述文件中读取数据进一步包括:根据所述读请求中的元数据,查找所述硬件加速控制器的本地内存中是否具有与所述元数据对应的文件;当所述HAC根据所述元数据确定所述本地内存中不具有所述文件时,所述硬件加速控制器对所述元数据进行解析,获取所述文件的块数据,所述块数据中包括所述文件的地址和长度信息;将所述文件块数据的地址信息转化为存储介质能够识别的IO命令,并将所述IO命令发送到存储介质,以代替所述主机直接对所述存储介质进行读操作。结合第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述方法还包括:当所述读/写请求为读请求,所述HAC根据所述文件元数据确定本地内存中具有所述元数据对应的文件时,将所述文件对应的数据发送给所述主机。结合第一方面,在第三种可能的实施方式中,所述方法还包括:当所述读/写请求为写请求时,所述写请求中还包括需要写入存储介质中的数据,所述将需要写入所述文件的数据写入所述文件,进一步包括:根据所述写请求中的元数据,查找所述硬件加速控制器的本地内存中是否具有与所述元数据对应的文件;如果所述本地内存中具有与所述元数据对应的文件,所述HAC将所述需要写入存储介质中的数据,写入所述元数据对应的文件;将所述本地内存中与所述元数据对应的文件,同步到所述存储介质中。结合第一方面的第三种可能的实施方式,在第四种可能的实施方式中,所述方法还包括:当所述HAC根据所述元数据确定所述本地不具有所述文件时,所述硬件加速控制器对所述元数据进行解析,获取所述文件的块数据,所述块数据中包括所述文件的地址和长度信息;将所述文件块数据的地址信息转化为存储介质能够识别的IO命令,并将所述IO命令发送到存储介质,以代替所述主机直接对所述存储介质进行写操作;将所述需要写入存储介质中的数据写入到所述存储介质中与所述文件块数据的地址信息对应的存储空间。第二方面,本专利技术实施例提供了一种快速数据读写装置,应用于计算机系统中,所述计算机系统包括存储介质、主机以及硬件加速控制器HAC,所述硬件加速控制器通过接口与所述主机和存储介质相连,所述主机包括一中央处理器,所述主机与外部接口相连,所述装置包括:接口模块,用于接收中央处理器发送的读/写请求,所述读/写请求包括外部需要读取或写入数据的文件的元数据,所述读/写请求由所述中央处理器判断出系统进程发送的命令为到数据读/写请求后生成;数据收发模块,用于根据所述元数据,从所述文件中读取数据;或者,将需要写入所述文件的数据写入所述文件;并且向所述中央处理器报告数据读/取结果。结合第二方面,在第一种可能的实施方式中,所述装置还包括:查找单元,用于在所述读/写请求为读请求时,根据所述读请求中的元数据,查找本地内存中是否具有与所述元数据对应的文件;命令解析模块,用于当所述查找单元根据所述元数据确定所述本地内存中不具有所述文件时,对所述元数据进行解析,获取所述文件的块数据,所述块数据中包括所述文件的地址和长度信息;命令转化模块,用于将所述文件块数据的地址信息转化为存储介质能够识别的IO命令,并将所述IO命令发送到存储介质,以代替所述中央处理器直接对所述存储介质进行读操作。结合第二方面的第一种可能的实施方式,在第二种可能的实施方式中,所述数据收发模块还用于:当所述读/写请求为读请求时,所述查找单元根据所述文件元数据确定本地内存中具有所述元数据对应的文件时,将所述文件对应的数据发送给所述主机。结合第二方面,在第三种可能的实施方式中,当所述读/写请求为写请求时,所述写请求中还包括需要写入存储介质中的数据,所述装置还包括:查找单元,用于根据所述写请求中的元数据,查找本地内存中是否具有与所述元数据对应的文件;如果所述本地内存中具有与所述元数据对应的文件,所述数据收发模块将所述需要写入存储介质中的数据,写入所述元数据对应的文件;同步单元,用于将所述本地内存中与所述元数据对应的文件,同步到所述存储介质中。结合第一方面的第三种可能的实施方式,在第四种可能的实施方式中,当所述查找单元根据所述元数据确定所述本地不具有所述文件时,所述命令解析模块对所述元数据进行解析,获取所述文件的块数据,所述块数据中包括所述文件的地址和长度信息;命令转化模块,用于将所述文件块数据的地址信息转化为存储介质能够识别的IO命令,并将所述IO命令发送到存储介质,以代替所述主机直接对所述存储介质进行写操作;所述数据收发模块用于将所述需要写入存储介质中的数据写入到所述存储介质中与所述文件块数据的地址信息对应的存储空间。第三方面,本专利技术实施例提供了一种快速数据读写装置,应用于计算机系统中,所述计算机系统包括存储介质、主机以及硬件加速控制器HAC,所述硬件加速控制器通过接口与所述主机和存储介质相连,所述主机包括一中央处理器,所述主机与外部接口相连,所述装置包括:网络接口;处理器;存储器;物理存储在所述存储器中的应用程序,所述应用程序包括可用于使本文档来自技高网...
快速数据读写方法和装置

【技术保护点】
PCT国内申请,权利要求书已公开。

【技术特征摘要】
【国外来华专利技术】1.一种快速数据读写方法,应用于计算机系统中,所述计算机系统包括存储介质、主机以及硬件加速控制器HAC,所述硬件加速控制器通过接口与所述主机和存储介质相连,所述主机包括一中央处理器,所述主机与外部接口相连,其特征在于,所述方法包括:硬件加速控制器HAC接收中央处理器发送的读/写请求,所述读/写请求包括外部需要读取或写入数据的文件的元数据,所述读/写请求由所述中央处理器判断出系统进程发送的命令为到数据读/写请求后生成;根据所述元数据,从所述文件中读取数据;或者,将需要写入所述文件的数据写入所述文件;向所述中央处理器报告数据读/取结果;所述根据所述元数据,从所述文件中读取数据,或者,将需要写入所述文件的数据写入所述文件,进一步包括:根据所述读/写请求中的元数据,查找所述硬件加速控制器的本地内存中是否具有与所述元数据对应的文件;当所述HAC根据所述元数据确定所述本地内存中不具有所述文件时,所述硬件加速控制器对所述元数据进行解析,获取所述文件的块数据,所述块数据中包括所述文件的地址和长度信息;将所述文件块数据的地址信息转化为存储介质能够识别的IO命令,并将所述IO命令发送到存储介质,以代替所述主机直接对所述存储介质进行读/写操作;且当代替所述主机直接对所述存储介质进行写操作时,还包括:将所述需要写入存储介质中的数据写入到所述存储介质中与所述文件块数据的地址信息对应的存储空间。2.如权利要求1所述的方法,其特征在于,所述方法还包括:当所述读/写请求为读请求,所述HAC根据所述文件元数据确定本地内存中具有所述元数据对应的文件时,将所述文件对应的数据发送给所述主机。3.如权利要求1所述的方法,其特征在于,所说方法还包括:当所述读/写请求为写请求时,所述写请求中还包括需要写入存储介质中的数据,所述将需要写入所述文件的数据写入所述文件,进一步包括:根据所述写请求中的元数据,查找所述硬件加速控制器的本地内存中是否具有与所述元数据对应的文件;如果所述本地内存中具有与所述元数据对应的文件,所述HAC将所述需要写入存储介质中的数据,写入所述元数据对应的文件;将所述本地内存中与所述元数据对应的文件,同步到所述存储介质中。4.一种快速数据读写装置,应用于计算机系统中,所述计算机系统包括存储介质、主机以及硬件加速控制器HAC,所述硬件加速控制器通过接口与所述主机和存储介质相连,所述主机包括一中央处理器,所述主机与外部接口相连,其特征在于,所述装置包括:接口模块,用于接收中央处理器发送的读/写请求,所述读/写请求包括外部需要读取或写入数据的文件的元数据,所述读/写请求由所述中央处理器判断出系统进程发送的命令为到数据读/写请求后生成;数据收发模块,用于根据所述元数据,从所述文件中读取数据;或者,将需要写入所述文件的数据写入所述文件;并且向所述中央处理器报告数据读/取结果;查找单元,用于根据所述读/写请求中的元数据,查找所述硬件加速控制器的本地内存中是否具有与所述元数据对应的文件;命令解析模块,用于当所述查找单元根据所述元数据确定所述本地内存中不具有所述文件时,对所述元数据进行解析,获取所述文件的块数据,所述块数据中包括所述文件的地址和长度信息;命令转化模块,用...

【专利技术属性】
技术研发人员:方帆李俊
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1