CN107766413A - 一种实时数据流聚合查询的实现方法 - Google Patents

一种实时数据流聚合查询的实现方法 Download PDF

Info

Publication number
CN107766413A
CN107766413A CN201710792298.8A CN201710792298A CN107766413A CN 107766413 A CN107766413 A CN 107766413A CN 201710792298 A CN201710792298 A CN 201710792298A CN 107766413 A CN107766413 A CN 107766413A
Authority
CN
China
Prior art keywords
algorithms
data
real
acquisition system
time 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.)
Granted
Application number
CN201710792298.8A
Other languages
English (en)
Other versions
CN107766413B (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.)
Guangdong Zhiyutong Technology Co ltd
Original Assignee
Zhuhai Can Cloud Enterprise Technology 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 Zhuhai Can Cloud Enterprise Technology Co Ltd filed Critical Zhuhai Can Cloud Enterprise Technology Co Ltd
Priority to CN201710792298.8A priority Critical patent/CN107766413B/zh
Publication of CN107766413A publication Critical patent/CN107766413A/zh
Application granted granted Critical
Publication of CN107766413B publication Critical patent/CN107766413B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种实时数据流聚合查询的实现方法,包括以下步骤:分析聚合查询语句,提取查询语句中的关键字段信息,并确定聚合算法;根据计算需求定义实时数据流的window宽度,从实时数据流中不断读取数据,按window宽度筛选出数据;对筛选出的数据,根据关键字段信息,计算得到第一数据集合和第二数据集合;通过scard算法将第一数据集合和第二数据集合进行聚合计算,并拼合成聚合结果集合;将聚合计算后的聚合结果集合存入关系型数据库或者分布式文档存储数据库中供应用系统调用。本发明采用redis集群作为计算中间结果存储介质,有效结合实时数据流window的概念,并充分利用redis高效的特性,实现了一套快速、准确、通用的实时大数据流的聚合方法。

Description

