信息处理方法以及装置与流程

文档序号:32418680发布日期:2022-12-02 22:38阅读:23来源:国知局
1.本说明书实施例涉及数据存储
技术领域
:,特别涉及信息处理方法以及装置。
背景技术
::2.随着互联网技术的发展,为了实现可靠的海量数据存储,目前多采用分布式存储系统。分布式文件系统作为一种高可用、高可靠的分布式存储系统,在对象存储、文件存储、表格存储和块存储等场景下得到有效的应用。而随着底层分布式文件系统越来越多的支持zns-ssd等仅支持append-only的存储介质,分布式文件系统的单机存储层也采用类似kv的存储结构,数据的删除、修改和更新采用append-only写log的方式来实现,而达到依赖后台gc真正做到被覆盖或已删除数据的物理空间释放;此过程中,中间kv类存储引擎层及底层分布式文件系统层需要各自独立做gc,致使彼此之间缺乏协同,从而带来更大的io放大,垃圾数据增加,影响整体系统性能;尤其是在纠删码场景下,这种性能的影响更为严重,因此亟需一种有效的方案以解决上述问题。技术实现要素:3.有鉴于此,本说明书实施例提供了一种信息处理方法。本说明书一个或者多个实施例同时涉及一种信息处理装置,一种信息处理系统,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。4.根据本说明书实施例的第一方面,提供了一种信息处理方法,包括:5.获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表;6.在检测到关联所述纠删码文件的操作请求的情况下,在所述条带信息记录表中读取所述纠删码条带信息;7.根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息;8.根据所述操作请求和所述数据地址信息创建操作描述信息,并发送至所述目标数据节点。9.根据本说明书实施例的第二方面,提供了一种信息处理装置,包括:10.获取模块,被配置为获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表;11.读取模块,被配置为在检测到关联所述纠删码文件的操作请求的情况下,在所述条带信息记录表中读取所述纠删码条带信息;12.确定模块,被配置为根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息;13.创建模块,被配置为根据所述操作请求和所述数据地址信息创建操作描述信息,并发送至所述目标数据节点。14.根据本说明书实施例的第三方面,提供了一种信息处理系统,包括:15.服务端,用于获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表;在检测到关联所述纠删码文件的操作请求的情况下,在所述条带信息记录表中读取所述纠删码条带信息;根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息;根据所述操作请求和所述数据地址信息创建操作描述信息,并发送至所述目标数据节点;16.所述目标数据节点,用于接收所述操作描述信息,并根据所述操作描述信息确定物理地址信息;对所述物理地址信息对应的待操作数据区间进行标记。17.根据本说明书实施例的第四方面,提供了一种计算设备,包括:18.存储器和处理器;19.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令时实现任上述信息处理方法的步骤。20.根据本说明书实施例的第五方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述信息处理方法的步骤。21.根据本说明书实施例的第六方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述信息处理方法的步骤。22.本说明书提供的信息处理方法,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。附图说明23.图1是本说明书一个实施例提供的一种信息处理方法的结构示意图;24.图2是本说明书一个实施例提供的一种信息处理方法的流程图;25.图3是本说明书一个实施例提供的一种信息处理方法中纠删码条带的示意图;26.图4是本说明书一个实施例提供的一种信息处理方法的处理过程流程图;27.图5是本说明书一个实施例提供的一种信息处理装置的结构示意图;28.图6是本说明书一个实施例提供的一种信息处理系统的结构示意图;29.图7是本说明书一个实施例提供的一种计算设备的结构框图。具体实施方式30.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。31.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。32.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。33.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。34.纠删码:(erasurecoding,ec)作为一种数据保护方法,它将数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置,比如磁盘、存储节点或者其它地理位置,达到数据保护的目的。35.zns-ssd:(zonednamespace,分区命名空间)-(solidstatedisk,固态硬盘)是在ssd基础上发展而来的,实现了把ftl(flashtranslationlayer,闪存转换层)从ssd内部迁移到上层的host端,把ssd内部开放给了host端,实现用户可以根据自己需要比较灵活的拥有自己特定的ftl。36.append-only:是计算机数据存储的一种属性,将新数据附加到存储中,但现有数据是不可变的。且仅支持追加写,不支持随机修改的写入模式。37.文件:由文件名或文件id唯一标识的一段连续存储数据。每个文件由一个或多个chunk组成。38.chunk:chunk是存储文件中的一段连续区间的数据,每个chunk可以为多副本chunk,或者纠删码chunk。39.replica:replica是chunk存储到单机存储引擎的一段连续数据的数据块。多副本chunk的每个replica相同;纠删码chunk,每个replica存储满足纠删码切片和排布规则的数据分片,每个分片的数据不同。40.gc:(garbagecollection,垃圾回收),在kv存储引擎中对被覆盖或已删除的数据通过文件重写,释放物理空间的后台任务。41.在本说明书中,提供了一种信息处理方法,本说明书同时涉及一种信息处理装置,一种计算设备,一种信息处理系统,一种计算机可读存储介质以及一种计算机程序,在下面的实施例中逐一进行详细说明。42.参见图1所示的示意图,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。43.图2示出了根据本说明书一个实施例提供的一种信息处理方法的流程图,具体包括以下步骤。44.步骤s202,获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表。45.实际应用中,在分布式文件系统中,纠删码的应用从条带角度可以分为固定条带纠删码(固定条带ec)和非固定条带纠删码(非固定条带ec);参见图3中的(a)为固定条带ec,(b)为非固定条带ec;其中,固定条带ec要求进行纠删码编码的数据块是固定大小的,大小等于纠删码的编码配置对应的编码数据块大小,纠删码包括但不限于rs(reed-solomon,里所码),lrc(locallyrepairablecodes,局部校验编码),或者再生码(regeneratingcode)等。而非固定条带ec支持纠删码编码的数据块可以为非固定大小;对于大小不等于纠删码的编码配置对应的编码数据块大小的情况,需要采用数据padding填充到对齐,比如,一个条带(由图3中(b)的d5、d6、d7、d8、p3和p4组成)8m,上面只写了7m,则还需要1m的padding(填充数据)数据进行填充,即d8中使用1m的padding数据进行填充,以达到对齐的目的;且在填充完成后,还需要记录逻辑地址与物理地址的数据偏移的对应关系。46.在此基础上,纠删码场景下,因为存储到分布式文件系统中各个数据节点的用户数据,经过纠删码的数据分片和排布后,会分布在一个纠删码chunk的多个replica中,致使用户数据与纠删码条带无法对齐,也就无法在分布式文件系统中,对每个数据节点上的用户数据直接进行trim操作,导致需要消耗更多的计算资源才能够完成用户数据的trim操作,整体影响分布式文件系统的性能。47.有鉴于此,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。48.具体的,纠删码文件具体是指纠删码场景下由经过数据分片和排布后的用户数据组成的文件,且分片和排布后的用户数据存储在分布式文件系统中的不同数据节点;相应的,纠删码条带具体是指纠删码文件按照固定长度进行切分后得到的条带,相应的,纠删码条带信息具体是指纠删码条带相对于纠删码文件的属性信息,用于明确纠删码条带相对于纠删码文件的偏移量和条带实际大小。需要说明的是,纠删码文件对应纠删码条带组,而纠删码条带组由至少一个纠删码条带组成,一个纠删码条带需要在多个数据节点上存储,这些数据节点分别存储这个条带的部分数据,整体合并起来即为该纠删码条带。相应的,条带信息记录表具体是指,针对纠删码文件关联的每个纠删码条带对应的纠删码条带信息进行持久化存储的记录表,用于在需要针对某一纠删码条带进行trim操作时,可以通过读表的方式确定逻辑地址到物理地址的映射关系,从而实现在每个数据节点可以完成对纠删码条带的trim操作,以降低分布式文件系统的计算资源的消耗,提高系统的整体性能。49.基于此,为了能够在对用户数据进行trim时,可以不影响分布式文件系统的性能,同时达到数据删除和空间回收,可以在数据分片存储阶段,可以先获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表,以实现通过条带信息记录表对纠删码条带信息进行持久化,实现后续可以直接从条带信息记录表中读取条带信息记录表进行数据的trim操作。50.进一步的,在获取纠删码文件对应的纠删码条带信息时,由于纠删码文件涉及到的用户数据需要写入分布式文件系统的不同数据节点,因此可以通过分布式文件系统提供信息表接口,通过该接口获取纠删码文件的纠删码条带信息,本实施例中,具体实现方式如下:51.基于分布式文件系统的信息表接口,确定所述纠删码文件对应的条带位置信息和条带属性信息;根据所述条带位置信息和所述条带属性信息,确定所述纠删码条带信息。52.具体的,分布式文件系统的信息表接口具体是指设置获取纠删码条带信息的接口,实现在纠删码文件被切分出纠删码条带的情况下,可以通过该接口确定纠删码条带信息,且信息表接口确定的纠删码条带信息与纠删码条带相对于纠删码文件的位置和属性相关。相应的,条带位置信息具体是指纠删码条带相对于纠删码文件的偏移信息,相应的,条带属性信息具体是指纠删码文件相对于纠删码文件的实际大小信息,且不包含填充数据的大小信息。53.基于此,分布式文件系统提供信息表接口,当纠删码文件通过分布式文件系统切分为多个纠删码条带后,可以通过分布式文件系统的信息表接口,确定纠删码文件中纠删码条带对应的条带位置信息和条带属性信息,以通过条带位置信息和所述条带属性信息,确定所述纠删码条带信息,再将其写入纠删码文件对应的条带信息记录表,即可用于后续的数据trim操作。54.具体实施时,分布式文件系统可以提供获取纠删码文件的纠删码条带边界的信息表rangetable接口,其中,纠删码条带边界即为纠删码条带信息,在rangetable表中,表的每一项对应一个纠删码条带,每一个纠删码条带在表中存在条带相对于文件的偏移,以及条带的实际大小,即纠删码条带对应的逻辑地址信息,且同时该表还记录有逻辑地址与物理地址的映射关系,即每个纠删码条带中涉及到的数据在每个数据节点处的数据块中的地址,用于在后续对数据进行trim操作时,可以结合映射关系确定待操作数据区间在数据节点处对应的物理地址。其中,待操作数据区间即为待删除的数据区间。55.综上,通过分布式文件系统提供信息表接口,可以实现在纠删码条带产生时,对每个条带的纠删码条带信息进行持久化记录,以方便在后续需要进行trim操作时,可以结合条带信息记录表完成,从而可以有效的提升分布式文件系统的性能。56.步骤s204,在检测到关联所述纠删码文件的操作请求的情况下,在所述条带信息记录表中读取所述纠删码条带信息。57.具体的,在上述在条带信息记录表中添加每个纠删码条带对应的纠删码条带信息的基础上,若检测到关联所述纠删码文件的操作请求,说明当前阶段需要对纠删码文件涉及到的用户数据进行trim操作,此过程中,为了能够不影响分布式文件系统的性能,且实现kv存储引擎可以与分布式文件系统协同完成,则可以先在条带信息记录表中读取关联纠删码文件的纠删码条带信息,用于后续可以结合纠删码条带信息确定需要进行trim操作的数据所属的条带,以实现kv存储引擎可以按照条带信息记录表中的纠删码条带信息进行trim,使得分布式文件系统可以促使数据节点进行处理。58.其中,操作请求具体是指对纠删码文件涉及到的用户数据进行trim操作所对应的请求,该请求可以来自于服务器或者用户。59.进一步的,在读取纠删码条带信息时,由于纠删码文件对应至少一个纠删码条带,因此在进行trim操作时,也将按照条带粒度完成;即在接收到操作请求后,需要根据纠删码条带信息确定目标纠删码条带对应的地址映射关系,本实施例中,具体实现方式如下:60.接收针对所述纠删码文件对应的目标纠删码条带提交的所述操作请求;根据所述操作请求,在所述条带信息记录表中读取所述纠删码条带信息;在所述纠删码条带信息中确定所述目标纠删码条带对应的地址映射关系;以用于后续可以根据地址映射关系完成数据地址信息的确定。61.具体的,目标纠删码条带具体是指纠删码文件中需要进行trim操作的数据所属的纠删码条带;相应的,地址映射关系具体是指目标纠删码条带对应的逻辑地址与物理地址的映射关系,能够确定纠删码条带中每个数据节点中需要进行trim操作的数据对应的物理地址。且逻辑地址的表达结构为偏移量和长度,相应的,物理地址的表达结构也为偏移量和长度。62.基于此,在接收到针对纠删码文件对应的目标纠删码条带提交的操作请求的情况下,说明需要针对目标纠删码条带关联的数据进行trim操作,此时可以根据操作请求,先在条带信息记录表中读取关联纠删码文件的纠删码条带信息,之后在纠删码条带信息中确定目标纠删码条带对应的地址映射关系,实现后续可以根据该映射关系转换出待操作数据区间对应的物理地址。63.具体实施时,在检测到针对目标纠删码文件提交的操作请求后,kv存储引擎可以根据操作请求先读取rangetable表,以根据读取结果确定rangetable表中关联目标纠删码文件的range边界,即目标纠删码条带对应纠删码条带信息,后续即可按照纠删码条带信息进行trim。64.综上,通过条带信息记录表确定目标纠删码条带对应的纠删码条带信息,可以实现根据纠删码条带信息直接进行后续的trim操作,以达到使用更少的计算资源完成trim操作,以提升分布式文件系统的性能。65.更进一步的,考虑到目标纠删码条带中包含的数据可能是部分有用部分无用,在此情景下就无法直接针对目标纠删码条带进行trim,因此为了能够针对不同的场景都能够支持trim的操作,可以通过判断的方式完成,本实施例中,具体实现方式如下:66.判断所述目标纠删码条带中是否包含冗余数据;若否,执行所述根据所述操作请求,在所述条带信息记录表中读取所述纠删码条带信息的步骤;若是,根据所述操作请求更新预设的索引记录表,并在所述索引记录表中记录的信息满足操作执行条件的情况下,根据所述索引记录表,在所述条带信息记录表中读取所述纠删码条带信息。67.具体的,冗余数据具体是指有用数据;相应的,索引记录表具体是指用于记录逻辑地址的记录表,用于对包含冗余数据的目标纠删码条带的trim操作对应的信息进行记录,且在记录的信息满足条件的情况下,将直接根据索引记录表中记录的信息对整条目标纠删码条带进行trim操作,也就是说,索引记录表用于累计记录针对目标纠删码条带中的数据进行trim操作的信息。其中,操作执行条件具体是指数据量上的累计条件,即当索引记录表中记录的操作请求信息所涉及到的数据量超过目标纠删码条带的情况下,即可按照索引记录表进行后续的处理。68.基于此,参见图3中(c)和(d),在确定目标纠删码文件后,若针对ec整条带进行trim,则可以不进行条带是否包含冗余数据的判断,直接对整条带涉及到的全部数据都进行trim,即可。而若针对ec条带内部分数据进行trim,则需要先判断目标纠删码条带中是否包含冗余数据;若包含,说明目标纠删码条带中包含部分有用数据和部分无用数据,此时无法对目标纠删码条带进行trim操作,因此可以先对操作请求进行记录;参见图3中(d)所示,当需要针对条带中的r1、r2-1、r2-2、r2-3进行trim时,其中还包括r3-1、r3-2、p1和p2无法进行trim,则此时可以根据操作请求更新预设的索引记录表,直至索引记录表中记录的信息满足操作执行条件的情况下,说明此时数据量的累计超过了目标纠删码条带,因此可以再根据索引记录表,在条带信息记录表中读取纠删码条带信息,再进行后续的trim操作。若不包含,说明此时目标纠删码文件中的全部数据都可以进行trim操作,因此可以直接进行后续的trim操作。69.具体实施时,无法trim的原因是因为目标纠删码条带中包含有用数据和无用数据。而在kv存储引擎中设有索引记录表,记录了k-》kv在文件中的位置,删除k则可以在索引记录表中标记这个位置无效,但是在数据节点中的实际数据不能删除,直到删除的k的数据大于等于目标纠删码条带的大小时,即可将整个目标纠删码条带一起trim。70.综上,通过判断冗余数据的方式进行不同方式的trim,可以保证在目标纠删码条带在不同场景下进行不同的trim操作,以实现可以保证trim操作的成功,从而提高分布式文件系统的性能。71.在此基础上,若目标纠删码条带中包含部分无用数据和有用数据,在按照索引记录表进行纠删码条带信息读取时,实则是在数据量累计到超过目标纠删码条带的情况下完成,本实施例中,具体实现方式如下:72.根据所述操作请求生成所述目标纠删码条带对应的目标操作记录信息,并将所述目标操作记录信息添加至所述索引记录表;在所述索引记录表中记录的操作记录信息满足操作执行条件的情况下,在所述索引记录表中读取关联所述目标纠删码条带的至少两个操作记录信息;根据所述至少两个操作记录信息,在所述条带信息记录表中读取所述纠删码条带信息。73.具体的,目标操作记录信息具体是指对应目标纠删码条带中部分数据的trim操作所对应的信息。74.基于此,在确定目标纠删码条带包含冗余数据的情况下,说明此时接收到的操作请求是针对目标纠删码条带中的部分数据进行trim操作的请求,因此可以根据操作请求先生成目标纠删码条带对应的目标操作记录信息,再将其写入索引记录表中。以此类推,直至目标纠删码条带包含的全部数据都记录了对应的trim操作对应的操作记录信息后,即可确定索引记录表中记录的操作记录信息满足操作执行条件的情况下,则此时可以在所述索引记录表中读取关联目标纠删码条带的至少两个操作记录信息;再根据至少两个操作记录信息,从条带信息记录表中读取纠删码条带信息即可。75.实际应用中,在确定索引信息记录表是否满足操作执行条件时,实则是通过比对数据量的方式确定,本实施例中,具体实现方式如下:76.确定所述索引记录表中记录的操作记录信息关联的全局数据量;在所述全局数据量大于等于所述目标纠删码条带对应的条带数据量的情况下,执行所述在所述索引记录表中读取关联所述目标纠删码条带的至少两个操作记录信息的步骤。77.具体的,全局数据量具体是指索引记录表中记录的操作记录信息所涉及到数据累计数据量;相应的,条带数据量具体是指目标纠删码条带对应的数据量。78.基于此,在将操作记录信息更新到索引记录表中后,可以按周期对索引记录表中操作记录信息关联的全局数据量进行确定,直至累计的数据量超过目标纠删码条带对应的数据量,即可确定能够针对目标纠删码条带进行trim操作,因此可以再进行纠删码条带信息的读取。79.具体实施时,若kv存储引擎无法按照rangetable表中的range边界,即目标纠删码条带对应纠删码条带信息进行trim操作,说明此时目标纠删码条带中包含部分有用数据和无用数据,因此为了能够保证trim操作可以正常进行,可以先记录trim信息,直至记录的trim信息涉及到的数据量超过目标纠删码条带,再进行后续按照纠删码条带信息进行trim操作即可。80.综上,通过采用数据量上的累计方式进行目标操作记录信息的留存,可以实现对全部操作请求都进行记录,以在数据量累计超过目标纠删码条带时,再进行后续的trim操作,可以达到使用更少的计算资源完成trim操作。81.步骤s206,根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息。82.具体的,在上述从条带信息记录表中读取到纠删码条带信息后,进一步的,由于目标纠删码条带所涉及到的用户数据存储在分布式文件系统的不同数据节点上,因此可以先确定目标数据节点,再根据纠删码条带信息确定纠删码文件对应目标数据节点的数据地址信息,即确定不同数据节点对应的不同数据地址信息,以实现可以针对不同的目标数据节点发送不同的操作描述信息。83.进一步的,在从纠删码条带信息中确定目标纠删码条带对应的地址映射关系后,此时可以根据地址映射关系确定目标纠删码条带对应目标数据节点的数据地址信息。以方便目标数据节点进行trim操作。84.更进一步的,在确定数据地址信息时,实则是根据逻辑地址和物理地址的映射关系,确定目标纠删码条带对应的物理地址,本实施例中,具体实现方式如下:85.将分布式文件系统中关联所述目标纠删码条带的数据节点,作为所述目标数据节点;根据所述地址映射关系确定所述目标纠删码条带对应所述目标数据节点的物理地址信息,作为所述目标纠删码条带对应所述目标数据节点的所述数据地址信息;其中,所述物理地址信息中包含所述目标纠删码条带对应所述目标数据节点的数据偏移量信息和数据长度信息。86.具体的,目标数据节点具体是指分布式文件系统中存储目标纠删码条带涉及数据的数据节点,相应的,物理地址信息具体是指用户数据存储在数据节点中对应数据块级别的物理地址,其组成结构为偏移量和长度。也就是说,物理地址信息包含目标纠删码条带对应目标数据节点的数据偏移量信息和数据长度信息。87.基于此,首先将分布式文件系统中关联目标纠删码条带的数据节点,作为目标数据节点;其次根据地址映射关系确定目标纠删码条带对应所述目标数据节点的物理地址信息,作为目标纠删码条带对应目标数据节点的数据地址信息;其中,物理地址信息中包含目标纠删码条带对应目标数据节点的数据偏移量信息和数据长度信息。88.具体实施时,在kv存储引擎按照rangetable表中的range边界进行trim时,可以直接按照逻辑地址转换到物理地址,即直接转换对应replica的待操作数据区间,即明确需要进行trim操作的数据在目标数据节点中的物理地址。比如,目标纠删码条带涉及到的数据对应的逻辑地址为《0,0》《1mb,1mb+4kb》《2mb,2mb+8kb》,当需要删除逻辑位置offset=1mb,length=1mb的数据时,根据映射关系可以转换出对应目标数据节点的物理地址,即转换成物理位置是:offset=1mb+4kb,length=1mb+4kb;以方便后续目标数据节点可以按照该物理地址进行数据的trim操作。89.综上,通过采用逻辑地址到物理地址的映射关系完成数据地址信息的确定,可以实现在kv存储引擎层完成目标纠删码条带的trim,后续通过将其发送到目标数据节点,即可完成在分布式文件系统层的trim,实现二者可以系统完成trim操作,从而可以有效的提升分布式文件系统的性能。90.步骤s208,根据所述操作请求和所述数据地址信息创建操作描述信息,并发送至所述目标数据节点。91.具体的,在上述得到数据地址信息后,进一步的,考虑到每个目标数据节点需要结合不同的操作描述信息进行trim操作,因此在得到对应目标数据节点的数据地址信息后,可以根据操作请求和数据地址信息创建操作描述信息,以通过操作描述信息明确目标数据节点需要进行trim操作的待操作数据区间对应的偏移量和长度,使得目标数据节点可以在本地存储空间中确定待操作数据区间,以根据操作描述信息对待操作数据区间进行标记处理。92.此外,考虑到目标纠删码条带还对应有固定条带纠删码,而在此场景下进行trim操作时,则可以不使用条带信息记录表,直接按照纠删码配置参数即可完成,本实施例中,具体实现方式如下:93.在所述纠删码文件对应的纠删码条带为固定条带长度的情况下,确定所述纠删码文件对应的纠删码配置参数;根据所述纠删码配置参数,确定所述纠删码条带对应所述目标数据节点的基准数据地址信息;根据所述操作请求和所述基准数据地址信息创建基准操作描述信息,并发送至所述目标数据节点。94.具体的,纠删码配置参数具体是指纠删码文件中纠删码条带对应的参数,通过纠删码配置参数可以确定支持数据删除的粒度;相应的,基准数据地址信息具体是指纠删码条带对应目标数据节点处所对应的物理地址信息。95.基于此,由于纠删码条带为固定条带长度,则说明纠删码条带的长度固定,因此在进行trim操作时,可以先确定纠删码文件对应的纠删码配置参数;其次根据纠删码配置参数,确定纠删码条带对应目标数据节点的基准数据地址信息;最后即可根据操作请求和基准数据地址信息创建基准操作描述信息,并发送至目标数据节点。由目标数据节点在本地存储空间中确定待操作数据区间,以根据基准操作描述信息对待操作数据区间进行标记处理。96.具体实施时,由于固定条带的长度固定,因此能够根据纠删码配置参数确定支持数据删除的粒度。例如,假定ec的条带是1mb,则只允许删除0~1mb,1mb~2mb;而0.5mb~1.5mb则不能直接删除。97.本说明书提供的信息处理方法,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。98.下述结合附图4,以本说明书提供的信息处理方法在纠删码场景中的应用为例,对所述信息处理方法进行进一步说明。其中,图4示出了本说明书一个实施例提供的一种信息处理方法的处理过程流程图,具体包括以下步骤。99.步骤s402,基于分布式文件系统的信息表接口,确定纠删码文件对应的条带位置信息和条带属性信息。100.步骤s404,根据条带位置信息和条带属性信息,确定纠删码条带信息,并将纠删码条带信息写入条带信息记录表。101.步骤s406,在接收针对纠删码文件对应的目标纠删码条带提交的操作请求的情况下,若目标纠删码条带中不包含冗余数据执行步骤s408;若目标纠删码条带中包含冗余数据执行步骤s410。102.步骤s408,根据操作请求,在条带信息记录表中读取纠删码条带信息。103.步骤s410,根据操作请求更新预设的索引记录表,确定索引记录表中记录的操作记录信息关联的全局数据量。104.步骤s412,在全局数据量超过目标纠删码条带对应的条带数据量的情况下,在索引记录表中读取关联目标纠删码条带的至少两个操作记录信息。105.步骤s414,根据至少两个操作记录信息,在条带信息记录表中读取纠删码条带信息。106.步骤s416,在纠删码条带信息中确定目标纠删码条带对应的地址映射关系。107.步骤s418,将分布式文件系统中关联目标纠删码条带的数据节点,作为目标数据节点。108.步骤s420,根据地址映射关系确定目标纠删码条带对应目标数据节点的物理地址信息,作为目标纠删码条带对应目标数据节点的数据地址信息;其中,物理地址信息中包含目标纠删码条带对应目标数据节点的数据偏移量信息和数据长度信息。109.步骤s422,根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点。110.综上所述,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。111.与上述方法实施例相对应,本说明书还提供了信息处理装置实施例,图5示出了本说明书一个实施例提供的一种信息处理装置的结构示意图。如图5所示,该装置包括:112.获取模块502,被配置为获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表;113.读取模块504,被配置为在检测到关联所述纠删码文件的操作请求的情况下,在所述条带信息记录表中读取所述纠删码条带信息;114.确定模块506,被配置为根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息;115.创建模块508,被配置为根据所述操作请求和所述数据地址信息创建操作描述信息,并发送至所述目标数据节点。116.一个可选的实施例中,所述获取模块502进一步被配置为:117.基于分布式文件系统的信息表接口,确定所述纠删码文件对应的条带位置信息和条带属性信息;根据所述条带位置信息和所述条带属性信息,确定所述纠删码条带信息。118.一个可选的实施例中,所述读取模块504进一步被配置为:119.接收针对所述纠删码文件对应的目标纠删码条带提交的所述操作请求;根据所述操作请求,在所述条带信息记录表中读取所述纠删码条带信息;在所述纠删码条带信息中确定所述目标纠删码条带对应的地址映射关系;120.相应的,所述确定模块506进一步被配置为:121.根据所述地址映射关系,确定所述目标纠删码条带对应目标数据节点的数据地址信息。122.一个可选的实施例中,所述确定模块506进一步被配置为:123.将分布式文件系统中关联所述目标纠删码条带的数据节点,作为所述目标数据节点;根据所述地址映射关系确定所述目标纠删码条带对应所述目标数据节点的物理地址信息,作为所述目标纠删码条带对应所述目标数据节点的所述数据地址信息;其中,所述物理地址信息中包含所述目标纠删码条带对应所述目标数据节点的数据偏移量信息和数据长度信息。124.一个可选的实施例中,所述信息处理装置,还包括:125.判断模块,被配置为判断所述目标纠删码条带中是否包含冗余数据;126.若否,运行所述读取模块504;127.若是,运行记录模块,所述记录模块,被配置为根据所述操作请求更新预设的索引记录表,并在所述索引记录表中记录的信息满足操作执行条件的情况下,根据所述索引记录表,在所述条带信息记录表中读取所述纠删码条带信息。128.一个可选的实施例中,所述记录模块进一步被配置为:129.根据所述操作请求生成所述目标纠删码条带对应的目标操作记录信息,并将所述目标操作记录信息添加至所述索引记录表;在所述索引记录表中记录的操作记录信息满足操作执行条件的情况下,在所述索引记录表中读取关联所述目标纠删码条带的至少两个操作记录信息;根据所述至少两个操作记录信息,在所述条带信息记录表中读取所述纠删码条带信息。130.一个可选的实施例中,所述记录模块进一步被配置为:131.确定所述索引记录表中记录的操作记录信息关联的全局数据量;在所述全局数据量大于等于所述目标纠删码条带对应的条带数据量的情况下,执行所述在所述索引记录表中读取关联所述目标纠删码条带的至少两个操作记录信息的步骤。132.一个可选的实施例中,所述信息处理装置,还包括:133.参数处理模块,被配置为在所述纠删码文件对应的纠删码条带为固定条带长度的情况下,确定所述纠删码文件对应的纠删码配置参数;根据所述纠删码配置参数,确定所述纠删码条带对应所述目标数据节点的基准数据地址信息;根据所述操作请求和所述基准数据地址信息创建基准操作描述信息,并发送至所述目标数据节点。134.本说明书提供的信息处理装置,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。135.上述为本实施例的一种信息处理装置的示意性方案。需要说明的是,该信息处理装置的技术方案与上述的信息处理方法的技术方案属于同一构思,信息处理装置的技术方案未详细描述的细节内容,均可以参见上述信息处理方法的技术方案的描述。136.与上述方法实施例相对应,本说明书还提供了信息处理系统实施例,图6示出了本说明书一个实施例提供的一种信息处理系统的结构示意图。如图6所示,信息处理系统600,包括:137.服务端610,用于获取纠删码文件对应的纠删码条带信息,并将所述纠删码条带信息写入条带信息记录表;在检测到关联所述纠删码文件的操作请求的情况下,在所述条带信息记录表中读取所述纠删码条带信息;根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息;根据所述操作请求和所述数据地址信息创建操作描述信息,并发送至所述目标数据节点;138.所述目标数据节点620,用于接收所述操作描述信息,并根据所述操作描述信息确定物理地址信息;对所述物理地址信息对应的待操作数据区间进行标记。139.一个可选的实施例中,所述服务端610,还用于:140.基于分布式文件系统的信息表接口,确定所述纠删码文件对应的条带位置信息和条带属性信息;根据所述条带位置信息和所述条带属性信息,确定所述纠删码条带信息。141.一个可选的实施例中,所述服务端610,还用于:142.接收针对所述纠删码文件对应的目标纠删码条带提交的所述操作请求;根据所述操作请求,在所述条带信息记录表中读取所述纠删码条带信息;在所述纠删码条带信息中确定所述目标纠删码条带对应的地址映射关系;相应的,所述根据所述纠删码条带信息,确定所述纠删码文件对应目标数据节点的数据地址信息,包括:根据所述地址映射关系,确定所述目标纠删码条带对应目标数据节点的数据地址信息。143.一个可选的实施例中,所述服务端610,还用于:144.将分布式文件系统中关联所述目标纠删码条带的数据节点,作为所述目标数据节点;根据所述地址映射关系确定所述目标纠删码条带对应所述目标数据节点的物理地址信息,作为所述目标纠删码条带对应所述目标数据节点的所述数据地址信息;其中,所述物理地址信息中包含所述目标纠删码条带对应所述目标数据节点的数据偏移量信息和数据长度信息。145.一个可选的实施例中,所述服务端610,还用于:146.判断所述目标纠删码条带中是否包含冗余数据;若否,执行所述根据所述操作请求,在所述条带信息记录表中读取所述纠删码条带信息的步骤;若是,根据所述操作请求更新预设的索引记录表,并在所述索引记录表中记录的信息满足操作执行条件的情况下,根据所述索引记录表,在所述条带信息记录表中读取所述纠删码条带信息。147.一个可选的实施例中,所述服务端610,还用于:148.根据所述操作请求生成所述目标纠删码条带对应的目标操作记录信息,并将所述目标操作记录信息添加至所述索引记录表;在所述索引记录表中记录的操作记录信息满足操作执行条件的情况下,在所述索引记录表中读取关联所述目标纠删码条带的至少两个操作记录信息;根据所述至少两个操作记录信息,在所述条带信息记录表中读取所述纠删码条带信息。149.一个可选的实施例中,所述服务端610,还用于:150.确定所述索引记录表中记录的操作记录信息关联的全局数据量;在所述全局数据量大于等于所述目标纠删码条带对应的条带数据量的情况下,执行所述在所述索引记录表中读取关联所述目标纠删码条带的至少两个操作记录信息的步骤。151.一个可选的实施例中,所述服务端610,还用于:152.在所述纠删码文件对应的纠删码条带为固定条带长度的情况下,确定所述纠删码文件对应的纠删码配置参数;根据所述纠删码配置参数,确定所述纠删码条带对应所述目标数据节点的基准数据地址信息;根据所述操作请求和所述基准数据地址信息创建基准操作描述信息,并发送至所述目标数据节点。153.综上所述,为了能够支持分布式文件系统中纠删码文件的垃圾数据释放,空间回收,可以在获取纠删码文件对应的纠删码条带信息后,将纠删码条带信息写入条带信息记录表。以实现对纠删码条带信息的持久化;当检测到关联纠删码文件的操作请求的情况下,说明需要针对纠删码文件关联的数据进行删除,为了能够节省分布式文件系统的操作,且达到数据删除和空间回收的目的,可以在条带信息记录表中读取纠删码条带信息,以根据纠删码条带信息,确定纠删码文件对应目标数据节点的数据地址信息;最后根据操作请求和数据地址信息创建操作描述信息,并发送至目标数据节点,以实现目标数据节点可以根据操作描述信息准确的对本地存储空间中的待操作数据区间进行标记处理。实现在纠删码场景下对纠删码文件关联的数据进行trim,以提升分布式文件系统的整体性能,减少垃圾数据,达到降低存储成本的目的。154.上述为本实施例的一种信息处理系统的示意性方案。需要说明的是,该信息处理系统的技术方案与上述的信息处理方法的技术方案属于同一构思,信息处理系统的技术方案未详细描述的细节内容,均可以参见上述信息处理方法的技术方案的描述。155.图7示出了根据本说明书一个实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。156.计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。157.在本说明书的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。158.计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备700还可以是移动式或静止式的服务器。159.其中,处理器720用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述信息处理方法的步骤。160.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的信息处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述信息处理方法的技术方案的描述。161.本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述信息处理方法的步骤。162.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的信息处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述信息处理方法的技术方案的描述。163.本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述信息处理方法的步骤。164.上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的信息处理方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述信息处理方法的技术方案的描述。165.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。166.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。167.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。168.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。169.以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属
技术领域
:技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1