CN105760511B - 一种基于storm的大数据自适应拓扑处理方法 - Google Patents
一种基于storm的大数据自适应拓扑处理方法 Download PDFInfo
- Publication number
- CN105760511B CN105760511B CN201610100571.1A CN201610100571A CN105760511B CN 105760511 B CN105760511 B CN 105760511B CN 201610100571 A CN201610100571 A CN 201610100571A CN 105760511 B CN105760511 B CN 105760511B
- Authority
- CN
- China
- Prior art keywords
- operator
- storm
- data
- user
- processing method
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于storm的大数据自适应拓扑处理方法,步骤包括:监听用户请求、请求信息解析、生成拓扑逻辑以及数据流查询。通过实时监听用户的定制服务请求来根据不同用户的不同需求选择运算算子,动态地定制服务,生成storm可识别运算的拓扑逻辑,从而达到数据处理服务的动态定制和实时处理,并采用算子执行树方便选择相应的算子,从而组成符合用户定制请求的最优算子执行拓扑,增强了数据流查询和挖掘的针对性,最大可能地保证数据的时效性。
Description
技术领域
本发明涉及一种大数据处理方法,尤其是一种基于storm的大数据自适应拓扑处理方法。
背景技术
在电信、互联网、物联网、金融等诸多领域,数据呈现快速增长、单位价值密度低、模式变化迅速、价值随处理时间流逝而减低的特征。也就是说,数据规模大、增长速度快,强调处理时间的快速,并需要从多变模式中能够动态的选择服务来对数据进行实时分析、实时挖掘。由于数据流具有不同于传统静态数据的特点(有序性、高速性、无边际性、快速变化),传统的数据处理方式不能够满足大数据流计算的应用场景,在这种大数据流的查询和挖掘处理中给了我们一个新的研究课题,给研究领域和工业领域带来了新的挑战。
发明内容
本发明要解决的技术问题是传统的数据处理方式不能够满足大数据流计算的应用场景。
为了解决上述技术问题,本发明提供了一种基于storm的大数据自适应拓扑处理方法,包括如下步骤:
步骤1,监听用户请求,实时监听用户的定制服务请求,并在监听到定制服务请求时获取用户的请求信息;
步骤2,请求信息解析,提取请求信息中的用户语句,并对用户语句进行词法和语法的解析;
步骤3,生成拓扑逻辑,根据词法和语法解析的解析结果在算子执行树上选择相应的算子,并将选择的算子组合生成storm可识别运算的拓扑逻辑;
步骤4,数据流查询,对接入的数据流进行汇总,按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理,以获取有价值的数据。
通过实时监听用户的定制服务请求来根据不同用户的不同需求选择运算算子,动态地定制服务,生成storm可识别运算的拓扑逻辑,从而达到数据处理服务的动态定制和实时处理;采用算子执行树能够方便选择相应的算子,从而组成符合用户定制请求的最优算子执行拓扑,增强了数据流查询和挖掘的针对性,最大可能地保证数据的时效性。
作为本发明的进一步限定方案,步骤1中,在监听到定制服务请求时开启新的线程来获取用户的请求信息。通过开启新的线程来获取用户的请求信息,有效提高了信息的获取和处理效率,适应于大数据流的实时处理。
作为本发明的进一步限定方案,步骤2中,在词法和语法解析后还需验证用户语句是否合法,若用户语句不合法,则返回步骤1,若用户语句合法,则进入步骤3。通过对用户语句的合法性验证,能够有效避免用户的误操作。
作为本发明的进一步限定方案,步骤2中,利用语法树对用户语句进行词法和语法的解析。采用语法树对用户语句进行词法和语法的解析能够有效提高词法和语法解析的效率和精确性。
作为本发明的进一步限定方案,步骤3中,词法和语法解析的解析结果包括待调用算子的名称及其优先级,算子执行树上设有按照预定义优先级排列的各个算子。通过将算子按照预定义优先级进行排列,能够方便使用频率较高的算子选择调用,提高数据流的查询和挖掘效率。
作为本发明的进一步限定方案,算子执行树上设有的算子包括选择算子、连接算子、投影算子、去重算子、过滤算子以及聚合算子。考虑到大型数据集具有数据体量大、数据类型多样、处理速度快、价值密度低的特点,通过选择其中的一种或多种算子的组合来对数据流进行分类和查询,对原始数据集提取有用的信息,不断把处理好的数据发送给下一步骤的数据流查询,从而获得有价值的数据。
作为本发明的进一步限定方案,步骤4中,在按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理时,在每一级算子处理完毕后对获得的处理结果进行存储。采用对处理结果进行存储,使系统在崩溃后重启仍能从内存中读取中间结果,减少数据丢失,增强了可靠性。
作为本发明的进一步限定方案,步骤4中,在按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理时,需要将上一级算子输出的数据格式发送给下一级算子。由于在数据流查询的过程中,数据的格式会随着算子的运算而改变,另一方面storm数据的传输是无类型传输,算子接收数据后不能识别接收的数据格式与类型,为了解决算子动态组合时数据之间的通信问题,我们需要将上一级算子输出的数据格式发送给下一级算子。
本发明的有益效果在于:(1)通过实时监听用户的定制服务请求来根据不同用户的不同需求选择运算算子,动态地定制服务,生成storm可识别运算的拓扑逻辑,从而达到数据处理服务的动态定制和实时处理;(2)采用算子执行树能够方便选择相应的算子,从而组成符合用户定制请求的最优算子执行拓扑,增强了数据流查询和挖掘的针对性,最大可能地保证数据的时效性。
附图说明
图1为本发明的方法流程图。
具体实施方式
本发明所采用的storm是个实时的、分布式以及具备高容错的计算系统。storm可以处理大批量的数据,并在保证高可靠性的前提下还可以让处理进行的更加实时;也就是说,所有的信息都会被处理。storm还具备容错和分布计算这些特性,这就让 storm可以扩展到不同的机器上进行大批量的数据处理。
storm计算系统平台主要分为三层,分别是用户交互层、逻辑处理层以及执行层。其中,用户交互层,主要负责和用户的交互的任务,包括用户的语句输入,系统文件的调用,结果的显示,通过对数据语句的解析得到语句列表传给下一层进行处理;逻辑处理层,负责处理用户层发送的语句列表,根据语句解析对应的类型来执行相应的操作,并调用执行层中的模块;执行层,主要负责执行逻辑处理层的调用和执行,在执行层中主要有持续查询模块、即席查询模块和创建流模块。
由于大型数据集具有数据体量大、数据类型多样、处理速度快、价值密度低的特征,因此在处理大型数据之前,必须对原始大型数据集进行数据挖掘,提取对有用的信息。而storm计算系统平台可以根据用户的需要,通过CQL语句调用聚类、分类等数据挖掘算法,将数据加以定量描述,通过聚类、分类算法对样本进行分类处理,然后把处理好的数据交给数据流查询模块进行处理。
在数据流查询模块中有两大组件,一个是即席查询,即缓存一段时间的数据,对这些数据进行查询操作;另外一个是持续查询,即对数据流不断的进行查询,并且将查询结果显示在控制台。此外,storm为大数据的实时计算提供了一些逻辑组件,主要有topology(计算拓扑)、stream(消息流)、spout(消息源)、bolt(消息处理者)、stream grouping(消息分发策略)、task(任务)、worker(工作进程);其中bolt可以做很多事情,我们把消息处理逻辑封装在bolt中。
如图1所示,本发明的基于storm的大数据自适应拓扑处理方法,包括如下步骤:
步骤1,监听用户请求,实时监听用户的定制服务请求,并在监听到定制服务请求时开启新的线程来获取用户的请求信息;
步骤2,请求信息解析,提取请求信息中的用户语句,并利用语法树对用户语句进行词法和语法的解析,在词法和语法解析后还需验证用户语句是否合法,若用户语句不合法,则返回步骤1,若用户语句合法,则进入步骤3;
步骤3,生成拓扑逻辑,根据词法和语法解析的解析结果在算子执行树上选择相应的算子,并将选择的算子组合生成storm可识别运算的拓扑逻辑,词法和语法解析的解析结果包括待调用算子的名称及其优先级,算子执行树上设有按照预定义优先级排列的各个算子,算子执行树上设有的算子包括选择算子、连接算子、投影算子、去重算子、过滤算子以及聚合算子;
步骤4,数据流查询,对接入的数据流进行汇总,按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理,以获取有价值的数据,在按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理时,在每一级算子处理完毕后对获得的处理结果进行存储,并在按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理时,需要将上一级算子输出的数据格式发送给下一级算子。
在进行数据流查询时,需要定义好各个算子组合的属性名称和数据格式作为组合信息,并且把组合信息传入到系统的配置类中;数据流在bolt中处理时,会从配置类中获取组合信息,根据这些信息做相应的算子操作。比如连接算子,进行连接操作时,先调用配置类,获取需要进行连接操作的数据流的组合信息,然后根据用户定义的连接逻辑对数据流进行合并;这时候会形成一条新的数据流,我们需要对这条新的数据流的组合信息进行重新定义,并把信息发送给系统的配置类中,方便下一级算子获取组合信息,正确进行解析。
本发明的优点在于:
(1)本发明的自适应拓扑处理方法可以根据不同用户的不同需求,来选择运算算子,动态地定制服务,并且利用storm分布式的特性,使数据能够在分布式环境下消费,从而达到数据处理服务的动态定制和实时处理。
(2)用户对于实时流有着必要的查询和挖掘操作,而用户对于利用storm来处理大数据的学习成本较高,为了节约用户时间,让用户更专注于数据的分析,我们按照CQL语法标准,做了CQL语法解析器,在storm集群上实现了投影,过滤,分组,聚集,连接等函数,让用户可以在不熟悉storm情况下,简单了解CQL语法,便能够方便地定制服务,对于实时的数据流进行查询和挖掘操作。
(3)系统在分析用户语句后,根据语义提取相关信息转换成数据处理算子列表,我们编写适配算子,和算子之间通信模块,制定算子的选择策略,使初始算子列表根据选择策略调整算子执行顺序,组成符合语义的最优列表,并选择算子组合成为storm可执行的拓扑逻辑,最后由物理层处理处理。
Claims (6)
1.一种基于storm的大数据自适应拓扑处理方法,其特征在于,包括如下步骤:
步骤1,监听用户请求,实时监听用户的定制服务请求,并在监听到定制服务请求时获取用户的请求信息;
步骤2,请求信息解析,提取请求信息中的用户语句,并对用户语句进行词法和语法的解析;
步骤3,生成拓扑逻辑,根据词法和语法解析的解析结果在算子执行树上选择相应的算子,并将选择的算子组合生成storm可识别运算的拓扑逻辑;
步骤4,数据流查询,对接入的数据流进行汇总,按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理,以获取有价值的数据;
步骤3中,词法和语法解析的解析结果包括待调用算子的名称及其优先级,算子执行树上设有按照预定义优先级排列的各个算子;
算子执行树上设有的算子包括选择算子、连接算子、投影算子、去重算子、过滤算子以及聚合算子。
2.根据权利要求1所述的基于storm的大数据自适应拓扑处理方法,其特征在于,步骤1中,在监听到定制服务请求时开启新的线程来获取用户的请求信息。
3.根据权利要求1或2所述的基于storm的大数据自适应拓扑处理方法,其特征在于,步骤2中,在词法和语法解析后还需验证用户语句是否合法,若用户语句不合法,则返回步骤1,若用户语句合法,则进入步骤3。
4.根据权利要求1或2所述的基于storm的大数据自适应拓扑处理方法,其特征在于,步骤2中,利用语法树对用户语句进行词法和语法的解析。
5.根据权利要求1或2所述的基于storm的大数据自适应拓扑处理方法,其特征在于,步骤4中,在按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理时,在每一级算子处理完毕后对获得的处理结果进行存储。
6.根据权利要求1或2所述的基于storm的大数据自适应拓扑处理方法,其特征在于,步骤4中,在按照拓扑逻辑中的算子依次对数据流进行查询和挖掘处理时,需要将上一级算子输出的数据格式发送给下一级算子。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610100571.1A CN105760511B (zh) | 2016-02-24 | 2016-02-24 | 一种基于storm的大数据自适应拓扑处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610100571.1A CN105760511B (zh) | 2016-02-24 | 2016-02-24 | 一种基于storm的大数据自适应拓扑处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105760511A CN105760511A (zh) | 2016-07-13 |
CN105760511B true CN105760511B (zh) | 2018-11-13 |
Family
ID=56330309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610100571.1A Active CN105760511B (zh) | 2016-02-24 | 2016-02-24 | 一种基于storm的大数据自适应拓扑处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105760511B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383738B (zh) * | 2016-09-30 | 2019-10-11 | 北京百度网讯科技有限公司 | 任务处理方法和分布式计算框架 |
CN107766214B (zh) * | 2017-10-12 | 2020-12-25 | 南京熊猫电子股份有限公司 | 基于spark技术的移动终端数据流处理方法及系统 |
CN107729523A (zh) * | 2017-10-27 | 2018-02-23 | 平安科技(深圳)有限公司 | 数据服务方法、电子装置及存储介质 |
CN107967135B (zh) * | 2017-10-31 | 2020-11-13 | 平安科技(深圳)有限公司 | 计算引擎实现方法、电子装置及存储介质 |
CN108519908A (zh) * | 2018-02-24 | 2018-09-11 | 国家计算机网络与信息安全管理中心 | 一种任务动态管理方法和装置 |
CN117349388B (zh) * | 2023-12-05 | 2024-02-20 | 南京智绘星图信息科技有限公司 | 数据时效性确定方法、电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9338061B2 (en) * | 2012-04-26 | 2016-05-10 | Hewlett Packard Enterprise Development Lp | Open station as a stream analysis operator container |
CN103699599B (zh) * | 2013-12-13 | 2016-10-05 | 华中科技大学 | 一种基于Storm实时流计算框架的消息可靠处理保障方法 |
CN104683488B (zh) * | 2015-03-31 | 2018-03-30 | 百度在线网络技术(北京)有限公司 | 流式计算系统及其调度方法和装置 |
CN104794015B (zh) * | 2015-04-16 | 2017-08-18 | 华中科技大学 | 一种实时流计算流速感知弹性执行容错系统 |
CN105183470B (zh) * | 2015-09-06 | 2018-11-30 | 东南大学 | 一种自然语言处理系统化服务平台 |
-
2016
- 2016-02-24 CN CN201610100571.1A patent/CN105760511B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105760511A (zh) | 2016-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105760511B (zh) | 一种基于storm的大数据自适应拓扑处理方法 | |
CN105243159B (zh) | 一种基于可视化脚本编辑器的分布式网络爬虫系统 | |
CN109284606B (zh) | 基于经验特征与卷积神经网络的数据流异常检测系统 | |
CN106649810B (zh) | 基于Ajax的新闻网页动态数据的抓取方法及系统 | |
CN110019651A (zh) | 一种流式规则引擎及业务数据处理方法 | |
CN112671757B (zh) | 一种基于自动机器学习的加密流量协议识别方法及装置 | |
CN109709811A (zh) | 一种面向智能制造的边缘计算控制器及其工作方法 | |
CN104715047B (zh) | 一种社交网络数据采集与分析系统 | |
CN110351150A (zh) | 故障根源确定方法及装置、电子设备和可读存储介质 | |
CN110535722A (zh) | 一种跨安全区域的微服务全链路运行监控方法 | |
CN107645562A (zh) | 数据传输处理方法、装置、设备及系统 | |
CN112532633B (zh) | 一种基于机器学习的工业网络防火墙规则的生成方法及装置 | |
CN109587125A (zh) | 一种网络安全大数据分析方法、系统及相关装置 | |
CN110189220A (zh) | 一种风险分析决策方法、装置、系统及存储介质 | |
RU2697648C2 (ru) | Система классификации трафика | |
CN116506474A (zh) | 一种基于云边协同的电力微服务分层系统 | |
CN111935063A (zh) | 一种终端设备异常网络访问行为监测系统及方法 | |
CN106156170B (zh) | 舆情分析方法及装置 | |
CN106559498A (zh) | 风控数据收集平台及其收集方法 | |
CN115643115A (zh) | 基于大数据的工控网络安全态势预测方法及系统 | |
CN106681980A (zh) | 一种垃圾短信分析方法和装置 | |
CN113821538A (zh) | 一种基于元数据的流式数据处理系统 | |
CN109284088A (zh) | 一种信令大数据处理方法及电子设备 | |
CN109033330A (zh) | 大数据清洗方法、装置和服务器 | |
CN110610099A (zh) | 基于fpga硬件加速的金融风险智能预警与风控系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200713 Address after: No.18-143, Yinchun Road, science and technology R & D base, Maigaoqiao entrepreneurship Park, Qixia District, Nanjing City, Jiangsu Province, 210046 Patentee after: Nanjing Letu Software Technology Co.,Ltd. Address before: Nanjing City, Jiangsu province 210046 City Xianlin University No. 99 Patentee before: NANJING College OF INFORMATION TECHNOLOGY |