CN109063017A - 一种云计算平台的数据持久化分布方法 - Google Patents
一种云计算平台的数据持久化分布方法 Download PDFInfo
- Publication number
- CN109063017A CN109063017A CN201810760881.5A CN201810760881A CN109063017A CN 109063017 A CN109063017 A CN 109063017A CN 201810760881 A CN201810760881 A CN 201810760881A CN 109063017 A CN109063017 A CN 109063017A
- Authority
- CN
- China
- Prior art keywords
- data
- distributed
- cloud computing
- computing platform
- stream
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000002688 persistence Effects 0.000 title claims abstract description 14
- 238000009826 distribution Methods 0.000 title claims abstract description 6
- 238000012545 processing Methods 0.000 claims abstract description 43
- 238000013500 data storage Methods 0.000 claims abstract description 4
- 230000008569 process Effects 0.000 claims description 17
- 238000003860 storage Methods 0.000 claims description 9
- 238000005192 partition Methods 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 3
- 239000004744 fabric Substances 0.000 claims 3
- 238000012423 maintenance Methods 0.000 abstract description 4
- 238000011161 development Methods 0.000 abstract description 3
- 230000006872 improvement Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 241000282813 Aepyceros melampus Species 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种云计算平台的数据持久化分布方法,包括如下步骤:步骤1,通过分布式信息队列,获取目标端数据存储要求;步骤2,所述分布式信息队列将信息传输至流处理模块和批处理模块进行处理;步骤3,将处理后的待分布数据发送至分布式文件系统;步骤4,利用SQL语义查询系统完成存储在所述分布式文件系统上的运算结果的查询。与传统的流式计算与全量计算共存的系统相比,本发明只需要实现一份流式计算代码,降低了开发维护成本;再者,本发明采用多个数据流的流失数据处理来实现多表数据处理,实现了对不同数据结构、不同数据源的数据的分析、处理、存储;另外,本发明可以实现高效的数据查询管理。
Description
技术领域
本发明涉及分布式数据库领域,尤其涉及一种云计算平台的数据持久化分布方法。
背景技术
在互联网的快速发展的今天,进一步提升互联网价值,充分利用其优势发展科技,从而出现了物联网。所谓物联网可以看做是对互联网在使用上的深入性、扩展性发挥。并且,创新的概念逐渐深入企业,从创新1.0升级为创新2.0,是信息时代、知识社会的创新形态。其推动了科技创新主体由“产学研”转向“政产学研用”,并进一步转向“政用产学研”。它的应用可以让人了解目前由于信息通讯技术(ITC)发展给社会带来的深刻变革而引发的科技创新模式的改变。从专业科技人员实验室研发出科技创新成果后用户被动使用到技术创新成果的最终用户直接或通过共同创新平台参与技术创新成果的研发和推广应用全过程。
而物联网技术飞速发展,对大数据处理技术提出了更严格的要求。物联网时代的大数据处理系统应对的挑战主要为以下几个方面:1.需要处理的数据量更大、生成频率更快;2.对数据处理、传输速率要求更高;物联网时代数据更多样化。为满足为满足低时延、高容错、易扩展等大数据处理系统关键特性,传统的大数据处理系统基于Lambda架构设计。Lambda结合了实时计算和全量计算两种架构,在结构可以分为三模块,即:1.实时处理模块(Real-Time Layer):主要负责流式数据的计算;2.批处理模块(Batch Layer):主要针对批处理数据完成周期性的全量计算;3.服务模块(Serving Layer):主要负责给上模块应用提供访问接口,进行存储、查询等任务。
但是Lambda架构的缺点是需要维护流处理以及批处理两套代码,所有的算法都实现两次,一次是为批处理系统,另一次是为实时系统,还要求查询得到的是两个系统结果的合并,导致开发以及维护的难度加大。并且,抽取出的数据通常未经处理,占用大量的网络带宽;在目标节点数小于源节点数的情况下,对数据整理的计算压力集中在相对较少的目标节点上,造成整个过程执行缓慢。
发明内容
本发明提供了一种云计算平台的数据持久化分布方法,以解决数据分布运算量集中、查询速度慢、物联网时代节点过、分布式数据的实时处理问题。
本发明解决其技术问题所采用的技术方案是:
一种云计算平台的数据持久化分布方法,包括如下步骤:
步骤1,通过分布式信息队列,获取目标端数据存储要求;
步骤2,所述分布式信息队列将数据传输至流处理模块和批处理模块进行处理;
步骤3,将处理后的待分布数据发送至分布式文件系统;
步骤4,利用SQL语义查询系统完成存储在所述分布式文件系统上的运算结果的查询。
作为本发明的进一步的改进,所述存储要求包括表的数据属性。
作为本发明的进一步的改进,所述分布式信息队列将数据传输至流处理模块和批处理模块进行处理过程具体包括:所述分布式信息队列中的数据利用哈希分区算法的计算结果,将信息发布到指定话题中分区里面,分布式队列集群接收到信息后,一方面将流式数据输出至流处理模块,另一方面根据保留数据配置时长,将消息持久化到磁盘中,输出至批处理模块进行全量计算。
作为本发明的进一步的改进,所述目标端将处理后的数据进行源节点处理,位于加载数据之后。
作为本发明的进一步的改进,所述SQL语义查询系统完成存储在分布式文件系统上的运算结果的查询具体包括:客户端向查询系统提交SQL查询命令,查询系统前端将SQL语句通过单节点计划生成、并行话和分段转化为执行计划,主要包括两个阶段,第一阶段对SQL语句进行解析、分析、优化,第二段生成分布式执行计划,在分发执行计划后,查询系统使用拉式获取数据的方式获取结构,把结果数据组成按执行树流式传递汇集,返回给客户端。
作为本发明的进一步的改进,所述分布式信息队列模块采用Kafka。
作为本发明的进一步的改进,所述流处理模块中采用Spark Streaming引擎。
与现有技术相比,本发明的有益效果是:
与传统的流式计算与全量计算共存的系统相比,本发明只需要实现一份流式计算代码,降低了开发维护成本;再者,本发明采用多个数据流的流失数据处理来实现多表数据处理,实现了对不同数据结构、不同数据源的数据的分析、处理、存储;另外,本发明对存储在分布式文件系统内的数据采用Impala数据库进行快速,实现高效的数据查询管理。
成本低、可维护性好:传统的Lambda架构需要在维护流处理代码之余,还需要维护一套功能相似的批处理代码。通过实例化流处理实例Spark Streaming取代原来批处理代码可以大大降低维护成本,然而Spark Streaming具有扩展性好、容错性好等优点,可以通过加大Input Stream并发量的方法对海量批处理数据加以处理。因此,本发明针对批处理系统进行优化,通过实例化全新的Spark Streaming实例来解决数据全量计算的问题,以取代原来的Lambda的批处理系统。
使用Kafka消息队列实现数据的存储,以及提供给多个订阅者使用,当需要进行重新计算时,启动流处理作业的第二个实例对之前获得的数据进行处理,运算结果存储到HDFS中。
本发明采用了全新Kappa架构,只需要维护实时流处理上一套Spark Streaming系统,且数据保存在Kafka中,避免批数据保存到HDFS等系统中,降低了成本和维护程度。
本发明通过在Worker节点上对每个输入DStream一个Receiver并运行,以接收一个数据流。本发明通过创建多个输入DStream被配置从数据源接收不同分区的多表数据,每一个Input Stream接收处理一个表结构数据。
查询效率、实时性高:本发明的服务模块采用Impala查询系统取代了Hive查询系统,传统的Hive查询将HDFS结构化的数据映射为一张数据表,将SQL语句并行化,转化为MapReduce任务进行,因为Hive查询系统将查询任务分解为MapReduce任务进行处理,而Impala采用分布式查询引擎,在HDFS、HBase中直接采用JOIN、SELECT等SQL语句查询数据,为应用提供了交互式实时的SQL查询,大大降低了查询时延。
具体实施方式
现对本发明进一步说明:
一种云计算平台的数据持久化分布方法,包括如下步骤:
步骤1,通过分布式信息队列,获取目标端数据存储要求;
步骤2,所述分布式信息队列将数据传输至流处理模块和批处理模块进行处理;
步骤3,将处理后的待分布数据发送至分布式文件系统;
步骤4,利用SQL语义查询系统完成存储在所述分布式文件系统上的运算结果的查询。
与传统的流式计算与全量计算共存的系统相比,本发明只需要实现一份流式计算代码,降低了开发维护成本;再者,本发明采用多个数据流的流失数据处理来实现多表数据处理,实现了对不同数据结构、不同数据源的数据的分析、处理、存储;另外,本发明对存储在分布式文件系统内的数据采用Impala数据库进行快速,实现高效的数据查询管理。
所述存储要求包括表的数据属性。
所述分布式信息队列将数据传输至流处理模块和批处理模块进行处理过程具体包括:所述分布式信息队列中的数据利用哈希分区算法的计算结果,将信息发布到指定话题中分区里面,分布式队列集群接收到信息后,一方面将流式数据输出至流处理模块,另一方面根据保留数据配置时长,将消息持久化到磁盘中,输出至批处理模块进行全量计算。
所述目标端将处理后的数据进行源节点处理,位于加载数据之后。
所述SQL语义查询系统完成存储在分布式文件系统上的运算结果的查询具体包括:客户端向查询系统提交SQL查询命令,查询系统前端将SQL语句通过单节点计划生成、并行话和分段转化为执行计划,主要包括两个阶段,第一阶段对SQL语句进行解析、分析、优化,第二段生成分布式执行计划,在分发执行计划后,查询系统使用拉式获取数据的方式获取结构,把结果数据组成按执行树流式传递汇集,返回给客户端。
所述分布式信息队列模块采用Kafka。
所述流处理模块中采用Spark Streaming引擎。
本发明的实时处理模块和批处理模块的流式数据处理引擎采用SparkStreaming,Spark是一个与Hadoop的MapReduce计算框架类似的,快速、通用的大规模数据处理引擎。与Hadoop的MapReduce相比,Spark具有基于内存计算、可伸缩等诸多优点,核心是弹性分布式数据集RDD。Spark Streaming是在Spark上构建的实时计算框架,具有高吞吐、容错、支持实时数据流等特点,核心是高级抽象连续数据流Dstream。Spark Streaming的核心思想是在一系列较小时间间隔内,将计算划分为批次确定、状态无关的批次任务,每批次的任务对应的数据集并行地利用算子进行Map、Reduce操作。
Spark Streaming通过直接连接方式与Kafka集群建立连接,Spark的Driver和Executor与Kafka的连接。在接收到实时数据流之后,Spark Streaming将按照批处理间隔batch size将流计算任务分解为多段数据,每一段数据都转换成一系列短小的批处理作业,每一段数据都被转化为Spark中的RDD(Resilient Distributed Dataset),对于非空的RDD,可以通过隐式变换的方式,调用toDF()函数将其转化为SQL单例对象,调用map和filter算子实现格式转换,最后将处理结果写入到HDFS中。
综上所述,本领域的普通技术人员阅读本发明文件后,根据本发明的技术方案和技术构思无需创造性脑力劳动而作出其他各种相应的变换方案,均属于本发明所保护的范围。
Claims (7)
1.一种云计算平台的数据持久化分布方法,其特征在于,包括如下步骤:
步骤1,通过分布式信息队列,获取目标端数据存储要求;
步骤2,所述分布式信息队列将数据传输至流处理模块和批处理模块进行处理;
步骤3,将处理后的待分布数据发送至分布式文件系统;
步骤4,利用SQL语义查询系统完成存储在所述分布式文件系统上的运算结果的查询。
2.根据权利要求1所述的一种云计算平台的数据持久化分布方法,其特征在于,所述存储要求包括表的数据属性。
3.根据权利要求1所述的一种云计算平台的数据持久化分布方法,其特征在于,所述分布式信息队列将数据传输至流处理模块和批处理模块进行处理过程具体包括:所述分布式信息队列中的数据利用哈希分区算法的计算结果,将信息发布到指定话题中分区里面,分布式队列集群接收到信息后,一方面将流式数据输出至流处理模块,另一方面根据保留数据配置时长,将消息持久化到磁盘中,输出至批处理模块进行全量计算。
4.根据权利要求1所述的一种云计算平台的数据持久化分布方法,其特征在于,所述目标端将处理后的数据进行源节点处理,位于加载数据之后。
5.根据权利要求1所述的一种云计算平台的数据持久化分布方法,其特征在于,所述SQL语义查询系统完成存储在分布式文件系统上的运算结果的查询具体包括:客户端向查询系统提交SQL查询命令,查询系统前端将SQL语句通过单节点计划生成、并行话和分段转化为执行计划,主要包括两个阶段,第一阶段对SQL语句进行解析、分析、优化,第二段生成分布式执行计划,在分发执行计划后,查询系统使用拉式获取数据的方式获取结构,把结果数据组成按执行树流式传递汇集,返回给客户端。
6.根据权利要求1所述的一种云计算平台的数据持久化分布方法,其特征在于,所述分布式信息队列模块采用Kafka。
7.根据权利要求1所述的一种云计算平台的数据持久化分布方法,其特征在于,所述流处理模块中采用Spark Streaming引擎。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810760881.5A CN109063017A (zh) | 2018-07-12 | 2018-07-12 | 一种云计算平台的数据持久化分布方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810760881.5A CN109063017A (zh) | 2018-07-12 | 2018-07-12 | 一种云计算平台的数据持久化分布方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109063017A true CN109063017A (zh) | 2018-12-21 |
Family
ID=64816092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810760881.5A Pending CN109063017A (zh) | 2018-07-12 | 2018-07-12 | 一种云计算平台的数据持久化分布方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109063017A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143314A (zh) * | 2019-12-26 | 2020-05-12 | 厦门服云信息科技有限公司 | 一种基于高速流式处理技术的日志解析方法及系统 |
CN111611221A (zh) * | 2019-02-26 | 2020-09-01 | 北京京东尚科信息技术有限公司 | 混合计算系统、数据处理方法及装置 |
CN112163030A (zh) * | 2020-11-03 | 2021-01-01 | 北京明略软件系统有限公司 | 多表批量操作方法、系统及计算机设备 |
CN112365355A (zh) * | 2020-12-10 | 2021-02-12 | 深圳迅策科技有限公司 | 实时计算基金估值和风险指标的方法、装置及可读介质 |
WO2023035355A1 (zh) * | 2021-09-08 | 2023-03-16 | 上海跬智信息技术有限公司 | 批流融合的信息处理方法和装置、存储介质 |
CN117707794A (zh) * | 2024-02-05 | 2024-03-15 | 之江实验室 | 一种面向异构联邦的多类别作业分发管理方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391719A (zh) * | 2017-07-31 | 2017-11-24 | 南京邮电大学 | 一种云环境中分布式流数据处理方法及系统 |
CN108038049A (zh) * | 2017-12-13 | 2018-05-15 | 西安电子科技大学 | 实时日志控制系统及控制方法、云计算系统及服务器 |
-
2018
- 2018-07-12 CN CN201810760881.5A patent/CN109063017A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391719A (zh) * | 2017-07-31 | 2017-11-24 | 南京邮电大学 | 一种云环境中分布式流数据处理方法及系统 |
CN108038049A (zh) * | 2017-12-13 | 2018-05-15 | 西安电子科技大学 | 实时日志控制系统及控制方法、云计算系统及服务器 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611221A (zh) * | 2019-02-26 | 2020-09-01 | 北京京东尚科信息技术有限公司 | 混合计算系统、数据处理方法及装置 |
CN111143314A (zh) * | 2019-12-26 | 2020-05-12 | 厦门服云信息科技有限公司 | 一种基于高速流式处理技术的日志解析方法及系统 |
CN112163030A (zh) * | 2020-11-03 | 2021-01-01 | 北京明略软件系统有限公司 | 多表批量操作方法、系统及计算机设备 |
CN112365355A (zh) * | 2020-12-10 | 2021-02-12 | 深圳迅策科技有限公司 | 实时计算基金估值和风险指标的方法、装置及可读介质 |
CN112365355B (zh) * | 2020-12-10 | 2023-12-26 | 深圳迅策科技有限公司 | 实时计算基金估值和风险指标的方法、装置及可读介质 |
WO2023035355A1 (zh) * | 2021-09-08 | 2023-03-16 | 上海跬智信息技术有限公司 | 批流融合的信息处理方法和装置、存储介质 |
US12105717B2 (en) | 2021-09-08 | 2024-10-01 | Shanghai Kyligence Information Technology Co., Ltd. | Method and device for processing information by batch-stream fusion, and storage medium |
CN117707794A (zh) * | 2024-02-05 | 2024-03-15 | 之江实验室 | 一种面向异构联邦的多类别作业分发管理方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109063017A (zh) | 一种云计算平台的数据持久化分布方法 | |
CN107391719A (zh) | 一种云环境中分布式流数据处理方法及系统 | |
CN105824957B (zh) | 分布式内存列式数据库的查询引擎系统及查询方法 | |
AU2014201441B2 (en) | Low latency query engine for apache hadoop | |
CN111400326B (zh) | 一种智慧城市数据管理系统及其方法 | |
CN103631870B (zh) | 一种用于大规模分布式数据处理的系统及其方法 | |
EP2831767B1 (en) | Method and system for processing data queries | |
US9171044B2 (en) | Method and system for parallelizing database requests | |
CN103064875B (zh) | 一种服务化空间数据分布式查询方法 | |
CN105045856B (zh) | 一种基于Hadoop的大数据遥感卫星数据处理系统 | |
CN108885641B (zh) | 高性能查询处理和数据分析 | |
CN112148455B (zh) | 一种任务处理方法、设备及介质 | |
US20070038658A1 (en) | Communication optimization for parallel execution of user-defined table functions | |
KR20150039118A (ko) | 하둡에서의 개선된 sql-형 질의를 위한 백그라운드 포맷 최적화 | |
CN110569252B (zh) | 一种数据处理系统及方法 | |
US20140379691A1 (en) | Database query processing with reduce function configuration | |
CN102255955A (zh) | 基于依赖关系的Web服务动态组合方法 | |
CN114756629A (zh) | 基于sql的多源异构数据交互分析引擎及方法 | |
CN117349368A (zh) | 基于Flink的跨库数据实时同步任务管理系统及方法 | |
CN107451211B (zh) | 一种基于RabbitMQ和MongoDB的下载系统 | |
CN114661752A (zh) | 分布式数据库的计划调度方法、装置和系统 | |
CN112182031B (zh) | 数据查询方法及装置、存储介质、电子装置 | |
JP2015106219A (ja) | 分散型データ仮想化システム、クエリ処理方法及びクエリ処理プログラム | |
CN108319604B (zh) | 一种hive中大小表关联的优化方法 | |
CN115408122B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181221 |
|
RJ01 | Rejection of invention patent application after publication |