CN111680108B - 一种数据存储方法、装置及一种数据获取方法、装置 - Google Patents
一种数据存储方法、装置及一种数据获取方法、装置 Download PDFInfo
- Publication number
- CN111680108B CN111680108B CN201910180599.4A CN201910180599A CN111680108B CN 111680108 B CN111680108 B CN 111680108B CN 201910180599 A CN201910180599 A CN 201910180599A CN 111680108 B CN111680108 B CN 111680108B
- Authority
- CN
- China
- Prior art keywords
- data
- area
- data area
- service type
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 136
- 238000013500 data storage Methods 0.000 title claims abstract description 65
- 238000007726 management method Methods 0.000 claims description 60
- 238000004891 communication Methods 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012546 transfer Methods 0.000 claims description 6
- 238000013480 data collection Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 45
- 230000008569 process Effects 0.000 abstract description 17
- 238000006243 chemical reaction Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000012216 screening Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据存储方法、装置及一种数据获取方法、装置。该数据存储方法包括:针对每个数据源,获取该数据源生成的原始数据并存储到原始数据区中与该数据源对应的子数据区中;针对预设的每个业务类型,对各个子数据区中的原始数据进行汇集,生成该业务类型对应的业务数据,并以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至主题数据区;针对预设的每个业务类型,基于主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到应用数据区。与现有技术相比,应用本发明实施例提供的数据存储方法,可以解决现有技术中用户在同时处理多类型业务时处理效率低的问题。
Description
技术领域
本发明涉及大数据技术领域,特别是涉及一种数据存储方法、装置及一种数据获取方法、装置。
背景技术
当前,随着计算机技术的不断发展,用户需要处理的数据的数量在不断增大,为了能够更好地利用数据,用户可以创建数据仓库系统。所谓数据仓库系统是为企业所有级别的决策制定过程,提供的支持所有类型数据的结构化数据环境。创建数据仓库系统的目的是为了进行分析性报告和为用户提供决策支持。
其中,数据仓库系统以一种有组织的方式存储数据,所谓有组织的方式是指:数据仓库系统中的所有数据都以一种定义的方式进行存档和排序。由于每个数据仓库系统所包括的数据只对应于某个特定的业务类型,因此,在创建数据仓库系统时,首先根据该数据仓库系统所对应的业务类型对该数据仓库系统中所要包含和排除的数据进行决策。进而,根据上述决策结果,对获取到的原始数据进行数据处理,只有被数据处理且进行数据标识后的数据,才能被加载到数据仓库系统中。这样,每个数据仓库系统便只包含经过处理的结构化、且具有特定格式的数据。
但是,由于每个数据仓库系统所包括的数据的格式不同,因此,多个数据仓库系统之间的数据无法共享,这样使得用户需要经过大量且复杂的数据格式转换,才能同时使用分布在不同的数据仓库系统中的数据,最终导致用户在同时处理多类型业务时处理效率较低。
发明内容
本发明实施例的目的在于提供一种数据存储方法、装置及管理服务器和一种数据获取方法、装置及电子设备,以解决现有技术中用户在同时处理多类型业务时处理效率低的问题。具体技术方案如下:
第一方面,本发明实施例提供了一种数据存储方法,应用于分布式系统的管理服务器,所述分布式系统的存储区域包括原始数据区、主题数据区和应用数据区,所述方法包括:
针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中;
针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至所述主题数据区;
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区。
可选的,一种具体实现方式中,所述针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的原始数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区的步骤,包括:
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的原始数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到所述应用数据区。
可选的,一种具体实现方式中,所述针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中的步骤,包括:
针对每个实时数据源,实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该实时数据源对应的子数据区中;
针对每个非实时数据源,按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该非实时数据源对应的子数据区中。
可选的,一种具体实现方式中,所述将所获取到的原始数据存储到所述原始数据区中与该实时数据源对应的子数据区中的步骤,包括:
以数据管道的形式,将所获取到的原始数据写入分布式发布订阅消息系统Kafka,将Kafka中所写入的原始数据转存到开源数据库Hbase。
可选的,一种具体实现方式中,所述方法还包括:
为所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置访问权限。
第二方面,本发明实施例提供了一种基于上述第一方面提供的一种数据存储方法的数据获取方法,所述方法包括:
接收数据获取请求,其中,所述数据获取请求携带有待请求数据所对应的目标区域标识和所述待请求数据的目标数据标识;
在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域,作为目标数据区;
在所述目标数据区中查找具有所述目标数据标识的数据,作为目标数据;
将所述目标数据反馈给所述数据获取请求的发送方。
可选的,一种具体实现方式中,所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置有访问权限;
在所述将所述目标数据反馈给所述数据获取请求的发送方的步骤之前,所述方法还包括:
判断所述数据获取请求的发送方是否为具有访问所述目标数据的权限的用户;
所述将所述目标数据反馈给所述数据获取请求的发送方的步骤,包括:
如果判断结果为是,将所述目标数据反馈给所述数据获取请求的发送方。
第三方面,本发明实施例提供了一种数据存储装置,应用于分布式系统的管理服务器,所述分布式系统的存储区域包括原始数据区、主题数据区和应用数据区,所述装置包括:
第一存储模块,用于针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中;
数据汇集模块,用于针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
第二存储模块,用于针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至所述主题数据区;
第三存储模块,用于针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区。
可选的,一种具体实现方式中,所述第三存储模块具体用于:
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的原始数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到所述应用数据区。
可选的,一种具体实现方式中,所述第一存储模块包括:
第一存储子模块,用于针对每个实时数据源,实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该实时数据源对应的子数据区中;
第二存储子模块,用于针对每个非实时数据源,按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该非实时数据源对应的子数据区中。
可选的,一种具体实现方式中,所述第一存储子模块包括:
数据写入单元,用于以数据管道的形式,将所获取到的原始数据写入分布式发布订阅消息系统Kafka,
数据转存单元,用于将Kafka中所写入的原始数据转存到开源数据库Hbase。
可选的,一种具体实现方式中,所述装置还包括:
权限设置模块,用于为所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置访问权限。
第四方面,本发明实施例提供了一种基于上述第三方面提供的一种数据存储装置的数据获取装置,其特征在于,所述装置包括:
请求接收模块,用于接收数据获取请求,其中,所述数据获取请求携带有待请求数据所对应的目标区域标识和所述待请求数据的目标数据标识;
区域确定模块,用于在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域,作为目标数据区;
数据查找模块,用于在所述目标数据区中查找具有所述目标数据标识的数据,作为目标数据;
数据反馈模块,用于将所述目标数据反馈给所述数据获取请求的发送方。
可选的,一种具体实现方式中,所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置有访问权限;所述装置还包括:
权限判断模块,用于在所述将所述目标数据反馈给所述数据获取请求的发送方之前,判断所述数据获取请求的发送方是否为具有访问所述目标数据的权限的用户;如果判断结果为是,触发所述数据反馈模块。
第五方面,本发明实施例提供了一种管理服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面提供的一种数据存储方法中的任一所述的方法步骤。
第六方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第二方面提供的一种数据获取方法中的任一所述的方法步骤。
第七方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面提供的一种数据存储方法中的方法步骤。
第八方面,本发明实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面提供的一种数据获取方法中的任一所述的方法步骤。
以上可见,应用本发明实施例提供的一种数据存储方法,可以在分布式系统的存储区域内,存储各个数据源生成的原始数据、各个业务主题对应的业务数据,以及各个业务主题对应的应用数据。这样,当用户在同时处理多类型业务时,便可以根据业务处理的需要,直接在分布式系统的存储区域内获取各类数据,并进行数据处理。由于在同时处理多类型业务时,用户不需要对数据进行大量且复杂的数据格式转换,因此,可以提高用户在同时处理多类型业务时的处理效率。
此外,应用本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,可以根据数据获取请求中所携带的目标区域标识和目标数据标识,在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域中获取目标数据,以使得用户在同时处理多类型业务时,可以获取到能够直接使用的各类数据,不需要对数据进行大量且复杂的数据格式转换,提高用户在同时处理多类型业务时的处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据存储方法的流程示意图;
图2为本发明实施例提供的一种基于上述本发明实施例提供的数据存储方法的数据获取方法的流程示意图;
图3为本发明实施例提供的一种数据存储装置的结构示意图;
图4为本发明实施例提供的一种基于上述本发明实施例提供的数据存储装置的数据获取装置的结构示意图;
图5为本发明实施例提供的一种管理服务器的结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在当前的数据存储方法中,用户创建数据仓库系统来存储对应于某个特定的业务类型的数据。由于每个数据仓库系统所包括的数据的格式不同,因此,多个数据仓库系统之间的数据无法共享,这样使得用户需要经过大量且复杂的数据格式转换,才能同时使用分布在不同的数据仓库系统中的数据,最终导致用户在同时处理多类型业务时处理效率较低。为了解决当前的数据存储方法中存在的问题,本发明实施例提供了一种数据存储方法。
当前,随着计算机技术的不断发展,用户所能获取的和所需要处理的数据在不断增加,因此,传统的数据处理模式中的常规软件无法同时对这些数据量庞大的数据进行处理。其中,这些数据量庞大的数据便可以称为大数据。进而,为了能够高效、快速、准确地对大数据进行管理,需要构建新的处理模式。其中,该新处理模式便可以分布式处理系统。
为了便于理解本发明实施例提供的一种数据存储方法,在对该方法进行介绍之前,首先对本发明实施例涉及的相关概念进行介绍。
1、大数据:无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
2、分布式处理系统:将不同地点的,或具有不同功能的,或拥有不同数据的多台计算机通过通信网络连接起来,在控制系统的统一管理控制下,协调地完成大规模信息处理任务的计算机系统,简称为分布式系统。
本发明实施例提供的一种数据存储方法便是在大数据的基础上,基于分布式系统构建的。其中,在本发明实施例中,数据存储方法所基于的分布式系统可以为Hadoop分布式框架。当然,也可以为其他分布式系统,对此,本发明实例不做具体限定。
其中,Hadoop分布式框架是一个分布式系统基础架构。其最核心的设计是:HDFS(Hadoop Distributed File System,分布式文件系统)和MapReduce(应用于大规模数据集并行运算的编程模型),其中,HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。具有高可靠性、高扩展性、高效性、高容错性以及低成本等特点。
下面,首先对本发明实施例提供的一种数据存储方法进行介绍。
图1为本发明实施例提供的一种数据存储方法的流程示意图。其中,该方法应用于分布式系统的管理服务器,该分布式系统的存储区域包括原始数据区、主题数据区和应用数据区。
其中,上述原始数据区、主题数据区和应用数据区在分布式系统的存储区域内形成了一个存储空间,该存储空间可以存储管理服务器将从不同数据源得到的原始数据,以及对原始数据逐步细化得到的各个业务类型对应的业务数据和应用数据。这些数据的数据量可以很庞大。为了更形象地描述该存储空间,则可以将该存储空间称之为“数据湖”。
这样,本发明实施例提供的一种数据存储方法也可以理解为:一种基于大数据和分布式系统构建“数据湖”的方法。
需要说明的是,在本发明实施例中分布式系统是由多个电子设备构成的集群,在构成该分布式系统的多个电子设备中,包括该分布式系统的管理服务器,该管理服务器用于对该分布式系统的其他电子设备进行控制,已完成该分布式系统的相关任务。其中,该分布式系统的存储区域可以位于该管理服务器中,也就是说,该管理服务器中包括上述原始数据区、主题数据区和应用数据区。这样,该管理服务器在执行本发明实施例提供的数据存储方法时,将数据保存在本地;此外,该分布式系统的存储区域可以位于该分布式系统除管理服务器外的其他电子设备中,也就是说,该其他电子设备中包括上述原始数据区、主题数据区和应用数据区。由于构成分布式系统的多个电子设备建立通信连接,因此,该管理服务器在执行本发明实施例提供的数据存储方法时,可以将数据保存到该具有上述原始数据区、主题数据区和应用数据区的电子设备中。
如图1所示,本发明实施例所提供的一种数据存储方法可以包括如下步骤:
S101:针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该数据源对应的子数据区中;
可以理解的,企业可以在多地具有多个办公地点,因此,关于企业的相关业务数据也就存在多个数据源;此外,同一办公地点,针对不同的业务类型,也可能存在多个针对不同业务类型的数据源。而针对每个数据源,为了用户在后续数据获取过程中,可以方便、准确地获取到某个或某几个数据源生成的原始数据,可以在管理服务器的原始数据区内预先设置多个子数据区,其中,每个子数据区用来存储从一个数据源获取的原始数据。
这样,管理服务器可以针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该数据源对应的子数据区。
其中,各个数据源可以理解为原始数据的来源。
可选的,一种具体实现方式中,数据来源可以是生成原始数据的电子设备,则在该实现方式中,管理服务器可以直接从该数据源采集该数据源生成的原始数据。
可选的,另一种具体实现方式中,生成原始数据的电子设备可以将所生成的原始数据发送给与该电子设备通信连接的其他电子设备,以使得该其他电子设备可以将原始数据存储在自身的存储空间中;或者生成原始数据的电子设备可以将所生成的原始到自身的存储空间中。这样,在本实现方式中,管理服务器便可以从上述各个存储空间中获取原始数据。
需要说明的是,多个数据源中可以包括实时数据源,所谓实时数据源是指实时生成原始数据的数据源,例如,wi-fi(Wireless Fidelity,无线宽带)实时流量检测设备、网络卡口实时流量检测设备等;也可以包括非实时数据源,所谓非实时数据源是指按照预定周期定时生成原始数据,或者不定时生成原始数据的数据源,例如,ERP(EnterpriseResourcePlanning,企业资源管理)系统的存储空间、DB(DataBase,数据库管理)系统的存储空间、CMS(Content Management System,内容管理系统)的存储空间、多媒体设备等。
针对实时数据源和非实时数据源,分布式系统执行上述步骤S101的具体方式可以是不同的。
可选的,一种具体实现方式中,上述步骤S101可以包括如下步骤A1-A2:
步骤A1:针对每个实时数据源,实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该实时数据源对应的子数据区中;
针对每个实时数据源,管理服务器可以实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该实时数据源对应的子数据区中。
其中,管理服务器可以通过多种方式实时获取该实时数据源生成的原始数据,且通过多种方式将所获取到的原始数据存储到原始数据区中与该实时数据源对应的子数据区中,对此,本发明实施例不做具体限定。
可选的,一种具体实现方式中,管理服务器可以通过OGG(Oracle Golden Gate,实时数据同步工具)对实时数据源生成的原始数据进行实时采集。
具体的,管理服务器可以以数据管道的形式,将所获取到的原始数据写入分布式发布订阅消息系统Kafka,将Kafka中所写入的原始数据转存到开源数据库Hbase。
其中,管理服务器通过OGG,对实时数据源的地址和Kafka地址进行配置,然后启动OGG完成对实时数据源产生的原始数据的实时同步采集。由于Kafka存储数据是有时效性的,因此,管理服务器可以将实时同步采集时存储到Kafka中的数据转存到Hbase中,从而实现对所获取的原始数据的持久化存储。
步骤A2:针对每个非实时数据源,按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该非实时数据源对应的子数据区中。
针对每个非实时数据源,管理服务器可以按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该非实时数据源对应的子数据区中。
其中,非实时数据源又可以根据所生成的原始数据的类型,分为不同类型的非实时数据源。例如,非实时数据源可以分为多媒体数据源和除多媒体外的非实时数据源,而针对多媒体数据源和除多媒体外的非实时数据源,管理服务器获取该非实时数据源生成的原始数据的方式,以及在原始数据区中所对应的子数据区可以是不同的。
可选的,针对多媒体数据源,分布式系统管理服务器可以按照预定的第一周期,通过Sqoop(用来在分布式系统管理服务器和关系型数据库之间进行数据转移的工具)对多媒体数据源生成的原始数据进行定时采集。进而,将所采集到的原始数据批量写入原始数据区中所对应的多媒体数据区中。也就是说,多媒体数据源在原始数据区中所对应的子数据区为多媒体数据区。
可选的,针对除多媒体外的非实时数据源,管理服务器可以按照预定的第二周期,通过Flume(用于对非结构化数据进行批量采集的工具)对除多媒体外的非实时数据源生成的原始数据进行定时采集。进而,将所采集到的原始数据写入原始数据区中所对应的非结构化数据区中。也就是说,除多媒体外的非实时数据源在原始数据区中所对应的子数据区为非结构化数据区。
其中,由于除多媒体外的非实时数据源生产的原始数据为非结构化数据,因此,管理武器可以利用Flume以实现高效采集上述非结构化的原始数据。此外,Flume还可以根据所采集的非结构化数据的数量支持分布式系统的扩展。
S102:针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
在将所获取的原始数据存储到原始数据区中的各个子数据区中后,管理服务器便可以针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据。
需要说明的是,针对某个业务类型,可能存在多个数据源生成符合该业务类型的原始数据,由于每个数据源生成的原始数据存储在原始数据区的不同子数据区中,因此,管理服务器对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的原始数据。
其中,由于同一业务类型所对应的原始数据可能是由多个不同的数据源生成的,而不同的数据源生成的原始数据可能存在格式不统一、统计标准不统一等问题,因此,在对各个子数据区中符合该业务类型的原始数据进行汇集时,管理服务器可以同时对各个子数据区中符合该业务类型的原始数据进行数据计算、数据整合,以使得不同数据源生成的原始数据可以汇集到一起。此外,各个子数据区中符合该业务类型的原始数据中可能存在数据缺失、数据冗余、数据异常等情况,因此,在对该业务类型的原始数据进行汇集时,管理服务器还可以对这些原始数据进行数据填充、数据筛选、数据删除等处理。因此,业务类型对应的业务数据可以不是原始数据,而是对该业务类型对应的各数据源生成的原始数据进行一定程度的计算分析、筛选、整合等操作后得到的数据。
例如,对于具有多个位于不同地区的销售分部的企业而言,每个销售分部所对应的存储设备中会存储该销售分部对应的销售业务数据。也就是说,每个销售分部所对应的存储设备即为销售业务数据的原始数据的一个数据来源,因此,该企业的销售业务的原始数据具有多个数据来源。其中,每个销售分部所生成的销售数据存在管理服务器的原始数据区中的一个子数据区内。这样,针对该销售业务,分布式数据需要对原始数据区内,每个销售分部对应的子数据区中所存储的销售数据进行汇集,生成该销售业务对应的原始数据。
S103:针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至主题数据区;
针对预设的每个业务类型,在生成该业务类型对应的业务数据后,管理服务器便可以以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至主题数据区。
可选的,针对预设的每个业务类型,管理服务器可以生成包含:关于该业务类型的业务标识和该业务类型对应的业务数据的统计条目的宽表,并将该宽表存储至主题数据区。其中,该宽表如表1所示:
表1
业务标识 | 原始数据 |
A | abcdefg |
B | 1234567 |
…… | …… |
S104:针对预设的每个业务类型,基于主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到应用数据区。
针对预设的每个业务类型,在将该业务类型对应的业务数据存储至主题数据区后,管理服务器便可以基于主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,并将该业务类型对应的应用数据存储到应用数据区。
需要说明的是,业务类型对应的应用数据可以用于进行分析性报告和为用户提供决策支持,因此,业务类型对应的应用数据可以不是与业务数据完全相同的数据,而是对业务数据进行一定程度的计算分析、筛选、整合等操作后得到的数据。
可选的,一种具体实现方式中,上述步骤S104具体可以为:
针对预设的每个业务类型,基于主题数据区中该业务类型对应的业务数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到应用数据区。
可以理解的,对于预设的每个业务类型而言,其可能存在多个子类型。例如,当业务类型为销售业务时,销售业务可以包括多种子类型,例如,每个销售人员的销售业务、每个月份的销售业务,或者每种产品的销售业务等。
因此,针对预设的每个业务类型,在将该业务类型对应的业务数据存储至主题数据区,管理服务器便可以对这些业务数据中进行进一步的筛选、分类等操作,生成该业务类型所包括的各个子类型对应的应用数据,进而,将各个子类型对应的应用数据存储到应用数据区。
其外,可以理解的,在实际应用中可以存在一种情况,在该情况中,各个数据源生成的原始数据的格式与统计标准统一,且管理服务器在获取各个数据源生成的原始数据时,所获取的原始数据中不存在数据缺失、数据冗余以及数据异常等情况。
因此,在这种情况下,一种具体实现方式中,当管理服务器执行上述步骤S102,生成各个业务类型对应的业务数据时,针对每个业务类型,在获取到各个子数据区中符合该业务类型的原始数据后,管理服务器可以对所获取到的原始数据进行归纳整理,重新排列等操作,而不会改变原始数据的具体内容。
也就是说,在本具体实现方式中,管理服务器执行上述步骤S102,所生成的各个业务类型对应的业务数据是与所获取的各个子数据区中符合该业务类型的原始数据相同的数据。
即上述步骤S102具体可以包括如下步骤B1:
步骤B1:针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,得到该业务类型对应的原始数据。
这样,在本具体实现方式中,上述步骤S103便可以包括如下步骤B2:
步骤B2:针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的原始数据存储至主题数据区。
进一步的,在本具体实现方式中,上述步骤S104便可以包括如下步骤B3:
步骤B3:针对预设的每个业务类型,基于主题数据区中该业务类型对应的原始数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到应用数据区。
具体的,在上述步骤B3中,针对预设的每个业务类型,在将该业务类型对应的原始数据存储至主题数据区后,管理服务器便可以基于主题数据区中该业务类型对应的原始数据,生成该业务类型对应的应用数据,并将该业务类型对应的应用数据存储到应用数据区。
也就是说,在本具体实现方式中,每个业务类型对应的应用数据是基于各个数据源生成的原始数据生成的。
可选的,针对预设的每个业务类型,基于主题数据区中该业务类型对应的原始数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到应用数据区。
需要说明的是,在很多情况中,从数据安全和数据保密的角度出发,并不是所有用户均可以*查看上述原始数据区中的各个子数据区、主题数据区和应用数据区内所存储的全部数据内容。例如,某些用户可能仅可以查看应用数据区中的数据内容,又例如,某些用户仅可以查看应用数据区内某个业务类型对应的应用数据等。
因此,可选的,一种具体实现方式中,管理服务器在将预设的每个业务类型对应的应用数据存储到应用数据区后,可以为上述各个子数据区、主题数据区和应用数据区所存储的各个数据内容设置访问权限。
其中,管理服务器预先构建每个数据内容的访问权限,即构建储每个数据内容与每个用户的对应关系,并将该对应关系存储到自身的存储空间中。
需要说明的是,在本发明实施例中,上述访问权限可以达到行列粒度级别,即管理服务器可以为所存储的每一行数据和每一列数据设置访问权限,以使得某些用户仅可以访问上述各个子数据区、主题数据区和应用数据区所存储的某一行、某几行、某一列和/或某几列数据。
此外,管理服务器可以通过多种方式为为上述各个子数据区、主题数据区和应用数据区所存储的各个数据内容设置访问权限,对此,本发明实施例不作具体限定。
以上可见,应用本发明实施例提供的一种数据存储方法,可以在管理服务器的存储区域内,存储各个数据源生成的原始数据、各个业务主题对应的业务数据,以及各个业务主题对应的应用数据。这样,当用户在同时处理多类型业务时,便可以根据业务处理的需要,直接在管理服务器的存储区域内获取各类数据,并进行数据处理。由于在同时处理多类型业务时,用户不需要对数据进行大量且复杂的数据格式转换,因此,可以提高用户在同时处理多类型业务时的处理效率。
可以理解的,当分布式系统的存储空间内存储有上述原始数据、业务数据和应用数据后,即当上述“数据湖”构建完成后,用户便可以根据自身实际应用的需求从“数据湖”中获取数据,并通过对所获取的数据进行处理来实现决策制定、市场分析等工作。
例如,当上述“数据湖”是针对某企业构建的,则该企业的市场部、策划部、运营部等部门的工作人员便可以利用“数据湖”所存储的数据,进行数据分析和数据构建,从而基于分析结果和构建结果进行企业运营和决策制定。
基于此,基于上述本发明实施例提供的一种数据存储方法,本发明实施例还提供了一种基于上述数据存储方法的数据获取方法。为了描述方便,以下将本发明实施例提供的一种基于上述数据存储方法的数据获取方法简称为:本发明实施例提供的一种数据获取方法。
需要说明的是,本发明实施例可以应用于任一能够从上述数据存储方法中的各类数存储区中获取数据的电子设备,例如,笔记本电脑、台式电脑、平板电脑等,为了描述方便,以下简称电子设备。也就是说,该电子设备可以从上述原始数据区所包括的各个子数据区、主题数据区和应用数据区中获取待请求的数据。显然,该电子设备与分布式系统包含上述存储区域的电子设备通信连接。其中,该电子设备可以是与上述分布式系统中的电子设备不同的电子设备,也可以是上述分布式系统中的电子设备。这样,当电子设备是上述分布式系统中的电子设备时,那么无论是否接收到数据获取请求,该分布式系统始终在执行上述数据存储方法,而当分布式系统接收到数据获取请求时,该分布式系统可以并行执行数据存储方法的步骤和数据获取方法的步骤,这都是合理的。
图2为本发明实施例提供的一种数据获取方法的流程示意图。如图2所示,该方法包括:
S201:接收数据获取请求,
其中,数据获取请求携带有待请求数据所对应的目标区域标识和待请求数据的目标数据标识;
为了描述方便,在本发明实施例中,将希望获取待请求数据的一方称为发送方。这样,电子设备是基于发送方发送的数据获取请求来启动执行数据获取方法的。即电子设备接收发送方发送的、携带有待请求数据所对应的目标区域标识和待请求数据的目标数据标识。
其中,发送方可以通过多种方式发送数据获取请求,对此,本发明实施例不做具体限定。例如,数据获取请求可以是用户通过对电子设备的点击、输入等操作触发的,这样,发送方即为该用户;又例如,数据获取请求可以是与电子设备通信连接的其他电子设备发送的,这样,发送方即为该其他电子设备。
需要说明的是,在本发明实施例中,数据电子设备是从上述原始数据区所包括的各个子数据区、主题数据区和应用数据区中获取待请求的数据的。因此,数据获取请求中所携带的目标区域标识为上述原始数据区所包括的各个子数据区、主题数据区和应用数据区中至少一个区域的区域标识。该目标区域标识表征了发送方想要从上述哪个区域中获取待请求数据,该区域为即目标区域。
此外,由于上述各个区域中均可以存储大量的数据,因此,为了能够从目标区域所存储的大量数据中查找到发送方所需要的待请求数据,该数据获取请求中便可以携带有目标数据标识,以使得电子设备可以通过将目标数据标识与目标区域中所存储的数据所携带的标识进行匹配,查找到待请求数据。
S202:在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有目标区域标识的存储区域,作为目标数据区;
在接收到数据获取请求后,电子设备便可以在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有目标区域标识的存储区域,作为目标数据区。
其中,当目标区域为一个时,则目标区域标识包括一个区域标识,则电子设备可以将目标区域标识与原始数据区所包括的各个子数据区、主题数据区和应用数据区所携带的区域标识进行匹配,当某个区域所携带的区域标识与目标区域标识相同时,则该区域便被确定为目标区域。
当目标区域为多个时,则目标区域标识包括多个区域标识,则针对目标区域标识所包括的每个区域标识,电子设备可以将该区域标识与原始数据区所包括的各个子数据区、主题数据区和应用数据区所携带的区域标识进行匹配,当某一个区域所携带的区域标识与该区域标识相同时,则该区域便被确定为多个目标区域中的一个。
S203:在目标数据区中查找具有目标数据标识的数据,作为目标数据;
进一步的,在确定目标区域后,电子设备便可以在目标数据区中查找具有目标数据标识的数据,作为目标数据。其中,所确定的目标数据也即发送方待请求的数据。
可选的,当目标数据为一个时,则目标数据标识包括一个数据标识,则电子设备可以将目标数据标识与目标区域内所存储的数据所携带的数据标识进行匹配,当某个数据所携带的数据标识与目标数据标识相同时,则该数据便被确定为目标数据。
可选的,当目标数据为多个时,则目标数据标识包括多个数据标识,则针对目标数据标识所包括的每个数据标识,电子设备可以将该数据标识与目标区域内所存储的数据所携带的数据标识进行匹配,当某一个数据所携带的数据标识与该数据标识相同时,则该数据便被确定为多个目标数据中的一个。
S204:将目标数据反馈给数据获取请求的发送方。
在确定目标数据后,电子设备便可以将目标数据反馈给数据获取请求的发送方。
其中,当数据获取请求是用户通过对电子设备的点击、输入等操作触发的时,电子设备可以通过显示屏等设备向用户显示所确定的目标数据。
当数据获取请求是与电子设备通信连接的其他电子设备发送的时,电子设备可以将所确定的目标数据发送给该其他电子设备。
需要说明的是,在很多情况中,从数据安全和数据保密的角度出发,并不是所有发送方都可以获到上述原始数据区中的各个子数据区、主题数据区和应用数据区内所存储的全部数据。也就是说,上述原始数据区中的各个子数据区、主题数据区和应用数据区所存储的各个数据内容设置有访问权限。
基于此,可选的,一种具体实现方式中,在确定数据之后,将目标数据反馈给数据获取请求的发送方之前,电子设备可以判断数据获取请求的发送方是否为具有访问目标数据的权限的用户;
这样,在本实现方式中,当电子设备判断发送方具有访问目标数据的权限时,则便可以将目标数据反馈给数据获取请求的发送方。
其中,针对上述原始数据区中的各个子数据区、主题数据区和应用数据区所存储的各个数据内容,可以预先构建每个数据内容的访问权限,即构建储每个数据内容与可以访问该数据内容的发送方的对应关系。进一步的,该对应关系可以存储在电子设备中,也可以存储在上述分布式系统中。
这样,在确定目标数据后,电子设备便可以读取自身存储的上述对应关系,或者从分布式系统中读取上述对应关系,确定上述发送方是否可以访问该目标数据。进而,当电子设备确定出上述发送方可以访问目标数据后,便可以将目标数据反馈给发送方,当电子设备确定出上述发送方不可以访问目标数据后,便不能将目标数据反馈给发送方。从而,可以保证数据内容不会被没有访问权限的发送方所获取,保障各个数据内容的安全性。
以上可见,应用本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,可以根据数据获取请求中所携带的目标区域标识和目标数据标识,在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域中获取目标数据,以使得用户在同时处理多类型业务时,可以获取到能够直接使用的各类数据,不需要对数据进行大量且复杂的数据格式转换,提高用户在同时处理多类型业务时的处理效率。
相应于上述本发明实施例提供的一种数据存储方法,本发明实施例还提供了一种数据存储装置,该数据存储装置应用于分布式系统的管理服务器,分布式系统的存储区域包括原始数据区、主题数据区和应用数据区。
图3为本发明实施例提供的一种数据存储装置的结构示意图,如图3所示,该装置可以包括如下模块:
第一存储模块310,用于针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该数据源对应的子数据区中;
数据汇集模块320,用于针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
第二存储模块330,用于针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至主题数据区;
第三存储模块340,用于针对预设的每个业务类型,基于主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到应用数据区。
以上可见,应用本发明实施例提供的一种数据存储装置,可以在分布式系统的存储区域内,存储各个数据源生成的原始数据、各个业务主题对应的业务数据,以及各个业务主题对应的应用数据。这样,当用户在同时处理多类型业务时,便可以根据业务处理的需要,直接在分布式系统的存储区域内获取各类数据,并进行数据处理。由于在同时处理多类型业务时,用户不需要对数据进行大量且复杂的数据格式转换,因此,可以提高用户在同时处理多类型业务时的处理效率。
可选的,一种具体实现方式中,上述第三存储模块340具体用于:
针对预设的每个业务类型,基于主题数据区中该业务类型对应的原始数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到应用数据区。
可选的,一种具体实现方式中,上述第一存储模块310可以包括:
第一存储子模块,用于针对每个实时数据源,实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该实时数据源对应的子数据区中;
第二存储子模块,用于针对每个非实时数据源,按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到原始数据区中与该非实时数据源对应的子数据区中。
可选的,一种具体实现方式中,上述第一存储子模块可以包括:
数据写入单元,用于以数据管道的形式,将所获取到的原始数据写入分布式发布订阅消息系统Kafka,
数据转存单元,用于将Kafka中所写入的原始数据转存到开源数据库Hbase。
可选的,一种具体实现方式中,上述装置还可以包括:
权限设置模块,用于为各个子数据区、主题数据区和应用数据区所存储的各个数据内容设置访问权限。
相应于上述本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,本发明实施例还提供了一种基于上述本发明实施例提供的数据存储装置的数据获取装置,以下简称本发明实施例提供的一种数据获取装置。
图4为本发明实施例提供的一种数据获取装置的结构示意图。如图4所示,该装置可以包括如下模块:
请求接收模块410,用于接收数据获取请求,其中,数据获取请求携带有待请求数据所对应的目标区域标识和待请求数据的目标数据标识;
区域确定模块420,用于在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有目标区域标识的存储区域,作为目标数据区;
数据查找模块430,用于在目标数据区中查找具有目标数据标识的数据,作为目标数据;
数据反馈模块440,用于将目标数据反馈给数据获取请求的发送方。
以上可见,应用本发明实施例提供的一种基于本发明实施例提供的数据存储装置的数据获取装置,可以根据数据获取请求中所携带的目标区域标识和目标数据标识,在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域中获取目标数据,以使得用户在同时处理多类型业务时,可以获取到能够直接使用的各类数据,不需要对数据进行大量且复杂的数据格式转换,提高用户在同时处理多类型业务时的处理效率。
可选的,一种具体实现方式中,各个子数据区、主题数据区和应用数据区所存储的各个数据内容设置有访问权限;在本实现方式中,上述装置还可以包括:
权限判断模块,用于在将目标数据反馈给数据获取请求的发送方之前,判断数据获取请求的发送方是否为具有访问目标数据的权限的用户;如果判断结果为是,触发数据反馈模块440。
相应于上述本发明实施例提供的一种数据存储方法,本发明实施例提供了一种管理服务器,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述本发明实施例提供的一种数据存储方法。
具体的,上述数据存储方法,所述分布式系统的存储区域包括原始数据区、主题数据区和应用数据区,该方法包括:
针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中;
针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至所述主题数据区;
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区。
需要说明的是,上述处理器501执行存储器503上存放的程序而实现的数据存储方法的其他实现方式,与前述方法实施例部分提供的数据存储方法实施例相同,这里不再赘述。
相应于上述本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现上述本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法。
具体的,上述数据获取方法,包括:
接收数据获取请求,其中,所述数据获取请求携带有待请求数据所对应的目标区域标识和所述待请求数据的目标数据标识;
在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域,作为目标数据区;
在所述目标数据区中查找具有所述目标数据标识的数据,作为目标数据;
将所述目标数据反馈给所述数据获取请求的发送方。
需要说明的是,上述处理器601执行存储器603上存放的程序而实现的数据获取方法的其他实现方式,与前述方法实施例部分提供的数据获取方法实施例相同,这里不再赘述。
以上可见,应用本发明实施例提供的一种数据存储方法,可以在分布式系统的存储区域内,存储各个数据源生成的原始数据、各个业务主题对应的业务数据,以及各个业务主题对应的应用数据。这样,当用户在同时处理多类型业务时,便可以根据业务处理的需要,直接在分布式系统的存储区域内获取各类数据,并进行数据处理。由于在同时处理多类型业务时,用户不需要对数据进行大量且复杂的数据格式转换,因此,可以提高用户在同时处理多类型业务时的处理效率。
此外,应用本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,可以根据数据获取请求中所携带的目标区域标识和目标数据标识,在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域中获取目标数据,以使得用户在同时处理多类型业务时,可以获取到能够直接使用的各类数据,不需要对数据进行大量且复杂的数据格式转换,提高用户在同时处理多类型业务时的处理效率。
上述管理服务器和电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
相应于上述本发明实施例提供的一种数据存储方法,本发明实施例还提供了一种计算机可读存储介质,该计算机程序被处理器执行时实现上述本发明实施例提供的一种数据存储方法。
具体的,上述数据存储方法,所述分布式系统的存储区域包括原始数据区、主题数据区和应用数据区,该方法包括:
针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中;
针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至所述主题数据区;
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区。
需要说明的是,上述计算机程序被处理器执行时而实现的数据存储方法的其他实现方式,与前述方法实施例部分提供的数据存储方法实施例相同,这里不再赘述。
相应于上述本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,本发明实施例还提供了另一种计算机可读存储介质,该计算机程序被处理器执行时实现上述本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法。
具体的,上述数据获取方法,包括:
接收数据获取请求,其中,所述数据获取请求携带有待请求数据所对应的目标区域标识和所述待请求数据的目标数据标识;
在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域,作为目标数据区;
在所述目标数据区中查找具有所述目标数据标识的数据,作为目标数据;
将所述目标数据反馈给所述数据获取请求的发送方。
需要说明的是,上述计算机程序被处理器执行时而实现的数据获取方法的其他实现方式,与前述方法实施例部分提供的数据获取方法实施例相同,这里不再赘述。
以上可见,应用本发明实施例提供的一种数据存储方法,可以在分布式系统的存储区域内,存储各个数据源生成的原始数据、各个业务主题对应的业务数据,以及各个业务主题对应的应用数据。这样,当用户在同时处理多类型业务时,便可以根据业务处理的需要,直接在分布式系统的存储区域内获取各类数据,并进行数据处理。由于在同时处理多类型业务时,用户不需要对数据进行大量且复杂的数据格式转换,因此,可以提高用户在同时处理多类型业务时的处理效率。
此外,应用本发明实施例提供的一种基于本发明实施例提供的数据存储方法的数据获取方法,可以根据数据获取请求中所携带的目标区域标识和目标数据标识,在原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域中获取目标数据,以使得用户在同时处理多类型业务时,可以获取到能够直接使用的各类数据,不需要对数据进行大量且复杂的数据格式转换,提高用户在同时处理多类型业务时的处理效率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、管理服务器实施例、电子设备实施例、计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (14)
1.一种数据获取方法,其特征在于,所述方法包括:
接收数据获取请求,其中,所述数据获取请求携带有待请求数据所对应的目标区域标识和所述待请求数据的目标数据标识;
在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域,作为目标数据区;
在所述目标数据区中查找具有所述目标数据标识的数据,作为目标数据;
将所述目标数据反馈给所述数据获取请求的发送方;
其中,所述分布式系统的存储区域包括所述原始数据区、所述主题数据区和所述应用数据区,所述原始数据区、所述主题数据区和所述应用数据区是所述分布式系统的管理服务器按照如下存储方式进行存储的,所述存储方式包括:
针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中;
针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至所述主题数据区;
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区。
2.根据权利要求1所述的方法,其特征在于,所述针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区的步骤,包括:
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到所述应用数据区。
3.根据权利要求1或2所述的方法,其特征在于,所述针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中的步骤,包括:
针对每个实时数据源,实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该实时数据源对应的子数据区中;
针对每个非实时数据源,按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该非实时数据源对应的子数据区中。
4.根据权利要求3所述的方法,其特征在于,所述将所获取到的原始数据存储到所述原始数据区中与该实时数据源对应的子数据区中的步骤,包括:
以数据管道的形式,将所获取到的原始数据写入分布式发布订阅消息系统Kafka,将Kafka中所写入的原始数据转存到开源数据库Hbase。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
为所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置访问权限。
6.根据权利要求1所述的方法,其特征在于,所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置有访问权限;
在所述将所述目标数据反馈给所述数据获取请求的发送方的步骤之前,所述方法还包括:
判断所述数据获取请求的发送方是否为具有访问所述目标数据的权限的用户;
所述将所述目标数据反馈给所述数据获取请求的发送方的步骤,包括:
如果判断结果为是,将所述目标数据反馈给所述数据获取请求的发送方。
7.一种数据存储装置的数据获取装置,其特征在于,所述装置包括:
请求接收模块,用于接收数据获取请求,其中,所述数据获取请求携带有待请求数据所对应的目标区域标识和所述待请求数据的目标数据标识;
区域确定模块,用于在分布式系统中的原始数据区所包括的各个子数据区、主题数据区和应用数据区中确定具有所述目标区域标识的存储区域,作为目标数据区;
数据查找模块,用于在所述目标数据区中查找具有所述目标数据标识的数据,作为目标数据;
数据反馈模块,用于将所述目标数据反馈给所述数据获取请求的发送方;
其中,所述分布式系统的存储区域包括所述原始数据区、所述主题数据区和所述应用数据区,所述原始数据区、所述主题数据区和所述应用数据区是所述分布式系统的管理服务器按照如下存储装置进行存储的,所述存储装置包括:
第一存储模块,用于针对每个数据源,获取该数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该数据源对应的子数据区中;
数据汇集模块,用于针对预设的每个业务类型,对各个子数据区中符合该业务类型的原始数据进行汇集,生成该业务类型对应的业务数据;
第二存储模块,用于针对预设的每个业务类型,以该业务类型的业务标识作为关键字,将该业务类型对应的业务数据存储至所述主题数据区;
第三存储模块,用于针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型对应的应用数据,将该业务类型对应的应用数据存储到所述应用数据区。
8.根据权利要求7所述的装置,其特征在于,所述第三存储模块具体用于:
针对预设的每个业务类型,基于所述主题数据区中该业务类型对应的业务数据,生成该业务类型所包括的各个子类型对应的应用数据,将各个子类型对应的应用数据存储到所述应用数据区。
9.根据权利要求7或8所述的装置,其特征在于,所述第一存储模块包括:
第一存储子模块,用于针对每个实时数据源,实时获取该实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该实时数据源对应的子数据区中;
第二存储子模块,用于针对每个非实时数据源,按照预定周期获取该非实时数据源生成的原始数据,并将所获取到的原始数据存储到所述原始数据区中与该非实时数据源对应的子数据区中。
10.根据权利要求9所述的装置,其特征在于,所述第一存储子模块包括:
数据写入单元,用于以数据管道的形式,将所获取到的原始数据写入分布式发布订阅消息系统Kafka,
数据转存单元,用于将Kafka中所写入的原始数据转存到开源数据库Hbase。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
权限设置模块,用于为所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置访问权限。
12.根据权利要求7所述的装置,其特征在于,所述各个子数据区、所述主题数据区和所述应用数据区所存储的各个数据内容设置有访问权限;所述装置还包括:
权限判断模块,用于在所述将所述目标数据反馈给所述数据获取请求的发送方之前,判断所述数据获取请求的发送方是否为具有访问所述目标数据的权限的用户;如果判断结果为是,触发所述数据反馈模块。
13.一种管理服务器,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910180599.4A CN111680108B (zh) | 2019-03-11 | 2019-03-11 | 一种数据存储方法、装置及一种数据获取方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910180599.4A CN111680108B (zh) | 2019-03-11 | 2019-03-11 | 一种数据存储方法、装置及一种数据获取方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111680108A CN111680108A (zh) | 2020-09-18 |
CN111680108B true CN111680108B (zh) | 2023-11-03 |
Family
ID=72451180
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910180599.4A Active CN111680108B (zh) | 2019-03-11 | 2019-03-11 | 一种数据存储方法、装置及一种数据获取方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111680108B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307510A (zh) * | 2020-11-02 | 2021-02-02 | 国网江苏省电力有限公司信息通信分公司 | 数据中台数据资产权限管理方法和管理系统 |
CN112667447B (zh) * | 2020-12-24 | 2023-10-27 | 北京奇艺世纪科技有限公司 | 一种数据修复方法及装置 |
CN113806416B (zh) * | 2021-03-12 | 2023-11-03 | 京东科技控股股份有限公司 | 实时数据服务的实现方法、装置及电子设备 |
CN112966872A (zh) * | 2021-03-17 | 2021-06-15 | 京诚数字科技(江苏)有限公司 | 一种基于摄像头的关注度预测分析方法、装置及终端 |
CN113689028A (zh) * | 2021-07-19 | 2021-11-23 | 杉数科技(北京)有限公司 | 业务数据处理方法、装置、计算机可读介质及电子设备 |
CN114547482B (zh) * | 2022-03-03 | 2023-01-20 | 智慧足迹数据科技有限公司 | 业务特征生成方法、装置、电子设备及存储介质 |
CN118364010A (zh) * | 2024-04-26 | 2024-07-19 | 华谋咨询技术(深圳)有限公司 | 企业智慧管理大数据处理方法、设备及存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106547766A (zh) * | 2015-09-18 | 2017-03-29 | 华为技术有限公司 | 一种数据访问方法和装置 |
WO2017080139A1 (zh) * | 2015-11-11 | 2017-05-18 | 华为技术有限公司 | 分布式数据库中子表分裂的方法、子表节点和系统 |
CN106934014A (zh) * | 2017-03-10 | 2017-07-07 | 山东省科学院情报研究所 | 一种基于Hadoop的网络数据挖掘与分析平台及其方法 |
CN107515878A (zh) * | 2016-06-16 | 2017-12-26 | 苏宁云商集团股份有限公司 | 一种数据索引的管理方法及装置 |
CN108153803A (zh) * | 2017-11-17 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种数据获取方法、装置及电子设备 |
WO2018103315A1 (zh) * | 2016-12-09 | 2018-06-14 | 上海壹账通金融科技有限公司 | 监控数据的处理方法、装置、服务器及存储设备 |
CN108182233A (zh) * | 2017-12-27 | 2018-06-19 | 苏州麦迪斯顿医疗科技股份有限公司 | 一种分布式数据抽取方法、装置、计算机设备及存储介质 |
CN108427711A (zh) * | 2018-01-31 | 2018-08-21 | 北京三快在线科技有限公司 | 实时数据仓库、实时数据处理方法、电子设备及存储介质 |
CN108520073A (zh) * | 2018-04-13 | 2018-09-11 | 深圳壹账通智能科技有限公司 | 风控数据整合方法、装置、设备及计算机可读存储介质 |
WO2018201601A1 (zh) * | 2017-05-05 | 2018-11-08 | 平安科技(深圳)有限公司 | 基于数据源的业务定制装置、方法、系统及存储介质 |
US10133797B1 (en) * | 2013-08-16 | 2018-11-20 | Amazon Technologies, Inc. | Distributed heterogeneous system for data warehouse management |
WO2019005108A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | DATA MANAGEMENT TECHNOLOGIES IN VEHICLE BASED COMPUTING PLATFORMS |
CN109189764A (zh) * | 2018-09-20 | 2019-01-11 | 北京桃花岛信息技术有限公司 | 一种基于Hive的高校数据仓库分层设计方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6643635B2 (en) * | 2001-03-15 | 2003-11-04 | Sagemetrics Corporation | Methods for dynamically accessing, processing, and presenting data acquired from disparate data sources |
US11157517B2 (en) * | 2016-04-18 | 2021-10-26 | Amazon Technologies, Inc. | Versioned hierarchical data structures in a distributed data store |
US10795907B2 (en) * | 2016-06-07 | 2020-10-06 | Sap Se | Management of data sources in database system |
-
2019
- 2019-03-11 CN CN201910180599.4A patent/CN111680108B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10133797B1 (en) * | 2013-08-16 | 2018-11-20 | Amazon Technologies, Inc. | Distributed heterogeneous system for data warehouse management |
CN106547766A (zh) * | 2015-09-18 | 2017-03-29 | 华为技术有限公司 | 一种数据访问方法和装置 |
WO2017080139A1 (zh) * | 2015-11-11 | 2017-05-18 | 华为技术有限公司 | 分布式数据库中子表分裂的方法、子表节点和系统 |
CN107515878A (zh) * | 2016-06-16 | 2017-12-26 | 苏宁云商集团股份有限公司 | 一种数据索引的管理方法及装置 |
WO2018103315A1 (zh) * | 2016-12-09 | 2018-06-14 | 上海壹账通金融科技有限公司 | 监控数据的处理方法、装置、服务器及存储设备 |
CN106934014A (zh) * | 2017-03-10 | 2017-07-07 | 山东省科学院情报研究所 | 一种基于Hadoop的网络数据挖掘与分析平台及其方法 |
WO2018201601A1 (zh) * | 2017-05-05 | 2018-11-08 | 平安科技(深圳)有限公司 | 基于数据源的业务定制装置、方法、系统及存储介质 |
WO2019005108A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | DATA MANAGEMENT TECHNOLOGIES IN VEHICLE BASED COMPUTING PLATFORMS |
CN108153803A (zh) * | 2017-11-17 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种数据获取方法、装置及电子设备 |
CN108182233A (zh) * | 2017-12-27 | 2018-06-19 | 苏州麦迪斯顿医疗科技股份有限公司 | 一种分布式数据抽取方法、装置、计算机设备及存储介质 |
CN108427711A (zh) * | 2018-01-31 | 2018-08-21 | 北京三快在线科技有限公司 | 实时数据仓库、实时数据处理方法、电子设备及存储介质 |
CN108520073A (zh) * | 2018-04-13 | 2018-09-11 | 深圳壹账通智能科技有限公司 | 风控数据整合方法、装置、设备及计算机可读存储介质 |
CN109189764A (zh) * | 2018-09-20 | 2019-01-11 | 北京桃花岛信息技术有限公司 | 一种基于Hive的高校数据仓库分层设计方法 |
Non-Patent Citations (1)
Title |
---|
饶玮 ; 周爱华 ; 常涛 ; 谢若承 ; 蒋静 ; .基于分布式存储的多类型数据管理技术研究.电力信息与通信技术.2016,(第05期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111680108A (zh) | 2020-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111680108B (zh) | 一种数据存储方法、装置及一种数据获取方法、装置 | |
CN107798038B (zh) | 数据响应方法及数据响应设备 | |
US20140025683A1 (en) | Methods and apparatus for managing community-updateable data | |
WO2014063127A1 (en) | Method and system for creating tax configuration templates | |
US20180357155A1 (en) | Document Processing Events | |
CN101902505A (zh) | 一种分布式dns查询日志的实时统计装置及方法 | |
JP2019512764A (ja) | ユーザ地理的ロケーションのタイプを識別するための方法および装置 | |
CN110503408B (zh) | 一种基于自定义配置的业务流程管理系统 | |
WO2012102761A1 (en) | Method and system for providing detailed information in an interactive manner in a short message service (sms) environment | |
CN111694793A (zh) | 一种日志存储方法、装置及日志查询方法、装置 | |
CN113221535B (zh) | 情报处理方法、装置、计算机设备和存储介质 | |
CN106130960A (zh) | 盗号行为的判断系统、负载调度方法和装置 | |
CN108140022B (zh) | 数据查询方法和数据库系统 | |
CN112765514A (zh) | 一种监测网络舆情方法、装置及存储介质 | |
CN104468207A (zh) | 终端管理的方法、装置及系统 | |
WO2024160273A1 (zh) | 数据处理方法、装置、设备及存储介质 | |
US11106525B2 (en) | Systems and methods for classifying and predicting the cause of information technology incidents using machine learning | |
CN102724290B (zh) | 一种获取目标客户群的方法、设备及系统 | |
US20210209553A1 (en) | Reading and writing processing improvements as a single command | |
CN113761856A (zh) | 一种数据处理方法和装置 | |
CN111553749A (zh) | 一种活动推送策略配置方法及装置 | |
WO2020082911A1 (zh) | 一种信息发送方法及装置 | |
CN111061543A (zh) | 一种多租户工作流引擎服务方法、装置及服务器 | |
CN111143318A (zh) | 一种信息处理方法、装置、电子设备及存储介质 | |
CN115914379B (zh) | 一种数据交换装置及数据交换系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |