数据访问方法、装置、电子设备及计算机存储介质与流程

文档序号:16880519发布日期:2019-02-15 22:05阅读:193来源:国知局
数据访问方法、装置、电子设备及计算机存储介质与流程

本申请涉及数据处理技术领域,具体而言,本申请涉及一种数据访问方法、装置、电子设备及计算机存储介质。



背景技术:

hadoop实现了一个分布式文件系统hdfs(hadoopdistributedfilesystem),其中,hdfs具有高容错性的特点,并且可以被设计成部署在低廉的通用硬件上,同时hdfs能够提供高传输率来访问应用程序的数据,适合那些有着超大数据集的应用程序。

随着技术的不断发展和更新,在hdfs1.0系统的基础上,已发布了新的hdfs2.0系统,hdfs2.0系统的存储访问方式与hdfs1.0系统有很大区别,hdfs1.0系统采用的是hadoop自带的rpc(remoteprocedurecallprotocol,远程过程调用协议)来通信,而hdfs2.0系统则采用pb(protocolbuffer,协议缓冲)协议来通信。

目前,针对不同版本的hdfs系统(例如hdfs1.0与hdfs2.0),可以通过分别部署不同版本的客户端(例如客户端1.0与客户端2.0)的方式,来使用相应的客户端分别访问不同版本的hdfs,例如,使用客户端1.0访问hdfs1.0中的数据,使用客户端2.0访问hdfs2.0中的数据。然而,若要使用客户端2.0访问hdfs1.0中的数据,则必须将数据从hdfs1.0拷贝到hdfs2.0,这一过程,不仅操作繁杂,而且将会消耗很长的时间,导致效率较低。



技术实现要素:

为克服上述技术问题或者至少部分地解决上述技术问题,特提出以下技术方案:

第一方面,提供了一种数据访问方法,包括:

基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式;

如果工作模式不是预设工作模式,则通过预设文件系统插件,根据工作模式访问相应版本的文件系统中的数据信息。

具体地,在通过预设文件系统插件,根据工作模式访问相应版本的文件系统中的数据信息之前,还包括:

配置工作模式与文件系统的版本信息之间的第二预设对应关系。

进一步地,通过预设文件系统插件,根据工作模式访问相应版本的文件系统中的数据信息,包括:

根据第二预设对应关系,确定工作模式对应的文件系统的版本信息;

通过预设文件系统插件,根据确定得到的版本信息,访问相应的文件系统中的数据信息。

进一步地,在通过预设文件系统插件,根据确定得到的版本信息,获取相应的文件系统中的数据信息之前,还包括:

配置工作模式与类加载器之间的第三预设对应关系。

进一步地,通过预设文件系统插件,根据确定得到的版本信息,获取相应的文件系统中的数据信息,包括:

根据第三预设对应关系,确定与工作模式相对应的类加载器;

通过预设文件系统插件,根据确定得到的类加载器加载版本信息对应的文件系统的java档案文件包;

根据java档案文件包,访问文件系统中的数据信息。

进一步地,类加载器通过反射的方式,来加载版本信息对应的文件系统的java档案文件包。

进一步地,还包括:

如果工作模式是预设工作模式,则根据第二预设对应关系,直接加载相应版本信息的文件系统的java档案文件包,以访问该文件系统中的数据信息。

进一步地,文件系统为分布式文件系统hdfs。

第二方面,提供了一种数据访问装置,包括:

确定模块,用于基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式;

第一处理模块,用于当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式访问相应版本的文件系统中的数据信息。

具体地,还包括第一配置模块;

所述第一配置模块,用于配置工作模式与文件系统的版本信息之间的第二预设对应关系。

进一步地,第一处理模块包括版本确定子模块与数据访问子模块;

版本确定子模块,用于根据第二预设对应关系,确定工作模式对应的文件系统的版本信息;

