CN110471914B - 一种实时数据处理中维度关联的方法及系统 - Google Patents

一种实时数据处理中维度关联的方法及系统 Download PDF

Info

Publication number
CN110471914B
CN110471914B CN201910569815.4A CN201910569815A CN110471914B CN 110471914 B CN110471914 B CN 110471914B CN 201910569815 A CN201910569815 A CN 201910569815A CN 110471914 B CN110471914 B CN 110471914B
Authority
CN
China
Prior art keywords
data
dimension
real
time
dimension table
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
CN201910569815.4A
Other languages
English (en)
Other versions
CN110471914A (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.)
Jiangsu Suning Cloud Computing Co ltd
SuningCom Co ltd
Original Assignee
Suning Cloud Computing 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 Suning Cloud Computing Co Ltd filed Critical Suning Cloud Computing Co Ltd
Priority to CN201910569815.4A priority Critical patent/CN110471914B/zh
Publication of CN110471914A publication Critical patent/CN110471914A/zh
Application granted granted Critical
Publication of CN110471914B publication Critical patent/CN110471914B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/23Updating
    • 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/24552Database cache management
    • 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)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明属于通信网络安全领域,公开了一种实时数据处理中维度关联的方法,该方法包括:待处理的维度表数据经过实时流处理;根据表数据的数据量大小选择直接缓存到本地或者缓存动态热数据;监听维度表数据是否发生变化,如数据发生变化,则触发更新,刷新本地缓存;最后输出更新后的维度表数据,以后处理的数据则都以新维度数据进行关联。本发明还公开了一种实时数据处理中维度关联的系统。本发明解决了现有技术中存在的实时关联维度表的效率低及维度数据不能及时更新的问题。

Description

