掌桥专利:专业的专利平台
掌桥专利
首页

一种Hadoop集群的对象创建方法及装置

文献发布时间:2023-06-19 11:35:49


一种Hadoop集群的对象创建方法及装置

技术领域

本发明涉及大数据技术领域,具体涉及一种Hadoop集群的对象创建方法及装置。

背景技术

多租户技术是一种实现于多用户的环境下共用相同系统或程序组件的软件架构技术,在大数据环境下主要涉及集群用户管理、资源队列管理、角色管理等。

现有技术中,基于多租户软件架构下的Hadoop集群,需要手动创建用户、为用户分配资源以及设置权限等资源管控操作。而随着企业大数据分布式Hadoop集群规模逐渐增大,Hadoop集群所承载的应用数扩大,单个Hadoop集群最大规模已达到上千个节点,相关用户权限和资源管控对象达到几千个,手动进行用户的资源管控已难以支撑集群在大规模多租户架构下的一体化管理控制,效率低且容易出错。

发明内容

针对现有技术中的问题,本发明实施例提供一种Hadoop集群的对象创建方法及装置,能够至少部分地解决现有技术中存在的问题。

一方面,本发明提出一种Hadoop集群的对象创建方法,包括:

从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;

发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

另一方面,本发明提供一种Hadoop集群的对象创建方法,包括:

写入模块,用于从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;

发送模块,用于发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述Hadoop集群的对象创建方法的步骤。

又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述Hadoop集群的对象创建方法的步骤。

本发明实施例提供的Hadoop集群的对象创建方法及装置,能够从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中,发送对象创建接口调用请求调用对象的创建接口以使得Hadoop集群根据对象的配置文件创建对象,提高了对象的创建效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

图1是本发明一实施例提供的Hadoop集群的对象创建方法的流程示意图。

图2是本发明一实施例提供的Hadoop集群的对象创建装置的结构示意图。

图3是本发明一实施例提供的电子设备的实体结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行说明。

Hadoop集群拥有的CPU、内存和磁盘等资源,可以整合规划为一个集合体,这个集合体就是租户。多个不同的租户统称多租户。多租户功能支持层级式的租户模型,支持动态的添加和删除租户,实现资源的隔离,可以对租户的计算资源和存储资源进行动态配置和管理。用户是拥有用户名称,密码等帐号信息的自然人,是Hadoop集群的使用者。角色是承载一个或多个权限的载体。用户和角色可以是多对多的关系,一个用户可以绑定多个角色,一个角色可以被多个用户绑定。用户通过绑定角色和租户建立关系,因此用户和租户也可以是多对多的关系。一个用户可以使用多个租户的资源,多个用户也可以使用同一个租户的资源。

图1是本发明一实施例提供的Hadoop集群的对象创建方法的流程示意图,如图1所示,本发明实施例提供的Hadoop集群的对象创建方法,包括:

S101、从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;

具体地,技术人员可以在客户终端上选择数据库中的数据表进行Hadoop集群的对象创建。所述客户终端会从上述数据表中读取对象的创建信息,然后按照预设格式写入到所述对象的配置文件中,写入完成之后,所述对象的配置文件包括按照预设格式存储的所述对象的创建信息。其中,所述对象为租户、角色或者用户。所述对象的创建信息是预先存储到数据库中的。所述预设格式根据实际需要进行设置,本发明实施例不做限定。所述客户终端包括但不限于台式机、笔记本电脑、平板电脑的。

S102、发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

具体地,所述客户终端连接Hadoop集群,向Hadoop集群发送对象创建接口调用请求,以调用所述对象的创建接口。所述对象创建接口调用请求可以包括所述对象的创建接口的调用地址和所述对象的配置文件。Hadoop集群中的一台服务器可以根据所述对象的创建接口的调用地址获取对应的接口程序,执行所述对象的创建接口对应的接口程序,从所述对象的配置文件中获取所述对象的创建信息,进行所述对象的创建。其中,所述接口程序是预设的,与创建接口一一对应。