数据访问子模块,用于通过预设文件系统插件,根据确定得到的版本信息,访问相应的文件系统中的数据信息。

进一步地,还包括第二配置模块;

第二配置模块,用于配置工作模式与类加载器之间的第三预设对应关系。

进一步地,数据访问子模块包括类加载器确定子单元、加载子单元与数据访问子单元;

类加载器确定子单元,用于根据第三预设对应关系,确定与工作模式相对应的类加载器;

加载子单元,用于通过预设文件系统插件,根据确定得到的类加载器加载版本信息对应的文件系统的java档案文件包;

数据访问子单元,用于根据java档案文件包,访问文件系统中的数据信息。

进一步地,加载子单元具体用于类加载器通过反射的方式,来加载版本信息对应的文件系统的java档案文件包。

进一步地,还包括第二处理模块;

第二获取模块,用于当工作模式是预设工作模式时,根据第二预设对应关系,直接加载相应版本信息的文件系统的java档案文件包,以获取该文件系统中的数据信息。

进一步地,文件系统为分布式文件系统hdfs。

第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述程序时实现上述的数据访问方法。

第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的数据访问方法。

本申请实施提供的数据访问方法,基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式,为后续根据工作模式获取相应版本的文件系统中的数据信息提供前提保障;当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式对相应版本的文件系统中的数据信息进行处理,从而能够基于同一客户端,通过预设文件系统插件,来访问任一版本的文件系统,即在对上层应用透明的情况下,实现了通过同一客户端对各个版本的文件系统的访问兼容,不仅有效避免了通过相应版本的客户端访问与其对应的文件系统的繁琐操作,而且在实现兼容访问的过程,无需将其它版本的文件系统中的数据拷贝到当前版本的文件系统中,降低操作复杂度,提高数据访问效率。

本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本申请实施例的数据访问方法的流程示意图;

图2为本申请实施例的数据访问方法的过程示意图;

图3为本申请实施例的数据访问装置的基本结构示意图;

图4为本申请实施例的数据访问装置的详细结构示意图;

图5为本申请实施例的电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

目前,针对不同版本的文件系统(例如文件系统1.0与h文件系统.0),可以通过在同一台机器上分别部署不同版本的客户端(例如客户端1.0与客户端2.0)的方式,来使用相应的客户端分别访问不同版本的文件系统,例如,使用客户端1.0访问文件系统1.0中的数据,使用客户端2.0访问文件系统2.0中的数据,即访问不同版本的文件系统时,需指定相应的不同版本的客户端,这对于上层应用来说,操作过程十分繁琐,而且无法在对上层应用透明的情况下,实现不同版本的文件系统的数据共享。另外,若要使用客户端2.0访问文件系统1.0中的数据,则必须将数据从文件系统1.0拷贝到文件系统2.0,这一过程,不仅操作繁杂,而且将会消耗很长的时间,导致效率较低。

本申请提供的数据访问方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

实施例一

本申请实施例提供了一种数据访问方法,如图1所示,包括:

步骤s110,基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式。

具体地,客户端在访问后台服务器的文件系统中的数据信息时,通常是根据预先存储的工作模式来确定相应的文件系统,从而访问该确定出的文件系统中的数据信息,而用户在通过客户端访问数据时,通常是在客户端中输入访问路径,使得客户端根据访问路径访问相应的数据信息,因此,客户端需要根据访问路径与工作模式间的第一预设对应关系,例如访问路径1对应工作模式1,访问路径2对应工作模式2,访问路径3对应工作模式3,确定用户输入的访问路径所对应的工作模式,即确定客户端当前获取到的访问路径所对应的工作模式,进而根据工作模式确定相应的文件系统,并访问该确定出的文件系统中的数据信息。

步骤s120,如果工作模式不是预设工作模式,则通过预设文件系统插件,根据工作模式访问相应版本的文件系统中的数据信息。

