文件处理方法、装置、电子设备、存储介质及程序产品与流程

文档序号:25517706发布日期:2021-06-18 20:03阅读:88来源:国知局
文件处理方法、装置、电子设备、存储介质及程序产品与流程

本公开实施例涉及数据处理技术领域,具体涉及一种文件处理方法、装置、电子设备、存储介质及程序产品。



背景技术:

随着数据技术的发展,需要处理的数据量越来越大,hive,一种基于hadoop的一个数据仓库工具的使用越来越广泛。hive通常是基于目录实现数据的分区,即将包含数据的文件放置到某一目录下,以达到分区的效果。在现有技术中,技术人员发现在分区过多的情况下,目录管理的开销较大。因此,亟需一种在能够保证数据分区存储的前提下,降低目录管理开销的方案。



技术实现要素:

本公开实施例提供一种文件处理方法、装置、电子设备、存储介质及程序产品。

第一方面,本公开实施例中提供了一种文件处理方法。

具体的,所述文件处理方法,包括:

接收目标文件写入命令;

根据所述目标文件写入命令获取目标文件;

若所述目标文件携带有存储位置标识,向文件存储方发送携带有所述目标文件的目标文件写入请求,以使所述文件存储方将所述目标文件存储至所述存储位置标识对应的位置。

结合第一方面,本公开实施例在第一方面的第一种实现方式中,还包括:

若所述目标文件未携带存储位置标识,获取所述目标文件的存储位置信息,根据所述存储位置信息生成存储位置标识,并将所述存储位置标识写入至所述目标文件中。

结合第一方面和第一方面的第一种实现方式,本公开实施例在第一方面的第二种实现方式中,所述将所述存储位置标识写入至所述目标文件中,包括:

将所述存储位置标识写入至所述目标文件的预设位置,其中,所述预设位置为所述目标文件的前缀、后缀或中间位置。

结合第一方面、第一方面的第一种实现方式和第一方面的第二种实现方式,本公开在第一方面的第三种实现方式中,所述将所述存储位置标识写入至所述目标文件的预设位置之后,还包括:

将预设位置信息发送给所述文件存储方。

结合第一方面、第一方面的第一种实现方式、第一方面的第二种实现方式和第一方面的第三种实现方式,本公开在第一方面的第四种实现方式中,还包括:

根据所述存储位置标识读取目标文件。

结合第一方面、第一方面的第一种实现方式、第一方面的第二种实现方式、第一方面的第三种实现方式和第一方面的第四种实现方式,本公开在第一方面的第五种实现方式中,所述根据所述存储位置标识读取目标文件,包括:

响应于接收到目标文件读取命令,根据所述目标文件读取命令获取目标读取位置;

向所述文件存储方发送携带有所述目标读取位置的目标文件读取请求,以使所述文件存储方返回存储位置标识与所述目标读取位置匹配的目标文件。

第二方面,本公开实施例中提供了一种文件处理方法。

具体的,所述文件处理方法,包括:

接收文件读写方发送的目标文件写入请求;

获取所述目标文件写入请求携带的目标文件;

根据所述目标文件中的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

结合第二方面,本公开实施例在第二方面的第一种实现方式中,还包括:

接收所述文件读写方发送的预设位置信息;

所述根据所述目标文件中的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置,包括:

根据所述目标文件预设位置处的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

结合第二方面和第二方面的第一种实现方式,本公开实施例在第二方面的第二种实现方式中,还包括:

接收所述文件读写方发送的目标文件读取请求;

获取所述目标文件读取请求携带的目标读取位置;

确定存储位置标识与所述目标读取位置匹配的目标文件,并将所述目标文件发送给所述文件读写方。

第三方面,本公开实施例中提供了一种文件处理装置。

具体的,所述文件处理装置,包括:

第一接收模块,被配置为接收目标文件写入命令;

第一获取模块,被配置为根据所述目标文件写入命令获取目标文件;

