大数据资源管理方法、装置、设备及存储介质与流程

文档序号:17475960发布日期:2019-04-20 06:07阅读:181来源:国知局
大数据资源管理方法、装置、设备及存储介质与流程

本发明涉及大数据技术领域,尤其涉及大数据资源管理方法、装置、设备及存储介质。



背景技术:

随着业务的快速发展,大数据平台组件构成越来越丰富,汇集的数据资源种类也越来越多,常见的资源有hive(一个基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供sql(structuredquerylanguage,结构化查询语言)查询功能),hdfs(hadoopdistributedfilesystem,hadoop分布式文件系统)存储资源和yarn(yetanotherresourcenegotiator,另一种资源协调者)队列计算资源等。存在资源种类多、数据分散、数据质量不高等问题,导致资源数据难以管理,严重影响到数据资源的共享、开发、利用。同时,大数据平台作为资源的提供方,需适用于被多个租户共同使用,且需要实现不同租户之间的资源隔离。因此迫切的需要一款数据管理平台,具有面向多租户的特点,同时便利于对海量数据资源的统一管理。



技术实现要素:

本发明的主要目的在于提出一种大数据资源管理方法、装置、设备及存储介质,旨在实现多租户场景下对大数据平台上的大数据资源进行统一管理。

为实现上述目的,本发明提供一种大数据资源管理方法,所述大数据资源管理方法包括如下步骤:

当侦测到用户登录大数据资源管理系统时,确定登录用户的角色,所述登录用户的角色为平台管理员、租户管理员和租户用户中的一种,其中平台管理员用于管理大数据平台上的所有租户,租户管理员用于管理单个租户下的租户用户;

获取预设的与所述登录用户的角色对应的资源管理权限;

根据所述资源管理权限对大数据平台上的大数据资源进行管理。

优选地,所述当侦测到用户登录大数据资源管理系统时,确定登录用户的角色的步骤包括:

当侦测到用户登录大数据资源管理系统时,获取登录用户的用户名;

根据所述用户名查询预设的用户名与角色之间的关系映射表,得到所述登录用户的角色。

优选地,所述资源管理权限包括资源查询权限,所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:

当接收到所述登录用户的资源查询指令时,根据所述资源查询权限查询对应的租户和/或租户用户的资源信息,所述资源信息包括资源的配置信息和资源的当前使用情况信息;

将查询到的所述资源信息以资源列表的形式进行显示。

优选地,所述资源管理权限包括hive资源读写权限,所述当侦测到用户登录大数据资源管理系统时,确定登录用户的角色的步骤之前,还包括:

获取预设的不同用户角色对hive资源的读写权限信息,以及所述hive资源的hdfs存储路径,将所述不同用户角色对hive资源的读写权限信息和所述hive资源的hdfs存储路径进行关联后,保存至预设的hdfs权限配置库中;

所述获取预设的与所述登录用户的角色对应的资源管理权限的步骤包括:

当接收到所述登录用户的hive资源读写指令时,获取待读写的hive资源的hdfs存储路径,判断所述待读写的hive资源的hdfs存储路径是否为预设路径,若是,则根据所述待读写的hive资源的hdfs存储路径查询所述hdfs权限配置库,以判断所述登录用户对所述待读写的hive资源是否具备读写权限;若具备,则获得与所述登录用户的角色对应的hive资源读写权限;

所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:

根据获取到的与所述登录用户的角色对应的hive资源读写权限,执行对所述待读写的hive资源的读写操作。

优选地,所述资源管理权限包括资源申请权限,所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:

当接收到所述登录用户的资源申请指令时,根据所述资源申请权限为相应的租户和/或租户用户申请大数据资源,所述大数据资源包括存储资源和计算资源。

优选地,所述资源管理权限包括租户用户的增删权限,所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:

当接收到所述登录用户的增加/删除租户用户的指令时,根据所述租户用户的增删权限,在所述大数据资源管理系统中增加/删除对应的租户用户。

优选地,所述在所述大数据资源管理系统中增加/删除对应的租户用户的步骤包括:

获取待增加/删除的租户用户的用户名;

根据获取到的所述待增加/删除的租户用户的用户名,查询所述待增加/删除的租户用户对应的资源;

