海量异构数据的并行传输方法、装置、设备及存储介质

文档序号:1819839 发布日期:2021-11-09 浏览:3次 >En<

阅读说明:本技术 海量异构数据的并行传输方法、装置、设备及存储介质 (Parallel transmission method, device and equipment for mass heterogeneous data and storage medium ) 是由 刘芳 李佳记 杨敬巍 孙川 于 2020-05-07 设计创作,主要内容包括:本发明实施例提供了一种海量异构数据的并行传输方法、装置、设备及存储介质,该方法包括:激活分布式集群与并行处理数据库集群的网络认证协议;根据网络认证协议建立分布式集群与并行处理数据库集群的数据认证关系;根据数据认证关系获取分布式集群的访问权限;根据访问权限将HDFS中的第一数据并行传输到并行处理数据库集群。本发明能够将HDFS中的数据直接导入并行处理数据库集群,无需进行二次数据格式转换,提升了海量异构数据的传输效率。(The embodiment of the invention provides a parallel transmission method, a device, equipment and a storage medium for massive heterogeneous data, wherein the method comprises the following steps: activating a network authentication protocol of the distributed cluster and the parallel processing database cluster; establishing a data authentication relation between the distributed cluster and the parallel processing database cluster according to a network authentication protocol; acquiring the access authority of the distributed cluster according to the data authentication relationship; and transmitting the first data in the HDFS to the parallel processing database cluster in parallel according to the access authority. The method and the device can directly import the data in the HDFS into the parallel processing database cluster without secondary data format conversion, and improve the transmission efficiency of massive heterogeneous data.)

海量异构数据的并行传输方法、装置、设备及存储介质

技术领域

本发明涉及大数据技术领域,尤其涉及一种海量异构数据的并行传输方法、装置、设备及存储介质。

背景技术

大数据(Big data)通常用来形容一个企业创造的海量非结构化数据、半结构化数据和结构化数据,近年来,随着互联网的快速发展,大数据中非结构化数据的数据量迅速增长,据IDC的调查报告显示:企业中80%的数据都是非结构化数据,因此,非结构化数据已逐渐成为了大数据中的主要组成部分。

传统的大数据平台在进行数据汇总时,非结构化数据、半结构化数据等非关系型数据主要由非关系型大数据集群中的分布式文件系统(Hadoop Distributed FileSystem)进行存储,结构化数据等关系型数据主要由关系型大规模并行处理(MassivelyParallel Processing,MPP)数据库集群进行存储,即数据异构存储。由于两种平台存储数据类型分别为非关系型和关系型,因此当业务数据在两类平台间传输时,需先将分布式文件系统中的非关系型数据导出生成文本文件,再通过文件传输协议(File TransferProtocol,FTP)将文本文件送至接口机,最后将文本文件格式化导入至MPP数据库,采用上述数据传输方式流程比较复杂,严重影响了异构数据的传输效率。

发明内容

本发明实施例提供了一种海量异构数据的并行传输方法、装置、设备及存储介质,能够将HDFS中的数据直接导入并行处理数据库集群,无需进行二次数据格式转换,简化了数据的传输流程,提升了海量异构数据的传输效率。

第一方面,提供了一种海量异构数据的并行传输方法,该方法包括:激活分布式集群与并行处理数据库集群的网络认证协议,并行处理数据库集群包括分布式集群的客户端,分布式集群包括多个第一节点,第一节点上包括分布式文件系统HDFS,HDFS用于存储第一数据,并行处理数据库集群用于存储第二数据,第一数据与第二数据为异构关系;根据网络认证协议建立分布式集群与并行处理数据库集群的数据认证关系;根据数据认证关系获取分布式集群的访问权限;根据访问权限将HDFS中的第一数据并行传输到并行处理数据库集群。

在第一方面的一些可实现方式中,多个第一节点中包括管理节点,在激活分布式集群与并行处理数据库集群的网络认证协议之前,该方法还包括:激活HDFS的超文本传输协议HTTP和安全超文本传输协议HTTPS的兼容模式;激活管理节点的HTTP_ONLY协议;激活分布式集群的远程过程调用RPC服务,RPC服务用于支持数据认证关系的建立。