第一发送模块,被配置为若所述目标文件携带有存储位置标识,向文件存储方发送携带有所述目标文件的目标文件写入请求,以使所述文件存储方将所述目标文件存储至所述存储位置标识对应的位置。

结合第三方面,本公开实施例在第三方面的第一种实现方式中,还包括:

写入模块,被配置为若所述目标文件未携带存储位置标识,获取所述目标文件的存储位置信息,根据所述存储位置信息生成存储位置标识,并将所述存储位置标识写入至所述目标文件中。

结合第三方面和第三方面的第一种实现方式,本公开实施例在第三方面的第二种实现方式中,所述将所述存储位置标识写入至所述目标文件中的部分,被配置为:

将所述存储位置标识写入至所述目标文件的预设位置,其中,所述预设位置为所述目标文件的前缀、后缀或中间位置。

结合第三方面、第三方面的第一种实现方式和第三方面的第二种实现方式,本公开在第三方面的第三种实现方式中,所述将所述存储位置标识写入至所述目标文件的预设位置之后,还被配置为:

第二发送模块,被配置为将预设位置信息发送给所述文件存储方。

结合第三方面、第三方面的第一种实现方式、第三方面的第二种实现方式和第三方面的第三种实现方式,本公开在第三方面的第四种实现方式中,还包括:

读取模块,被配置为根据所述存储位置标识读取目标文件。

结合第三方面、第三方面的第一种实现方式、第三方面的第二种实现方式、第三方面的第三种实现方式和第三方面的第四种实现方式,本公开在第三方面的第五种实现方式中,所述根据所述存储位置标识读取目标文件的部分,被配置为:

响应于接收到目标文件读取命令,根据所述目标文件读取命令获取目标读取位置;

向所述文件存储方发送携带有所述目标读取位置的目标文件读取请求,以使所述文件存储方返回存储位置标识与所述目标读取位置匹配的目标文件。

第四方面,本公开实施例中提供了一种文件处理装置。

具体的,所述文件处理装置,包括:

第二接收模块,被配置为接收文件读写方发送的目标文件写入请求;

第二获取模块,被配置为获取所述目标文件写入请求携带的目标文件;

存储模块,被配置为根据所述目标文件中的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

结合第四方面,本公开实施例在第四方面的第一种实现方式中,还包括:

第三接收模块,被配置为接收所述文件读写方发送的预设位置信息;

所述存储模块被配置为:

根据所述目标文件预设位置处的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

结合第四方面和第四方面的第一种实现方式,本公开实施例在第四方面的第二种实现方式中,还包括:

第四接收模块,被配置为接收所述文件读写方发送的目标文件读取请求;

第三获取模块,被配置为获取所述目标文件读取请求携带的目标读取位置;

第三发送模块,被配置为确定存储位置标识与所述目标读取位置匹配的目标文件,并将所述目标文件发送给所述文件读写方。

第五方面,本公开实施例提供了一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条支持文件处理装置执行上述文件处理方法的计算机指令,所述处理器被配置为用于执行所述存储器中存储的计算机指令。所述文件处理装置还可以包括通信接口,用于文件处理装置与其他设备或通信网络通信。

第六方面,本公开实施例提供了一种计算机可读存储介质,用于存储文件处理装置所用的计算机指令,其包含用于执行上述文件处理方法为文件处理装置所涉及的计算机指令。

第七方面,本公开实施例提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述文件处理方法的步骤。

本公开实施例提供的技术方案可包括以下有益效果:

上述技术方案将目标文件的存储位置信息转换成存储位置标识写入至目标文件中,以实现目标文件存储位置的自识别性。该技术方案能够对于目标文件进行存储位置的自动识别,从而使得即使在分区较多的情况下,也能够有效降低目录管理的开销,从而有效降低了目录管理成本、减少数据处理量、提高数据处理速度、提升数据处理能力。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开实施例。

附图说明