一种实时数据流聚合查询的实现方法
技术领域
本发明涉及一种数据处理方法,更具体的说,涉及一种实时数据流聚合查询的实现方法。
背景技术
目前大数据的处理方式主要有两种:基于内存的流式处理和基于磁盘的存储处理。流式处理就好象是在经过的数据面前建一道水闸。数据流过这里,经过闸门的时候,就进行筛选过滤,分析出有价值的内容,然后丢弃,以后也不再使用。实时大数据流处理除了像非实时处理的需求(如计算结果准确)以外,还需要能够实时响应计算结果(一般要求为秒级)。
流式处理定义为:将数据看作是数据流的形式来处理。数据流则是在时间分布和数量上无限的一系列数据记录的集合体;数据记录是数据流的最小组成单元。举个例子,对于大型网站,活跃的流式数据非常常见,这些数据包括网站的访问PV/UV、用户访问了什么内容,搜索了什么内容等。实时的数据计算和分析可以动态实时地刷新用户访问数据,展示网站实时流量的变化情况,分析每天各小时的流量和用户分布情况,这对于大型网站或者APP来说具有重要的实际意义。window定义为:实时大数据流的window是一个时间窗口的概念。对于数据流来说某一个特定的window内(如:5秒)会包含一定量的正在通过该窗口的数据。Window内的数据是动态的是不断变化的。目前实现基于磁盘的存储处理实现聚合计算有比较成熟的解决方案,比如传统的关系型数据库、大数据聚合查询工具hive等。要实现类似:select count(distinct(ip))as uv,date,channel from access_log where date=20161108group by date,channel的聚合查询操作非常容易。但是,怎样在动态变化的大数据流中实现这样的聚合操作却并非易事。
实时大数据流处理过程可以被划分为以下三个阶段:数据实时采集、实时处理、实时查询服务。
数据实时采集需求:功能上保证可以完整的收集到所有日志数据,为实时应用提供实时数据;响应时间上要保证实时性、低延迟在1秒左右;配置简单,部署容易;系统稳定可靠等。目前,互联网企业的海量数据采集工具,有Facebook开源的Scribe、LinkedIn开源的Kafka、Cloudera开源的Flume,淘宝开源的TimeTunnel、Hadoop的Chukwa等,均可以满足每秒数百MB的日志数据采集和传输需求。
数据实时计算:传统的数据操作,首先将数据采集并存储在DBMS中,然后通过query和DBMS进行交互,得到用户想要的答案。整个过程中,用户是主动的,而DBMS系统是被动的。
但是,对于现在大量存在的实时数据,比如股票交易的数据,这类数据实时性强,数据量大,没有止境,传统的架构并不合适。流计算就是专门针对这种数据类型准备的。在流数据不断变化的运动过程中实时地进行分析,捕捉到可能对用户有用的信息,并把结果发送出去。整个过程中,数据分析处理系统是主动的,而用户却是处于被动接收的状态。
需求:适应流式数据、不间断查询;系统稳定可靠、可扩展性好、可维护性好等。
实时流计算框架:Yahoo开源的S4、Twitter开源的Storm、Hadoop家族的Spark等。
实时查询服务主要基于全内存和半内存。其中,全内存:直接提供数据读取服务,定期dump到磁盘或数据库进行持久化。半内存:使用Redis、Memcache、MongoDB、BerkeleyDB等内存数据库提供数据实时查询服务,由这些系统进行持久化操作。
现有技术的局限、缺点及该些缺点存在的原因
从以上大数据流处理过程来看,第二步实时计算处理是大数据流处理的关键步骤,而聚合运算在数据处理过程中是运用的最广泛的计算方法之一。结合实时大数据流处理的特点和准确、低延时的要求现有聚合运算方式存在以下局限性:
1.大数据流式不断变化的现有的聚合运算方式不能满足不断变化的数据聚合需求。
2.现有的聚合运算方式主要是针对磁盘运算的是没有低延时的要求,而实时数据流是基于内存运算的,需要达到秒级的延时。
发明内容
本发明的技术目的是:采用redis集群作为计算中间结果存储介质,有效结合实时数据流window的概念,并充分利用redis高效的特性,实现了一套快速、准确、通用的实时大数据流的聚合方法。
为现实以上技术目的,本发明技术方案提供了一种实时数据流聚合查询的实现方法,包括以下步骤:
步骤S1,分析聚合查询语句,提取查询语句中的关键字段信息,并确定聚合算法;
步骤S2,根据计算需求定义实时数据流的window宽度,从实时数据流中不断读取数据,按window宽度筛选出数据;
步骤S3,对筛选出的数据,根据关键字段信息,利用md5算法和sadd算法得到第一数据集合,同时利用md5算法、val函数、sadd算法得到第二数据集合;
步骤S4,通过scard算法将第一数据集合和第二数据集合进行聚合计算,并拼合成聚合结果集合;
步骤S5,将聚合计算后的聚合结果集合存入关系型数据库或者分布式文档存储数据库中供应用系统调用。
进一步的,在步骤S1中,获取查询的关键字段信息至少包括:时间、类型、地址、名称。
进一步的,在步骤S2中,window宽度根据关键字段信息中的数据计算得到或系统自定义。
进一步的,在步骤S3中,利用md5算法和sadd算法得到第一数据集合的步骤为:首先读取关键字段信息的值,将一部分关键字段信息的值运用到md5算法中,并通过md5算法对筛选出数据进行运算,然后在利用sadd算法将md5算法计算后的值和另一部分关键字段信息的值进行拼合,并添加到第一数据集合中,计算完成以后,最终得到第一数据集合。
进一步的,在步骤S3中,利用md5算法和val函数得到第二数据集合的步骤为:首先读取关键字段信息的值,将全部关键字段信息的值运用到md5算法中,并通过md5算法对筛选出数据进行运算,然后利用val函数对关键字段信息的值进行运算,在由sadd算法将md5算法计算后的值和val函数计算后的值进行拼合,并添加到第二数据集合中,计算完成以后,最终得到第二数据集合。
进一步的,在步骤S4中,在步骤S4中,使用scard算法计算以前,需启动一个新的分析线程定期读取将全部关键字段信息的值运用到md5算法中计算后的值,再逐个遍历取出val函数计算后的值,再通过md5算法进行计算,计算后的值由scard算法进行拼合。
进一步的,在步骤S4中,scard算法的操作时间复杂度为O(1)。
进一步的,在步骤S5中,聚合计算后的聚合结果集合中的数据由下一分析线程发送至关系型数据库或者分布式文档存储数据库。
进一步的,第一数据集合、第二数据集合均存入redis。
进一步的,在步骤S1中,聚合算法至少包括md5算法、sadd算法、scard算法、val函数。
本发明采用redis集群作为计算中间结果存储介质,有效结合实时数据流中window的概念,并充分利用redis高效的特性,实现了一套快速、准确、通用的实时大数据流的聚合方法,能够满足大数据流式不断变化的数据聚合需求。
本发明可以很容易在storm、spark等大数据实时处理平台上实现,并且可以充分利用这些平台的并进计算的特点提高处理效率和数据吞吐量。
本发明采用采用redis集群作为计算中间结果存储介质,实时数据流的计算是基于内存运算的,能够达到秒级的延时。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明:
图1是本发明的基本流程图;
图2是本发明的一个例子的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis是一个高性能的key-value数据库。redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。
本发明技术方案提供了一种实时数据流聚合查询的实现方法,如图1所示,包括以下步骤:
步骤S1,分析聚合查询语句,提取查询语句中的关键字段信息,并确定聚合算法。
其中,获取查询的关键字段信息至少包括:时间、类型、地址、名称。聚合算法至少包括md5算法、sadd算法、scard算法、val函数。
步骤S2,根据计算需求定义实时数据流的window宽度,从实时数据流中不断读取数据,按window宽度筛选出数据;其中,window宽度可根据关键字段信息中的数据计算得到或系统自定义。
步骤S3,对筛选出的数据,根据关键字段信息,利用md5算法和sadd算法得到第一数据集合,同时利用md5算法、val函数、sadd算法得到第二数据集合。
利用md5算法和sadd算法得到第一数据集合的步骤为:首先读取关键字段信息的值,将一部分关键字段信息的值运用到md5算法中,并通过md5算法对筛选出数据进行运算,然后在利用sadd算法将md5算法计算后的值和另一部分关键字段信息的值进行拼合,并添加到第一数据集合中,计算完成以后,最终得到第一数据集合。
利用md5算法和val函数得到第二数据集合的步骤为:首先读取关键字段信息的值,将全部关键字段信息的值运用到md5算法中,并通过md5算法对筛选出数据进行运算,然后利用val函数对关键字段信息的值进行运算,在由sadd算法将md5算法计算后的值和val函数计算后的值进行拼合,并添加到第二数据集合中,计算完成以后,最终得到第二数据集合。
步骤S4,通过scard算法将第一数据集合和第二数据集合进行聚合计算,并拼合成聚合结果集合。其中,第一数据集合、第二数据集合均存入redis。采用redis集群作为计算中间结果存储介质,有效结合实时数据流中window的概念,并充分利用redis高效的特性,实现了一套快速、准确、通用的实时大数据流的聚合方法。
使用scard算法计算以前,需启动一个新的分析线程定期读取将全部关键字段信息的值运用到md5算法中计算后的值,再逐个遍历取出val函数计算后的值,再通过md5算法进行计算,计算后的值由scard算法进行拼合。其中scard算法的操作时间复杂度为O(1)。
步骤S5,将聚合计算后的聚合结果集合存入关系型数据库或者分布式文档存储数据库(mongodb)中供应用系统调用。聚合计算后的聚合结果集合中的数据由下一分析线程发送至关系型数据库或者分布式文档存储数据库。
本发明并行化原理简单容易理解,很容易在storm、spark等大数据实时处理平台上编程实现,并且可以充分利用这些平台的并进计算的特点提高处理效率和数据吞吐量。以下用一个简单是实例推演算法的过程:假设聚合的SQL(Structured Query Language,结构化查询语言)为:“select count(distinct(ip))as uv,date,channel from access_logwhere date=20161108group by date,channel;”如图2所示。
第一步:分析聚合查询语句比如:“sql=select count(distinct(ip))as uv,date,channel from access_log where date=20161108group by date,channel;”,提取关键字段为:ip,date,channel。
第二步:根据计算需求定义好的window宽度(如:10分钟),从实时流中不断取出数据按条件date=20161108筛选出数据。
某一个window内access_log数据内容如下表:
然后逐条进行一下两步处理:
1、分别读取date、ip和channel字段的值date_v、ip_v和channel_v做如下运算:key=md5(date_v+channel_v)产生一个key,然后通过redis的sadd(key,ip_v),将ip值添加到redis的一个Set集合里面,得到数据如下:
key=md5(date_v+channel_v)
key Values scard(key)
md5(20161108+qq)192.168.0.1,192.168.0.2,192.168.0.4 3
md5(20161108+baidu)192.168.0.2,192.168.0.12
md5(20161108+xiaomi)192.168.0.3,192.168.0.52
md5(20161108+huawei)192.168.0.3 1
2.key=md5(sql)产生一个key,val={date:date_v,channel:channel_v}产生一个值,然后通过sadd(key,val)将数据存入redis的另一Set集合中;得到数据如下:
key=md5(sql)
key values
md5(sql){date:20161108,channel:qq}
{date:20161108,channel:baidu}
{date:20161108,channel:xiaomi}
{date:20161108,channel:huawei}
第三步:启动一个另外的分析线程定期取出key=md5(sql)中的所有值。逐个遍历取出val={date:date_v,channel:channel_v},通过key=md5(date_v+channel_v)得到key,最后通过redis的scard(key)取出聚合结果集之一uv_v。Redis中的scard(key)操作时间复杂度为:O(1),也就是说该操作和key对应的Set的大小是无关的,利用这个特点可以快速准确的实现聚合运算;得到数据如下:
key values
md5(sql){date:20161108,channel:qq,uv:3}
{date:20161108,channel:baidu,uv:2}
{date:20161108,channel:xiaomi,uv:2}
{date:20161108,channel:huawei,uv:1}
第四步:将上一步得到的{date:date_v,channel:channel_v,uv:uv_v}结果存入关系型数据库或者分布式文档存储数据库(mongodb)中供应用系统调用,得到存储的最后结果集为:
通过以上方式的推演证明本发明方法可以达到预期的计算效果,且非常容易编程实现。本发明技术方案已经在Storm平台上编程实现,具体步骤如下:
第一步:启动一个Spout_A,读取SQL聚合语句,解析SQL并将解析结果发送到数据解析Bolt_A;
第二步:Bolt_A从数据流中此项读取一个window的数据按条件筛选出数据,逐条进行一下两步处理:
1、分别读取date、ip和channel字段的值date_v、ip_v和channel_v做如下运算:key=md5(date_v+channel_v)产生一个key,然后通过redis的sadd(key,ip_v),将ip值添加到redis的一个Set集合里面。
2、key=md5(sql)产生一个key,val={date:date_v,channel:channel_v}产生一个值,然后通过sadd(key,val)将数据存入redis的另一个Set集合中。得到数据如下:
key=md5(date_v+channel_v)
key Values scard(key)
md5(20161108+qq)192.168.0.1,192.168.0.2,192.168.0.4 3
md5(20161108+baidu)192.168.0.2,192.168.0.12
md5(20161108+xiaomi)192.168.0.3,192.168.0.52
md5(20161108+huawei)192.168.0.3 1
key=md5(sql)
key values
md5(sql){date:20161108,channel:qq}
{date:20161108,channel:baidu}
{date:20161108,channel:xiaomi}
{date:20161108,channel:huawei}
第三步:启动一个新的Spout_B每秒钟取出key=md5(sql)中的所有值。逐个遍历取出val={date:date_v,channel:channel_v},并将val数据发送到下一个Bolt_B。
第四步:Bolt_B获取到上一个Spout_B发过来的数据{date:date_v,channel:channel_v},通过key=md5(date_v+channel_v)得到key,后通过redis的scard(key)取出聚合结果集之一uv_v,并拼装成{date:20161108,channel:qq,uv:3}的数据形式发送下一个Bolt_C。得到数据如下:
key values
md5(sql){date:20161108,channel:qq,uv:3}
{date:20161108,channel:baidu,uv:2}
{date:20161108,channel:xiaomi,uv:2}
{date:20161108,channel:huawei,uv:1}
第五步:Bolt_C将Bolt_B发过来的数据{date:date_v,channel:channel_v,uv:uv_v}存入关系型数据库或者mongodb中供应用系统调用。得到最后结果集如下:
本发明采用redis集群作为计算中间结果存储介质,有效结合实时数据流中window的概念,并充分利用redis高效的特性,实现了一套快速、准确、通用的实时大数据流的聚合方法,能够满足大数据流式不断变化的数据聚合需求。
本发明可以很容易在storm、spark等大数据实时处理平台上实现,并且可以充分利用这些平台的并进计算的特点提高处理效率和数据吞吐量。
本发明采用采用redis集群作为计算中间结果存储介质,实时数据流的计算是基于内存运算的,能够达到秒级的延时。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求极其等同限定。

