元数据管理系统、用户集群创建方法、装置、设备和介质与流程

文档序号:19155362发布日期:2019-11-16 00:41阅读:290来源:国知局
元数据管理系统、用户集群创建方法、装置、设备和介质与流程

本申请涉及计算机技术领域,尤其涉及一种元数据管理系统、用户集群创建方法、装置、设备和介质。



背景技术:

海杜普(hadoop)是一种分布式大数据开发平台,如图1所示,其由hadoop分布式文件系统(hadoopdistributedfilesystem,hdfs)、mapreduce、hbase、pig、hive、sqoop和zookeeper等成员组成。其中,hdfs具有高容错性的特点,是适合超大数据集的应用程序;mapreduce是一种编程模型,用于大规模数据集的并行运算;hbase是一个开源的基于列存储模型的分布式数据库;pig是一个基于hadoop的大规模数据分析平台,为复杂的海量数据并行计算提供简单的操作和编程接口;hive是基于hadoop的工具,用于提供完整的sql查询,并可以将sql语句转换为mapreduce任务进行运行;sqoop是一种开源工具,主要用于在hive与数据库之间进行数据传递;zookeeper是高效的、可拓展的协调系统,用于存储和协调关键共享状态。

在计算hadoop作业过程中,需要对数据文件进行读写操作,这些数据文件通常存储在hdfs中,这些数据文件的描述信息通过hive的元存储(metastore)服务管理并记录在元数据库中。hadoop作业运行期间通过与metastore服务进行交互,获取数据文件的描述信息。如图2所示,hadoop作业运行期间,hadoop服务与metastore服务进行交互,从元数据库中获取数据文件的描述信息。

目前,用户集群的metastore服务和元数据存储所使用的元数据库,都是在用户集群的内部环境中。每个集群有自己的元数据库,且各个集群的元数据库是相互独立的。举例来说,如图3所示,用户a创建有用户集群1和用户集群2,用户集群1的集群内部包括元数据库1,用户集群1中数据文件的描述信息存储在元数据库1中,用户集群2的集群内部包括元数据库2,用户集群2中数据文件的描述信息存储在元数据库2中,元数据库1与元数据库2相互独立。用户b创建有用户集群3,用户集群3的集群内部包括元数据库3,用户集群3中数据文件的描述信息存储在元数据库3中,元数据库3与元数据库1、元数据库2相互独立。

上述元数据管理方案,对于单个hadoop用户集群,是没有问题的,但是这种元数据管理方案并不能满足弹性hadoop云平台的需求。具体来说,弹性hadoop云平台提供弹性的按需服务,用户可以随时创建用户集群进行计算,并在计算完成之后释放创建的用户集群。在弹性hadoop云平台中,若采用上述元数据管理方案,则用户集群中的元数据无法进行持久化保存,而且用户集群的元数据存储在用户集群内部,未实现计算和存储分离,不利于同一个用户在多个用户集群之间进行元数据共享。

申请内容

本申请实施例提供了一种元数据管理系统、用户集群创建方法、装置、设备和计算机可读存储介质,用以实现用户集群中元数据的持久化保存,同时实现单个用户集群中计算与存储分离、同一用户创建的多个用户集群之间元数据共享。

根据本申请实施例的第一方面,提供一种元数据管理系统,包括:

多个用户集群;

元数据数据库集群,独立于所述多个用户集群部署,并与所述多个用户集群进行通信,用于存储所述多个用户集群的元数据;

元数据管理平台,与所述元数据数据库集群进行通信,用于管理所述多个用户集群的元数据。

根据本申请实施例的第二方面,提供一种元数据管理方法,包括:

接收用户发送的包含用户标识和元数据标识的元数据管理请求;

基于所述用户标识,确定元数据数据库集群中与所述用户对应的元数据库;

管理所述元数据库中所述元数据标识对应的元数据;

其中,与所述用户对应的元数据库为所述用户在所述元数据数据库集群中的存储空间。

根据本申请实施例的第三方面,提供一种用户集群创建方法,包括:

接收用户发送的包含用户标识的用户集群创建请求;