结合附图,通过以下非限制性实施方式的详细描述,本公开实施例的其它特征、目的和优点将变得更加明显。在附图中:

图1示出根据本公开一实施方式的文件处理方法的流程图;

图2示出根据本公开另一实施方式的文件处理方法的流程图;

图3示出根据本公开一实施方式的文件处理装置的结构框图;

图4示出根据本公开另一实施方式的文件处理装置的结构框图;

图5示出根据本公开一实施方式的电子设备的结构框图;

图6是适于用来实现根据本公开一实施方式的文件处理方法的计算机系统的结构示意图。

具体实施方式

下文中,将参考附图详细描述本公开实施例的示例性实施方式,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施方式无关的部分。

在本公开实施例中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。

另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开实施例。

本公开实施例提供的技术方案将目标文件的存储位置信息转换成存储位置标识写入至目标文件中,以实现目标文件存储位置的自识别性。该技术方案能够对于目标文件进行存储位置的自动识别,从而使得即使在分区较多的情况下,也能够有效降低目录管理的开销,从而有效降低了目录管理成本、减少数据处理量、提高数据处理速度、提升数据处理能力。

图1示出根据本公开一实施方式的文件处理方法的流程图,如图1所示,所述文件处理方法包括以下步骤s101-s103:

在步骤s101中,接收目标文件写入命令;

在步骤s102中,根据所述目标文件写入命令获取目标文件;

在步骤s103中,若所述目标文件携带有存储位置标识,向文件存储方发送携带有所述目标文件的目标文件写入请求,以使所述文件存储方将所述目标文件存储至所述存储位置标识对应的位置。

上文提及,随着数据技术的发展,需要处理的数据量越来越大,hive,一种基于hadoop的一个数据仓库工具的使用越来越广泛。hive通常是基于目录实现数据的分区,即将包含数据的文件放置到某一目录下,以达到分区的效果。在现有技术中,技术人员发现在分区过多的情况下,目录管理的开销较大。因此,亟需一种在能够保证数据分区存储的前提下,降低目录管理开销的方案。

考虑到上述问题,在该实施方式中,提出一种文件处理方法,该方法将目标文件的存储位置信息转换成存储位置标识写入至目标文件中,以实现目标文件存储位置的自识别性。该技术方案能够对于目标文件进行存储位置的自动识别,从而使得即使在分区较多的情况下,也能够有效降低目录管理的开销,从而有效降低了目录管理成本、减少数据处理量、提高数据处理速度、提升数据处理能力。

在本公开一实施方式中,所述文件处理方法可适用于进行文件处理的计算机、电子设备等文件读写方。

在本公开一实施方式中,所述目标文件指的是待存储的文件,或者是已经存储可进行读取的文件。

在本公开一实施方式中,所述目标文件写入命令指的是用于指示将所述目标文件写入文件存储方进行存储的命令。其中,所述目标文件写入命令可携带有待存储的目标文件,这样通过所述目标文件写入命令就可直接获得待存储的目标文件;所述目标文件写入命令也可仅携带待存储目标文件的当前存储地址,这样所述文件读写方可通过访问所述待存储目标文件的当前存储地址来获得所述待存储的目标文件。

在本公开一实施方式中,所述存储位置标识指的是用于指代所述目标文件想要存储的位置信息的计算机可读标识信息,比如,若所述存储位置信息为一个包含文字和字符的通知消息,则所述存储位置标识就可以为一个能够体现所述存储位置信息的、计算机可读的字符串信息。

在上述实施方式中,在接收到目标文件写入命令后,根据所述目标文件写入命令获取目标文件,然后确定所述目标文件是否携带有存储位置标识,如果所述目标文件携带有存储位置标识,则可直接向文件存储方发送携带有所述目标文件的目标文件写入请求,以使所述文件存储方根据所述目标文件写入请求将所述目标文件存储至所述存储位置标识对应的位置。

在本公开一实施方式中,所述方法还可包括以下步骤:

若所述目标文件未携带存储位置标识,获取所述目标文件的存储位置信息,根据所述存储位置信息生成存储位置标识,并将所述存储位置标识写入至所述目标文件中。

在该实施方式中,若确定所述目标文件并未携带所述存储位置标识,则需生成所述存储位置标识,并将其写入至所述目标文件中,具体地,首先获取所述目标文件的存储位置信息,其中,所述存储位置信息指的是用于标识所述目标文件应当存储在哪个位置的信息,其可携带在所述目标文件写入命令中,这样就可从所述目标文件写入命令中直接获取所述存储位置信息,若所述存储位置信息未携带在所述目标文件写入命令中,则可通过与所述目标文件写入命令的发送方进行通信来获取所述存储位置信息;然后根据所述存储位置信息生成存储位置标识,并将所述存储位置标识写入至所述目标文件中。

上文提及,所述存储位置标识是用于指代所述目标文件想要存储的位置信息的、计算机可读的标识信息。因此,在该实施方式中,可根据所述存储位置标识的特点来实现存储位置标识的生成,比如,若获取的所述存储位置信息本身就是一个计算机可读的信息,则可直接将所述存储位置信息作为所述存储位置标识;若获取的所述存储位置信息为一个计算机不可读的信息,则需对于所述存储位置信息进行解析,并将所述存储位置信息转换为一个计算机可读的、且能够体现所述存储位置信息的标识信息。

在本公开一实施方式中,所述将所述存储位置标识写入至所述目标文件中的步骤可包括以下步骤:

将所述存储位置标识写入至所述目标文件的预设位置,其中,所述预设位置为所述目标文件的前缀、后缀或中间位置。

为了使得所述目标文件有效携带所述存储位置标识,并成为一个可被传输、识别的数据整体,在该实施方式中,需将所述存储位置标识写入至所述目标文件的预设位置中,其中,所述预设位置比如可以为所述目标文件的前缀、后缀或中间位置等等。

在本公开一实施方式中,所述将所述存储位置标识写入至所述目标文件的预设位置之后,还可包括以下步骤:

将预设位置信息发送给所述文件存储方。

为了使得所述文件存储方能够准确获取所述目标文件中的存储位置标识,在该实施方式中,还将确定的所述预设位置信息发送给所述文件存储方,其中,所述预设位置信息可包括预设位置内容和所述存储位置标识的大小,所述预设位置内容比如可以为所述目标文件的前缀、后缀或中间位置,所述存储位置标识的大小比如可以为所述存储位置标识所占的字节数等等,这样后续所述文件存储方就可根据所述预设位置信息在所述目标文件的预设位置处获取完整的存储位置标识。

在本公开一实施方式中,所述方法还可包括以下步骤:

根据所述存储位置标识读取目标文件。

在该实施方式中,当所述文件读写方需要从所述文件存储方读取目标文件时,可根据所述存储位置标识来读取。具体地,首先根据接收到的目标文件读取命令获取目标读取位置,其中,所述目标读取位置可携带在所述目标文件读取命令中;然后将所述目标读取位置携带在所述目标文件读取请求中,发送给所述文件存储方,这样所述文件存储方就可根据所述目标读取位置对于所述目标文件的存储位置标识进行过滤,得到存储位置标识与所述目标读取位置相匹配的文件,而这些文件正是所述文件读写方想要读取的目标文件。即在本公开一实施方式中,所述根据所述存储位置标识读取目标文件的步骤,可包括以下步骤:

响应于接收到目标文件读取命令,根据所述目标文件读取命令获取目标读取位置;

向所述文件存储方发送携带有所述目标读取位置的目标文件读取请求,以使所述文件存储方返回存储位置标识与所述目标读取位置匹配的目标文件。

图2示出根据本公开另一实施方式的文件处理方法的流程图,如图2所示,所述文件处理方法包括以下步骤s201-s203:

在步骤s201中,接收文件读写方发送的目标文件写入请求;

在步骤s202中,获取所述目标文件写入请求携带的目标文件;

在步骤s203中,根据所述目标文件中的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

上文提及,随着数据技术的发展,需要处理的数据量越来越大,hive,一种基于hadoop的一个数据仓库工具的使用越来越广泛。hive通常是基于目录实现数据的分区,即将包含数据的文件放置到某一目录下,以达到分区的效果。在现有技术中,技术人员发现在分区过多的情况下,目录管理的开销较大。因此,亟需一种在能够保证数据分区存储的前提下,降低目录管理开销的方案。

考虑到上述问题,在该实施方式中,提出一种文件处理方法,该方法将目标文件的存储位置信息转换成存储位置标识写入至目标文件中,以实现目标文件存储位置的自识别性。该技术方案能够对于目标文件进行存储位置的自动识别,从而使得即使在分区较多的情况下,也能够有效降低目录管理的开销,从而有效降低了目录管理成本、减少数据处理量、提高数据处理速度、提升数据处理能力。

在本公开一实施方式中,所述文件处理方法可适用于进行文件处理的计算机、电子设备等文件存储方。

在本公开一实施方式中,所述目标文件写入请求指的是用于实现目标文件写入的请求,其中,所述目标文件写入请求可携带有待写入的目标文件。

在上述实施方式中,在接收到文件读写方发送的目标文件写入请求后,可先获取所述目标文件写入请求携带的待写入的目标文件,然后获取所述目标文件中的存储位置标识,根据所述存储位置标识将所述目标文件存储至与所述存储位置标识对应的位置处。

在本公开一实施方式中,所述方法还可包括以下步骤:

接收所述文件读写方发送的预设位置信息。

在该实施方式中,所述步骤s203,即根据所述目标文件中的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置的步骤,可包括以下步骤:

根据所述目标文件预设位置处的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

上文提及,所述预设位置信息可包括预设位置内容和所述存储位置标识的大小,所述预设位置内容比如可以为所述目标文件的前缀、后缀或中间位置,所述存储位置标识的大小比如可以为所述存储位置标识所占的字节数等等。因此,在该实施方式中,当所述文件读写方将预设位置信息发送给所述文件存储方之后,所述文件存储方就可直接到所述目标文件预设位置处获取完整的存储位置标识,然后再将所述目标文件存储至与所述存储位置标识对应的位置处。

在本公开一实施方式中,所述方法还可包括以下步骤:

接收所述文件读写方发送的目标文件读取请求;

获取所述目标文件读取请求携带的目标读取位置;

确定存储位置标识与所述目标读取位置匹配的目标文件,并将所述目标文件发送给所述文件读写方。

在本公开一实施方式中,所述目标文件读取请求指的是用于实现目标文件读取的请求,其中,所述目标文件读取请求可携带有待读取的目标文件所在的位置,即目标读取位置,当然,根据实际应用的需要,所述目标文件读取请求还可携带有待读取的目标文件的名称、大小等目标文件信息。

在该实施方式中,在接收到所述文件读写方发送的目标文件读取请求后,首先获取所述目标文件读取请求携带的目标读取位置,然后确定存储位置标识与所述目标读取位置匹配的文件,这些文件即为所述文件读写方想要读取的目标文件,最后将所述目标文件发送给所述文件读写方。当然,如果所述目标文件读取请求中还携带有待读取的目标文件的名称、大小等目标文件信息,则可在确定了存储位置标识与所述目标读取位置匹配的文件之后,再根据所述目标文件信息进行过滤和筛选,得到所述文件读写方想要读取的目标文件。

图2所示及相关实施方式中涉及的技术术语和技术特征与图1所示及相关实施方式中提及的技术术语和技术特征相同或相似,对于图2所示及相关实施方式中涉及的技术术语和技术特征的解释和说明可参考上述对于图1所示及相关实施方式的解释的说明,此处不再赘述。

