【技术实现步骤摘要】
利用实时计算用于逐分块数据组织和放置的方法和系统本申请要求于2018年2月14日提交美国专利商标局、申请号为15896747、专利技术名称为“METHODANDSYSTEMFORCHUNK-WISEDATAORGANIZATIONANDPLACEMENTWITHREAL-TIMECALCULATION”的美国专利申请的优先权,其全部内容通过引用结合在本申请中。
本公开一般地涉及数据存储的领域。更具体地,本公开涉及利用实时计算用于逐分块数据组织和放置的方法和系统。
技术介绍
因特网和电子商务的激增继续产生大量的数字内容。已经创建了分布式存储系统来访问并存储这种数字内容。分布式存储系统可包括多个存储服务器,其中存储服务器可包括多个驱动器,诸如固态驱动器(SSD)和硬盘驱动器(HDD)。存储在驱动器上的数据通常是基于文件系统和闪存转换层(FTL)来组织的,所述FTL将数据的逻辑块地址(LBA)映射到驱动器的物理块地址(PBA)。然而,在逻辑块的大小与物理块的大小之间可能存在显著不一致。例如,SSD/传统文件系统可使用512B单元或4096B(~4KB)单元作为逻辑块大小,但是可使用16KB单元作为物理块大小(例如,作为物理页面的一部分)。作为将LBA映射到PBA的一部分,FTL维护查找表,其中每一4KBLBA被指派了一个条目,所述条目它本身具有4B的近似大小。在具有16TB容量的SSD中,此FTL查找表可具有40亿个条目(即,16TB/4KB=4e+9)。假如每个条目是4B,则FTL查找表可以和16GB(即,4e+9x4=16e+9)一样大。这个大16GBFTL ...
【技术保护点】
1.一种用于促进数据组织的计算机实现的方法,所述方法包括以下步骤:接收指示要从非易失性存储器读取的文件的请求,其中,所述非易失性存储器被划分成多个逻辑分块,并且其中,分块被划分成多个大块;基于所述请求确定分块索引、在所述文件的开头与对应于所述分块索引的分块的开头之间的第一偏移以及所述文件的请求长度;基于所述分块索引和所述第一偏移计算所请求的文件的大块索引;基于所述大块索引识别所述非易失性存储器中的位置;以及基于所述请求长度从所述非易失性存储器中的所识别的位置读取所请求的文件。
【技术特征摘要】
2018.02.14 US 15/896,7471.一种用于促进数据组织的计算机实现的方法,所述方法包括以下步骤:接收指示要从非易失性存储器读取的文件的请求,其中,所述非易失性存储器被划分成多个逻辑分块,并且其中,分块被划分成多个大块;基于所述请求确定分块索引、在所述文件的开头与对应于所述分块索引的分块的开头之间的第一偏移以及所述文件的请求长度;基于所述分块索引和所述第一偏移计算所请求的文件的大块索引;基于所述大块索引识别所述非易失性存储器中的位置;以及基于所述请求长度从所述非易失性存储器中的所识别的位置读取所请求的文件。2.根据权利要求1所述的方法,所述方法进一步包括以下步骤:基于所述请求确定在所述文件的开头与在所述文件内从中开始读取所述文件的起始位置之间的第二偏移,其中,计算所述大块索引并且识别所述位置的步骤进一步基于所述第二偏移。3.根据权利要求1所述的方法,其中,确定所述分块索引的步骤进一步基于基于所请求的文件在数据结构中执行查找,其中,所述数据结构包括在所述文件与一组对应的位置信息之间的映射,并且其中,所述位置信息包括所述非易失性存储器中的所述存储器的分块索引和大块索引。4.根据权利要求1所述的方法,所述方法进一步包括以下步骤:响应于从所述非易失性存储器中的所识别的位置成功地读取所请求的文件,将所请求的文件发送到请求主机。5.根据权利要求1所述的方法,其中,所述请求被第一服务器接收并发送到第二服务器,并且其中,所述方法进一步包括:确定指示从中读取所请求的文件的一个或更多个存储服务器的路径信息;响应于确定所述路径信息未被缓存在所述第二服务器处:通过所述第二服务器从主节点中检索所述路径信息;并且通过所述第二服务器缓存所述路径信息;以及响应于确定所述路径信息被缓存在所述第二服务器处,通过所述第二服务器确定从中读取所请求的文件的一个或更多个存储服务器。6.根据权利要求5所述的方法,所述方法进一步包括以下步骤:响应于从所述非易失性存储器中的所识别的位置未成功地读取所请求的文件,从与所述路径信息中指示的另一存储服务器相关联的非易失性存储器读取所请求的文件。7.根据权利要求5所述的方法,所述方法进一步包括以下步骤:响应于从与所述路径信息中指示的所述存储服务器相关联的多个非易失性存储器未成功地读取所请求的文件:向所述第一服务器报告读取失败;以及从备份读取所请求的文件。8.一种用于促进数据组织的计算机实现的方法,所述方法包括以下步骤:接收指示要写入到非易失性存储器的文件的请求,其中,所述非易失性存储器被划分成多个逻辑分块,并且其中,分块被划分成多个大块;确定与所述文件关联的第一大块被成功地缓存在缓冲器中;将所述第一大块写入到所述非易失性存储器中的位置,其中,多个大块被顺序地写入在所述非易失性存储器中;以及在数据结构中存储在所述文件与一组对应的位置信息之间的映射,其中,所述位置信息包括所述非易失性存储器的分块索引和大块索引。9.根据权利要求8所述的方法,该方法进一步包括以下步骤:将所述文件划分成第一多个分块以获得对应的元数据,所述元数据指示针对每个分块的索引和所述文件的长度。10.根据权利要求8所述的方法,其中,所述请求被第一服务器接收并发送到第二服务器,并且其中,所述方法进一步包括以下步骤:确定对要将所述文件写入到的一个或更多个存储服务器进行指示的路径信息;响应于确定所述路径信息未被缓存在所述第二服务器处:通过所述第二服务器从主节点中检索所述路径信息;并且通过所述第二服务器缓存所述路径信息;以及响应于确定所述路径信息被缓存在所述第...
【专利技术属性】
技术研发人员:李舒,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。