在所述大数据资源管理系统中增加/删除所述待增加/删除的租户用户,并将查询到的所述待增加的租户用户对应的资源与所述增加的租户用户所属的租户进行关联,将查询到的所述待删除的租户用户对应的资源与所述删除的租户用户所属的租户进行解绑。

此外,为实现上述目的,本发明还提供一种大数据资源管理装置,所述大数据资源管理装置包括:

确定模块,用于当侦测到用户登录大数据资源管理系统时,确定登录用户的角色,所述登录用户的角色为平台管理员、租户管理员和租户用户中的一种,其中平台管理员用于管理大数据平台上的所有租户,租户管理员用于管理单个租户下的租户用户;

获取模块,用于获取预设的与所述登录用户的角色对应的资源管理权限;

管理模块,用于根据所述资源管理权限对大数据平台上的大数据资源进行管理。

此外,为实现上述目的,本发明还提供一种大数据资源管理设备,所述大数据资源管理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的大数据资源管理程序,所述大数据资源管理程序被所述处理器执行时实现如上所述的大数据资源管理方法的步骤。

此外,为实现上述目的,本发明还提供一种存储介质,所述存储介质上存储有大数据资源管理程序,所述大数据资源管理程序被处理器执行时实现如上所述的大数据资源管理方法的步骤。

本发明提出的大数据资源管理方法,通过将用户划分为平台管理员、租户管理员和租户用户三种角色,当用户登录大数据资源管理系统时,首先确定登录用户的角色,然后获取与角色对应的资源管理权限,并根据获取到的资源管理权限对大数据平台上的大数据资源进行管理。通过这种方式,实现了多租户场景下对大数据平台上的大数据资源进行统一管理。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;

图2为本发明大数据资源管理方法第一实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。

本发明实施例大数据资源管理设备可以是pc机或服务器设备,且该大数据资源管理设备上搭载有大数据资源管理系统。

如图1所示,该大数据资源管理设备可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及大数据资源管理程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的大数据资源管理程序,并执行大数据资源管理方法实施例中的操作。

基于上述硬件结构,提出本发明大数据资源管理方法实施例。

参照图2,图2为本发明大数据资源管理方法第一实施例的流程示意图,所述方法包括:

步骤s10,当侦测到用户登录大数据资源管理系统时,确定登录用户的角色,所述登录用户的角色为平台管理员、租户管理员和租户用户中的一种,其中平台管理员用于管理大数据平台上的所有租户,租户管理员用于管理单个租户下的租户用户;

本实施例大数据资源管理方法应用于大数据资源管理系统,该大数据组员管理系统具有面向多租户的特点,即同时为多个租户同时提供软件服务,其中每一租户下又包含若干个具有共性需求的租户用户。在本发明实施例中,租户概念仅作为对全部资源分配的一个标识,不参与资源的管理和再分配,而是基于多角色用户的方式来进行管理。在大数据资源管理系统上,用户角色被划分为平台管理员、租户管理员和租户用户三种,其中平台管理员具有最高权限,用于管理大数据平台上的所有租户,而租户管理员用于管理单个租户下的租户用户。具体地,权限分配平台管理员具有查看和操作全部租户资源的权限及增删租户的权限,租户管理员具有查看和操作所属租户下的资源(包括自己及租户用户的资源)及增删租户用户的权限,而租户用户作为三种角色中权限最小的一种,仅能够查看和操作与自己相关的数据资源。

本实施例中,当侦测到用户登录大数据资源管理系统时,首先确定登录用户的角色,即登录用户是平台管理员、租户管理员,还是租户用户。

进一步地,所述当侦测到用户登录大数据资源管理系统时,确定登录用户的角色的步骤可以包括:当侦测到用户登录大数据资源管理系统时,获取登录用户的用户名;根据所述用户名查询预设的用户名与角色之间的关系映射表,得到所述登录用户的角色。

具体地,为识别登录用户的角色,可以预先设置用户名与角色之间的关系映射表,后续当侦测到用户以用户名加密码的方式登录大数据资源管理系统时,首先对用户名和密码进行校验,校验通过后,系统获取该登录用户的用户名,然后根据用户名查询预设的用户名与角色之间的关系映射表,从而可以得到该登录用户的角色。