基于所述用户标识,获取所述用户访问所述元数据数据库集群的登录信息,并确定元数据数据库集群中与所述用户对应的元数据库,其中,与所述用户对应的元数据库为所述用户在所述元数据数据库集群中的存储空间;

创建用户集群,并基于获取到的所述用户访问所述元数据数据库集群的登录信息和确定的所述元数据数据库集群中与所述用户对应的元数据库,部署所述用户集群的元数据存储服务。

根据本申请实施例的第四方面,提供一种元数据管理装置,包括:

接收模块,用于接收用户发送的包含用户标识和元数据标识的元数据管理请求;

处理模块,用于基于所述用户标识,确定元数据数据库集群中与所述用户对应的元数据库,其中,与所述用户对应的元数据库为所述用户在所述元数据数据库集群中的存储空间;

管理模块,用于管理所述元数据库中所述元数据标识对应的元数据。

根据本申请实施例的第五方面,提供一种用户集群创建装置,包括:

接收模块,用于接收用户发送的包含用户标识的用户集群创建请求;

处理模块,用于基于所述用户标识,获取所述用户访问所述元数据数据库集群的登录信息,并确定元数据数据库集群中与所述用户对应的元数据库,其中,与所述用户对应的元数据库为所述用户在所述元数据数据库集群中的存储空间;

创建模块,用于创建用户集群,并基于获取到的所述用户访问所述元数据数据库集群的登录信息和确定的所述元数据数据库集群中与所述用户对应的元数据库,部署所述用户集群的元数据存储服务。

根据本申请实施例的第六方面,提供一种元数据管理设备,包括:存储器和处理器;该存储器用于储存有可执行程序代码;该处理器用于读取存储器中存储的可执行程序代码以执行上述元数据管理方法。

根据本申请实施例的第七方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,当计算机程序指令被处理器执行时实现上述元数据管理方法。

根据本申请实施例的第八方面,提供一种元数据管理设备,包括:存储器和处理器;该存储器用于储存有可执行程序代码;该处理器用于读取存储器中存储的可执行程序代码以执行上述用户集群创建方法。

根据本申请实施例的第九方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,当计算机程序指令被处理器执行时实现上述用户集群创建方法。

根据本申请实施例中的元数据管理系统、用户集群创建方法、装置、设备和计算机可读存储介质,通过独立于多个用户集群部署、且与多个用户集群通信的元数据数据库集群,统一存储多个用户集群的元数据,并通过与元数据数据库集群通信的元数据管理平台管理多个用户集群的元数据,从而使得可以在元数据数据库集群中对同一用户创建的多个用户集群的元数据进行统一管理,实现了元数据在同一用户创建的多个用户集群之间的共享,同时由于元数据数据库集群在多个用户集群外部部署,实现了用户集群中计算与元数据存储的分离,而且即使用户集群被释放,元数据数据库集群中存储的元数据也不会被释放,实现了用户集群中元数据的持久化保存。

附图说明

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

图1示出了hadoop基本架构的结构示意图;

图2示出了现有技术中单个用户集群的示意图;

图3示出了现有技术中多个用户集群的示意图;

图4示出了根据本申请实施例的元数据管理系统的结构示意图;

图5示出了根据本申请实施例的创建用户集群的流程示意图;

图6示出了根据本申请实施例的管理元数据数据库集群中元数据的流程示意图;

图7示出了根据本申请实施例的元数据管理方法的流程示意图;

图8示出了根据本申请实施例的元数据管理装置的结构示意图;

图9示出了根据本申请实施例的用户集群创建方法的流程示意图;

图10示出了根据本申请实施例的用户集群创建装置的结构示意图;

图11示出了能够实现根据本申请实施例的元数据管理方法和装置的计算设备的示例性硬件架构的结构图;

图12示出了能够实现根据本申请实施例的用户集群创建方法和装置的计算设备的示例性硬件架构的结构图。

具体实施方式

下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本申请,并不被配置为限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

首先,对本申请下述实施例中使用的一些名词进行解释。