具体地,客户端开发过程中,可以预设一个默认的工作模式,例如,客户端默认对应的工作模式为工作模式2,该工作模式2即为客户端的预设工作模式,即客户端是默认基于工作模式2来访问相应的版本的文件系统中的数据信息,例如客户端默认基于工作模式2,访问文件系统2.0中的数据信息。其中,访问文件系统2.0中的数据信息不仅包括读取或获取文件系统2.0中的数据信息的情况,还包括对文件系统2.0中的数据信息进行写入的情况,即向文件系统2.0中写入数据信息的情况。

进一步地,为了实现客户端对不同版本的文件系统中的数据信息的访问兼容,在客户端开发过程中,也允许客户端以其它工作模式来访问相应版本的文件系统中的数据信息,例如客户端以工作模式1来访问文件系统1.0中数据信息,又例如客户端以工作模式3来访问文件系统3.0中的数据信息。

进一步地,客户端可以根据文件系统(例如filesystem)这一接口来判断当前获取到的访问路径所对应的工作模式是否为预设工作模式,如果当前获取到的访问路径所对应的工作模式不是预设工作模式,则说明客户端是对除文件系统2.0外的其它版本的文件系统(例如文件系统1.0、文件系统3.0)中的数据信息的兼容访问。此时,客户端通过预设文件系统插件,来根据当前获取到的访问路径所对应的工作模式,访问相应版本的文件系统中的数据信息,即客户端无法直接访问除预设工作模式对应版本的文件系统(例如文件系统2.0)外的其它版本的文件系统(例如文件系统1.0、文件系统3.0),而是通过预设文件系统插件,例如spinnerfilesystem,来间接访问文件系统1.0或文件系统3.0中的数据信息。

本申请实施例提供的数据访问方法,与现有技术相比,基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式,为后续根据工作模式获取相应版本的文件系统中的数据信息提供前提保障;当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式对相应版本的文件系统中的数据信息进行处理,从而能够基于同一客户端,通过预设文件系统插件,来访问任一版本的文件系统,即在对上层应用透明的情况下,实现了通过同一客户端对各个版本的文件系统的访问兼容,不仅有效避免了只能通过相应版本的客户端来访问与其对应的文件系统的繁琐操作,而且在实现兼容访问的过程,无需将其它版本的文件系统中的数据拷贝到当前版本的文件系统中,降低操作复杂度,提高数据访问效率。

实施例二

本申请实施例提供了另一种可能的实现方式,在实施例一的基础上,还包括实施例二所示的方法,其中,

文件系统为分布式文件系统hdfs。

在步骤s120之前还包括步骤s111(图中未标注):配置工作模式与文件系统的版本信息之间的第二预设对应关系。

步骤s120包括步骤s1201(图中未标注)与步骤s1202(图中未标注),其中,

步骤s1201:根据第二预设对应关系,确定工作模式对应的文件系统的版本信息。

步骤s1203:通过预设文件系统插件,根据确定得到的版本信息,访问相应的文件系统中的数据信息。

具体地,可以预先配置工作模式与分布式文件系统hdfs的版本信息之间的第二预设对应关系,其中,工作模式与hdfs的版本信息之间是一一对应的,例如工作模式1对应的hdfs的版本信息为1.0版本,即工作模式1与hdfs1.0一一对应,又例如工作模式2对应的hdfs的版本信息为2.0版本,即工作模式2与hdfs2.0一一对应,再例如工作模式3对应的hdfs的版本信息为3.0版本,即工作模式3与hdfs3.0一一对应。预先配置工作模式与hdfs的版本信息之间的对应关系后,便于根据工作模式直接确定相应版本的hdfs,并访问根据工作模式访问相应版本的hdfs中的数据信息。