下述为本公开装置实施例,可以用于执行本公开方法实施例。

图3示出根据本公开一实施方式的文件处理装置的结构框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图3所示,所述文件处理装置包括:

第一接收模块301,被配置为接收目标文件写入命令;

第一获取模块302,被配置为根据所述目标文件写入命令获取目标文件;

第一发送模块303,被配置为若所述目标文件携带有存储位置标识,向文件存储方发送携带有所述目标文件的目标文件写入请求,以使所述文件存储方将所述目标文件存储至所述存储位置标识对应的位置。

上文提及,随着数据技术的发展,需要处理的数据量越来越大,hive,一种基于hadoop的一个数据仓库工具的使用越来越广泛。hive通常是基于目录实现数据的分区,即将包含数据的文件放置到某一目录下,以达到分区的效果。在现有技术中,技术人员发现在分区过多的情况下,目录管理的开销较大。因此,亟需一种在能够保证数据分区存储的前提下,降低目录管理开销的方案。

考虑到上述问题,在该实施方式中,提出一种文件处理装置,该装置将目标文件的存储位置信息转换成存储位置标识写入至目标文件中,以实现目标文件存储位置的自识别性。该技术方案能够对于目标文件进行存储位置的自动识别,从而使得即使在分区较多的情况下,也能够有效降低目录管理的开销,从而有效降低了目录管理成本、减少数据处理量、提高数据处理速度、提升数据处理能力。

在本公开一实施方式中,所述文件处理装置可实现为进行文件处理的计算机、电子设备等文件读写方。

在本公开一实施方式中,所述目标文件指的是待存储的文件,或者是已经存储可进行读取的文件。

在本公开一实施方式中,所述目标文件写入命令指的是用于指示将所述目标文件写入文件存储方进行存储的命令。其中,所述目标文件写入命令可携带有待存储的目标文件,这样通过所述目标文件写入命令就可直接获得待存储的目标文件;所述目标文件写入命令也可仅携带待存储目标文件的当前存储地址,这样所述文件读写方可通过访问所述待存储目标文件的当前存储地址来获得所述待存储的目标文件。

在本公开一实施方式中,所述存储位置标识指的是用于指代所述目标文件想要存储的位置信息的计算机可读标识信息,比如,若所述存储位置信息为一个包含文字和字符的通知消息,则所述存储位置标识就可以为一个能够体现所述存储位置信息的、计算机可读的字符串信息。

在上述实施方式中,在接收到目标文件写入命令后,根据所述目标文件写入命令获取目标文件,然后确定所述目标文件是否携带有存储位置标识,如果所述目标文件携带有存储位置标识,则可直接向文件存储方发送携带有所述目标文件的目标文件写入请求,以使所述文件存储方根据所述目标文件写入请求将所述目标文件存储至所述存储位置标识对应的位置。

在本公开一实施方式中,所述装置还可包括:

写入模块,被配置为若所述目标文件未携带存储位置标识,获取所述目标文件的存储位置信息,根据所述存储位置信息生成存储位置标识,并将所述存储位置标识写入至所述目标文件中。

在该实施方式中,若确定所述目标文件并未携带所述存储位置标识,则需生成所述存储位置标识,并将其写入至所述目标文件中,具体地,首先获取所述目标文件的存储位置信息,其中,所述存储位置信息指的是用于标识所述目标文件应当存储在哪个位置的信息,其可携带在所述目标文件写入命令中,这样就可从所述目标文件写入命令中直接获取所述存储位置信息,若所述存储位置信息未携带在所述目标文件写入命令中,则可通过与所述目标文件写入命令的发送方进行通信来获取所述存储位置信息;然后根据所述存储位置信息生成存储位置标识,并将所述存储位置标识写入至所述目标文件中。