一种实时数据处理中维度关联的方法及系统
技术领域
本发明属于大数据实时数仓建设技术领域,尤其涉及一种实时数据处理中维度关联的方法及系统。
背景技术
随着互联网技术的飞速发展,采集的数据量也在不断增加,数据的在助力业务的发展方面越发重要。实时数仓建设显得尤为的重要。数据处理过程中,我们需要根据业务的需求把业务数据的事实表进行拉宽处理。方便下游数据产品或数据应用能够更方便的、更快捷的进行数据分析。
目前传统的实时分析技术,存在如下的问题:1.维度表数据量庞大时,面对庞大的采集日志处理时存在关联维度表TPS低的性能瓶颈。 2.维度表变化后不能够及时的更新,存在维度关联不上的问题。
发明内容
本发明的目的是,提供一种实时数据处理中维度关联的方法,以解决解决现有技术中存在的实时关联维度表的效率低及维度数据不能及时更新的问题。
本发明采用的技术方案如下:
一种实时数据处理中维度关联的方法,所述方法包括:
待处理的维度表数据经过实时流处理系统;
实时流处理系统根据表数据的数据量大小选择直接缓存到本地或者缓存动态热数据;
监听维度表数据是否发生变化,如数据发生变化,则触发更新;
输出更新后的维度表数据。
进一步地,所述方法还包括:用户对维度表数据的更新是通过界面进行配置以调整表数据的相关信息。
进一步地,通过心跳机制来触发判断维度表数据是否发生变化。
进一步地,维度表数据根据数据量大小存储于不同类型的数据库中,当实际的维度表数据量大于设定的基础数据量时,为大表,选择使用Hbase数据库作为底层数据的存储;当实际的维度表数据量小于设定的基础数据量时,为小表,选择Mysql数据库作为底层数据的存储。
进一步地,当数据量为小表时,通过 Mysql数据库的A表、B表以及表之间的标记来保证服务在切换过程中的稳定性;当数据量为大表类型时,通过外置的数据交换任务进行底层数据的增量更新。
进一步地,调整表数据的相关信息包括表类型、表名称、是否适用KV内存数据库。
进一步地,在使用场景多的服务时,设置KV内存中间件。
进一步地,待处理的维度表数据进入实时流处理系统时,先验证小表内存是否全部加载完成,并通过实时流计算的工作日志来定位判断数据记载是否异常。
本发明的另一方面,还提供了一种实时数据处理中维度关联的系统,所述系统包括:实时流处理系统、监听模块及输出模块,其中,
所述实时流处理模块,将待处理的维度表数据,根据其数据量大小选择直接缓存到本地或者缓存动态热数据;
监听模块,监听所述实时流处理系统中的维度表数据是否发生变化,如数据发生变化,则触发更新;
输出模块,在维度表信息更新后输出更新后的数据作为关联数据。
进一步地,所述系统还包括:配置模块,用以通过界面进行配置调整实时流处理模块的维度信息。
与现有技术相比,本发明所提供的一种实时数据处理中维度关联的方法,具有如下技术效果:
1、通过实时流处理技术,能够解决大数据量下实时关联维度表TPS瓶颈的问题。
2、通过心跳机制来触发判断维度表是否有更新,能够保证数据维度使用的最新维度,从而保证了处理数据准确性和及时性。
3、通过界面配置的方式,能够更方便的进行多个维度表关联的扩展性问题。
附图说明
图1是本发明实施例所述的实时数据处理中维度关联的方法的流程示意图;
图2是本发明实施例所述的实时数据处理中维度关联的系统的架构图。
图3是本发明实施例中的用户修改配置的交互示意图。
具体实施方式
以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。如在说明书及权利要求当中使用了某些词汇来指称特定部件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个部件。本说明书及权利要求并不以名称的差异来作为区分部件的方式,而是以部件在功能上的差异来作为区分的准则。说明书后续描述为实施本发明的较佳实施方式,然所述描述乃以说明本新型的一般原则为目的,并非用以限定本发明的范围。本发明的保护范围当视所附权利要求所界定者为准。
下面结合附图和具体实施例对本发明做进一步详细说明。
本发明是根据业务设计出对应的维度表,通过表数据的数据量大小进行选择使用缓存全部或缓存动态热数据两种不同的实现方法。当数据发生变化就会触发检查监听,同时同步更新计算节点到本地缓存,之后处理的数据都使用新维度数据进行关联。
如图1、图2所示,本发明实施例所述的一种实时数据处理中维度关联的方法,包括如下步骤:
步骤S1、待处理的维度表数据经过实时流处理系统;
具体来说,在步骤S1中,流处理是通过流处理架构,当数据源源不断的数据流过系统时,系统可以不停地连续计算,目前常用的流处理架构比如storm框架、Flink框架、SparkStreaming等,流相当于一个管道,当有窗口存在的时候,数据才会发生汇聚,表就是我们通常理解的数据库的表。流上窗口中的数据,实际上就是一张表。同样的,当表上数据在不断发生变化的时候,这种changelog,就是流。流处理的结果立刻可用,并会随着新数据的抵达继续更新,如果需要将处理结果直接提供给访客打开的网站页面,选用Storm框架系统较佳。
步骤S2、流处理系统根据表数据的数据量大小选择直接缓存到本地或者缓存动态热数据;
具体来说,在步骤S2中,通过表数据的数据量的大小进行选择使用缓存全部或缓存动态热数据,小表和大表是根据设定的基础数据量而定,采用两种不同的实现方法,该种方式内存关联效率最高,小表直接加载内存,大表内存加载不下,故只加载热数据,从而提高管理数据的高效性,提供更好的数据服务。本发明将维度表的数据量分为两种方式进行存储,数据量大的为大表,数据量小的为小表,比如设定的基础数据量为20万条,当大于20万条时,为大表,选择使用Hbase作为底层数据的存储,当小于20万时,为小表,选择使用MySql数据库作为底层数据的存储,当然,本领域技术人员应当理解的是,前述设定的基础数据量的20万条作为大、小表的区分仅仅是一个示例。本发明实施例中的描述中,HBase是一个分布式的、面向列的开源数据库,HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。MySql为关系型数据库,MySQL软件可以接受命令,并做出相应的操作,包含删除文件、获取文件内容、修改文件等众多操作,对于编写的命令就是SQL语句。
步骤S3、监听维度表数据是否发生变化,如数据发生变化,则触发更新,刷新本地缓存;
具体来说,在步骤S3中,当数据发生变化就会触发检查监听,同时同步更新计算节点至本地缓存,之后处理的数据都使用新维度数据进行关联。监听是通过心跳机制进行,也就是定时轮询监控方法,在每设定的一个心跳时间内主动检查数据库的数据量大小。
本发明通过配置信息去定义需要用到的维度表或关系表,进行需要用到字段的添加,当为小表时,直接缓存到本地内存,当为大表时,使用动态热数据的方式,来提高关联数据的高效性。
具体来说,通过界面进行配置新增或调整维度表的相关信息,比如表类型(关系型数据库表,或者NOSQL表)、表名称、是否使用内存KV缓存、统计表的数据量等。当数据量较小时,通过AB表及使用AB表的标记来保证服务在切换过程中的稳定性,AB表为两张相同结构的表,使用A表的时候,更新B表的数据,操作完成后可以切换到更新后的B表,使用哪个表是通过AB表的FLAG来控制。当数据量较大时,通过外置的数据交换模式来进行底层Hbase(相当于NOSQL表)的增量更新,NOSQL表支持覆盖更新功能,只要把变化量做update insert就可实现增量的更新。如果数据发生变化,被监听到,则触发更新,刷新内存中的数据。
图3是本发明一个实施例中,用户通过界面配置修改维度表数据的交互示意图。当用户通过计算机修改了维度表数据时,则会被监听到数据发生变化,当为小维度表时,持有写锁,清除内存并重新加载数据,实时流处理系统在检测为小维度表时,持有读锁,碰到写锁时等待加载完成后取出更新后的数据;当为热数据维度表时,则清除内存中的所有数据,实时流处理系统在检测到为热数据维度表时,也就是大表时,判断内存中是否有值,没有值则重新查询数据并缓存,其中,内存缓存查询频次较高的数据;如果使用到KV内存数据库,则维度表发生变化后需要触发清除动作。
针对多个不同场景的数据流,比如订单相关数据、流量相关数据和库存相关数据,在使用场景比较多的服务时,中间添加内存KV中间件来保障请求TPS的高效性, redis选择使用KV内存中间件效率高于NOSQL表。
在流处理系统启动时,先进行验证内存是否加载完全,此处内存是指小表的缓存,通过内存记录数和表配置信息进行比较,而大表存放的是热数据,实时流运行中不断加载,保证数据完全加载后,流式处理程序正常运行,否则,则需要接入定位来保证数据的质量,也就是通过实时流计算的日志来定位,数据加载不全就会有相关异常信息。
步骤S4、输出更新后的维度表数据,该更新后的维度表数据。其中,源数据和目标数据的差异就是多了部分维度表中的内存,或者字段被做过ETL处理。
本发明的另一实施例,还提供了一种实时数据处理中维度关联的系统,该系统包括:实时流处理系统、监听模块及输出模块,其中,
所述实时流处理模块,将待处理的维度表数据,根据其数据量大小选择直接缓存到本地或者缓存动态热数据;其中,小表直接缓存本地内存,大表使用动态热数据的方式,来提高关联数据的高效性;其中,实时流处理模块可以采用现有的storm框架。
监听模块,监听所述实时流处理系统中的维度表数据是否发生变化,如数据发生变化,则触发更新;通过数据变化的监控保证了内存数据的准确性;
输出模块,在维度表信息更新后输出更新后的数据,之后处理的数据都使用新维度数据进行关联。
所述系统还包括:配置模块,用以通过界面进行配置调整实时流处理模块的维度信息。具体来说,就是通过界面进行配置新增维度相关信息,如表类型、表名称、是否使用内存KV缓存等。当数据量较小时,通过AB表及使用AB表的标记来保证服务在切换过程中的稳定性。数据量较大时,通过外置的数据交换任务进行底层数据(NOSQL表)的增量更新。如果数据发生变化后触发更新,刷新内存中的数据。在使用场景比较多的服务时,中间添加KV内存中间件来保障请求TPS的高效性。
针对实时数据仓库建设流数据处理中维度表关联需求多、数据准确性要求高的问题。使用本发明实施例中的方案能够保证流数据维度关联简单易用,且准确性高。
值得注意的是,以上所述仅为本发明的较佳实施例,并非因此限定本发明的专利保护范围,本发明还可以对上述各种零部件的构造进行材料和结构的改进,或者是采用技术等同物进行替换。故凡运用本发明的说明书及图示内容所作的等效结构变化,或直接或间接运用于其他相关技术领域均同理皆包含于本发明所涵盖的范围内。