元数据(metadata):是描述其它数据的数据(dataaboutotherdata),或者说是用于提供某种资源的有关信息的结构数据(structureddata)。元数据是描述信息资源或数据等对象的数据,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能,其使用目的在于:识别资源;评价资源;追踪资源在使用过程中的变化;实现简单高效地管理大量网络化数据;实现信息资源的有效发现、查找、一体化组织和对使用资源的有效管理。

在用户集群中,数据被分散存储在多个物理独立的存储节点,从而实现用户集群的高扩展性和高性能。对于一组文件,如果以文件为单位进行调度,则不同的文件可能会存储在不同的存储节点上,在访问该组文件时,需要通过元数据服务对这些文件进行定位和访问。具体来说,元数据服务记录数据逻辑名字与物理信息的映射关系,包含文件访问控制所需要的所有元数据,对文件进行访问时,先向元数据服务请求查询文件对应的元数据,然后通过获得的元数据进行后续的文件读写等操作。

目前,用户集群的metastore服务和元数据存储所使用的元数据库,都是在用户集群的内部环境中,每个集群有自己的元数据库,且各个集群的元数据库是相互独立的。

举例来说,如图3所示,用户a创建有用户集群1和用户集群2,用户集群1的集群内部包括元数据库1,用户集群1中数据文件的描述信息存储在元数据库1中,用户集群2的集群内部包括元数据库2,用户集群2中数据文件的描述信息存储在元数据库2中,元数据库1与元数据库2相互独立。用户b创建有用户集群3,用户集群3的集群内部包括元数据库3,用户集群3中数据文件的描述信息存储在元数据库3中,元数据库3与元数据库1、元数据库2相互独立。

以用户a创建的用户集群1和用户集群2为例,用户a可以在用户集群1中对元数据库1中的元数据进行管理,用户a可以在用户集群2中对元数据库2中的元数据进行管理,但是元数据库1和元数据库2中的元数据无法共享,用户集群1无法访问和使用元数据库2中的元数据,同样地,用户集群2无法访问和使用元数据库1中的元数据,而且随着用户a释放用户集群1,元数据库1中的数据将同时被释放,随着用户a释放用户集群2,元数据库2中的数据将同时被释放。

图3中示出的元数据管理方案,并不能满足弹性hadoop云平台的需求。具体来说,弹性hadoop云平台是一种以云产品的形式提供的托管hadoop框架服务集群的平台。在此平台中,用户可以快速地构建基于hadoop框架的用户集群,用户能够方便地动态扩展用户集群规模,按需随时申请用户集群资源,并且使用完之后可以随时释放用户集群资源。弹性hadoop云平台可以面向所有公有云用户提供服务,不同用户创建的用户集群资源相互隔离。

从弹性hadoop云平台的性质可知,弹性hadoop云平台提供弹性的按需服务,用户可以随时创建用户集群进行计算,并在计算完成之后释放创建的用户集群。在弹性hadoop云平台中,若采用图3所示的元数据管理方案,则用户集群中的元数据无法进行持久化保存。具体来说,用户集群的metastore服务和元数据存储所使用的元数据库,在用户集群的内部环境中,如果计算完成之后用户集群被释放,则用户集群中元数据库的元数据信息都会随着用户集群的释放而消失,除非用户将用户集群中元数据库的元数据同步到用户集群外部环境。

同时,采用图3所示的元数据管理方案,不利于实现计算和元数据存储的分离。具体来说,虽然目前hadoop系统可以支持外部存储系统,用户可以将用户集群中的数据存储在外部文件系统中,从而将用户集群主要作为计算资源,以便随时按需创建用户集群来处理计算任务,完成之后随时释放用户集群节约成本。但是,如果每次释放用户集群之前,都需要将用户集群中的元数据信息导出到外部文件系统,每次创建用户集群时又需要将之前导出的元数据信息导入到新的用户集群中,这必将会增加大量额外的工作,不利于实现计算和元数据存储的分离。

另外,采用图3所示的元数据管理方案,不利于同一个用户在创建的多个用户集群之间进行元数据共享。具体来说,如果一个用户使用多个不同的用户集群来处理多个不同的业务逻辑,但是不同业务逻辑之间存在数据关联,每个用户集群的元数据只在该用户集群的内部环境中,不同用户集群之间很难实现数据的共享。