进一步地,客户端根据访问路径与工作模式间的第一预设对应关系,确定出当前获取到的访问路径所对应的工作模式后,例如确定出当前获取到的访问路径所对应的工作模式为工作模式1,接着客户端可以根据工作模式与hdfs的版本信息之间的第二预设对应关系,确定出当前工作模式(例如工作模式1)所对应的hdfs的版本信息(例如1.0版本),即工作模式1对应于hdfs1.0,在确定出当前工作模式所对应的hdfs的版本信息后,可以通过预设文件系统插件,根据确定得到的版本信息(例如1.0版本),访问相应的hdfs1.0中的数据信息。

对于本申请实施例,通过工作模式与hdfs的版本信息之间的第二预设对应关系,便于快速准确地确定出当前工作模式所对应的hdfs的版本信息,进而使得客户端通过预设文件系统插件,根据确定得到的版本信息,实现对相应版本的hdfs中的数据信息的快速、高效访问,实现了通过同一客户端对应不同版本的hdfs中的数据信息的兼容访问。

实施例三

本申请实施例提供了另一种可能的实现方式,在实施例二的基础上,还包括实施例三所示的方法,其中,

在步骤s1203之前还包括步骤s1202(图中未标注):配置工作模式与类加载器之间的第三预设对应关系。

步骤s1203包括步骤s12031(图中未标注)、步骤s12032(图中未标注)与步骤s12033(图中未标注),其中,

步骤s12031:根据第三预设对应关系,确定与工作模式相对应的类加载器。

步骤s12032:通过预设文件系统插件,根据确定得到的类加载器加载版本信息对应的文件系统的java档案文件包。

步骤s12033:根据java档案文件包,访问文件系统中的数据信息。

其中,类加载器通过反射的方式,来加载版本信息对应的文件系统的java档案文件包。

具体地,预设文件系统插件是通过相应的类加载器以反射的方式,来实现对兼容版本的hdfs(例如hdfs1.0、hdfs3.0)中的数据信息的访问的,于是,在通过预设文件系统插件,根据确定得到的版本信息,访问相应的hdfs中的数据信息之前,可以预先配置工作模式与类加载器之间的第三预设对应关系,其中,工作模式与类加载器之间是一一对应的,例如工作模式1对应类加载器1,即工作模式1与类加载器1一一对应,又例如工作模式3对应类加载器3,即工作模式3与类加载器3一一对应。

进一步地,客户端根据访问路径与工作模式间的第一预设对应关系,确定出当前获取到的访问路径所对应的工作模式后,例如确定出当前获取到的访问路径所对应的工作模式为工作模式1,接着客户端可以根据工作模式与hdfs的版本信息之间的第二预设对应关系,确定出当前工作模式(例如工作模式1)所对应的hdfs的版本信息(例如1.0版本),即工作模式1对应于hdfs1.0,再接着客户端可以根据工作模式与类加载器之间的第三预设对应关系,确定出当前工作模式(例如工作模式1)所对应的类加载器(例如类加载器1),即工作模式1对应于hdfs1.0,且工作模式1对应类加载器1。

进一步地,类加载器是以反射的方式,通过加载待兼容版本的hdfs(例如hdfs1.0)的java档案文件包,来实现对兼容版本的hdfs(例如hdfs1.0)中的数据信息的访问的,于是,可以根据上述确定出的对应关系(即工作模式1对应于hdfs1.0,且工作模式1对应类加载器1),通过类加载器1以反射的方式,加载待兼容版本的hdfs(例如hdfs1.0)的java档案文件包,再根据java档案文件包,访问相应版本的hdfs(例如hdfs1.0)中的数据信息。

对于本申请实施例,通过引入相关java档案文件包及更改配置的方式,实现上层应用使用统一客户端,无感知情况下读/写不同版本的hdfs中的数据信息,并能够在hdfs迁移时实现数据连通。

实施例四

本申请实施例提供了另一种可能的实现方式,在实施例一至实施例三的基础上,还包括实施例四所示的方法,其中,