上文提及,所述存储位置标识是用于指代所述目标文件想要存储的位置信息的、计算机可读的标识信息。因此,在该实施方式中,可根据所述存储位置标识的特点来实现存储位置标识的生成,比如,若获取的所述存储位置信息本身就是一个计算机可读的信息,则可直接将所述存储位置信息作为所述存储位置标识;若获取的所述存储位置信息为一个计算机不可读的信息,则需对于所述存储位置信息进行解析,并将所述存储位置信息转换为一个计算机可读的、且能够体现所述存储位置信息的标识信息。

在本公开一实施方式中,所述将所述存储位置标识写入至所述目标文件中的部分,可被配置为:

将所述存储位置标识写入至所述目标文件的预设位置,其中,所述预设位置为所述目标文件的前缀、后缀或中间位置。

为了使得所述目标文件有效携带所述存储位置标识,并成为一个可被传输、识别的数据整体,在该实施方式中,需将所述存储位置标识写入至所述目标文件的预设位置中,其中,所述预设位置比如可以为所述目标文件的前缀、后缀或中间位置等等。

在本公开一实施方式中,所述将所述存储位置标识写入至所述目标文件的预设位置之后,还可被配置为:

将预设位置信息发送给所述文件存储方。

为了使得所述文件存储方能够准确获取所述目标文件中的存储位置标识,在该实施方式中,还将确定的所述预设位置信息发送给所述文件存储方,其中,所述预设位置信息可包括预设位置内容和所述存储位置标识的大小,所述预设位置内容比如可以为所述目标文件的前缀、后缀或中间位置,所述存储位置标识的大小比如可以为所述存储位置标识所占的字节数等等,这样后续所述文件存储方就可根据所述预设位置信息在所述目标文件的预设位置处获取完整的存储位置标识。

在本公开一实施方式中,所述装置还可包括:

读取模块,被配置为根据所述存储位置标识读取目标文件。

在该实施方式中,当所述文件读写方需要从所述文件存储方读取目标文件时,可根据所述存储位置标识来读取。具体地,首先根据接收到的目标文件读取命令获取目标读取位置,其中,所述目标读取位置可携带在所述目标文件读取命令中;然后将所述目标读取位置携带在所述目标文件读取请求中,发送给所述文件存储方,这样所述文件存储方就可根据所述目标读取位置对于所述目标文件的存储位置标识进行过滤,得到存储位置标识与所述目标读取位置相匹配的文件,而这些文件正是所述文件读写方想要读取的目标文件。即在本公开一实施方式中,所述根据所述存储位置标识读取目标文件的部分,可被配置为:

响应于接收到目标文件读取命令,根据所述目标文件读取命令获取目标读取位置;

向所述文件存储方发送携带有所述目标读取位置的目标文件读取请求,以使所述文件存储方返回存储位置标识与所述目标读取位置匹配的目标文件。

图4示出根据本公开另一实施方式的文件处理装置的结构框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图4所示,所述文件处理装置包括:

第二接收模块401,被配置为接收文件读写方发送的目标文件写入请求;

第二获取模块402,被配置为获取所述目标文件写入请求携带的目标文件;

存储模块403,被配置为根据所述目标文件中的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

上文提及,随着数据技术的发展,需要处理的数据量越来越大,hive,一种基于hadoop的一个数据仓库工具的使用越来越广泛。hive通常是基于目录实现数据的分区,即将包含数据的文件放置到某一目录下,以达到分区的效果。在现有技术中,技术人员发现在分区过多的情况下,目录管理的开销较大。因此,亟需一种在能够保证数据分区存储的前提下,降低目录管理开销的方案。

考虑到上述问题,在该实施方式中,提出一种文件处理装置,该装置将目标文件的存储位置信息转换成存储位置标识写入至目标文件中,以实现目标文件存储位置的自识别性。该技术方案能够对于目标文件进行存储位置的自动识别,从而使得即使在分区较多的情况下,也能够有效降低目录管理的开销,从而有效降低了目录管理成本、减少数据处理量、提高数据处理速度、提升数据处理能力。