为此,本申请实施例提供了一种应用于弹性hadoop云平台的元数据管理系统,如图4所示,包括:元数据数据库集群40、元数据管理平台41以及多个用户集群(如图4中示出的用户集群1、用户集群2和用户集群3)。

元数据数据库集群40,独立于多个用户集群部署,与多个用户集群进行通信,用于存储多个用户集群的元数据。

元数据管理平台41,与元数据数据库集群40进行通信,用于管理多个用户集群的元数据。

本申请实施例提供的元数据管理系统,通过独立于多个用户集群部署、且与多个用户集群通信的元数据数据库集群,统一存储多个用户集群的元数据,并通过与元数据数据库集群通信的元数据管理平台管理多个用户集群的元数据,从而使得可以在元数据数据库集群中对同一用户创建的多个用户集群的元数据进行统一管理,实现了元数据在同一用户创建的多个用户集群之间的共享,同时由于元数据数据库集群在多个用户集群外部部署,实现了用户集群中计算与元数据存储的分离,而且即使用户集群被释放,元数据数据库集群中存储的元数据也不会被释放,实现了用户集群中元数据的持久化保存。

在一个实施方式中,元数据管理系统,还包括:用户管理服务器42,与元数据管理平台41进行通信,用于管理每个用户在元数据数据库集群40中的访问权限和操作权限。

在一个示例中,用户管理服务器42可以为每个用户生成用于访问元数据数据库集群40的登录信息,并验证每个用户的登录合法性。其中,登录信息包括但不限于登录账户和登录密码。

在一个实施方式中,为了避免某些用户故意恶意使用元数据数据库集群40影响其它用户的正常使用,用户管理服务器42还可以设置每个用户在元数据数据库集群40中的操作权限。

在一个示例中,用户管理服务器42在设置每个用户在元数据数据库集群40中的操作权限时,可以对每个用户只授予插入元数据、更新元数据和删除元数据的权限,同时对每个用户进行并发连接数限制和最大连接数限制。

在一个实施方式中,元数据数据库集群40中包括一个或多个数据库服务器,数据库服务器可以为mysql数据库服务器,也可以是mssql数据库服务器,还可以是hbase数据库服务器,本申请对此不做限定。

在一个实时方式中,元数据数据库集群40的服务器容量或者服务器数量,能够根据需要存储的多个用户集群的元数据的容量动态调整,也即元数据数据库集群40可以通过增加或删除数据库服务器的方式动态调整容量。

在一个实施方式中,为了提高元数据数据库集群40中存储数据的安全性,可以为元数据数据库集群40中的每个数据库维护一个与其进行数据同步的备份数据库,也即为每个数据库维护一个备份数据库,从而能够在元数据数据库集群40中任一数据库异常时,直接切换到异常数据库对应的备份数据库进行数据的存储与读取,提高数据的安全性。

在一个实施方式中,元数据数据库集群40中为用户管理服务器42中管理的每个用户分配存储空间,为每个用户分配数据库服务器中的一个或多个数据库作为其存储空间,换句话说,元数据数据库集群40中的每个数据库服务器可以为至少一个用户分配存储空间。

在一个示例中,在元数据数据库集群40中为用户管理服务器42中管理的每个用户分配存储空间时,可以根据每个用户的用户标识,为每个用户生成唯一的元数据库名称,当然也可以直接使用用户的用户标识作为用户的元数据库名称,然后在元数据数据库集群40的数据库服务器中为用户分配一个或多个数据库,并使用元数据库名称或用户标识对为用户分配的数据库命名,以区分不同用户的数据库。

在一个实施方式中,为了避免不同用户存储数据时相互影响,可以将元数据数据库集群40中任意两个用户的存储空间互相隔离。

在一个实施方式中,在元数据数据库集群40中为用户分配存储空间之后,用户管理服务器42可以记录每个用户在元数据数据库集群40中对应的存储空间,其中,数据库服务器为每个用户分配的存储空间用于存储每个用户创建的用户集群的元数据。

在一个实施方式中,为了保证用户数据的安全性,用户管理服务器42还可以提供元数据加密和解密功能,也即可以对每个用户在元数据数据库集群40中对应的存储空间进行加密。其中,对每个用户在元数据数据库集群40中对应的存储空间进行加密时,可以采用对称加密的方式。