还包括步骤s130(图中未标注):如果工作模式是预设工作模式,则根据第二预设对应关系,直接加载相应版本信息的文件系统的java档案文件包,以访问该文件系统中的数据信息。

具体地,客户端开发过程中,可以预设一个默认的工作模式,例如,客户端默认对应的工作模式为工作模式2,该工作模式2即为客户端的预设工作模式,即客户端是默认基于工作模式2来访问对应版本的hdfs中的数据信息,例如客户端默认基于工作模式2,访问hdfs2.0中的数据信息。

进一步地,客户端可以根据文件系统(例如filesystem)这一接口来判断当前获取到的访问路径所对应的工作模式是否为预设工作模式,如果当前获取到的访问路径所对应的工作模式是预设工作模式,例如,当前获取到的访问路径所对应的工作模式是工作模式2(预设工作模式),则根据上述的第二预设对应关系,可以确定客户端默认访问的是hdfs2.0中的数据信息。此时,客户端无法借助于任何插件或类加载器,即可直接加载相应版本信息的hdfs的java档案文件包,直接访问该hdfs2.0中的数据信息。

进一步地,图2给出了上述实施例一至实施例四的客户端访问相应版本的hdfs中的数据信息的过程示意图,在图2中,整个大框代表客户端访问hdfs中的数据信息时的内部执行过程,其中,该客户端默认的工作模式为工作模式2,即默认直接访问hdfs2.0中的数据信息,并且可以向前兼容访问hdfs1.0中的数据信息,以及向后兼容访问hdfs3.0中的数据信息,从而实现了通过同一个客户端对hdfs的向前版本(例如hdfs1.0)的兼容访问以及向后版本(例如hdfs3.0)的兼容访问,因而无需在同一台机器中为每一个版本的hdfs部署对应版本的客户端,例如为hdfs1.0部署对应的客户端1.0,又例如为hdfs2.0部署对应的客户端2.0。

进一步地,上述实施例一至实施例四中的技术方案可以概括为:通过引入filesystem(即上述的文件系统)的新的实现类spinnerfilesystem(即上述的预设文件系统插件),实现了对应不同版本hdfs访问的兼容,其中,具体策略如下:

(1)通过viewfs(视图文件系统)配置不同版本的hdfs,其中,不同版本的hdfs采用不同的schema(即上述的工作模式)。

(2)为待兼容的hdfs的schema配置spinnerfilesystem的相应实现。

(3)在spinnerfilesystem中,通过不同的classloader(即上述的类加载器),以反射的方式根据schema加载不同版本的hdfs所对应的实现jar包(即上述的java档案文件包),从而将现有版本的方法接口实现,通过反射的方式传递至相应版本的jar中,实现客户端对hdfs1.0、hdfs3.0等的访问逻辑、序列化及rpc(remoteprocedurecallprotocol,远程过程调用协议)框架的兼容。

实施例五

图3为本申请实施例提供的一种数据访问装置的结构示意图,如图3所示,该装置30可以包括确定模块31与第一处理模块32;其中,

确定模块31用于基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式;

第一处理模块32用于当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式访问相应版本的文件系统中的数据信息。

具体地,还包括第一配置模块33,如图4所示,其中,第一配置模块33用于配置工作模式与文件系统的版本信息之间的第二预设对应关系。

进一步地,第一处理模块32包括版本确定子模块321与数据访问子模块322,如图4所示,其中,

版本确定子模块321用于根据第二预设对应关系,确定工作模式对应的文件系统的版本信息;

数据访问子模块322用于通过预设文件系统插件,根据确定得到的版本信息,访问相应的文件系统中的数据信息。

进一步地,还包括第二配置模块34,如图4所示,其中,第二配置模块34用于配置工作模式与类加载器之间的第三预设对应关系。

进一步地,数据访问子模块322包括类加载器确定子单元3221、加载子单元3222与数据访问子单元3223,如图4所示,其中,