Claims (10)

1.一种实时数据流聚合查询的实现方法,其特征在于:包括以下步骤:
步骤S1,分析聚合查询语句,提取查询语句中的关键字段信息,并确定聚合算法;
步骤S2,根据计算需求定义实时数据流的window宽度,从实时数据流中不断读取数据,按window宽度筛选出数据;
步骤S3,对筛选出的数据,根据关键字段信息,利用md5算法和sadd算法得到第一数据集合,同时利用md5算法、val函数、sadd算法得到第二数据集合;
步骤S4,通过scard算法将第一数据集合和第二数据集合进行聚合计算,并拼合成聚合结果集合;
步骤S5,将聚合计算后的聚合结果集合存入关系型数据库或者分布式文档存储数据库中供应用系统调用。
2.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S1中,获取查询的关键字段信息至少包括:时间、类型、地址、名称。
3.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S2中,window宽度根据关键字段信息中的数据计算得到或系统自定义。
4.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S3中,利用md5算法和sadd算法得到第一数据集合的步骤为:首先读取关键字段信息的值,将一部分关键字段信息的值运用到md5算法中,并通过md5算法对筛选出数据进行运算,然后在利用sadd算法将md5算法计算后的值和另一部分关键字段信息的值进行拼合,并添加到第一数据集合中,计算完成以后,最终得到第一数据集合。
5.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S3中,利用md5算法和val函数得到第二数据集合的步骤为:首先读取关键字段信息的值,将全部关键字段信息的值运用到md5算法中,并通过md5算法对筛选出数据进行运算,然后利用val函数对关键字段信息的值进行运算,在由sadd算法将md5算法计算后的值和val函数计算后的值进行拼合,并添加到第二数据集合中,计算完成以后,最终得到第二数据集合。
6.如权利要求5所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S4中,在步骤S4中,使用scard算法计算以前,需启动一个新的分析线程定期读取将全部关键字段信息的值运用到md5算法中计算后的值,再逐个遍历取出val函数计算后的值,再通过md5算法进行计算,计算后的值由scard算法进行拼合。
7.如权利要求1或6所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S4中,scard算法的操作时间复杂度为O(1)。
8.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S5中,聚合计算后的聚合结果集合中的数据由下一分析线程发送至关系型数据库或者分布式文档存储数据库。
9.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:第一数据集合、第二数据集合均存入redis。
10.如权利要求1所述的实时数据流聚合查询的实现方法,其特征在于:在步骤S1中,聚合算法至少包括md5算法、sadd算法、scard算法、val函数。
CN201710792298.8A 2017-09-05 2017-09-05 一种实时数据流聚合查询的实现方法 Active CN107766413B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710792298.8A CN107766413B (zh) 2017-09-05 2017-09-05 一种实时数据流聚合查询的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710792298.8A CN107766413B (zh) 2017-09-05 2017-09-05 一种实时数据流聚合查询的实现方法