在一个示例中,在用户管理服务器42中,为了便于管理多个用户在元数据数据库集群40中对应的存储空间、多个用户访问元数据数据库集群40的登录信息,可以针对每个用户,存储每个用户的用户标识、在元数据数据库集群40中每个用户对应的存储空间、及每个用户访问元数据数据库集群40的登录信息三者之间的对应关系。

在一个实施方式中,元数据管理平台41可以在元数据管理系统中部署统一的metastore服务43,元数据管理平台41通过metastore服务43管理每个用户的元数据。管理操作包括查看目前存储的元数据、新增元数据、修改元数据、以及删除元数据。其中,metastore服务43可以部署在元数据管理平台41内部,也可以部署在元数据管理平台41外部,本申请实施例对此不做限定。

在图4示出的元数据管理系统中,用户1创建有用户集群1和用户集群2,用户2创建有用户集群3,元数据数据库集群40为用户1分配存储空间,用于存储用户1创建的用户集群的元数据,元数据数据库集群40为用户2分配存储空间,用于存储用户2创建的用户集群的元数据。

就用户1而言,用户1创建有用户集群1和用户集群2,用户集群1和用户集群2的元数据均可以存储到元数据数据库集群40为用户1分配的存储空间中,用户1可以通过元数据管理平台41对存储在元数据数据库集群40中的元数据进行管理。

如此以来,用户集群1中的计算和用户集群2中的计算均在用户集群内部完成,而用户集群1的元数据和用户集群2的元数据均存储在元数据数据库集群40为用户1分配的存储空间中,也即均存储在用户集群外部,从而实现了计算与元数据存储的分离。

用户集群1的元数据和用户集群2的元数据,均存储在元数据数据库集群40为用户1分配的存储空间中,用户1在通过元数据管理平台41对元数据进行管理时,可以方便实现用户集群1和用户集群2之间元数据的共享。而且用户1在释放用户集群(用户集群1和/或用户集群2)时,用户集群对应的元数据存储在元数据数据库集群40为用户1分配的存储空间中,并不会随着用户集群的释放而释放,因此,能够实现用户集群元数据的持久化保存。

基于图4示出的元数据管理系统,用户的元数据管理至少包括:用户集群的创建和用户对元数据的管理两部分。下面结合图5对本申请实施例中用户集群的创建过程进行简单说明。

在一个实施方式中,如图5所示,用户在图4示出的元数据管理系统中创建用户集群的步骤,可以包括:

步骤501,接收用户发送的包含用户标识的用户集群创建请求。其中,用户标识用于唯一标识一个用户,其可以包括但不限于用户的身份证号码、用户的通讯号码等。

在一个示例中,元数据管理平台41中可以显示用于触发发送用户集群创建请求的按钮,用户可以在元数据管理平台41中点击该按钮,以发送用户集群创建请求。

步骤502,元数据管理平台41接收用户发送的包含用户标识的用户集群创建请求之后,根据用户的用户标识,判断是否已在元数据数据库集群40中为用户分配元数据的存储空间。

在一个实施方式中,元数据管理平台41可以通过用户管理服务器42查询是否已在元数据数据库集群40中为用户分配元数据的存储空间。具体来说,若根据该用户的用户标识,确定用户管理服务器42中记录有该用户在元数据数据库集群40中对应的存储空间,则确定已在元数据数据库集群40中为用户分配元数据的存储空间;否则,若根据该用户的用户标识,确定用户管理服务器42中未记录该用户在元数据数据库集群40中对应的存储空间,则确定未在元数据数据库集群40中为该用户分配元数据的存储空间。

在一个示例中,由于元数据数据库集群40为用户分配的存储空间,用于存储用户创建的用户集群的元数据,因此,元数据数据库集群40为用户分配的存储空间,也可视为是用户的元数据库。

步骤503,元数据管理平台41确定已在元数据数据库集群40中为该用户分配元数据的存储空间时,基于该用户的用户标识,确定元数据数据库集群40中与用户对应的元数据库,并从用户管理服务器42中获取用户的登录信息。

