CN109471898A - 一种用于对数据进行共享分发的方法及系统 - Google Patents
一种用于对数据进行共享分发的方法及系统 Download PDFInfo
- Publication number
- CN109471898A CN109471898A CN201811555534.5A CN201811555534A CN109471898A CN 109471898 A CN109471898 A CN 109471898A CN 201811555534 A CN201811555534 A CN 201811555534A CN 109471898 A CN109471898 A CN 109471898A
- Authority
- CN
- China
- Prior art keywords
- data
- message queue
- shared
- distributed message
- distributed
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Abstract
本发明公开了一种用于对数据进行共享分发的方法及系统,包括:将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存;当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中;当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。本发明避免了原来的基于数据库系统的数据处理流程上IO读写的性能瓶颈,在海量大数据环境下,可以充分利用服务器集群的性能,保证数据共享分发处理的及时性、稳定性和准确性。
Description
技术领域
本发明涉及数据处理技术领域,并且更具体地,涉及一种用于对数据进行共享分发的方法及系统。
背景技术
现有的基于数据库的数据共享分发方式,在数据采集端采集到的数据会先入库到数据库系统中,并在对应的数据库系统表上建立相应的过滤条件索引,数据共享分发程序从数据中读取相应满足过滤条件的数据发送到相应的共享系统中。现有的数据共享分发流程如图1所示。
现有的数据共享分发方式数据的处理主要集中在数据库系统上,为以数据库为核心的业务处理流程,将主要的IO操作都集中在数据库上,很明显数据库的读写处理性能直接决定了数据共享分发性能,而数据库的读写处理性能及大数据量处理性能成为数据共享分发系统的瓶颈所在,而传统的数据库处理性能虽然可以通过扩展硬件资源方式来提升性能,但集中式的关系型数据库例如oracle、mysql,sqlserver,db2等依然有其性能上的瓶颈,面对海量大数据的冲击,无法进行性能上的横向水平扩展,难以保障数据共享分发的及时性、稳定性和准确性。
发明内容
本发明提出一种用于对数据进行共享分发的方法及系统,以解决如何高效地实现数据共享分发的问题。
为了解决上述问题,根据本发明的一个方面,本发明提供了一种用于对数据进行共享分发的方法,所述方法包括:
将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存;
判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件;
当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中;
判断所述共享数据是否满足预设的数据共享分发条件;
当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。
优选地,其中所述判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件,包括:
判断所述分布式消息队列中的原始数据的数据量是否达到预设的第一处理数量;或
所述分布式消息队列中的原始数据是否要求实时处理。
优选地,其中所述判断所述共享数据是否满足预设的数据共享分发条件,包括:
判断所述分布式消息队列中的共享数据的数据量是否达到预设的第二预处理数量;或
所述分布式消息队列中的共享数据是否要求实时处理。
优选地,其中所述方法还包括:
数据共享分发模块根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。
优选地,其中所述方法还包括:
将分布式消息队列中的原始数据和共享数据发送至数据库进行存储。
根据本发明的另一个方面,本发明提供了一种用于对数据进行共享分发的系统,所述系统包括:
分布式消息队列存储模块,用于将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存;
第一判断模块,用于判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件;
数据过滤模块,用于当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中;
第二判断模块,用于判断所述共享数据是否满足预设的数据共享分发条件;
数据共享分发模块,用于当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。
优选地,其中所述第一判断模块,判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件,包括:
判断所述分布式消息队列中的原始数据的数据量是否达到预设的第一处理数量;或
所述分布式消息队列中的原始数据是否要求实时处理。
优选地,其中所述第二判断模块,判断所述共享数据是否满足预设的数据共享分发条件,包括:
判断所述分布式消息队列中的共享数据的数据量是否达到预设的第二预处理数量;或
所述分布式消息队列中的共享数据是否要求实时处理。
优选地,其中所述数据共享分发模块还包括:
根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。
优选地,其中所述系统还包括:
数据库存储模块,用于将分布式消息队列中的原始数据和共享数据发送至数据库进行存储。
本发明提供了一种用于对数据进行共享分发的方法及系统,包括:将采集的原始数据以分布式消息队列的形式进行暂存;当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中;当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。本发明采用分布式消息缓存队列的方式,在入数据库前就通过程序实时的过滤相关数据进行数据共享分发,所有的数据处理都在内存中完成,从而避免了原来的基于数据库系统的数据处理流程上I O读写的性能瓶颈,在海量大数据环境下,可以充分利用服务器集群的性能,保证数据共享分发处理的及时性、稳定性和准确性。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为现有的数据共享分发的示意图;
图2为根据本发明实施方式的用于对数据进行共享分发的方法200的流程图;
图3为根据本发明实施方式的数据共享分发的示意图;以及
图4为根据本发明实施方式的用于对数据进行共享分发的系统400的结构示意图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
图2为根据本发明实施方式的用于对数据进行共享分发的方法200的流程图。如图2所示,本发明的实施方式提供的用于对数据进行共享分发的方法及系统采用分布式消息缓存队列的方式,在入数据库前就通过程序实时的过滤相关数据进行数据共享分发,所有的数据处理都在内存中完成,从而避免了原来的基于数据库系统的数据处理流程上IO读写的性能瓶颈,在海量大数据环境下,可以充分利用服务器集群的性能,保证数据共享分发处理的及时性、稳定性和准确性。本发明的实施方式提供的用于对数据进行共享分发的方法从步骤201处开始,在步骤201将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存。
图3为根据本发明实施方式的数据共享分发的示意图。如图3所示,在本发明的实施方式中,为了提升海量大数据环境下数据共享分发的及时性和稳定性,数据采集程序采集的原始数据在采集入库前数据暂存在分布式消息队列rocketmq中,通过增加分布式消息队列暂存采集的原始数据,而不是直接入库,数据采集程序数据处理能力得到极大提升,数据缓存也可以增加更多数据处理逻辑,实现数据多样性,多需求性数据处理业务。
优选地,在步骤202判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件。
优选地,其中所述判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件,包括:
判断所述分布式消息队列中的原始数据的数据量是否达到预设的第一处理数量;或
所述分布式消息队列中的原始数据是否要求实时处理。
优选地,在步骤203当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中。
优选地,在步骤204判断所述共享数据是否满足预设的数据共享分发条件。
优选地,其中所述判断所述共享数据是否满足预设的数据共享分发条件,包括:
判断所述分布式消息队列中的共享数据的数据量是否达到预设的第二预处理数量;或
所述分布式消息队列中的共享数据是否要求实时处理。
优选地,在步骤205当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。
优选地,其中所述方法还包括:
数据共享分发模块根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。
优选地,其中所述方法还包括:
将分布式消息队列中的原始数据和共享数据发送至数据库进行存储。
在本发明的实施方式中,通过数据过滤程序直接读取消息队列中的原始数据,并进行相应条件的数据过滤后生成要共享的数据放回分布式消息队列中,从而生成符合条件的共享数据。然后,当分布式消息队列中的共享数据的数据量达到预设的第二预处理数量;或所述分布式消息队列中的共享数据为要求实时处理的数据时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发;或者数据共享分发模块接收系统的数据获取请求,并根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。本发明的实施方式的数据共享分发业务主要集中在程序和分布式消息对列来实现,替代了原来基于数据库系统的复杂处理,在高性能分布式式消息对列和分布式应用程序的结合处理下提供了相对数据处理的功能更加强大,性能更加高效数据共享方式。
在本发明的实施方式中,还将分布式消息队列中的原始数据和共享数据发送至数据库进行存储,在存储时通过数据队列缓存可以实现数据入库的削峰填谷,也可以通过增加数据入库程序的分布式部署数量,提升整体数据入库处理速度,同时入库数据不在承担数据共享分发的处理逻辑,使得数据库更加专注于核心业务数据处理的性能需要,而将大数据共享分发业务逻辑剥离出来,通过将数据共享分发业务提前也提升了数据共享分发的及时性和专业性。
图4为根据本发明实施方式的用于对数据进行共享分发的系统400的结构示意图。如图4所示,本发明的实施方式提供的用于对数据进行共享分发的系统400,包括:分布式消息队列存储模块401、第一判断模块402、数据过滤模块403、第二判断模块404和数据共享分发模块405。优选地,所述分布式消息队列存储模块401,用于将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存。
优选地,所述第一判断模块402,用于判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件。
优选地,其中所述第一判断模块402,判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件,包括:判断所述分布式消息队列中的原始数据的数据量是否达到预设的第一处理数量;或所述分布式消息队列中的原始数据是否要求实时处理。
优选地,所述数据过滤模块403,用于当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中。
优选地,所述第二判断模块404,用于判断所述共享数据是否满足预设的数据共享分发条件。
优选地,其中所述第二判断模块404,判断所述共享数据是否满足预设的数据共享分发条件,包括:判断所述分布式消息队列中的共享数据的数据量是否达到预设的第二预处理数量;或所述分布式消息队列中的共享数据是否要求实时处理。
优选地,所述数据共享分发模块405,用于当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。
优选地,其中所述数据共享分发模块还包括:根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。
优选地,其中所述系统还包括:数据库存储模块,用于将分布式消息队列中的原始数据和共享数据发送至数据库进行存储。
本发明的实施例的用于对数据进行共享分发的系统400与本发明的另一个实施例的用于对数据进行共享分发的方法200相对应,在此不再赘述。
已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。
通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该[装置、组件等]”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。
Claims (10)
1.一种用于对数据进行共享分发的方法,其特征在于,所述方法包括:
将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存;
判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件;
当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中;
判断所述共享数据是否满足预设的数据共享分发条件;
当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。
2.根据权利要求1所述的方法,其特征在于,所述判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件,包括:
判断所述分布式消息队列中的原始数据的数据量是否达到预设的第一处理数量;或
所述分布式消息队列中的原始数据是否要求实时处理。
3.根据权利要求1所述的方法,其特征在于,所述判断所述共享数据是否满足预设的数据共享分发条件,包括:
判断所述分布式消息队列中的共享数据的数据量是否达到预设的第二预处理数量;或
所述分布式消息队列中的共享数据是否要求实时处理。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
数据共享分发模块根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将分布式消息队列中的原始数据和共享数据发送至数据库进行存储。
6.一种用于对数据进行共享分发的系统,其特征在于,所述系统包括:
分布式消息队列存储模块,用于将利用数据采集模块采集的原始数据以分布式消息队列的形式进行暂存;
第一判断模块,用于判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件;
数据过滤模块,用于当所述分布式消息队列中的原始数据满足预设的过滤处理条件时,利用数据过滤模块读取分布式消息队列中的原始数据,并根据预设的过滤条件对原始数据进行过滤处理,以生成共享数据并存储至分布式消息队列中;
第二判断模块,用于判断所述共享数据是否满足预设的数据共享分发条件;
数据共享分发模块,用于当所述共享数据满足预设的数据共享分发条件时,利用数据共享分发模块将所述共享数据自动地发送至对应的系统,以实现数据共享分发。
7.根据权利要求6所述的系统,其特征在于,所述第一判断模块,判断所述分布式消息队列中的原始数据是否满足预设的过滤处理条件,包括:
判断所述分布式消息队列中的原始数据的数据量是否达到预设的第一处理数量;或
所述分布式消息队列中的原始数据是否要求实时处理。
8.根据权利要求6所述的系统,其特征在于,所述第二判断模块,判断所述共享数据是否满足预设的数据共享分发条件,包括:
判断所述分布式消息队列中的共享数据的数据量是否达到预设的第二预处理数量;或
所述分布式消息队列中的共享数据是否要求实时处理。
9.根据权利要求6所述的系统,其特征在于,所述数据共享分发模块还包括:
根据系统的数据获取请求,读取相应的共享数据并发送至相应的系统。
10.根据权利要求6所述的系统,其特征在于,所述系统还包括:
数据库存储模块,用于将分布式消息队列中的原始数据和共享数据发送至数据库进行存储。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811555534.5A CN109471898B (zh) | 2018-12-19 | 2018-12-19 | 一种用于对数据进行共享分发的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811555534.5A CN109471898B (zh) | 2018-12-19 | 2018-12-19 | 一种用于对数据进行共享分发的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109471898A true CN109471898A (zh) | 2019-03-15 |
CN109471898B CN109471898B (zh) | 2021-05-25 |
Family
ID=65675289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811555534.5A Active CN109471898B (zh) | 2018-12-19 | 2018-12-19 | 一种用于对数据进行共享分发的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109471898B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143415A (zh) * | 2019-12-26 | 2020-05-12 | 政采云有限公司 | 一种数据处理方法、装置和计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105357103A (zh) * | 2015-10-19 | 2016-02-24 | 东南大学 | 一种gps/pda协同调查终端及其协同调查方法 |
CN105912950A (zh) * | 2016-04-13 | 2016-08-31 | 国信优易数据有限公司 | 一种数据共享发布系统及方法 |
CN105991670A (zh) * | 2015-01-28 | 2016-10-05 | 中兴通讯股份有限公司 | 数据分享方法、数据分享装置及终端 |
US20170041387A1 (en) * | 2015-08-07 | 2017-02-09 | Khalifa University of Science, Technology, and Research | Methods and systems for workload distribution |
CN106647412A (zh) * | 2017-01-17 | 2017-05-10 | 爱普(福建)科技有限公司 | 一种基于组态元件的分布式控制器之间的数据共享方法 |
-
2018
- 2018-12-19 CN CN201811555534.5A patent/CN109471898B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105991670A (zh) * | 2015-01-28 | 2016-10-05 | 中兴通讯股份有限公司 | 数据分享方法、数据分享装置及终端 |
US20170041387A1 (en) * | 2015-08-07 | 2017-02-09 | Khalifa University of Science, Technology, and Research | Methods and systems for workload distribution |
CN105357103A (zh) * | 2015-10-19 | 2016-02-24 | 东南大学 | 一种gps/pda协同调查终端及其协同调查方法 |
CN105912950A (zh) * | 2016-04-13 | 2016-08-31 | 国信优易数据有限公司 | 一种数据共享发布系统及方法 |
CN106647412A (zh) * | 2017-01-17 | 2017-05-10 | 爱普(福建)科技有限公司 | 一种基于组态元件的分布式控制器之间的数据共享方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143415A (zh) * | 2019-12-26 | 2020-05-12 | 政采云有限公司 | 一种数据处理方法、装置和计算机可读存储介质 |
CN111143415B (zh) * | 2019-12-26 | 2023-12-29 | 政采云有限公司 | 一种数据处理方法、装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109471898B (zh) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103885986B (zh) | 主备数据库同步的方法和装置 | |
CN104731896B (zh) | 一种数据处理方法及系统 | |
CN103782295B (zh) | 分布式数据管理系统中的查询说明计划 | |
CN105095247B (zh) | 符号数据分析方法和系统 | |
CN105608162B (zh) | 文件处理方法和装置 | |
CN106202070A (zh) | 文件存储处理方法与系统 | |
CN101963969B (zh) | Oracle RAC系统中实现负载均衡的方法和数据库服务器 | |
CN110188110A (zh) | 一种构建分布式锁的方法及装置 | |
CN106570145B (zh) | 一种基于分层映射的分布式数据库结果缓存方法 | |
CN112416960A (zh) | 多场景下的数据处理方法、装置、设备及存储介质 | |
EP0885424A1 (en) | Database systems having single-association structures and method for searching data in the database systems | |
CN113836184A (zh) | 一种业务持久化方法及装置 | |
CN110363663A (zh) | 基于区块链的数据批量处理方法、装置、设备及存储介质 | |
CN112307065A (zh) | 一种数据处理方法、装置及服务器 | |
CN109446225A (zh) | 数据缓存方法、装置、计算机设备及存储介质 | |
CN106407442A (zh) | 一种海量文本数据处理方法及装置 | |
US8135689B2 (en) | Performance optimized retrieve transformation nodes | |
US9275091B2 (en) | Database management device and database management method | |
CN109471898A (zh) | 一种用于对数据进行共享分发的方法及系统 | |
CN109597697A (zh) | 一种资源撮合处理方法及装置 | |
CN112035428A (zh) | 分布式存储系统、方法、装置、电子设备和存储介质 | |
CN111209311B (zh) | 用于处理数据的方法和装置 | |
CN110827001A (zh) | 一种会计事件记账方法、系统、设备和存储介质 | |
CN109559078B (zh) | 一种车辆调度方法、装置、设备及存储介质 | |
CN114489770A (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 |