Publications (2)

Publication Number Publication Date
CN107766413A true CN107766413A (zh) 2018-03-06
CN107766413B CN107766413B (zh) 2023-07-07

Family

ID=61265319

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710792298.8A Active CN107766413B (zh) 2017-09-05 2017-09-05 一种实时数据流聚合查询的实现方法

Country Status (1)

Country Link
CN (1) CN107766413B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110275903A (zh) * 2019-06-28 2019-09-24 第四范式(北京)技术有限公司 提高机器学习样本的特征生成效率的方法及系统
CN110365767A (zh) * 2019-07-12 2019-10-22 成都安恒信息技术有限公司 一种运维审计系统的单次运维多tcp连接聚合方法
CN111382133A (zh) * 2018-12-28 2020-07-07 广东亿迅科技有限公司 一种分布式高性能准实时数据流计算方法及装置
CN111488222A (zh) * 2019-01-25 2020-08-04 杭州海康威视数字技术股份有限公司 一种流聚合方法、装置及电子设备
CN112380256A (zh) * 2020-11-24 2021-02-19 广东机场白云信息科技有限公司 能源系统数据存取的方法、数据库、计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130263280A1 (en) * 2012-01-09 2013-10-03 Stephen W. Cote Secure Dynamic Page Content and Layouts Apparatuses, Methods and Systems
CN104123374A (zh) * 2014-07-28 2014-10-29 北京京东尚科信息技术有限公司 分布式数据库中聚合查询的方法及装置
CN105376110A (zh) * 2015-10-26 2016-03-02 上海华讯网络系统有限公司 以大数据流式技术实现网络数据包的分析方法及系统
WO2016087652A1 (de) * 2014-12-05 2016-06-09 Technische Universität Dresden Verfahren zur datenverarbeitung zum ermitteln, ob bei einer ausführung eines programms ein fehler aufgetreten ist, und datenverarbeitungsanordnungen zum erzeugen von programm-code
CN106649304A (zh) * 2015-10-28 2017-05-10 北京国双科技有限公司 数据查询的方法、装置及系统
CN106997378A (zh) * 2017-03-13 2017-08-01 摩贝(上海)生物科技有限公司 基于Redis的数据库数据聚合同步的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130263280A1 (en) * 2012-01-09 2013-10-03 Stephen W. Cote Secure Dynamic Page Content and Layouts Apparatuses, Methods and Systems
CN104123374A (zh) * 2014-07-28 2014-10-29 北京京东尚科信息技术有限公司 分布式数据库中聚合查询的方法及装置
WO2016087652A1 (de) * 2014-12-05 2016-06-09 Technische Universität Dresden Verfahren zur datenverarbeitung zum ermitteln, ob bei einer ausführung eines programms ein fehler aufgetreten ist, und datenverarbeitungsanordnungen zum erzeugen von programm-code
CN105376110A (zh) * 2015-10-26 2016-03-02 上海华讯网络系统有限公司 以大数据流式技术实现网络数据包的分析方法及系统
CN106649304A (zh) * 2015-10-28 2017-05-10 北京国双科技有限公司 数据查询的方法、装置及系统
CN106997378A (zh) * 2017-03-13 2017-08-01 摩贝(上海)生物科技有限公司 基于Redis的数据库数据聚合同步的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382133A (zh) * 2018-12-28 2020-07-07 广东亿迅科技有限公司 一种分布式高性能准实时数据流计算方法及装置
CN111382133B (zh) * 2018-12-28 2023-04-11 广东亿迅科技有限公司 一种分布式高性能准实时数据流计算方法及装置
CN111488222A (zh) * 2019-01-25 2020-08-04 杭州海康威视数字技术股份有限公司 一种流聚合方法、装置及电子设备
CN111488222B (zh) * 2019-01-25 2023-04-07 杭州海康威视数字技术股份有限公司 一种流聚合方法、装置及电子设备
CN110275903A (zh) * 2019-06-28 2019-09-24 第四范式(北京)技术有限公司 提高机器学习样本的特征生成效率的方法及系统
CN110365767A (zh) * 2019-07-12 2019-10-22 成都安恒信息技术有限公司 一种运维审计系统的单次运维多tcp连接聚合方法
CN110365767B (zh) * 2019-07-12 2021-08-20 成都安恒信息技术有限公司 一种运维审计系统的单次运维多tcp连接聚合方法
CN112380256A (zh) * 2020-11-24 2021-02-19 广东机场白云信息科技有限公司 能源系统数据存取的方法、数据库、计算机可读存储介质
CN112380256B (zh) * 2020-11-24 2023-10-13 广东机场白云信息科技有限公司 能源系统数据存取的方法、数据库、计算机可读存储介质

