具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
请参阅图1。本申请实施例提供一种业务系统。所述业务系统可以包括业务服务器、文件服务器、数据库服务器和至少2个网络存储服务器。
在本实施例中,所述业务服务器可以分别与客户端和数据库服务器进行通信。所述客户端例如可以为淘宝客户端、天猫客户端、蚂蚁聚宝客户端等。所述业务服务器可以为一个服务器,还可以为包括多个服务器的服务器集群。所述业务服务器可以用于处理业务对象的业务数据,所述业务对象例如可以为基金、保险、股票、商品或服务等,所述业务数据例如可以为交易金额数据、交易数量数据等。所述数据库服务器可以用于存储业务对象的业务数据。具体地,所述业务服务器可以接收来自客户端的业务对象的业务数据;可以将接收业务数据写入该业务对象在所述数据库服务器对应的数据表。该业务对象在所述数据库服务器可以对应一张数据表,所述业务服务器从而可以将接收业务数据写入该业务对象在所述数据库服务器对应的数据表。当然,为了防止单张数据表中的数据量过大,该业务对象在所述数据库服务器还可以对应多张数据表,所述业务服务器从而可以将接收业务数据拆分为多个子数据,并可以将所述多个子数据分别写入该业务对象在所述数据库服务器对应的多张数据表。
在本实施例中,所述文件服务器可以分别与数据库服务器和至少2个网络存储服务器进行通信。所述文件服务器可以为一个服务器,还可以为包括多个服务器的服务器集群。所述至少2个网络存储服务器例如可以包括NAS网络存储服务器和OSS网络存储服务器。每个网络存储服务器可以对应一个存储标识,所述存储标识可以用于标识该网络存储服务器中文件的存储类型。例如,NAS网络存储服务器对应的存储标识可以为NAS;OSS网络存储服务器对应的存储标识可以为OSS。每个网络存储服务器可以与一个业务对象服务器进行通信。例如,所述业务对象服务器可以包括基金A对应的服务器和基金B对应的服务器,NAS网络存储服务器可以分别与基金A对应的服务器和基金B对应的服务器进行通信,OSS网络存储服务器可以分别与基金A对应的服务器和基金B对应的服务器进行通信。
在本实施例中,开发人员可以预先在文件服务器配置业务对象对应的网络存储服务器。从而,所述文件服务器可以提供对象标识与存储标识的对应关系。所述对象标识可以用于标识一个业务对象,例如可以为该业务对象的名称或编码等。例如,开发人员可以预先在文件服务器配置基金Fund_A与NAS网络存储服务器对应,基金Fund_B与OSS网络存储服务器对应。基金Fund_A对应的对象标识可以为Fund_A,基金Fund_B对应的对象标识可以为Fund_B,NAS网络存储服务器对应的存储标识可以为NAS,OSS网络存储服务器对应的存储标识可以为OSS。那么,所述文件服务器可以提供对象标识Fund_A与存储标识NAS的对应关系,以及对象标识Fund_B与存储标识OSS的对应关系。
在本实施例中,所述文件服务器可以从数据库服务器读取目标业务对象在指定时间段内的业务数据;可以获取所述目标业务对象对应导出文件的属性信息;可以识别所述目标业务对象的标识所对应的目标存储标识和目标命名空间;可以基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述导出文件的第一路径信息;可以获取所述第一路径信息匹配的至少一个文件处理函数;可以使用所述至少一个文件处理函数,基于所述第一路径信息,在所述目标存储标识所标识的网络存储服务器创建导出文件;可以将读取业务数据写入创建的导出文件。以便于所述目标业务对象对应的服务器,能够从所述目标存储标识所标识的网络存储服务器中获取所述导出文件,继而能够对所述目标业务对象在所述指定时间段内的业务数据进行确认,以防止出现错误。所述指定时间段例如可以为当天、昨天等。图2和图1中标记为“①”数据流示出了导出文件的详细处理流程。
具体地,所述文件服务器可以在接收到文件处理指令以后,从数据库服务器读取业务对象在指定时间段内的业务数据。所述文件处理指令可以是所述文件服务器自动定期产生的。例如,所述文件服务器可以每间隔24小时自动定期产生所述文件处理指令。这里的24小时仅是一个举例,在实际中可以根据实际需要进行灵活选择。此外所述文件服务器还可以向用户提供间隔时间的设置功能,并根据用户设置来设定所述文件处理指令产生的间隔时间大小。当然,所述文件处理指令还可以来自其它主体,例如,来自业务服务器。
需要说明的是,目标业务对象的业务数据可以位于数据库服务器的一张数据表,所述文件服务器从而可以从该张数据表中读取目标业务对象在指定时间段内的业务数据。当然,目标业务对象的业务数据还可以位于数据库服务器的多张张数据表,所述文件服务器还可以从每张数据表中读取目标业务对象在指定时间段内的子业务数据;可以创建多个子文件;可以将每个子业务数据写入创建的一个子文件;可以将多个子文件进行合并,得到导出文件。
在本实施例中,如前所述,目标业务对象对应的服务器,能够从所述目标存储标识所标识的网络存储服务器中获取所述导出文件,继而能够对目标业务对象在所述指定时间段内的业务数据进行确认,以防止出现错误。所述目标业务对象对应的服务器在确认无误后,可以向所述目标存储标识所标识的网络存储服务器上传导入文件。所述导入文件例如可以包括交易金额数据的确认信息、交易数量数据的确认信息等。
所述文件服务器可以获取目标业务对象对应导入文件的属性信息;可以识别目标业务对象的标识所对应的目标存储标识和目标命名空间;可以基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述待处理文件的第一路径信息;可以获取所述第一路径信息匹配的至少一个文件处理函数标识;可以使用所述至少一个文件处理函数,基于所述第一路径信息,在所述目标存储标识所标识的网络存储服务器中索引到所述目标业务对象对应的导入文件,并可以从中读取所述目标业务对象的业务数据;可以将读取业务数据写入数据库服务器中目标业务对象对应的数据表。图2和图3中标记为“②”数据流示出了导入文件的详细处理流程。
具体地,所述文件服务器可以在接收到文件处理指令以后,获取目标业务对象对应导入文件的属性信息。关于所述文件处理指令的详细介绍可以参照前述描述,在此不再赘述。
需要说明的是,目标业务对象的业务数据可以位于数据库服务器的一张数据表,所述文件服务器可以将读取业务数据写入该数据表。当然,目标业务对象的业务数据还可以位于数据库服务器的多张张数据表,所述文件服务器可以读取业务数据拆分为多个子数据,并可以将所述多个子数据分别写入目标业务对象在所述数据库服务器对应的多张数据表。
请一并参阅图1-图7。本申请实施例提供一种文件处理方法。所述文件处理方法以文件服务器为执行主体。所述文件服务器可以为一个服务器,还可以为包括多个服务器的服务器集群。所述文件服务器能够与至少两个网络存储服务器进行通信。所述网络存储服务器例如可以为直连式存储服务器(DAS,Direct Attached Storage)、网络附加存储服务器(NAS,Network Attached Storage)、存储区域网服务器(SAN,Storage Area Network)、开放云存储服务器(OSS,Open Storage Service)等。所述文件服务器可以经由通信网络与每个网络存储服务器进行通信。所述通信网络例如可以为因特网、一个或多个内部网、局域网(LAN)、广域网(WLAN)、存储局域网(SAN)等,或其适当组合。所述文件服务器可以使用网络协议与每个网络存储服务器进行通信。所述网络协议例如可以为HTTP、FTP、TFTP、NFS(Network File System)、CIFS(Common Internet File System)、RESTful(Representational State Transfer)等。
在本实施例中,每个网络存储服务器可以提供应用程序编程接口(API,Application Programming Interface)供所述文件服务器调用,以便于所述文件服务器能够对所述网络存储服务器中的文件进行处理。每个网络存储服务器可以对应一个存储标识,所述存储标识可以用于标识该网络存储服务器。例如,NAS网络存储服务器对应的存储标识可以为NAS,OSS网络存储服务器对应的存储标识可以为OSS。
本实施例可以包括如下步骤。
步骤S102:获取待处理文件的属性信息。
在本实施例中,所述待处理文件可以包括导出文件和导入文件。所述导出文件可以为待写入业务数据的文件,例如待创建并待写入业务数据的文件。所述导入文件可以为待读取业务数据的文件。所述业务数据例如可以为交易数量数据、交易金额数据、用户资料数据等。所述待处理文件可以位于所述文件服务器或网络存储服务器。所述待处理文件例如可以为文本文件、图片文件、程序文件、音频文件、视频文件等。关于所述导出文件和所述导入文件的详细描述可以参照前述业务系统实施例。
在本实施例中,所述属性信息可以包括目标对象标识、时间信息、文件标识和文件类型中的一个或多个。所述目标对象标识可以与所述待处理文件相对应。所述目标对象标识可以用于标识所述待处理文件隶属的业务对象,具体可以为所述业务对象的标识,例如所述业务对象的名称或编码等。所述业务对象例如可以为基金、保险、商品、服务、股票、或债券等。例如,所述业务对象可以为基金,那么,所述目标对象标识可以为基金的名称或TA(Trade Agent)码。所述时间信息可以用于描述所述待处理文件的创建时刻隶属的时间段。例如,所述待处理文件可以为导出文件,所述文件服务器需要在2017年6月10日15点00分创建导出文件。那么,所述文件服务器可以将时间段2017年6月10日作为所述导出文件的时间信息。另举一例,所述待处理文件可以为导入文件,所述文件服务器需要获取在时间段2017年6月10日内创建的导入文件。那么,所述文件服务器可以将时间段2017年6月10日作为所述导入文件的时间信息。所述文件标识可以用于标识所述待处理文件,例如可以为所述待处理文件的名称或编码等。所述文件类型可以用于标识所述待处理文件内部存储的业务数据的类型,例如可以为txt、doc、bmp、mp4等。
在本实施例中,所述文件服务器可以在接收到文件处理指令后,获取所述待处理文件的属性信息。所述文件处理指令可以是所述文件服务器自动定期产生的。例如,所述文件服务器可以每间隔24小时自动定期产生所述文件处理指令。这里的24小时仅是一个举例,在实际中可以根据实际需要进行灵活选择。此外所述文件服务器还可以向用户提供间隔时间的设置功能,并可以根据用户设置来设定所述文件处理指令产生的间隔时间大小。
具体地,开发人员可以在文件服务器进行预先配置。所述文件服务器在接收到文件处理指令以后,可以根据开发人员的预先配置,获取所述待处理文件的属性信息。例如,开发人员可以预先在文件服务器进行如下配置:将数据库服务器中各个业务数据所隶属业务对象的标识作为目标对象标识;将当前日期作为所述待处理文件的时间信息;将文件标识A作为所述待处理文件的文件标识;将文件类型txt作为所述待处理文件的文件类型。那么,在2017年6月10日15点00分接收到文件处理指令以后,针对数据库服务器中各个业务数据隶属的基金,所述文件服务器可以根据开发人员的预先配置,将该基金的标识、当前日期2017年6月10日、文件标识A和文件类型txt,作为该基金的导出文件的属性信息;或者,可以根据开发人员的预先配置,将该基金的标识、当前日期2017年6月10日、文件标识A和文件类型txt,作为该基金的导入文件的属性信息。
步骤S104:分别识别所述目标对象标识对应的目标存储标识和目标命名空间。
在本实施例中,业务对象可以对应有网络存储服务器,该网络存储服务器可以用于存储该业务对象的待处理文件。例如,基金Fund_A可以与NAS网络存储服务器相对应,基金Fund_B可以与OSS网络存储服务器相对应。每个业务对象在不同的网络存储服务器可以对应不同的命名空间。所述命名空间可以理解为文件容器的存储路径,所述文件容器例如可以为文件夹或磁盘盘符。例如,基金Fund_A在NAS网络存储服务器可以与命名空间Fund1相对应,基金Fund_A在OSS网络存储服务器可以与命名空间Fund2相对应。从而,所述文件服务器可以提供有对象标识与存储标识的对应关系,以及对象标识和存储标识共同与命名空间的对应关系。其中,所述对象标识可以用于标识一个业务对象,所述存储标识可以用于标识一个网络存储服务器。
在所述对象标识与存储标识的对应关系中,每个对象标识可以对应一个存储标识;不同对象标识对应的存储标识可以相同或不同;每个存储标识可以对应零个、一个或多个对象标识。例如,在所述对象标识与存储标识的对应关系中,对象标识TA1可以与存储标识NAS相对应,对象标识TA2可以与存储标识OSS相对应。
在所述对象标识和存储标识同时与命名空间的对应关系中,一个对象标识和一个存储标识可以共同对应一个命名空间;每个对象标识可以对应一个或多个命名空间;每个存储标识可以对应一个或多个命名空间,每个命名空间可以对应零个、一个或多个对象标识;每个命名空间可以对应零个、一个或多个存储标识。例如,在所述对象标识和存储标识同时与命名空间的对应关系中,对象标识TA1和存储标识NAS可以共同对应命名空间Fund1,对象标识TA1和存储标识OSS可以共同对应命名空间Fund2。
在本实施例中,所述文件服务器可以根据所述对象标识与存储标识的对应关系,识别目标对象标识对应的存储标识;可以将识别的存储标识作为目标存储标识;可以根据所述对象标识和存储标识共同与命名空间的对象关系,识别目标对象标识和目标存储标识共同对应的命名空间;可以将识别的命名空间作为目标命名空间。
步骤S106:基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述待处理文件的第一路径信息。
在本实施例中,所述第一路径信息可以用于表示所述待处理文件在目标网络存储服务器的绝对存储路径,所述目标网络存储服务器可以为所述目标存储标识对应的网络存储服务器。这里所述第一路径信息表示所述待处理文件在目标网络存储服务器的绝对存储路径,可以理解为:所述第一路径信息为所述待处理文件在目标网络存储服务器的绝对存储路径;或者,所述第一路径信息为所述待处理文件在目标网络存储服务器的绝对存储路径的编码。
在本实施例中,所述第一路径信息可以与所述目标存储标识和所述目标命名空间相关联。具体地,所述第一路径信息可以包括所述目标存储标识和所述目标命名空间。或者,所述第一路径信息可以包括所述目标存储标识的编码和所述目标命名空间的编码。又或者,所述第一路径信息分别与所述目标存储标识和所述目标命名空间相对应。
在本实施例中,所述文件服务器可以基于所述属性信息、所述目标存储标识和所述目标命名空间,生成所述待处理文件的第一路径信息。具体地,所述文件服务器可以基于所述属性信息、所述目标存储标识和所述目标命名空间,直接生成所述待处理文件的第一路径信息。例如,所述属性信息可以包括目标对象标识TA1、时间信息20170610,文件标识A和文件类型txt。所述目标存储标识可以为OSS。所述目标命名空间可以为/Fund。那么,所述服务器可以生成第一路径信息OSS@Fund:/TA1/20170610/A.txt。当然,所述文件服务器还可以使用第一预设路径模板,基于所述属性信息、所述目标存储标识和所述目标命名空间,生成所述待处理文件的第一路径信息。所述第一预设路径模板例如可以为Storage@Bucket:/OID/Time/FileID.FileType,所述Storage具体可以表示目标存储标识,所述Bucket具体可以表示目标命名空间,所述OID具体可以表示目标对象标识,所述Time具体可以表示时间信息,所述FileID具体可以表示文件标识,所述FileType具体可以表示文件类型。
或者,在本实施例中,所述文件服务器可以基于所述属性信息,生成所述待处理文件的第二路径信息;可以基于所述目标存储标识和所述目标命名控件,使用预设映射规则,将所述第二路径信息映射为第一路径信息。
所述第二路径信息可以用于表示所述待处理文件的相对存储路径。所述待处理文件在每个网络存储服务器的相对存储路径是相同的。例如,所述待处理文件在NAS网络存储服务器和OSS网络存储服务器的相对存储路径均可以为/TA1/20170610/A.txt。从而,所述第二路径信息可以用于表示所述待处理文件在每个网络存储服务器的相对存储路径。其中,所述第二路径信息表示所述待处理文件的相对存储路径,可以理解为:所述第二路径信息为所述待处理文件的相对存储路径;或者,所述第二路径信息为所述待处理文件的相对存储路径的编码。
具体地,所述文件服务器可以基于所述属性信息,直接生成所述待处理文件的第二路径信息。当然,所述文件服务器还可以使用第二预设路径模板,基于所述属性信息,生成所述待处理文件的第一路径信息。所述第二预设路径模板例如可以为/OID/Time/FileID.FileType,所述OID具体可以表示目标对象标识,所述Time具体可以表示时间信息,所述FileID具体可以表示文件标识,所述FileType具体可以表示文件类型。
具体地,预设映射规则例如可以为Storage@Bucket:FilePath,所述Storage具体可以表示目标存储标识,所述Bucket具体可以表示目标命名空间,所述FilePath可以表示第二路径信息。当然,本领域技术人员应当能够理解,此处的Storage@Bucket:FilePath仅是一个举例,在实际中所述预设映射规则还可以为其它的形式,本实施例对此并不做具体限定。
步骤S108:获取所述第一路径信息匹配的至少一个文件处理函数。
在本实施例中,所述文件处理函数可以用于对所述待处理文件进行处理。所述文件处理函数包括但不限于文件读函数、文件写函数、文件打开函数、文件关闭函数、文件剪切函数和文件复制函数等。
在本实施例中,不同网络存储服务器中文件的操作方式通常是不同的,所述操作方式可以包括读操作、写操作、打开操作、关闭操作、复制操作、剪切操作等。如此,每个存储标识可以对应有函数标识集合。所述函数标识集合可以包括至少一个文件处理函数的函数标识,所述函数标识例如可以为文件处理函数的名称或编码等。例如,所述函数标识集合包括文件读函数的函数标识、文件写函数的函数标识、文件打开函数的函数标识、文件关闭函数的函数标识、文件复制函数的函数标识和文件剪切函数的函数标识等。
在本实施例中,所述服务器可以获取目标存储标识对应的目标函数标识集合;可以从所述目标函数标识函数标识集合中获取一个或多个函数标识;可以将获取的函数标识所标识的文件处理函数,作为所述第一路径信息匹配的至少一个文件处理函数。
具体地,所述服务器可以直接获取所述目标存储标识对应的目标函数标识集合。或者,如前所述,所述第一路径信息可以与目标存储标识相关联。如此,所述文件服务器可以获取所述第一路径信息关联的目标存储标识,继而可以获取所述目标存储标识对应的目标函数标识集合。具体地,所述第一路径信息可以包括所述目标存储标识。如此,所述服务器可以从所述第一路径信息中获取所述目标存储标识。或者,所述第一路径信息可以与所述目标存储标识相对应。如此,所述服务器可以获取所述第一路径信息对应的存储标识,作为目标存储标识。
步骤S110:使用所述至少一个文件处理函数,基于所述第一路径信息,对所述待处理文件进行处理。
在本实施例中,如前所述,所述待处理文件可以为导出文件。如此,所述文件服务器对所述导出文件的处理方式包括但不限于创建导出文件、在导出文件写入数据、打开导出文件、关闭导出文件、复制导出文件、剪切导出文件等。或者,如前所述,所述待处理文件还可以为导入文件。如此,所述文件服务器对所述导入文件的处理方式包括但不限于打开导入文件、读取导入文件中的数据、关闭导入文件、复制导入文件、剪切导入文件等。
如前所述,所述第一路径信息可以用于表示所述待处理文件在目标网络存储服务器的绝对存储路径。如此,所述文件服务器可以使用所述第一路径信息,获取所述待处理文件的存储位置;继而可以使用所述至少一个文件处理函数,对所述待处理文件进行处理。
具体地,如前所述,所述第一路径信息可以与目标存储标识和目标命名空间相关联。如此,所述文件服务器可以获取所述第一路径信息关联的目标存储标识和目标命名空间;可以获取所述目标存储标识所标识的目标网络存储服务器;可以基于所述第一路径信息,在所述目标网络存储服务器的目标命名空间中,获取所述待处理文件的存储位置。
在本实施例中,需要说明的是,如前所述,所述待处理文件可以位于文件服务器或网络存储服务器。在所述待处理文件位于网络存储服务器时,所述文件服务器对所述待处理文件进行处理,可以理解为所述文件服务器对网络存储服务器中的待处理文件进行处理。在所述待处理文件位于文件服务器时,所述文件服务器对所述待处理文件进行处理,可以理解为所述文件服务器对本地的待处理文件进行处理。
在本实施例的一个实施方式中,所述文件服务器可以对应有类型标识,每个网络存储服务器可以对应有类型标识。每个网络存储服务器对应的类型标识可以相同。所述文件服务器与网络存储服务器对应的类型标识不同。所述类型标识可以用于表示一种文件存储类型。例如,所述文件服务器对应的类型标识可以为Local,每个网络存储服务器对应的类型标识可以为Remote。
如此,在步骤S104中,所述文件服务器可以以所述文件服务器对应的类型标识为第一类型标识,以网络存储服务器对应的类型标识为第二类型标识;可以识别所述目标对象标识对应的类型标识。在所述目标对象标识对应的类型标识为第一类型标识的条件下,所述服务器可以认为所述待处理文件位于所述文件服务器本地;继而可以基于所述第一路径信息,直接对所述待处理文件进行处理。在所述目标对象标识对应的类型标识为第二类型标识的条件下,所述文件服务器可以认为所述待处理文件位于网络存储服务器;继而可以识别所述目标对象标识对应的目标存储标识和目标命名空间。
具体地,开发人员可以在文件服务器预先配置每个对象标识对应的类型标识。如此,所述文件服务器可以根据开发人员的预设配置,识别所述目标对象标识对应的类型标识。
请参阅图4、图5和图6。需要说明的是,所述文件服务器进一步可以包括业务模块、路径信息适配模块和文件操作方式适配模块的服务器。如此,所述业务模块可以获取待处理文件的属性信息;可以分别识别所述目标对象标识对应的目标存储标识和目标命名空间;可以向所述路径信息适配模块发送所述属性信息、所述目标存储标识和所述目标命名空间。所述路径信息适配模块可以接收所述属性信息、所述目标存储标识和所述目标命名空间;可以基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述待处理文件的第一路径信息;可以向所述业务模块返回所述第一路径信息。所述业务模块可以接收所述第一路径信息;可以向所述文件操作适配模块发送所述第一路径信息。所述文件操作适配模块可以接收所述第一路径信息;可以获取所述第一路径信息匹配的至少一个文件处理函数;可以使用所述一个文件处理函数,基于所述第一路径信息,对所述待处理文件进行处理。如此,所述业务模块可以无需感知底层存储方式,从而能够实现业务模块与网络存储服务器的解耦,使得业务模块可以专注于业务处理逻辑。
在本实施例中,文件服务器可以获取待处理文件的属性信息,所述待处理文件与目标对象标识相对应;可以分别识别所述目标对象标识对应的目标存储标识和目标命名空间;可以基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述待处理文件的第一路径信息;可以获取所述第一路径信息匹配的至少一个文件处理函数;可以使用所述至少一个文件处理函数,基于所述第一路径信息,对所述待处理文件进行处理。本申请实施例中,所述文件服务器可以使用第一路径信息,来表示所述待处理文件在一个网络存储服务器中的绝对存储路径;可以基于所述第一路径信息,对所述待处理文件进行处理。因此,在本实施例中,开发人员只需在文件服务器编写具有第一路径信息生成功能的代码,从而减少了开发人员代码编写的工作量,节省了人力资源和和时间,减少了错误的产生。
另外,本领域技术人员应当能够理解,上述对本说明书特定实施例进行了描述,其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
请参阅图8。本申请实施例还提供一种文件处理装置。所述文件处理装置可以包括属性信息获取单元202、目标存储标识和目标命名空间识别单元204、路径信息确定单元206、函数标识获取单元208、文件处理单元210。
属性信息获取单元202,用于获取待处理文件的属性信息;其中,所述待处理文件与目标对象标识相对应;
目标存储标识和目标命名空间识别单元204,用于分别识别所述目标对象标识对应的目标存储标识和目标命名空间;
路径信息确定单元206,用于基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述待处理文件的第一路径信息;其中,所述第一路径信息用于表示所述待处理文件在所述目标存储标识对应的网络存储服务器中的绝对存储路径;
函数标识获取单元208,用于获取所述第一路径信息匹配的至少一个文件处理函数;
文件处理单元210,用于使用所述至少一个文件处理函数,基于所述第一路径信息,对所述待处理文件进行处理。
请参阅图9。本申请实施方式还提供一种服务器。所述服务器可以包括:存储器和处理器。
在本实施例中,所述存储器包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。
在本实施例中,所述处理器可以按任何适当的方式实现。例如,所述处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。
所述处理器通过执行所述计算机程序指令实现的功能包括:获取待处理文件的属性信息;其中,所述待处理文件与目标对象标识相对应;分别识别所述目标对象标识对应的目标存储标识和目标命名空间;基于所述属性信息、所述目标存储标识和所述目标命名空间,确定所述待处理文件的第一路径信息;其中,所述第一路径信息用于表示所述待处理文件在所述目标存储标识对应的网络存储服务器中的绝对存储路径;获取所述第一路径信息匹配的至少一个文件处理函数;使用所述至少一个文件处理函数,基于所述第一路径信息,对所述待处理文件进行处理。
本申请实施例公开的服务器,其存储器和处理器实现的具体功能,可以与本申请中的前述实施例对照解释。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于服务器实施例和文件处理装置实施例而言,由于其基本相似于文件处理方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片2。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。