在第一方面的一些可实现方式中,数据认证关系包括票据认证关系;票据认证关系包括服务票据、主机票据和用户票据。

在第一方面的一些可实现方式中,并行处理数据库集群包括多个第二节点,该方法还包括:根据服务票据、主机票据和用户票据生成密钥文件;将密钥文件分别发送给多个第二节点。

在第一方面的一些可实现方式中,配置密钥文件在每个第二节点上的权限。

在第一方面的一些可实现方式中,并行处理数据库集群与分布式集群的参数配置相同。

在第一方面的一些可实现方式中,分布式集群包括海杜普Hadoop集群;并行处理数据库集群包括MPP数据库集群。

第二方面,提供了一种线程数量调整的装置,该装置包括:激活模块,用于激活分布式集群与并行处理数据库集群的网络认证协议,并行处理数据库集群包括分布式集群的客户端,分布式集群包括多个第一节点,第一节点上包括分布式文件系统HDFS,HDFS用于存储第一数据,并行处理数据库集群用于存储第二数据,第一数据与第二数据为异构关系;认证模块,用于根据网络认证协议建立分布式集群与并行处理数据库集群的数据认证关系;认证模块,还用于根据数据认证关系获取分布式集群的访问权限;数据传输模块,用于根据访问权限将HDFS中的第一数据并行传输到并行处理数据库集群。

在第二方面的一些可实现方式中,多个第一节点中包括管理节点,在激活分布式集群与并行处理数据库集群的网络认证协议之前,激活模块还用于:激活HDFS的超文本传输协议HTTP和安全超文本传输协议HTTPS的兼容模式;激活管理节点的HTTP_ONLY协议;激活分布式集群的远程过程调用RPC服务,RPC服务用于支持数据认证关系的建立。

在第二方面的一些可实现方式中,数据认证关系包括票据认证关系;票据认证关系包括服务票据、主机票据和用户票据。

在第二方面的一些可实现方式中,并行处理数据库集群包括多个第二节点,还包括生成模块,用于:根据服务票据、主机票据和用户票据生成密钥文件;将密钥文件分别发送给多个第二节点。

在第二方面的一些可实现方式中,还包括配置模块,用于配置密钥文件在每个第二节点上的权限。

在第二方面的一些可实现方式中,并行处理数据库集群与分布式集群的参数配置相同。

在第二方面的一些可实现方式中,分布式集群包括海杜普Hadoop集群;并行处理数据库集群包括MPP数据库集群。

第三方面,提供了一种海量异构数据的并行传输设备,该设备包括:处理器,以及存储有计算机程序指令的存储器;处理器读取并执行计算机程序指令时实现第一方面或第一方面的一些可实现方式中的海量异构数据的并行传输方法。

第四方面,提供了一种计算机存储介质,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面或第一方面的一些可实现方式中的海量异构数据的并行传输方法。

本发明实施例的海量异构数据的并行传输方法、装置、设备及计算机存储介质,通过建立分布式集群与并行处理数据库集群的数据认证关系,实现分布式集群与并行处理数据库集群的直连对接,从而能够将HDFS中的数据直接导入并行处理数据库集群,无需进行二次数据格式转换,简化了数据的传输流程,提升了异构数据的传输效率。

附图说明

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

图1是本发明实施例提供的一种海量异构数据的并行传输方法的流程示意图;

图2是本发明实施例提供的一种Hadoop集群与MPP数据库集群的认证过程的流程示意图;

图3是本发明实施例提供的一种海量异构数据的并行传输装置的结构示意图;

图4是本发明实施例提供的一种海量异构数据的并行传输设备的结构示意图。

具体实施方式

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

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

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

传统的大数据平台在汇总数据时,非关系型数据由非关系型大数据集群中的分布式文件系统存储,关系型数据由关系型数据库集群存储。

由于两种平台存储的数据类型为关系型和非关系型,即数据异构存储,因此,当业务数据在两类平台间进行传输、转载、交换时,需要二次数据格式转换才能进入数据库,即需先将非关系型数据导出至文本文件,再将文本文件通过FTP网络传输协议送至接口机,最后将文本文件导入至MPP数据库生成关系型存储格式数据。