Claims (8)

1.一种实时数据处理中维度关联的方法,其特征在于,所述方法包括:
待处理的维度表数据经过实时流处理系统;
实时流处理系统根据表数据的数据量大小选择直接缓存到本地或者缓存动态热数据;维度表数据根据数据量大小存储于不同类型的数据库中,当实际的维度表数据量大于设定的基础数据量时,为大表,选择使用Hbase数据库作为底层数据的存储;当实际的维度表数据量小于设定的基础数据量时,为小表,选择Mysql数据库作为底层数据的存储;当数据量为小表时,通过 Mysql数据库的A表、B表以及表之间的标记来保证服务在切换过程中的稳定性;当数据量为大表类型时,通过外置的数据交换任务进行底层数据的增量更新;
监听维度表数据是否发生变化,如数据发生变化,则触发更新;
输出更新后的维度表数据。
2.如权利要求1所述的实时数据处理中维度关联的方法,其特征在于,所述方法还包括:用户对维度表数据的更新是通过界面进行配置以调整表数据的相关信息。
3.如权利要求1所述的实时数据处理中维度关联的方法,其特征在于,通过心跳机制来触发判断维度表数据是否发生变化。
4.如权利要求2或3所述的实时数据处理中维度关联的方法,其特征在于,调整表数据的相关信息包括表类型、表名称、是否适用KV内存数据库。
5.如权利要求4所述的实时数据处理中维度关联的方法,其特征在于,在使用场景多的服务时,设置KV内存中间件。
6.如权利要求1所述的实时数据处理中维度关联的方法,其特征在于,待处理的维度表数据进入实时流处理系统时,先验证小表内存是否全部加载完成,并通过实时流计算的工作日志来定位判断数据记载是否异常。
7.一种实时数据处理中维度关联的系统,其特征在于,所述系统包括:实时流处理系统、监听模块及输出模块,其中,
所述实时流处理模块,将待处理的维度表数据,根据其数据量大小选择直接缓存到本地或者缓存动态热数据;维度表数据根据数据量大小存储于不同类型的数据库中,当实际的维度表数据量大于设定的基础数据量时,为大表,选择使用Hbase数据库作为底层数据的存储;当实际的维度表数据量小于设定的基础数据量时,为小表,选择Mysql数据库作为底层数据的存储;当数据量为小表时,通过 Mysql数据库的A表、B表以及表之间的标记来保证服务在切换过程中的稳定性;当数据量为大表类型时,通过外置的数据交换任务进行底层数据的增量更新;
监听模块,监听所述实时流处理系统中的维度表数据是否发生变化,如数据发生变化,则触发更新;
输出模块,在维度表信息更新后输出更新后的数据作为关联数据。
8.如权利要求7所述的实时数据处理中维度关联的系统,其特征在于,所述系统还包括:配置模块,用以通过界面进行配置调整实时流处理模块的维度信息。
CN201910569815.4A 2019-06-27 2019-06-27 一种实时数据处理中维度关联的方法及系统 Active CN110471914B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910569815.4A CN110471914B (zh) 2019-06-27 2019-06-27 一种实时数据处理中维度关联的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910569815.4A CN110471914B (zh) 2019-06-27 2019-06-27 一种实时数据处理中维度关联的方法及系统