本发明实施例提供的Hadoop集群的对象创建方法,能够从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中,发送对象创建接口调用请求调用对象的创建接口以使得Hadoop集群根据对象的配置文件创建对象,提高了对象的创建效率。在面对批量对象的创建时,能够极大地提高对象的创建效率。此外,对象的创建过程无需人工参与,降低了人工操作带来的误操作风险。

在上述各实施例的基础上,进一步地,所述对象为租户,所述租户的创建信息包括至少一个租户信息,每个租户信息包括租户名称和租户资源。

具体地,所述对象可以为租户,所述租户的创建信息包括至少一个租户信息,每个租户信息包括租户名称和租户资源。租户资源包括但不限于资源名称和资源属性值等信息。其中,资源属性值可以采用数值或者百分比等形式表示,根据实际需要进行设置,本发明实施例不做限定。

所述对象为租户,在进行租户的创建时,所述客户终端会从数据库中读取租户的创建信息,然后将租户的创建信息写入到租户的配置文件中,租户的配置文件可以采用json文件。

例如,租户的配置文件的部分内容如下所示:

其中,租户名称和资源名称是必要参数。资源属性值为可选择参数,可以指定内存和/或CPU的资源属性值,可以采用数值、百分分比、最大值、最小值、预留值等形式指定资源属性值,根据实际需要进行设置,本发明实施例不做限定。

所述客户终端可以通过发送租户创建接口调用请求,调用租户的创建接口。租户创建接口调用请求包括调用地址和租户的配置文件。调用地址可以为URL,URL例如为POSThttps://”host”:”port”/web/access/tenant/tenants.do,host为Hadoop集群中服务器的地址,port为端口号,host和port是预设的,可以从Hadoop集群的配置文件中获得。Hadoop集群中的服务器接收到租户创建接口调用请求之后,会执行租户的创建接口对应的接口程序,从租户的配置文件中逐条获取租户信息,基于每条租户信息增加新租户,并给租户创建相应的租户资源和配置租户资源的必要属性。租户的创建接口对应的接口程序在执行完成之后,会返回执行结果,如果租户创建成功,会返回创建成功的提示信息,以及为每个租户名生成唯一的角色标识。

其中,发送租户创建接口调用请求之前,技术人员还可以通过所述客户终端调用Hadoop集群的登录接口,以登录到Hadoop集群,获得对象的创建接口的调用权限。

在上述各实施例的基础上,进一步地,所述对象为角色,所述角色的创建信息包括至少一个角色信息,每个角色信息包括角色名称和绑定的租户标识。

具体地,所述对象可以为角色,所述角色的创建信息包括至少一个角色信息,每个角色信息包括角色名称和绑定的租户标识。

所述对象为角色,在进行角色的创建时,所述客户终端会从数据库中读取角色的创建信息,然后将角色的创建信息写入到角色的配置文件中,角色的配置文件可以采用json文件。

例如,角色的配置文件部分内容如下所示:

所述客户终端可以通过发送角色创建接口调用请求,调用角色的创建接口。角色创建接口调用请求包括调用地址和角色的配置文件。调用地址可以为URL,URL例如为POSThttps://”host”:”port”/web/access/role/roles.do?syn=true,host为Hadoop集群中服务器的地址,port为端口号,host和port是预设的,可以从Hadoop集群的配置文件中获得。Hadoop集群中的服务器接收到角色创建接口调用请求之后,会执行角色的创建接口对应的接口程序,从角色的配置文件中逐条获取角色信息,基于每条角色信息增加新角色,并给角色与对应的租户进行绑定。

例如,角色的创建接口对应的接口程序的部分程序如下所示:

{"roleInfo":{"name":"test_2","description":"","defaultFlag":false},"rolePerm":{"servicePermissions":[{"serviceName":"Yarn","resSetPerms":[{"resPerm":{"resource":{"resourceName":"wangbei","resourceFullName":"root.wangbei","resourceType":"childQueue"},"permissions":{"Submit":true,"Admin":true},"permissionViewDetails":null},"recursiveType":"ONLY_TOP_RESOURCE"}]}]}}

上述程序从角色的配置文件中获取一条角色信息,重复执行上述程序即可从角色的配置文件中逐条获取角色信息。表1是对角色的创建接口对应的接口程序的部分程序的解释说明。其中,角色名称和租户标识是必要参数。租户标识是创建角色前就已经生成的。程序中的其他参数为默认配置的参数。角色的创建接口对应的接口程序在执行完成之后,会返回执行结果,如果角色创建成功,会返回创建成功的提示信息,以及为每个角色名生成唯一的角色标识,并将角色标识与对应的租户绑定。

表1接口程序说明

在上述各实施例的基础上,进一步地,所述对象为用户,所述用户的创建信息包括至少一个用户信息,所述用户信息包括用户名称、密码和绑定的角色标识。

具体地,所述对象可以为用户,所述用户的创建信息包括至少一个用户信息,每个用户信息包括用户名、密码和绑定的角色标识。所述用户信息还可以包括用户组名,用户组名是用户所属组的名称。所述用户信息包括的用户组名的数量可为一个,可也为两个或者两个以上。绑定的角色标识可以为一个角色标识,也可以为两个或者两个以上的角色标识。

所述对象为用户,在进行用户的创建时,所述客户终端会从数据库中读取用户的创建信息,然后将用户的创建信息写入到用户的配置文件中,用户的配置文件可以采用json文件。

例如,用户的配置文件的部分内容如下所示:

所述客户终端可以通过发送用户创建接口调用请求,调用用户的创建接口。用户创建接口调用请求包括调用地址和用户的配置文件。调用地址可以为URL,URL例如为POSThttps://”host”:”port”/web/access/user/users.do,host为Hadoop集群中服务器的地址,port为端口号,host和port是预设的,可以从Hadoop集群的配置文件中获得。Hadoop集群中的服务器接收到用户创建接口调用请求之后,会执行用户的创建接口对应的接口程序,从用户的配置文件中逐条获取用户信息,基于每条用户信息增加新用户,并将用户与对应的角色进行绑定。

例如,角色的创建接口对应的接口程序的部分程序如下所示:

Request Payload

{"userName":"zhanglu1","userType":"0","password":"Admin12!","confirmPassword":"Admin12!","groupList":["supergroup"],"roleList":[],"primaryGroup":"supergroup"}

{"userName":"zhanglu2","userType":"0","password":"Admin12!","confirmPassword":"Admin12!","groupList":["supergroup"],"roleList":[],"primaryGroup":"supergroup"}

上述程序从用户的配置文件中获取一条用户信息,重复执行上述程序即可从用户的配置文件中逐条获取用户信息。表2是对用户的创建接口对应的接口程序的解释说明。其中,用户名称、密码和角色标识是必要参数,用户组名是可选的参数。角色标识是创建用户前就已经生成的。程序中的其他参数是默认设置的。用户的创建接口对应的接口程序在执行完成之后,会返回执行结果,如果用户创建成功,会返回创建成功的提示信息,以及为每个用户名生成唯一的用户标识,并将用户标识与对应的角色绑定。

表2接口程序说明

在上述各实施例的基础上,进一步地,本发明实施例提供的Hadoop集群的对象创建方法还包括:

接收输入的所述对象的创建信息,并存储到所述数据库的数据表中。

具体地,技术人员可以在客户终端提供的交互界面上输入所述对象的创建信息,所述客户终端会获取用户输入的创建信息,然后存储到所述数据库的数据表中。通过集中输入对象的创建信息,可以提高信息的输入效率。

在上述各实施例的基础上,进一步地,本发明实施例提供的Hadoop集群的对象创建方法还包括:

接收Hadoop集群返回的创建结果。

具体地,Hadoop集群的一台服务器在根据所述对象的配置文件创建所述对象之后,会向所述客户终端返回创建结果,以提示技术人员对象是否创建成功。

在上述各实施例的基础上,进一步地,所述对象的配置文件为json文件。json语法非常易于使用,可以使用语法来实现数据解析和更快的数据执行。

图2是本发明一实施例提供的Hadoop集群的对象创建装置的结构示意图,如图2所述,本发明实施例提供的Hadoop集群的对象创建装置包括写入模块201和发送模块202,其中:

写入模块201用于从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;发送模块202用于发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

具体地,技术人员可以在写入模块201上选择数据库中的数据表进行Hadoop集群的对象创建。写入模块201会从上述数据表中读取对象的创建信息,然后按照预设格式写入到所述对象的配置文件中,写入完成之后,所述对象的配置文件包括按照预设格式存储的所述对象的创建信息。其中,所述对象为租户、角色或者用户。所述对象的创建信息是预先存储到数据库中的。所述预设格式根据实际需要进行设置,本发明实施例不做限定。

发送模块202连接Hadoop集群,向Hadoop集群发送对象创建接口调用请求,以调用所述对象的创建接口。所述对象创建接口调用请求可以包括所述对象的创建接口的调用地址和所述对象的配置文件。Hadoop集群中的一台服务器可以根据所述对象的创建接口的调用地址获取对应的接口程序,执行所述对象的创建接口对应的接口程序,从所述对象的配置文件中获取所述对象的创建信息,进行所述对象的创建。其中,所述接口程序是预设的,与创建接口一一对应。

本发明实施例提供的Hadoop集群的对象创建装置,能够从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中,发送对象创建接口调用请求调用对象的创建接口以使得Hadoop集群根据对象的配置文件创建对象,提高了对象的创建效率。在面对批量对象的创建时,能够极大地提高对象的创建效率。此外,对象的创建过程无需人工参与,降低了人工操作带来的误操作风险。

本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。

在上述各实施例的基础上,进一步地,所述对象为租户,所述租户的创建信息包括至少一个租户信息,每个租户信息包括租户名称和租户资源。

在上述各实施例的基础上,进一步地,所述对象为角色,所述角色的创建信息包括至少一个角色信息,每个角色信息包括角色名称和绑定的租户标识。

在上述各实施例的基础上,进一步地,所述对象为用户,所述用户的创建信息包括至少一个用户信息,所述用户信息包括用户名称、密码和绑定的角色标识。

在上述各实施例的基础上,进一步地,本发明实施例提供的Hadoop集群的对象创建装置还包括第一接收模块,其中:

所述接收模块用于接收输入的所述对象的创建信息,并存储到所述数据库的数据表中。

在上述各实施例的基础上,进一步地,本发明实施例提供的Hadoop集群的对象创建装置还包括第二接收模块,其中:

所述第二接收模块用于接收Hadoop集群返回的创建结果。

在上述各实施例的基础上,进一步地,所述对象的配置文件为json文件。

需要说明的是,本发明实施例提供的Hadoop集群的对象创建方法及装置可用于金融领域,也可用于除金融领域之外的任意技术领域,本发明实施例对Hadoop集群的对象创建方法及装置的应用领域不做限定。

图3是本发明一实施例提供的电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)301、通信接口(Communications Interface)302、存储器(memory)303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信。处理器301可以调用存储器303中的逻辑指令,以执行如下方法:从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

此外,上述的存储器303中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:从数据库读取对象的创建信息并按照预设格式写入到所述对象的配置文件中;发送对象创建接口调用请求调用所述对象的创建接口以使得Hadoop集群根据所述对象的配置文件创建所述对象;其中,所述对象的创建接口是预设的。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

相关技术
  • 一种Hadoop集群的对象创建方法及装置
  • 一种对象创建方法、终端装置及存储介质
技术分类

06120112986243