在一个示例中,若确定已在元数据数据库集群40中为该用户分配元数据的存储空间,则可以基于用户标识,根据用户管理服务器42中存储的用户标识、用户在元数据数据库集群40中对应的元数据库、用户访问元数据数据库集群40的登录信息三者之间的对应关系,从用户管理服务器42中获取该用户在元数据数据库集群40中对应的元数据库、该用户访问元数据数据库集群40的登录信息。

步骤504,基于该用户在元数据数据库集群40中与用户对应的元数据库、该用户访问元数据数据库集群40的登录信息,配置访问元数据数据库集群40的访问信息到待创建用户集群的元数据存储服务。

在一个示例中,在获取用户在元数据数据库集群40中与用户对应的元数据库、用户访问元数据数据库集群40的登录信息之后,需要将上述信息配置到待创建用户集群的元数据存储服务中,也即将上述信息配置到待创建用户集群的metastore服务中,以使用户集群中的metastore服务在后续存储或读取此用户集群中的元数据时,根据上述信息访问该用户在元数据数据库集群40中的数据库。

步骤505,创建用户集群,并基于步骤504中配置的访问信息部署该用户集群的元数据存储服务。

上述过程为已在元数据数据库集群40中为用户分配元数据的存储空间时的用户集群创建过程,若用户首次申请创建用户集群,元数据数据库集群40中未为用户分配元数据的存储空间,则在步骤502之后,步骤504之前,还包括为用户分配元数据存储空间的步骤506,具体来说:

步骤506,元数据管理平台41确定未在元数据数据库集群40中为该用户分配元数据的存储空间时,在元数据数据库集群40中为该用户分配存储空间,将分配的存储空间作为该用户在元数据数据库集群40中对应的元数据库,并为该用户生成用于访问元数据数据库集群40的登录信息。

通过上述过程,用户可以方便的创建一个或多个用户集群,在用户创建多个用户集群时,多个用户集群的元数据均存储在元数据数据库集群40为用户分配的存储空间(或者元数据数据库集群40中与用户对应的元数据库)中,方便实现多个用户集群之间元数据的数据共享,而且用户集群的计算与元数据存储分离,用户集群的元数据可以持久化保存。

在一个实施方式中,用户创建一个或多个用户集群之后,并且在元数据数据库集群40中存储元数据之后,用户还可以通过元数据管理平台41对存储在元数据数据库集群40中的元数据进行管理。

在一个实施方式中,如图6所示,用户在元数据管理平台41中对元数据进行管理的步骤,可以包括:

步骤601,接收用户发送的包含用户标识和元数据标识的元数据管理请求。

在一个示例中,元数据管理平台41中可以显示一个或多个用于触发对元数据管理的按钮,用户点击该按钮时,视为发送元数据管理请求。举例来说,在元数据管理平台中显示有“删除”按钮,用户选择任一元数据之后,若点击该“删除”按钮,则视为用户发送删除其选中的元数据的请求。

步骤602,元数据管理平台41根据元数据管理请求中包括的用户标识,判断是否已在元数据数据库集群40中为用户分配元数据的存储空间。

在一个实施方式中,元数据管理平台41可以通过用户管理服务器42查询是否已在元数据数据库集群40中为用户分配元数据的存储空间。具体来说,若根据该用户的用户标识,确定用户管理服务器42中记录有该用户在元数据数据库集群40中对应的存储空间,则确定已在元数据数据库集群40中为用户分配元数据的存储空间,否则,若根据该用户的用户标识,确定用户管理服务器42中未记录该用户在元数据数据库集群40中对应的存储空间,则确定未在元数据数据库集群40中为该用户分配元数据的存储空间。

步骤603,元数据管理平台41确定已在元数据数据库集群40为用户分配元数据的存储空间时,请求metastore服务43访问该用户在元数据数据库集群40中的存储空间。

步骤604,metastore服务43查看其自身缓存中是否缓存有该用户访问元数据数据库集群40的登录信息。