类加载器确定子单元3221用于根据第三预设对应关系,确定与工作模式相对应的类加载器;

加载子单元3222用于通过预设文件系统插件,根据确定得到的类加载器加载版本信息对应的文件系统的java档案文件包;

数据访问子单元3223用于根据java档案文件包,访问文件系统中的数据信息。

进一步地,加载子单元3221具体用于类加载器通过反射的方式,来加载版本信息对应的文件系统的java档案文件包。

进一步地,还包括第二处理模块35,如图4所示,其中,第二获取模块35用于当工作模式是预设工作模式时,根据第二预设对应关系,直接加载相应版本信息的文件系统的java档案文件包,以访问该文件系统中的数据信息。

进一步地,文件系统为分布式文件系统hdfs。

本申请实施例提供的装置,与现有技术相比,基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式,为后续根据工作模式获取相应版本的文件系统中的数据信息提供前提保障;当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式对相应版本的文件系统中的数据信息进行处理,从而能够基于同一客户端,通过预设文件系统插件,来访问任一版本的文件系统,即在对上层应用透明的情况下,实现了通过同一客户端对各个版本的文件系统的访问兼容,不仅有效避免了通过相应版本的客户端访问与其对应的文件系统的繁琐操作,而且在实现兼容访问的过程,无需将其它版本的文件系统中的数据拷贝到当前版本的文件系统中,降低操作复杂度,提高数据访问效率。

实施例六

本申请实施例提供了一种电子设备,如图5所示,图5所示的电子设备500包括:处理器501和存储器503。其中,处理器501和存储器503相连,如通过总线502相连。进一步地,电子设备500还可以包括收发器504。需要说明的是,实际应用中收发器504不限于一个,该电子设备500的结构并不构成对本申请实施例的限定。

其中,处理器501应用于本申请实施例中,用于实现图3或图4所示的确定模块与第一处理模块的功能,以及图4所示的第一配置模块、第二配置模块及第二处理模块的功能。

处理器501可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器501也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

总线502可包括一通路,在上述组件之间传送信息。总线502可以是pci总线或eisa总线等。总线502可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器503可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器503用于存储执行本申请方案的应用程序代码,并由处理器501来控制执行。处理器501用于执行存储器503中存储的应用程序代码,以实现图3或图4所示实施例提供的数据访问装置的动作。

本申请实施例提供的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,与现有技术相比,可实现:基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式,为后续根据工作模式获取相应版本的hdfs中的数据信息提供前提保障;当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式对相应版本的文件系统中的数据信息进行处理,从而能够基于同一客户端,通过预设文件系统插件,来访问任一版本的文件系统,即在对上层应用透明的情况下,实现了通过同一客户端对各个版本的文件系统的访问兼容,不仅有效避免了通过相应版本的客户端访问与其对应的文件系统的繁琐操作,而且在实现兼容访问的过程,无需将其它版本的文件系统中的数据拷贝到当前版本的文件系统中,降低操作复杂度,提高数据访问效率。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现实施例一所示的方法。与现有技术相比,基于访问路径与工作模式间的第一预设对应关系,确定当前获取到的访问路径所对应的工作模式,为后续根据工作模式获取相应版本的文件系统中的数据信息提供前提保障;当工作模式不是预设工作模式时,通过预设文件系统插件,根据工作模式对相应版本的文件系统中的数据信息进行处理,从而能够基于同一客户端,通过预设文件系统插件,来访问任一版本的文件系统,即在对上层应用透明的情况下,实现了通过同一客户端对各个版本的文件系统的访问兼容,不仅有效避免了通过相应版本的客户端访问与其对应的文件系统的繁琐操作,而且在实现兼容访问的过程,无需将其它版本的文件系统中的数据拷贝到当前版本的文件系统中,降低操作复杂度,提高数据访问效率。

本申请实施例提供的计算机可读存储介质适用于上述方法的任一实施例。在此不再赘述。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

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