本申请适用于大数据技术领域,提供了一种数据存储的方法,用于解决现有技术中Kafka采集的数据无法及时进行数据分流和入库的问题,所述方法包括:从Kafka消息队列中获取待分流的目标数据;获取所述目标数据的目标属性标识;根据预设的属性标识和预设的存储空间的映射关系,确定所述目标属性标识对应的目标存储空间,所述目标存储空间为Hadoop分布式文件系统HDFS服务器上的存储空间;向所述HDFS服务器发送将所述目标数据写入所述目标存储空间的指示消息。
A method of data storage
【技术实现步骤摘要】
一种数据存储的方法
本申请属于大数据处理
,尤其涉及一种数据存储的方法和一种服务器。
技术介绍
随着云时代的来临,大数据也吸引了越来越多的关注。大数据需要特殊的技术,以有效地处理大量的数据。例如,在进行大数据的采集和入库时,常见地可以应用Kafka和Hadoop两种技术。其中,Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。Hadoop是一种分布式系统基础架构,其核心设计包括Hadoop分布式文件系统(Hadoopdistributedfilesystem,HDFS)和MapReduce。HDFS是一种分布式文件系统,MapReduce是一种编程模型,用于对大规模数据集的并行运算。需要说明的是,由于大数据中往往包括各类数据,因此在进行入库时,需要实现数据的分流入库,也即,将各类数据存放到为各个数据类别预设的存储空间中。具体地,利用Kafka和Hadoop进行大数据的采集和入库时,首先需要采用Kafka完成数据的采集。之后,将Kafka中采集的数据先写入HDFS中,最后再利用MapReduce计算引擎每隔一段预设时间将已写入HDFS的数据移动到与该数据的数据类别对应的存储空间中,完成数据入库。在上述的过程中,对Kafka采集的数据进行数据分流时,还需要先写入到HDFS中,写入过程需要花费一定时间,这样就使得Kafka采集的数据无法及时进行数据分流和入库。
技术实现思路
有鉴于此,本申请实施例提供了一种数据存储的方法,以解决现有技术中Kafka采集的数据无法及时进行数据分流和入库的问题。本申请实施例的第一方面提供了一种数据存储的方法,可以包括:从Kafka消息队列中获取待分流的目标数据;获取该目标数据的目标属性标识;根据预设的属性标识和预设的存储空间的映射关系,确定该目标属性标识对应的目标存储空间,该目标存储空间为Hadoop分布式文件系统HDFS服务器上的存储空间;向该HDFS服务器发送将该目标数据写入该目标存储空间的指示消息。在一些可能的实现方式中,该根据预设的属性标识和预设的存储空间的映射关系,确定该目标属性标识对应的目标存储空间,可以包括:根据该目标数据的该目标属性标识,利用flink引擎、storm引擎或sparkstreaming引擎从该映射关系中查询确定该目标属性标识对应的该目标存储空间。在一些可能的实现方式中,该目标属性标识可以包括该目标数据的创建者标识,用户标识或数据类别标识中的至少一种。本申请实施例的第二方面提供了一种数据存储的方法,可以包括:Hadoop分布式文件系统HDFS服务器获取目标服务器发送的将目标数据写入目标存储空间的指示消息,该目标数据由该目标服务器从Kafka消息队列中获取,该目标存储空间为该目标服务器在确定该目标数据的目标属性标识后,根据预设的属性标识和预设的存储空间的映射关系确定的与该目标属性标识对应的存储空间;该HDFS服务器将该目标数据写入该目标存储空间。在一些可能的实现方式中,该目标存储空间为该目标服务器在确定该目标数据的目标属性标识后,利用flink引擎、storm引擎或者sparkstreaming引擎从预设的属性标识和预设的存储空间的映射关系查询确定的与该目标属性标识对应的存储空间。在一些可能的实现方式中,该属性标识可以包括数据的创建者标识,用户标识或数据类别标识中的至少一种。本申请实施例的第三方面提供了一种数据存储系统,可以包括:Kafka服务器、目标服务器和Hadoop分布式文件系统HDFS服务器;该Kafka服务器,用于采集目标数据,并将该目标数据以Kafka队列消息的形式发送至该目标服务器;该目标服务器,用于获取该Kafka队列消息中的该目标数据;确定该目标数据的目标属性标识;根据预设的属性标识和预设的存储空间的映射关系,确定该目标属性标识对应的目标存储空间;向该HDFS服务器发送将该目标数据写入该目标存储空间的指示消息,该目标存储空间为该HDFS服务器上的存储空间;该HDFS服务器,用于将该目标数据写入该目标存储空间。本申请实施例的第四方面提供了一种目标服务器,可以包括:收发模块,用于从Kafka消息队列中获取待分流的目标数据;查询模块,用于获取该目标数据的目标属性标识;根据预设的属性标识和预设的存储空间的映射关系,确定该目标属性标识对应的目标存储空间,该目标存储空间为Hadoop分布式文件系统HDFS服务器上的存储空间;读写模块,用于向该HDFS服务器发送将该目标数据写入该目标存储空间的指示消息。在一些可能的实现方式中,该查询模块,具体用于根据该目标数据的该目标属性标识,利用flink引擎、storm引擎或sparkstreaming引擎从该映射关系中查询确定该目标属性标识对应的该目标存储空间。在一些可能的实现方式中,该目标属性标识可以包括该目标数据的创建者标识,用户标识或数据类别标识中的至少一种。本申请实施例的第五方面提供了一种HDFS服务器,可以包括:收发模块,用于获取目标服务器发送的将目标数据写入目标存储空间的指示消息,该目标数据由该目标服务器从Kafka消息队列中获取,该目标存储空间为该目标服务器在确定该目标数据的目标属性标识后,根据预设的属性标识和预设的存储空间的映射关系确定的与该目标属性标识对应的存储空间;读写模块,用于将该目标数据写入该目标存储空间。在一些可能的实现方式中,该目标存储空间为该目标服务器在确定该目标数据的目标属性标识后,利用flink引擎、storm引擎或者sparkstreaming引擎从预设的属性标识和预设的存储空间的映射关系查询确定的与该目标属性标识对应的存储空间。在一些可能的实现方式中,该属性标识可以包括数据的创建者标识,用户标识或数据类别标识中的至少一种。本申请实施例的第六方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面、第二方面以及第一方面和第二方面中任一项可能的实现方式中所描述的步骤。本申请实施例的第七方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面、第二方面以及第一方面和第二方面中任一项可能的实现方式中所描述的步骤。本申请实施例中,当Kafka服务器采集到数据后,目标服务器获取Kafka服务器所采集的目标数据,并根据预设的属性标识和预设的存储空间的映射关系,确定目标数据的目标属性标识对应的目标存储空间。之后,目标服务器向HDFS服务器下发指示消息,指示将目标数据写入该目标存储空间中,从而完成数据的分流入库。也即,本申请实施例所提供的方法中,目标服务器在获取到目标数据,并确定目标存储空间后,可以直接将目标数据写入目标存储空间,相比现有技术中减本文档来自技高网...
【技术保护点】
1.一种数据存储的方法,其特征在于,包括:/n从Kafka消息队列中获取待分流的目标数据;/n获取所述目标数据的目标属性标识;/n根据预设的属性标识和预设的存储空间的映射关系,确定所述目标属性标识对应的目标存储空间,所述目标存储空间为Hadoop分布式文件系统HDFS服务器上的存储空间;/n向所述HDFS服务器发送将所述目标数据写入所述目标存储空间的指示消息。/n
【技术特征摘要】
1.一种数据存储的方法,其特征在于,包括:
从Kafka消息队列中获取待分流的目标数据;
获取所述目标数据的目标属性标识;
根据预设的属性标识和预设的存储空间的映射关系,确定所述目标属性标识对应的目标存储空间,所述目标存储空间为Hadoop分布式文件系统HDFS服务器上的存储空间;
向所述HDFS服务器发送将所述目标数据写入所述目标存储空间的指示消息。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的属性标识和预设的存储空间的映射关系,确定所述目标属性标识对应的目标存储空间,包括:
根据所述目标数据的所述目标属性标识,利用flink引擎、storm引擎或sparkstreaming引擎从所述映射关系中查询确定所述目标属性标识对应的所述目标存储空间。
3.根据权利要求1或2所述的方法,其特征在于,所述目标属性标识包括所述目标数据的创建者标识,用户标识或数据类别标识中的至少一种。
4.一种数据存储的方法,其特征在于,包括:
Hadoop分布式文件系统HDFS服务器获取目标服务器发送的将目标数据写入目标存储空间的指示消息,所述目标数据由所述目标服务器从Kafka消息队列中获取,所述目标存储空间为所述目标服务器在确定所述目标数据的目标属性标识后,根据预设的属性标识和预设的存储空间的映射关系确定的与所述目标属性标识对应的存储空间;
所述HDFS服务器将所述目标数据写入所述目标存储空间。
5.根据权利要求4所述的方法,其特征在于,所述目标存储空间为所述目标服务器在确定所述目标数据的目标属性标识后,利用flink引擎、storm引擎或者sparkstreaming引擎从预设的属性标识和预设的存储空间的映射关系查询确定的与所述目标属性标识对应的存储空间。
<...
【专利技术属性】
技术研发人员:徐格,
申请(专利权)人:广东小天才科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。