Publications (2)

Publication Number Publication Date
CN110471914A CN110471914A (zh) 2019-11-19
CN110471914B true CN110471914B (zh) 2022-07-12

Family

ID=68506995

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910569815.4A Active CN110471914B (zh) 2019-06-27 2019-06-27 一种实时数据处理中维度关联的方法及系统

Country Status (1)

Country Link
CN (1) CN110471914B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112487111A (zh) * 2020-12-16 2021-03-12 江苏苏宁云计算有限公司 基于kv数据库的数据表关联方法及装置
CN112765166A (zh) * 2021-01-06 2021-05-07 深圳市欢太科技有限公司 数据处理方法、装置及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745014B2 (en) * 2011-10-19 2014-06-03 Pivotal Software, Inc. Time series data mapping into a key-value database
CN106502772A (zh) * 2016-10-09 2017-03-15 国网浙江省电力公司信息通信分公司 基于分布式离线技术的电量数据批量高速处理方法及系统
CN107193909A (zh) * 2017-05-08 2017-09-22 杭州东方通信软件技术有限公司 数据处理方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745014B2 (en) * 2011-10-19 2014-06-03 Pivotal Software, Inc. Time series data mapping into a key-value database
CN106502772A (zh) * 2016-10-09 2017-03-15 国网浙江省电力公司信息通信分公司 基于分布式离线技术的电量数据批量高速处理方法及系统
CN107193909A (zh) * 2017-05-08 2017-09-22 杭州东方通信软件技术有限公司 数据处理方法及系统