在一个示例中,metastore服务43为了加快访问用户在元数据数据库集群40中存储空间的速度,提高系统的响应速度,其可以缓存部分用户访问元数据数据库集群40的登录信息。当然,若某些用户访问元数据数据库集群40的登录信息长时间未使用,则也可以在缓存中删除这部分用户访问元数据数据库集群40的登录信息。

步骤605,metastore服务43确定其自身缓存中缓存有该用户访问元数据数据库集群40的登录信息时,基于该用户访问元数据数据库集群40的登录信息,访问该用户在元数据数据库集群40中的存储空间。

步骤606,管理元数据管理请求中包括的元数据标识对应的元数据。

当然,在步骤604与步骤606之间,若metastore服务43查看其自身缓存中未缓存该用户访问元数据数据库集群40的登录信息,则用户在元数据管理平台41中对元数据进行管理的步骤,还包括:

步骤607,metastore服务43确定其自身缓存中未缓存该用户访问元数据数据库集群40的登录信息时,metastore服务43根据该用户的用户标识,从用户管理服务器42中获取该用户访问元数据数据库集群40的登录信息。

步骤608,metastore服务43缓存该用户访问元数据数据库集群40的登录信息,并基于访问元数据数据库集群40的登录信息,访问该用户在元数据数据库集群40中的存储空间。

另外,在上述步骤602中,元数据管理平台41根据元数据管理请求中包括的用户标识,判断是否已在元数据数据库集群40中为用户分配元数据的存储空间,若判定已在元数据数据库集群40中为用户分配元数据的存储空间,则执行步骤603-步骤606的步骤;若判定未在元数据数据库集群40中为用户分配元数据的存储空间,则用户在元数据管理平台41中对元数据进行管理的步骤,还包括:

步骤609,若根据元数据管理请求中的用户标识,确定未在元数据数据库集群40中为该用户分配元数据的存储空间,则向该用户发送创建用户集群的提示信息。用户在创建用户集群过程中,元数据数据库集群40可以为其分配元数据的存储空间。

在一个实施方式中,在步骤609中向该用户发送创建用户集群的提示信息之后,还可以依据本申请实施例图5中示出的用户集群的创建步骤引导用户创建一个或多个用户集群。

下面结合具体的系统处理流程对上述元数据管理方法和用户集群创建方法的执行过程进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。

从整体流程而言,如图7所示,元数据管理方法700,可以包括以下步骤:

步骤s701,接收用户发送的包含用户标识和元数据标识的元数据管理请求。

步骤s702,基于用户标识,确定元数据数据库集群中与用户对应的元数据库。

步骤s703,管理元数据库中元数据标识对应的元数据,其中,与用户对应的元数据库为用户在元数据数据库集群中的存储空间。

在实现的时候,上述实施例中的元数据管理方法可以通过元数据管理装置来实现。如图8所示,元数据管理装置800,可以包括:

接收模块801,用于接收用户发送的包含用户标识和元数据标识的元数据管理请求;

处理模块802,用于基于用户标识,确定元数据数据库集群中与用户对应的元数据库,其中,与用户对应的元数据库为用户在元数据数据库集群中的存储空间;

管理模块803,用于管理元数据库中元数据标识对应的元数据。

在一个实施方式中,处理模块802具体用于:基于用户标识确定已在元数据数据库集群中为用户分配存储空间时,获取用户访问元数据数据库集群的登录信息;根据用户访问元数据数据库集群的登录信息,访问元数据数据库集群,以在元数据数据库集群中确定与用户对应的元数据库。

在一个实施方式中,处理模块802具体用于:若基于用户标识确定元数据管理平台中缓存有用户的登录信息,则从元数据管理平台中获取用户的登录信息。

在一个实施方式中,处理模块802具体用于:若基于用户标识确定元数据管理平台中未缓存有用户的登录信息,则根据用户的用户标识,从用户管理服务器中获取用户的登录信息。

在一个实施方式中,元数据的管理装置800,还包括:提示模块804,用于在基于用户标识,确定元数据数据库集群中未有与用户对应的元数据库时,向用户发送创建用户集群的提示信息。

从整体流程而言,如图9所示,用户集群创建方法900,可以包括以下步骤:

步骤s901,接收用户发送的包含用户标识的用户集群创建请求。