除上述方式外,用户在登录大数据资源管理系统时,也可以直接输入自己的角色、用户名和密码,由系统对该角色、用户名和密码进行校验,校验通过后,即将用户输入的该角色作为当前登录用户的角色。

步骤s20,获取预设的与所述登录用户的角色对应的资源管理权限;

在确定登录用户的角色后,获取预设的与该登录用户的角色对应的资源管理权限,该资源管理权限为对大数据平台上的大数据资源进行管理的权限。具体实施时,可预先为不同的角色设置不同的资源管理权限,该资源管理权限包括但不限于资源查询权限、hive(基于hadoop(一个能够对大量数据进行分布式处理的软件框架)的一个数据仓库工具)资源读写权限、资源申请权限和租户用户的增删权限等,本实施例中,不同的角色共享同一数据库,在操作逻辑上相互隔离,即不同角色的用户根据其所具备的权限,可以对大数据平台上的大数据资源进行个性化管理。

步骤s30,根据所述资源管理权限对大数据平台上的大数据资源进行管理。

该步骤中,大数据资源管理系统根据登录用户的权限为登录用户提供相应的大数据资源管理功能,其中大数据资源包括但限于hive存储资源、hdfs存储资源和yarn(hadoop中提供作业调度和集群资源管理的框架)计算资源等。根据资源管理权限对大数据平台上的大数据资源进行管理包括但不限于:当接收到登录用户的资源查询指令时,根据登录用户的资源查询权限查询相应的资源信息;当接收到登录用户的hive资源读写指令时,根据登录用户的hive资源读写权限执行对待读写的hive资源的读写操作;当接收到登录用户的资源申请指令时,根据资源申请权限为相应的租户和/或租户用户申请大数据资源;当接收到增加/删除租户用户的指令时,根据租户用户的增删权限,在大数据资源管理系统中增加/删除对应的租户用户,等等。

需要说明的是,本实施例首先通过一层数据库层的逻辑隔离,实现用户的角色及权限确认,再通过大数据组件层权限隔离,实现用户根据权限对大数据资源的操作,这种方式区别于传统通过数据库表获得权限之后,根据权限操作其它的数据表而仅实现单层的数据库层隔离的方式;也区别通过首层数据库确定多租户关系之后,再通过数据库关系映射来确定大数据资源操作权限的双层数据库隔离方式(这种多租户的隔离方式,是利用资源管理模块来隔离hadoop集群,但是hadoop集群包括yarn,hdfs和mapreduce组件并未能有效支持文件权限控制,该方案的操作hadoop集群资源仍然是通过数据库映射获得用户的操作路径,即采用两层数据库方式隔离来隔离租户和区分资源)。本发明实施例采用租户及其角色进行联合标识用户身份的方式,提高了共享数据库方式的隔离级别,同时减少了数据库数量及维护成本。

本实施例提出的大数据资源管理方法,通过将用户划分为平台管理员、租户管理员和租户用户三种角色,当用户登录大数据资源管理系统时,首先确定登录用户的角色,然后获取与角色对应的资源管理权限,并根据获取到的资源管理权限对大数据平台上的大数据资源进行管理。通过这种方式,实现了多租户场景下对大数据平台上的大数据资源进行统一管理。

进一步地,基于本发明大数据资源管理方法第一实施例,提出本发明大数据资源管理方法第二实施例。

在本实施例中,所述资源管理权限包括资源查询权限,对应地,所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤可以包括:当接收到所述登录用户的资源查询指令时,根据所述资源查询权限查询对应的租户和/或租户用户的资源信息,所述资源信息包括资源的配置信息和资源的当前使用情况信息;将查询到的所述资源信息以资源列表的形式进行显示。

当大数据资源管理系统接收到登录用户的资源查询指令时,根据该登录用户的资源查询权限查询对应的租户和/或租户用户的资源信息,比如当登录用户为平台管理员时,其可以查询系统中所有租户及所有租户用户的资源信息,当登录用户为租户管理员时,其可以查询单一租户下的所有租户用户的资源信息,当登录用户为租户用户时,其仅可以查询自身的资源信息。其中,资源信息包括资源的配置信息和资源的当前使用情况信息,资源的配置信息主要包括hive、hdfs和yarn三种资源的配置,资源的当前使用情况信息包括已使用的cpu、内存数,使用率等。之后,将查询到的资源信息以资源列表的形式进行显示,通过这种方式,不同的用户可以查看到与其权限对应的不同的资源列表,从而实现了资源信息的个性化展示,这种展示方式也可以让资源详情更加透明化,从而方便数据管理。