上述异构数据的传输方式需要先落地成文件,再进行二次数据格式转换才可执行数据入库,流程复杂,因此数据传输效率较低。

上述异构数据的传输方式仅能实现异构数据的单(节)点对单(节)点传输入库,并且从非关系型数据到关系型数据的解析过程时间较长,最后将解析后的文本文件,通过单点进入关系型数据库集群需要额外的时间,无法利用非关系型大数据集群的多点并行处理能力,传输方法不够灵活。

采用上述异构数据的传输方法时,仅能将数据采集、数据处理、数据转换格式全部完成后,另一端的关系型数据库集群才能够获取到数据,每次获取需要占用较长时间且需批量数据一次性传输,数据获取方式笨拙,无法满足实时性要求,处理实时变化的异构数据效率低。

为了解决传统异构数据的传输方式的传输效率低的问题,本发明实施例提供了一种海量异构数据的并行传输方法、装置、设备及计算机存储介质。下面结合附图对本发明实施例的技术方案进行描述。

图1是本发明实施例提供的一种海量异构数据的并行传输方法的流程示意图,如图1所示,该方法的执行主体可以是海量异构数据的并行传输设备,该海量异构数据的并行传输方法可以包括以下步骤:

S101,激活分布式集群与并行处理数据库集群的网络认证协议。

其中,分布式集群中包括多个第一节点,每个第一节点上包括分布式文件系统,HDFS用于存储第一数据,并行处理数据库集群用于存储第二数据,第一数据与第二数据为异构关系。

在一个实施例中,分布式集群可以包括海杜普Hadoop集群,Hadoop集群中的HDFS上存储的第一数据包括非结构化数据、半结构化数据等基础汇总的非关系型数据。

在一个实施例中,并行处理数据库集群可以包括MPP数据库集群,MPP数据库集群中存储的第二数据包括结构化数据等深度汇总的关系型数据。

在一个实施例中,在激活分布式集群与并行处理数据库集群的网络认证协议之前,需要事先将分布式集群的客户端部署至并行处理数据库集群,部署后的并行处理数据库集群包括分布式集群的客户端。

在一个实施例中,多个第一节点中包括管理节点(Namenode)和工作节点(Datanode),网络认证协议可以为Kerberos,在激活分布式集群与并行处理数据库集群的Kerberos之前,还需要对分布式集群与并行处理数据库集群进行相应的参数配置,具体包括以下几个步骤:

步骤1,激活分布式集群中HDFS的超文本传输协议HTTP和安全超文本传输协议HTTPS的兼容模式。

步骤2,激活管理节点的HTTP_ONLY协议。

步骤3,激活分布式集群的远程过程调用RPC服务,RPC服务用于支持数据认证关系的建立。

步骤4,激活Kerberos的前向配置。

在一个实施例中,并行处理数据库集群中包括多个第二节点,并行处理数据库集群与分布式集群的参数配置相同。

S102,根据网络认证协议建立分布式集群与并行处理数据库集群的数据认证关系。

在一个实施例中,数据认证关系包括票据认证关系,票据认证关系中包括服务票据、主机票据和用户票据。

在一个实施例中,并行处理数据库集群包括多个第二节点,当并行处理数据库集群为MPP数据库集群时,在每个第二节点上都要配置mpp服务票据、mpp主机票据和mpp用户票据;

其中,mpp服务票据的princ主体格式为:

mpp/[email protected]

mpp主机票据的princ主体格式为:

host/hostname.hadoop.com和host/[email protected]

mpp用户票据:如若该mpp用户票据已存在,可查看用户属性是否符合allow_renewable、requires_preauth、allow_forwardable要求,其中,allow_renewable可以对主体发出可更新的凭单,requires_preauth在发出凭单之前需要预先对软件进行认证,allow_forwardable可以对主体发出可提前的凭单。

在一个实施例中,根据网络认证协议建立分布式集群与并行处理数据库集群的数据认证关系,还可以包括:

步骤1,根据服务票据、主机票据和用户票据生成密钥文件。

将服务票据、主机票据和用户票据进行合并,生成一个密钥keytab文件。

步骤2,将密钥文件分别发送给多个第二节点。

需将keytab文件复制到并行处理数据库集群中的所有第二节点。

步骤3,配置密钥文件在每个第二节点上的权限。

配置密钥文件在每个第二节点上的文件名和文件路径的对应关系。

在一个实施例中,当分布式集群为Hadoop集群、并行处理数据库集群为MPP数据库集群时,将keytab分别部署至MPP数据库集群中的所有主机,并具备相应可用权限和属主,具体可以通过以下代码实现:

在一个实施例中,并行处理数据库集群的认证激活,具体可以通过以下代码实现:

S103,根据数据认证关系获取分布式集群的访问权限。

在一个实施例中,当数据认证关系为票据认证关系时,根据票据认证关系获取分布式集群的访问权限,包括:首先,根据票据认证关系中的票据去获取分布式集群的令牌;然后,使用分布式集群的令牌就能够对分布式集群中的HDFS进行访问,完成了分布式集群与并行处理数据库集群的安全认证鉴权。通常,令牌上包括时间戳(有效使用期限),当令牌过期后,并行处理数据库集群能够自动更新或替换过期令牌。

图2是本发明实施例提供的一种海杜普集群与大规模并行处理数据库集群的认证过程的流程示意图,如图2所示,由网络认证协议(Kerberos)执行第三方认证服务,客户端用户发送ID到服务器(密钥分发中心)以请求验证,当通过服务器的验证后,客户端用户会获取到票据。开放数据库互连(Open Database Connectivity,ODBC)是为解决异构数据库间的数据共享而产生的,通过向第三方认证服务发送ID,获取到票据,再将票据发送到大规模并行处理MPP数据库集群的MPP节点,MPP节点成功获取到票据后,向海杜普集群中的管理节点发送票据,管理节点将该票据发送给服务器请求验证,当验证通过时,管理节点向大规模并行处理数据库集群的节点发送海杜普令牌,大规模并行处理数据库集群的MPP节点接收到海杜普令牌后,根据海杜普令牌就能够成功访问海杜普集群。

S104,根据访问权限将HDFS中的第一数据并行传输到并行处理数据库集群。

在一个实施例中,根据原生HDFS传输协议将HDFS上的各类数据文件实时并行装载到并行处理数据库集群。使用原生HDFS传输协议能够充分利用并行处理数据库集群的在任何节点上加载数据(Load data on any node)的功能,利用所有第二节点的计算能力并行装载数据,进一步的提升了异构数据的传输与共享速度。

在一个实施例中,获取到分布式集群的访问权限之后,可以直接在并行处理数据库集群中访问分布式集群中的第一数据,从而实现分布式集群中的第一数据与并行处理数据库集群内部列式存储数据以标准SQL方式对外提供关联分析服务,通过外部表和相应的数据源适配器来支持与外部数据源实时关联分析。

表1是采用本发明的海量异构数据的并行传输方法与传统异构数据传输方式的对比效果表,如表1所示,同样对数据量为100.8GB的3亿条数据进行装载,采用传统异构数据传输方式,装载时间为5800s,装载速度为17.80MB/S;而采用本发明的海量异构数据的并行传输方法,装载时间为155.017s,装载速度为665.86MB/S;全流程平均装载效率显著提升10倍以上。

表1

表2是采用本发明的海量异构数据的并行传输方法与传统异构数据传输方式的对比效果表,如表2所示,采用传统异构数据传输方式来处理2000万条数据,全部装载到并行处理数据库集群中的时间平均在360s左右,每秒入库数据量约为5.556万条;而采用本发明的海量异构数据的并行传输方法,分布式集群中的2000万数据只需20秒即可装载到并行处理数据库集群中,每秒入库数据量达到100万条,为原先装载效率的18倍。

表2