在本公开一实施方式中,所述文件处理装置可实现为进行文件处理的计算机、电子设备等文件存储方。

在本公开一实施方式中,所述目标文件写入请求指的是用于实现目标文件写入的请求,其中,所述目标文件写入请求可携带有待写入的目标文件。

在上述实施方式中,在接收到文件读写方发送的目标文件写入请求后,可先获取所述目标文件写入请求携带的待写入的目标文件,然后获取所述目标文件中的存储位置标识,根据所述存储位置标识将所述目标文件存储至与所述存储位置标识对应的位置处。

在本公开一实施方式中,所述装置还可包括:

第三接收模块,被配置为接收所述文件读写方发送的预设位置信息。

在该实施方式中,所述存储模块403可被配置为:

根据所述目标文件预设位置处的存储位置标识将所述目标文件存储至所述存储位置标识对应的位置。

上文提及,所述预设位置信息可包括预设位置内容和所述存储位置标识的大小,所述预设位置内容比如可以为所述目标文件的前缀、后缀或中间位置,所述存储位置标识的大小比如可以为所述存储位置标识所占的字节数等等。因此,在该实施方式中,当所述文件读写方将预设位置信息发送给所述文件存储方之后,所述文件存储方就可直接到所述目标文件预设位置处获取完整的存储位置标识,然后再将所述目标文件存储至与所述存储位置标识对应的位置处。

在本公开一实施方式中,所述装置还可包括:

第四接收模块,被配置为接收所述文件读写方发送的目标文件读取请求;

第三获取模块,被配置为获取所述目标文件读取请求携带的目标读取位置;

第三发送模块,被配置为确定存储位置标识与所述目标读取位置匹配的目标文件,并将所述目标文件发送给所述文件读写方。

在本公开一实施方式中,所述目标文件读取请求指的是用于实现目标文件读取的请求,其中,所述目标文件读取请求可携带有待读取的目标文件所在的位置,即目标读取位置,当然,根据实际应用的需要,所述目标文件读取请求还可携带有待读取的目标文件的名称、大小等目标文件信息。

在该实施方式中,在接收到所述文件读写方发送的目标文件读取请求后,首先获取所述目标文件读取请求携带的目标读取位置,然后确定存储位置标识与所述目标读取位置匹配的文件,这些文件即为所述文件读写方想要读取的目标文件,最后将所述目标文件发送给所述文件读写方。当然,如果所述目标文件读取请求中还携带有待读取的目标文件的名称、大小等目标文件信息,则可在确定了存储位置标识与所述目标读取位置匹配的文件之后,再根据所述目标文件信息进行过滤和筛选,得到所述文件读写方想要读取的目标文件。

图4所示及相关实施方式中涉及的技术术语和技术特征与图3所示及相关实施方式中提及的技术术语和技术特征相同或相似,对于图4所示及相关实施方式中涉及的技术术语和技术特征的解释和说明可参考上述对于图3所示及相关实施方式的解释的说明,此处不再赘述。

本公开还公开了一种电子设备,图5示出根据本公开一实施方式的电子设备的结构框图,如图5所示,所述电子设备500包括存储器501和处理器502;其中,

所述存储器501用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器502执行以实现上述方法步骤。

图6是适于用来实现根据本公开一实施方式的文件处理方法的计算机系统的结构示意图。

如图6所示,计算机系统600包括处理单元601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行上述实施方式中的各种处理。在ram603中,还存储有系统600操作所需的各种程序和数据。处理单元601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。

以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。其中,所述处理单元601可实现为cpu、gpu、tpu、fpga、npu等处理单元。

特别地,根据本公开的实施方式,上文描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行所述文件处理方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。

本公开实施例还公开了一种计算机程序产品,所述计算机程序产品包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述任一方法步骤。

附图中的流程图和框图,图示了按照本公开各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。

作为另一方面,本公开实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开实施例的方法。

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1