CN107678852B - 基于流数据实时计算的方法、系统、设备及存储介质 - Google Patents

基于流数据实时计算的方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN107678852B
CN107678852B CN201711015853.2A CN201711015853A CN107678852B CN 107678852 B CN107678852 B CN 107678852B CN 201711015853 A CN201711015853 A CN 201711015853A CN 107678852 B CN107678852 B CN 107678852B
Authority
CN
China
Prior art keywords
network topology
node
nodes
data
real
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
Application number
CN201711015853.2A
Other languages
English (en)
Other versions
CN107678852A (zh
Inventor
何彬
高洪强
江志超
潘飞
许译丹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ctrip Travel Network Technology Shanghai Co Ltd
Original Assignee
Ctrip Travel Network Technology Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ctrip Travel Network Technology Shanghai Co Ltd filed Critical Ctrip Travel Network Technology Shanghai Co Ltd
Priority to CN201711015853.2A priority Critical patent/CN107678852B/zh
Publication of CN107678852A publication Critical patent/CN107678852A/zh
Application granted granted Critical
Publication of CN107678852B publication Critical patent/CN107678852B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了基于流数据实时计算的方法、系统、设备及存储介质,其中,方法包括以下步骤:对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群的源头和节点,然后在数据库中进行节点配置,提供给后台管理系统使用;根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存;提交取数任务;根据接收到的取数任务的配置参数生成网络拓扑;将网络拓扑提交到管理系统;根据管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;将打包后的网络拓扑上传到Storm集群;以及完成取数任务的网络拓扑自动上线进行工作。本发明能够满足运营人员多种多样的取数需求,通过配置化快速上线。

Description

基于流数据实时计算的方法、系统、设备及存储介质
技术领域
本发明涉及数据处理领域,具体地说,涉及基于流数据实时计算的方法、系统、设备及存储介质。
背景技术
近年来大数据处理的需求不断增多,如何处理庞大的海量数据充满挑战。随着互联网的进一步发展,从门户网站浏览型到搜索型到SNS关系交互传递型,以及电子商务将生活中的流通环节在线化。对于效率的要求让人们对实时性的要求进一步提升,而信息的交互正在往信息网的方向发展,必然带来数据各个维度的交叉关联,数据爆炸已不可避免。流式数据实时计算框架随之诞生,比如Twitter Storm、Yahoo S4、IBM Streambase、Borealis等。通过类似于Storm的实时数据流计算框架,开发人员可以快速搭建一套健壮的实时流计算框架,配合数据库使用可以低成本的开发出优秀的实时产品。
Storm是2011年9月由Twitter公司开源的流式数据实时计算框架,是目前工业界技术最成熟的流计算框架之一。数据流处理平台通常基于故障恢复的高可用方法有三类:积极备用(Active Standby),消极备用(Passive Standby)和上游备份(UpstreamBackup)。在上游备份方式下,每个处理节点的缓存队列维持输出数据到一直到接收到来自下游节点的确认信号为止,在下游处理节点发生故障时,通过上游重发队列中的数据来恢复计算。为了保证实时计算在处理数据时低处理时延的特性、同时降低资源消耗,Storm对上游备份机制进行了改进:(1)监控线程(Acker)对处理过程进行跟踪,使用高效的异或算法定位,一旦检测到故障发生,通知数据源重新发射根元组数据;(2)处理节点无需缓存计算结果,而是在处理完元组后发送确认信号给监控线程,监控线程负责监视根元组及其衍生的元组树上的元组是否完成处理。
目前流式数据处理有很多流式计算框架,比如Storm、Spark Streaming等,每次做流式数据处理的时候,都需要单独开发对应的脚本,一些数据处理会经常重复但是又无法复用,脚本研发周期长,无法满足多种场景,并且难以管理,严重阻碍数据处理上线的速度,无法快速响应业务需求。
因此,本发明提供了一种基于流数据实时计算的方法、系统、设备及存储介质。
发明内容
针对现有技术中的问题,本发明的目的在于提供基于流数据实时计算的方法、系统、设备及存储介质,能够满足运营人员多种多样的取数需求,通过配置化快速上线。
本发明的实施例提供一种基于流数据实时计算的方法,包括以下步骤:
S101、对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群的源头和节点,然后在数据库中进行节点配置,提供给后台管理系统使用;
S102、根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存;
S103、提交取数任务;
S104、根据接收到的取数任务的配置参数生成网络拓扑;
S105、将所述网络拓扑提交到管理系统;
S106、根据所述管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;
S107、将打包后的网络拓扑上传到Storm集群;以及
S108、完成取数任务的网络拓扑自动上线进行工作。
优选地,所述步骤S102中根据业务需求设置每个节点的参数值包括设置处理节点参数和输入节点参数。
优选地,所述步骤S102中根据业务需求设置每个节点的参数值还包括取数任务基础信息。
优选地,所述步骤S103中调度任务定时轮询数据库中新提交的取数任务。
优选地,所述步骤S104中根据取数任务的配置参数,使用模版引擎,生成网络拓扑。
优选地,所述步骤S107中,将网络拓扑打包成jar包之后上传到Storm集群,并发送启动指令。
优选地,所述节点包括输入节点、关系节点、处理节点、输出节点中的至少一种。
本发明的实施例还提供一种基于流数据实时计算的系统,用于上述的基于流数据实时计算的方法,所述基于流数据实时计算的系统包括:
封装模块,对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群节点,然后在数据库中进行节点配置,提供给后台管理系统使用;
参数设置模块,根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存;
任务提交模块,提交取数任务;
网络拓扑生成模块,根据接收到的取数任务的配置参数生成网络拓扑;
网络拓扑提交模块,将所述网络拓扑提交到管理系统;
编译打包模块,根据所述管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;
网络拓扑上传模块,将打包后的网络拓扑上传到Storm集群;以及
网络拓扑运行模块,完成取数任务的网络拓扑自动上线进行工作。
本发明的实施例还提供一种基于流数据实时计算的设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述基于流数据实时计算的方法的步骤。
本发明的实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现上述基于流数据实时计算的方法的步骤。
本发明的基于流数据实时计算的方法、系统、设备及存储介质可以解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,能够满足运营人员多种多样的取数需求,通过配置化快速上线,快速满足市场业务需求,也有利于市场营销活动的开展。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是本发明的基于流数据实时计算的方法的流程图;
图2是本发明的基于流数据实时计算的系统的模块示意图;
图3是本发明的基于流数据实时计算的设备的结构示意图;以及
图4是本发明一实施例的计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。
图1是本发明的基于流数据实时计算的方法的流程图。如图1所示,本发明的实施例提供一种基于流数据实时计算的方法,包括以下步骤:
S101、对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群的源头和节点,然后在数据库中进行节点配置,提供给后台管理系统使用;
S102、根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存;
S103、提交取数任务;
S104、根据接收到的取数任务的配置参数生成网络拓扑;
S105、将所述网络拓扑提交到管理系统;
S106、根据所述管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;
S107、将打包后的网络拓扑上传到Storm集群;以及
S108、完成取数任务的网络拓扑自动上线进行工作。
本发明解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,快速满足市场业务需求,有利于市场营销活动的开展。
在一个优选方案中,所述步骤S102中根据业务需求设置每个节点的参数值包括设置处理节点参数和输入节点参数。从而能够灵活地适应不同的业务需求对参数的要求。
在一个优选方案中,所述步骤S102中根据业务需求设置每个节点的参数值还包括取数任务基础信息,每个任务基础信息可以都是不同的,根据实际的业务需求进行设置和调配。
在一个优选方案中,所述步骤S103中调度任务定时轮询数据库中新提交的取数任务,从而能够在预设的或是需要的时间进行取数任务,充分满足不同商业市场营销活动的需求。在一个优选方案中,所述步骤S104中根据取数任务的配置参数,使用FreeMarker模版引擎,生成网络拓扑,但不以此为限。本实施例中的FreeMarker是一款模板引擎:即一种基于模板和要改变的数据,并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。FreeMarker是基于Apache许可证2.0版本发布。其模板编写为FreeMarkerTemplate Language(FTL),属于简单、专用的语言。需要准备数据在真实编程语言中来显示,比如数据库查询和业务运算,之后模板显示已经准备好的数据。在模板中,主要用于如何展现数据,而在模板之外注意于要展示什么数。
在一个优选方案中,所述步骤S107中,将网络拓扑打包成jar包之后上传到Storm集群,并发送启动指令,但不以此为限。本实施例中的jar包是指JAR文件(Java ArchiveFile),顾名思义,它的应用是与Java息息相关的,是Java的一种文档格式。以用户的角度来看,.jar文件就是一种封装,他们不需要知道.jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果。
在一个优选方案中,所述节点包括输入节点、关系节点、处理节点、输出节点中的至少一种。
本发明中的流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,数据流可被视为一个随时间延续而无限增长的动态数据集合。应用于网络监控、传感器网络、航空航天、气象测控和金融服务等领域。流数据是指由数千个数据源持续生成的数据,通常也同时以数据记录的形式发送,规模较小(约几千字节)。流数据包括多种数据,例如客户使用您的移动或Web应用程序生成的日志文件、网购数据、游戏内玩家活动、社交网站信息、金融交易大厅或地理空间服务,以及来自数据中心内所连接设备或仪器的遥测数据。此类数据需要按记录或根据滑动时间窗口按顺序进行递增式处理,可用于多种分析,包括关联、聚合、筛选和取样。借助此类分析得出的信息,公司得以深入了解其业务和客户活动的方方面面,例如服务使用情况(用于计量/计费)、服务器活动、网站点击量以及设备、人员和实物的地理位置,从而迅速对新情况做出响应。例如,公司可以持续分析社交媒体流,从而跟踪公众对其品牌和产品的看法的变化,并在必要时及时做出反应。对于持续生成动态新数据的大多数场景,采用流数据处理是有利的。这种处理方法适用于大多数行业和大数据使用案例。通常情况下,各公司一开始都是从简单的应用程序开始,例如收集系统日志以及进行滚动计算最小值-最大值等初级处理。然后,这些应用程序逐渐发展为需要完成更加复杂的近实时处理。最初,应用程序可能通过处理数据流生成简单的报告,然后再执行一些简单的响应操作,例如在关键指标超出一定阀值时发出警报。
通过本发明的流数据实时计算的方法会执行形式更加复杂的数据分析,如应用机器学习算法,还会从数据中提取更深入的信息。经过一段时间后,开始应用复杂的流事件处理算法,如利用时间窗口衰减算法查找最近的热门电影,进一步丰富了信息内容。
本发明主要由3大部分组成:
一是基于Storm开发的流式数据处理网络拓扑自动化生成、编译、发布、启动模块,该部分主要完成流式数据处理的网络拓扑自动化上线。
二是基于现有数据抽象分类的多种插件节点,包括输入节点、关系节点、处理节点、输出节点,通过对这些节点的有机组合,形成各种各样的数据处理网络拓扑,该部分主要完成业务逻辑转换成流式数据处理的网络拓扑的封装。
三是后台管理、配置、调度。该部分主要管理运营人员配置的各种取数任务,以及取数任务的调度工作。
本发明的具体实施过程如下:
(1)数据节点开发和配置:对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm的源头(Spout)和Storm的节点(Bolt),然后在数据库中进行配置,提供给后台管理系统使用。其中,Storm提供可靠的方式把原语转换成一个新的分布式的流,执行流转换的基本元素是Spout和Bolt。Spout是流的源头,通常从外部数据源读取元组,并emit到拓扑中。例如,Spout从Kestrel队列中读取元组,并作为一个流提交到拓扑。
(2)后台管理系统:根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存
(3)自动化调度任务:调度任务定时轮询数据库中新提交的取数任务,根据取数任务的配置参数,使用例如FreeMarker模板引擎,自动生成Storm的网络拓扑,然后提交到gitlab仓库,根据gitlab上配置的自定义回调函数(例如:webhook,但不以此为限),自动触发编译系统进行网络拓扑的编译和打包工作,编译和打包完成后将jar包上传到Storm集群,并发送启动指令,完成取数任务的网络拓扑自动上线运行工作。其中,GitLab是一个用于仓库管理系统的开源项目。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。GitLab拥有强大的功能,可实现gitlab仓库管理,代码审查,问题跟踪,WIkI等功能,而且配合GitLab CI能更简单的实现持续集成和自动部署。其中,GitLab的组件主要包括:Packages/Dependencies,Ruby,Go,System Users,Database,Redis,GitLab,Nginx等等,关于GitLab的组件的详细信息请见(http://doc.gitlab.com/ce/install/installation.html)。Webhook是一个API概念,并且变得越来越流行。我们能用事件描述的事物越多,webhook的作用范围也就越大。Webhook作为一个轻量的事件处理应用,正变得越来越有用。准确的说webhoo是一种web回调或者http的push API,是向APP或者其他应用提供实时信息的一种方式。Webhook在数据产生时立即发送数据,也就是你能实时收到数据。这一种不同于典型的API,需要用了实时性需要足够快的轮询。这无论是对生产还是对消费者都是高效的,唯一的缺点是初始建立困难。Webhook有时也被称为反向API,因为他提供了API规则,你需要设计要使用的API。Webhook将向你的应用发起http请求,典型的是post请求,应用程序由请求驱动。
所以,本发明的基于流数据实时计算的方法可以解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,能够满足运营人员多种多样的取数需求,通过配置化快速上线,快速满足市场业务需求,也有利于市场营销活动的开展。
图2是本发明的基于流数据实时计算的系统的模块示意图。如图2所示,本发明的实施例还提供一种基于流数据实时计算的系统9包括:
封装模块91,对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群节点,然后在数据库中进行节点配置,提供给后台管理系统使用;
参数设置模块92,根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存;
任务提交模块93,提交取数任务;
网络拓扑生成模块94,根据接收到的取数任务的配置参数生成网络拓扑;
网络拓扑提交模块95,将所述网络拓扑提交到管理系统;
编译打包模块96,根据所述管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;
网络拓扑上传模块97,将打包后的网络拓扑上传到Storm集群;以及
网络拓扑运行模块98,完成取数任务的网络拓扑自动上线进行工作。
本发明的基于流数据实时计算的系统可以解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,能够满足运营人员多种多样的取数需求,通过配置化快速上线,快速满足市场业务需求,也有利于市场营销活动的开展。
本发明实施例还提供一种基于流数据实时计算的设备,包括处理器。存储器,其中存储有处理器的可执行指令。其中,处理器配置为经由执行可执行指令来执行的基于流数据实时计算的方法的步骤。
如上,本发明的基于流数据实时计算的系统可以解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,能够满足运营人员多种多样的取数需求,通过配置化快速上线,快速满足市场业务需求,也有利于市场营销活动的开展。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
图3是本发明的基于流数据实时计算的设备的结构示意图。下面参照图3来描述根据本发明的这种实施方式的电子设备600。图3显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元610可以执行如图1中所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,程序被执行时实现的基于流数据实时计算的方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
如上所示,本发明的计算机可读存储介质中的程序被执行时可以解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,能够满足运营人员多种多样的取数需求,通过配置化快速上线,快速满足市场业务需求,也有利于市场营销活动的开展。
图4是本发明的计算机可读存储介质的结构示意图。参考图4所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上,本发明的基于流数据实时计算的方法、系统、设备及存储介质可以解决市场营销需要快速取出目标用户人群数据,应用于多种营销场景,能够满足运营人员多种多样的取数需求,通过配置化快速上线,快速满足市场业务需求,也有利于市场营销活动的开展。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (5)

1.一种基于流数据实时计算的方法,其特征在于,包括以下步骤:
S101、对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群的源头和节点,然后在数据库中进行节点配置,所述节点包括输入节点、关系节点、处理节点、输出节点,提供给后台管理系统使用;
S102、根据系统中已经配置的节点,设置每个节点的参数值,最后提交取数任务到数据库中保存,根据业务需求设置每个节点的参数值包括设置处理节点参数和输入节点参数,根据业务需求设置每个节点的参数值还包括取数任务基础信息;
S103、提交取数任务,调度任务定时轮询数据库中新提交的取数任务;
S104、根据接收到的取数任务的配置参数,通过对所述输入节点、关系节点、处理节点、输出节点的组合生成网络拓扑,完成网络拓扑的封装,所述根据接收到的取数任务的配置参数,使用模版引擎;
S105、将所述网络拓扑提交到管理系统;
S106、根据所述管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;
S107、将打包后的网络拓扑上传到Storm集群;以及
S108、完成取数任务的网络拓扑自动上线进行工作。
2.根据权利要求1所述的基于流数据实时计算的方法,其特征在于:所述步骤S107中,将网络拓扑打包成jar包之后上传到Storm集群,并发送启动指令。
3.一种基于流数据实时计算的系统,用于实现权利要求1或2所述的基于流数据实时计算的方法,其特征在于,所述基于流数据实时计算的系统包括:
封装模块,对目前已有的数据进行节点开发,将已有的数据处理逻辑封装成Storm集群节点,然后在数据库中进行节点配置,提供给后台管理系统使用;
参数设置模块,根据系统中已经配置的节点,根据业务需求设置每个节点的参数值,最后提交取数任务到数据库中保存;
任务提交模块,提交取数任务;
网络拓扑生成模块,根据接收到的取数任务的配置参数生成网络拓扑;
网络拓扑提交模块,将所述网络拓扑提交到管理系统;
编译打包模块,根据所述管理系统的自定义回调函数触发编译系统进行网络拓扑的编译和打包;
网络拓扑上传模块,将打包后的网络拓扑上传到Storm集群;以及
网络拓扑运行模块,完成取数任务的网络拓扑自动上线进行工作。
4.一种基于流数据实时计算的设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1或2所述基于流数据实时计算的方法的步骤。
5.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现权利要求1或2所述基于流数据实时计算的方法的步骤。
CN201711015853.2A 2017-10-26 2017-10-26 基于流数据实时计算的方法、系统、设备及存储介质 Active CN107678852B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711015853.2A CN107678852B (zh) 2017-10-26 2017-10-26 基于流数据实时计算的方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711015853.2A CN107678852B (zh) 2017-10-26 2017-10-26 基于流数据实时计算的方法、系统、设备及存储介质

Publications (2)

Publication Number Publication Date
CN107678852A CN107678852A (zh) 2018-02-09
CN107678852B true CN107678852B (zh) 2021-06-22

Family

ID=61142263

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711015853.2A Active CN107678852B (zh) 2017-10-26 2017-10-26 基于流数据实时计算的方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN107678852B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959954B (zh) * 2018-03-30 2021-11-12 努比亚技术有限公司 Storm权限管控的方法、装置、服务器及存储介质
CN110007899B (zh) * 2018-06-27 2022-11-18 浙江新再灵科技股份有限公司 基于storm的通用窗口框架系统
CN110716744B (zh) * 2019-10-21 2024-01-12 中国科学院空间应用工程与技术中心 一种数据流处理方法、系统和计算机可读存储介质
CN111597058B (zh) * 2020-04-17 2023-10-17 微梦创科网络科技(中国)有限公司 一种数据流处理方法及系统
CN112487163B (zh) * 2020-11-30 2024-04-12 广州品唯软件有限公司 自动化流程的执行方法及其接口数据的获取方法、装置
CN113486063A (zh) * 2021-07-05 2021-10-08 国网河北省电力有限公司信息通信分公司 电力物联网中流数据处理方法、装置及终端设备
CN117667965B (zh) * 2024-02-01 2024-04-30 江苏林洋亿纬储能科技有限公司 管理电池储能系统大数据的方法和系统及计算设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699599A (zh) * 2013-12-13 2014-04-02 华中科技大学 一种基于Storm实时流计算框架的消息可靠处理保障方法
CN104050261A (zh) * 2014-06-16 2014-09-17 深圳先进技术研究院 基于Storm的可变逻辑的通用数据处理系统及方法
CN105205105A (zh) * 2015-08-27 2015-12-30 浪潮集团有限公司 一种基于storm的数据ETL系统及处理方法
CN105512162A (zh) * 2015-09-28 2016-04-20 杭州圆橙科技有限公司 一种基于Storm的流数据实时智能化处理框架
CN105574082A (zh) * 2015-12-08 2016-05-11 曙光信息产业(北京)有限公司 基于Storm的流处理方法及系统
CN107229747A (zh) * 2017-06-26 2017-10-03 湖南星汉数智科技有限公司 一种基于流式处理框架的大规模数据处理装置及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699599A (zh) * 2013-12-13 2014-04-02 华中科技大学 一种基于Storm实时流计算框架的消息可靠处理保障方法
CN104050261A (zh) * 2014-06-16 2014-09-17 深圳先进技术研究院 基于Storm的可变逻辑的通用数据处理系统及方法
CN105205105A (zh) * 2015-08-27 2015-12-30 浪潮集团有限公司 一种基于storm的数据ETL系统及处理方法
CN105512162A (zh) * 2015-09-28 2016-04-20 杭州圆橙科技有限公司 一种基于Storm的流数据实时智能化处理框架
CN105574082A (zh) * 2015-12-08 2016-05-11 曙光信息产业(北京)有限公司 基于Storm的流处理方法及系统
CN107229747A (zh) * 2017-06-26 2017-10-03 湖南星汉数智科技有限公司 一种基于流式处理框架的大规模数据处理装置及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Storm的物联网数据处理框架的研究与实现;赵琳;《中国优秀硕士学位论文全文数据库》;20151130;第2015年卷(第11期);全文 *

Also Published As

Publication number Publication date
CN107678852A (zh) 2018-02-09

Similar Documents

Publication Publication Date Title
CN107678852B (zh) 基于流数据实时计算的方法、系统、设备及存储介质
US20240305689A1 (en) Intelligent edge computing platform with machine learning capability
US20200192640A1 (en) Efficient State Machines for Real-Time Dataflow Programming
US10861014B2 (en) Data monetization and exchange platform
US20170109657A1 (en) Machine Learning-Based Model for Identifying Executions of a Business Process
US20170109676A1 (en) Generation of Candidate Sequences Using Links Between Nonconsecutively Performed Steps of a Business Process
CN103034578B (zh) 一种应用数据监控方法和装置
CN109508177B (zh) 一种实时计算方法、装置、服务器及存储介质
US20170109668A1 (en) Model for Linking Between Nonconsecutively Performed Steps in a Business Process
US20170109667A1 (en) Automaton-Based Identification of Executions of a Business Process
US20210385251A1 (en) System and methods for integrating datasets and automating transformation workflows using a distributed computational graph
CN111309550A (zh) 应用程序的数据采集方法、系统、设备和存储介质
US20170109636A1 (en) Crowd-Based Model for Identifying Executions of a Business Process
CN113157545A (zh) 业务日志的处理方法、装置、设备及存储介质
CN107370806A (zh) Http状态码监控方法、装置、存储介质和电子设备
CN108038207A (zh) 一种日志数据处理系统、方法和服务器
US20170109639A1 (en) General Model for Linking Between Nonconsecutively Performed Steps in Business Processes
Reinfurt et al. Applying IoT patterns to smart factory systems
CN108121742A (zh) 用户分类模型的生成方法及装置
Imran et al. Engineering crowdsourced stream processing systems
US20170109638A1 (en) Ensemble-Based Identification of Executions of a Business Process
CN113836235B (zh) 基于数据中台的数据处理方法及其相关设备
US20220043806A1 (en) Parallel decomposition and restoration of data chunks
US20230376372A1 (en) Multi-modality root cause localization for cloud computing systems
CN117873553A (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