Also Published As

Publication number Publication date
CN107766413B (zh) 2023-07-07

Similar Documents

Publication Publication Date Title
CN107766413A (zh) 一种实时数据流聚合查询的实现方法
D’Alconzo et al. A survey on big data for network traffic monitoring and analysis
CN104424229B (zh) 一种多维度拆分的计算方法及系统
CN106790718A (zh) 服务调用链路分析方法及系统
CN102035698B (zh) 基于决策树分类算法的http隧道检测方法
CN108259371A (zh) 一种基于流处理的网络流量数据解析方法和装置
CN105677842A (zh) 基于Hadoop大数据处理技术的日志分析系统
CN103178982A (zh) 日志分析方法和装置
WO2018094777A1 (zh) 一种证券实时交易关联分析的方法
CN101996250A (zh) 一种基于Hadoop的海量流数据存储和查询方法及系统
CN103260050A (zh) 基于Google App Engine云平台的视频点播系统
CN104951529A (zh) 一种针对网站日志的交互式分析方法
CN106682213A (zh) 基于Hadoop平台的物联网任务订制方法及系统
CN105610616A (zh) 基于icp活跃度的接入网单个ip平均流量统计方法及系统
CN109635186A (zh) 一种基于Lambda架构的实时推荐方法
CN102194015A (zh) 检索信息热度统计方法
CN105843959A (zh) 一种基于大数据处理的积分计算方法和系统
CN113360554A (zh) 一种数据抽取、转换和加载etl的方法和设备
CN113312376B (zh) 一种用于Nginx日志实时处理分析的方法及终端
CN104615627A (zh) 一种基于微博平台的事件舆情信息提取方法及系统
CN106649687A (zh) 大数据联机分析处理方法及装置
CN109309587A (zh) 一种日志采集方法及系统
Sarlis et al. Datix: A system for scalable network analytics
CN104123321B (zh) 一种确定推荐图片的方法及装置
CN109145109A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240126

Address after: 519000, 5th floor, 5-335 (centralized office area), Yunxi Valley Digital Industrial Park, No. 168 Tourist Road, Xiangzhou District, Zhuhai City, Guangdong Province (Meixi Commercial Plaza Block B)

Patentee after: Guangdong Zhiyutong Technology Co.,Ltd.

Country or region after: China

Address before: Room 105-11451, No. 6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province, 519000

Patentee before: ZHUHAI YUNENG CLOUD ENTERPRISE TECHNOLOGY CO.,LTD.

Country or region before: China