进一步地,基于本发明大数据资源管理方法第一实施例,提出本发明大数据资源管理方法第三实施例。

在本实施例中,所述资源管理权限包括hive资源读写权限,对应地,所述当侦测到用户登录大数据资源管理系统时,确定登录用户的角色的步骤之前,还可以包括:获取预设的不同用户角色对hive资源的读写权限信息,以及所述hive资源的hdfs存储路径,将所述不同用户角色对hive资源的读写权限信息和所述hive资源的hdfs存储路径进行关联后,保存至预设的hdfs权限配置库中;其中,所述将所述不同用户角色对hive资源的读写权限信息和所述hive资源的hdfs存储路径进行关联后,保存至预设的hdfs权限配置库中的步骤包括:将所述hive表的权限信息转换为所述hdfs文件对应的访问权限,即,将hive的select、all等权限,转换为hdfs的读、写权限,并保存到hdfs权限配置库中。

所述获取预设的与所述登录用户的角色对应的资源管理权限的步骤包括:当接收到所述登录用户的hive资源读写指令时,获取待读写的hive资源的hdfs存储路径,判断所述待读写的hive资源的hdfs存储路径是否为预设路径,若是,则根据所述待读写的hive资源的hdfs存储路径查询所述hdfs权限配置库,以判断所述登录用户对所述待读写的hive资源是否具备读写权限;若具备,则获得与所述登录用户的角色对应的hive资源读写权限;

所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:根据获取到的与所述登录用户的角色对应的hive资源读写权限,执行对所述待读写的hive资源的读写操作。

在本实施例中,考虑到hive是数据仓库工具,具有文件权限控制功能,而hdfs是分布式文件存储系统,不支持文件权限控制。但hive组件仅是客户端组件,不提供存储的功能,其最终数据仍然要存储在hdfs上,由于hive和hdfs两者是不同组件,作用性质不用,权限并不一致。因此,本发明基于中间层hdfs权限配置库的方式,来确保hive和hdfs的权限一致性。

首先,需获取预设的不同用户角色对hive资源的读写权限信息,以及所述hive资源的hdfs存储路径,并将获取到的不同用户角色对hive资源的读写权限信息和hive资源的hdfs存储路径进行关联,关联后保存至预设的hdfs权限配置库中;当后续接收到登录用户的hive资源读写指令时,先获取待读写的hive资源的hdfs存储路径,然后判断该待读写的hive资源的hdfs存储路径是否为预设路径,比如预设路径可以是/user/hive/warehouse/,若为预设路径,则根据该待读写的hive资源的hdfs存储路径查询hdfs权限配置库,此时通过hdfs权限配置库中的关联信息可以判断该登录用户对该待读写的hive资源是否具备读写权限,若具备,则自动获得该登录用户对待读写的hive资源的读写权限,并执行对待读写的hive资源的读写操作。例如,当用户操作存储资源的时候,先获得hive资源的路径,将其放入hdfs权限配置库中进行权限的查询,若存在权限,则在hive中对表进行授权,基于上述过程,使得hive和hdfs存储资源的权限上保持一致性。

需要说明的是,本发明中管理的资源主要为hive和hdfs资源,通过与hive权限结合,控制自定义hdfs文件路径下的读写权限,优化多用户访问hdfs文件的权限判断逻辑。一般,hive组件和hdfs组件拥有不同的权限隔离的办法,本发明采用hdfs文件读写权限与hive权限结合,即拥有hive权限的用户,将自动获取对应hdfs路径上的权限,通过这种方式,实现了hive和hdfs的权限保持一致性。

将以上hive和hdfs的权限一致性功能的实现代码打包成hadoop-hdfs.jar,将该依赖包更新到hadoop安装目录下,在部署时可先部署一台namenode(管理节点),然后通过namenode高可用机制进行切换,即验证通过后再部署另一台namenode,在当前节点故障时切换到另一节点,做到对用户无感知部署。

进一步地,基于本发明大数据资源管理方法第一实施例,提出本发明大数据资源管理方法第四实施例。