Also Published As

Publication number Publication date
CN110471914A (zh) 2019-11-19

Similar Documents

Publication Publication Date Title
US11882054B2 (en) Terminating data server nodes
CN109213772B (zh) 数据存储方法及NVMe存储系统
US9946735B2 (en) Index structure navigation using page versions for read-only nodes
US10812589B2 (en) Storage architecture for heterogeneous multimedia data
US11269832B2 (en) Application-centric object configuration
US9305056B1 (en) Results cache invalidation
US6950823B2 (en) Transparent edge-of-network data cache
CN103617131B (zh) 一种实现数据缓存的方法
US8499121B2 (en) Methods and apparatus to access data in non-volatile memory
US9639562B2 (en) Automatically determining an optimal database subsection
CN107077453B (zh) 用于使用集群缓存进行数据库查询的并行优化的系统和方法
US20200364185A1 (en) Method for data replication in a data analysis system
US20180329712A1 (en) File access predication using counter based eviction policies at the file and page level
CN103595797B (zh) 一种分布式存储系统中的缓存方法
US10909091B1 (en) On-demand data schema modifications
US10990571B1 (en) Online reordering of database table columns
US10528590B2 (en) Optimizing a query with extrema function using in-memory data summaries on the storage server
US20130290636A1 (en) Managing memory
CN110471914B (zh) 一种实时数据处理中维度关联的方法及系统
US11567934B2 (en) Consistent client-side caching for fine grained invalidations
CN111159176A (zh) 一种海量流数据的存储和读取的方法和系统
CN114817195A (zh) 一种分布式存储缓存管理的方法、系统、存储介质及设备
CN104281673A (zh) 一种数据库的缓存构建系统及对应的构建方法
US20230229658A1 (en) Systems and methods for data management and query optimization
US11341163B1 (en) Multi-level replication filtering for a distributed database

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
CP03 Change of name, title or address

Address after: No.1-1 Suning Avenue, Xuzhuang Software Park, Xuanwu District, Nanjing, Jiangsu Province, 210000

Patentee after: Jiangsu Suning cloud computing Co.,Ltd.

Address before: No.1-1 Suning Avenue, Xuzhuang Software Park, Xuanwu District, Nanjing, Jiangsu Province, 210000

Patentee before: Suning Cloud Computing Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20240108

Address after: 210000, 1-5 story, Jinshan building, 8 Shanxi Road, Nanjing, Jiangsu.

Patentee after: SUNING.COM Co.,Ltd.

Address before: No.1-1 Suning Avenue, Xuzhuang Software Park, Xuanwu District, Nanjing, Jiangsu Province, 210000

Patentee before: Jiangsu Suning cloud computing Co.,Ltd.

TR01 Transfer of patent right