步骤s902,基于用户标识,获取用户访问元数据数据库集群的登录信息,并确定元数据数据库集群中与用户对应的元数据库,其中,与用户对应的元数据库为用户在元数据数据库集群中的存储空间。

步骤s903,创建用户集群,并基于获取到的用户访问元数据数据库集群的登录信息和确定的元数据数据库集群中与用户对应的元数据库,部署用户集群的元数据存储服务。

在实现的时候,上述实施例中的用户集群创建方法可以通过用户集群创建装置来实现。如图10所示,元数据管理装置1000,可以包括:

接收模块1001,用于接收用户发送的包含用户标识的用户集群创建请求。

处理模块1002,用于基于用户标识,获取用户访问元数据数据库集群的登录信息,并确定元数据数据库集群中与用户对应的元数据库,其中,与用户对应的元数据库为用户在元数据数据库集群中的存储空间。

创建模块1003,用于创建用户集群,并基于获取到的用户访问元数据数据库集群的登录信息和确定的元数据数据库集群中与用户对应的元数据库,部署用户集群的元数据存储服务。

在一个实施方式中,处理模块1002具体用于:根据用户标识确定已在元数据数据库集群中为用户分配元数据的存储空间时,基于用户标识,确定元数据数据库集群中与用户对应的元数据库,并从用户管理服务器中获取用户的登录信息。

在一个实施方式中,处理模块1002具体用于:根据用户标识确定未在元数据数据库集群中为用户分配元数据的存储空间时,在元数据数据库集群中为用户分配存储空间,将分配的存储空间作为元数据数据库集群中与用户对应的元数据库,并为用户生成用于访问元数据数据库集群的登录信息。

图11示出了能够实现根据本申请实施例的元数据管理方法和装置的计算设备的示例性硬件架构的结构图。如图11所示,计算设备1100包括输入设备1101、输入接口1102、中央处理器1103、存储器1104、输出接口1105、以及输出设备1106。其中,输入接口1102、中央处理器1103、存储器1104、以及输出接口1105通过总线1110相互连接,输入设备1101和输出设备1106分别通过输入接口1102和输出接口1105与总线1110连接,进而与计算设备1100的其他组件连接。

具体地,输入设备1101接收来自外部的输入信息,并通过输入接口1102将输入信息传送到中央处理器1103;中央处理器1103基于存储器1104中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器1104中,然后通过输出接口1105将输出信息传送到输出设备1106;输出设备1106将输出信息输出到计算设备1100的外部供用户使用。

也就是说,图11所示的计算设备也可以被实现为元数据管理设备,该元数据管理设备可以包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现结合图4、图6、图7及图8描述的元数据管理方法和装置。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品或计算机可读存储介质的形式实现。计算机程序产品或计算机可读存储介质包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘solidstatedisk(ssd))等。

另外,结合上述实施例中的元数据管理方法,本申请实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种元数据管理方法。

图12示出了能够实现根据本申请实施例的用户集群创建方法和装置的计算设备的示例性硬件架构的结构图。如图12所示,计算设备1200包括输入设备1201、输入接口1202、中央处理器1203、存储器1204、输出接口1205、以及输出设备1206。其中,输入接口1202、中央处理器1203、存储器1204、以及输出接口1205通过总线1210相互连接,输入设备1201和输出设备1206分别通过输入接口1202和输出接口1205与总线1210连接,进而与计算设备1200的其他组件连接。

具体地,输入设备1201接收来自外部的输入信息,并通过输入接口1202将输入信息传送到中央处理器1203;中央处理器1203基于存储器1204中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器1204中,然后通过输出接口1205将输出信息传送到输出设备1206;输出设备1206将输出信息输出到计算设备1200的外部供用户使用。

也就是说,图12所示的计算设备也可以被实现为用户集群创建设备,该用户集群创建设备可以包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现结合图4、图5、图9及图10描述的用户集群创建方法和装置。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品或计算机可读存储介质的形式实现。计算机程序产品或计算机可读存储介质包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘solidstatedisk(ssd))等。

另外,结合上述实施例中的用户集群创建方法,本申请实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种用户集群创建方法。

需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

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