在本实施例中,所述资源管理权限包括资源申请权限,对应地,所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:当接收到所述登录用户的资源申请指令时,根据所述资源申请权限为相应的租户和/或租户用户申请大数据资源,所述大数据资源包括存储资源和计算资源。

当大数据资源管理系统接收到登录用户的资源申请指令时,根据该资源申请权限为相应的租户和/或租户用户申请大数据资源,该大数据资源包括存储资源(如hive、hdfs)和计算资源(如yarn)。比如当登录用户为平台管理员时,其可为租户申请存储资源和计算资源;当登录用户为租户管理员时,其可以为自己或租户用户申请存储资源和计算资源,增加系统的内聚性,当登录用户为租户用户时,其可以为自己申请存储资源和计算资源,等等。通过这种方式,实现了多租户资源动态管理,大大提高了资源管理系统的效率。

进一步地,基于本发明大数据资源管理方法第一实施例,提出本发明大数据资源管理方法第五实施例。

在本实施例中,所述资源管理权限包括租户用户的增删权限,对应地,所述根据所述资源管理权限对大数据平台上的大数据资源进行管理的步骤包括:当接收到所述登录用户的增加/删除租户用户的指令时,根据所述租户用户的增删权限,在所述大数据资源管理系统中增加/删除对应的租户用户。

其中,所述在所述大数据资源管理系统中增加/删除对应的租户用户的步骤可以进一步包括:获取待增加/删除的租户用户的用户名;根据获取到的所述待增加/删除的租户用户的用户名,查询所述待增加/删除的租户用户对应的资源;在所述大数据资源管理系统中增加/删除所述待增加/删除的租户用户,并将查询到的所述待增加的租户用户对应的资源与所述增加的租户用户所属的租户进行关联,将查询到的所述待删除的租户用户对应的资源与所述删除的租户用户所属的租户进行解绑。

具体地,当大数据资源管理系统接收到登录用户的增加/删除租户用户的指令时,即在大数据资源管理系统中增加/删除对应的租户用户。比如当登录用户为平台管理员时,其可以增加/删除所有租户下的租户用户;当登录用户为租户管理员是,其可以增加/删除单一租户下的租户用户。在增加/删除租户用户时,首先获取待增加/删除的租户用户的用户名,然后根据获取到的用户名去查询待增加/删除的租户用户对应的资源,资源名中包含该用户名的资源即作为该待增加/删除的租户用户对应的资源,之后,在大数据资源管理系统中增加/删除租户用户,并将查询到的待增加的租户用户对应的资源与增加的租户用户所属的租户进行关联,将查询到的待删除的租户用户对应的资源与删除的租户用户所属的租户进行解绑。比如,租户管理员创建租户用户a,则需将a已有的资源关联到对应的租户下,同理,在删除用户a的时候,则需要将a的数据与租户进行解绑。通过这种方式,实现了资源的自动关联和解绑,进一步提高了资源管理系统的效率。

本发明还提供一种大数据资源管理装置。本发明实施例大数据资源管理装置包括:

确定模块,用于当侦测到用户登录大数据资源管理系统时,确定登录用户的角色,所述登录用户的角色为平台管理员、租户管理员和租户用户中的一种,其中平台管理员用于管理大数据平台上的所有租户,租户管理员用于管理单个租户下的租户用户;

获取模块,用于获取预设的与所述登录用户的角色对应的资源管理权限;

管理模块,用于根据所述资源管理权限对大数据平台上的大数据资源进行管理。

上述各程序模块所执行的操作可参照本发明大数据资源管理方法实施例,此处不再赘述。

本发明还提供一种大数据资源管理设备。

本发明大数据资源管理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的大数据资源管理程序,所述大数据资源管理程序被所述处理器执行时实现如上所述的大数据资源管理方法的步骤。

其中,在所述处理器上运行的大数据资源管理程序被执行时所实现的方法可参照本发明大数据资源管理方法各个实施例,此处不再赘述。

本发明还提供一种存储介质。

本发明存储介质上存储有大数据资源管理程序,所述大数据资源管理程序被处理器执行时实现如上所述的大数据资源管理方法的步骤。

其中,在所述处理器上运行的大数据资源管理程序被执行时所实现的方法可参照本发明大数据资源管理方法各个实施例,此处不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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