在一个实施例中,海量异构数据的并行传输方法可以应用于目前经营分析系统的整体市场分析数据,例如流量风暴、产品销售日报、存量客户套餐升档等各应用程序的处理流程,采用海量异构数据的并行传输方法处理业务数据,能够有力支撑业务部门需求,快速响应市场变化,为公司的市场决策提供了及时准确的数据支撑。

本发明实施例的海量异构数据的并行传输方法,通过优化分布式集群与并行处理集群的参数配置,建立分布式集群与并行处理数据库集群的数据认证关系,构建两个异构平台间的互信关系,实现分布式集群和并行处理数据库集群的直连对接和异构数据的不落地传输,无需进行二次数据格式转换,提升了异构数据的传输与共享速度。

图3是本发明实施例提供的一种海量异构数据的并行传输装置的结构示意图,如图3所示,该海量异构数据的并行传输装置200可以包括:激活模块210、认证模块220、数据传输模块230。

激活模块210,用于激活分布式集群与并行处理数据库集群的网络认证协议,并行处理数据库集群包括分布式集群的客户端,分布式集群包括多个第一节点,第一节点上包括分布式文件系统HDFS,HDFS用于存储第一数据,并行处理数据库集群用于存储第二数据,第一数据与第二数据为异构关系;

认证模块220,用于根据网络认证协议建立分布式集群与并行处理数据库集群的数据认证关系;

认证模块220,还用于根据数据认证关系获取分布式集群的访问权限;

数据传输模块230,用于根据访问权限将HDFS中的第一数据并行传输到并行处理数据库集群。

在一些实施例中,多个第一节点中包括管理节点,在激活分布式集群与并行处理数据库集群的网络认证协议之前,激活模块210还用于:激活HDFS的超文本传输协议HTTP和安全超文本传输协议HTTPS的兼容模式;激活管理节点的HTTP_ONLY协议;激活分布式集群的远程过程调用RPC服务,RPC服务用于支持数据认证关系的建立。

在一些实施例中,数据认证关系包括票据认证关系;票据认证关系包括服务票据、主机票据和用户票据。

在一些实施例中,并行处理数据库集群包括多个第二节点,还包括生成模块240,用于:根据服务票据、主机票据和用户票据生成密钥文件;将密钥文件分别发送给多个第二节点。

在一些实施例中,还包括配置模块250,用于配置密钥文件在每个第二节点上的权限。

在一些实施例中,并行处理数据库集群与分布式集群的参数配置相同。

在一些实施例中,分布式集群包括海杜普Hadoop集群;并行处理数据库集群包括MPP数据库集群。

本发明实施例的海量异构数据的并行传输装置,通过优化分布式集群与并行处理集群的参数配置,建立分布式集群与并行处理数据库集群的数据认证关系,构建两个异构平台间的互信关系,实现分布式集群和并行处理数据库集群的直连对接和异构数据的不落地传输,无需进行二次数据格式转换,提升了异构数据的传输与共享速度。

图4是本发明实施例提供的一种海量异构数据的并行传输设备的硬件结构示意图。

如图4所示,本实施例中的海量异构数据的并行传输设备300包括输入设备301、输入接口302、中央处理器303、存储器304、输出接口305、以及输出设备306。其中,输入接口302、中央处理器303、存储器304、以及输出接口305通过总线310相互连接,输入设备301和输出设备306分别通过输入接口302和输出接口305与总线310连接,进而与海量异构数据的并行传输设备300的其他组件连接。

具体地,输入设备301接收来自外部的输入信息,并通过输入接口302将输入信息传送到中央处理器303;中央处理器303基于存储器304中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器304中,然后通过输出接口305将输出信息传送到输出设备306;输出设备306将输出信息输出到海量异构数据的并行传输设备300的外部供用户使用。

在一个实施例中,图4所示的海量异构数据的并行传输设备300包括:存储器304,用于存储程序;处理器303,用于运行存储器中存储的程序,以执行本发明实施例提供的图1或图2所示实施例的方法。

本发明实施例还提供一种计算机存储介质,该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本发明实施例提供的图1或图2所示实施例的方法。

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

以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、只读存储器(Read-Only Memory,ROM)、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(Radio Frequency,RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

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

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

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种物联网设备接入方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类