CN114265903A - 一种数据收集和分发***及工作方法 - Google Patents
一种数据收集和分发***及工作方法 Download PDFInfo
- Publication number
- CN114265903A CN114265903A CN202111621777.6A CN202111621777A CN114265903A CN 114265903 A CN114265903 A CN 114265903A CN 202111621777 A CN202111621777 A CN 202111621777A CN 114265903 A CN114265903 A CN 114265903A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- message
- receiving
- application
- 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
- 238000013480 data collection Methods 0.000 title claims abstract description 15
- 238000009826 distribution Methods 0.000 title claims abstract description 15
- 238000000034 method Methods 0.000 title claims abstract description 10
- 238000013500 data storage Methods 0.000 claims abstract description 52
- 238000004519 manufacturing process Methods 0.000 claims abstract description 39
- 238000004891 communication Methods 0.000 claims abstract description 6
- 238000005516 engineering process Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 claims description 3
- 230000002688 persistence Effects 0.000 claims description 3
- 230000002085 persistent effect Effects 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims 3
- 238000012545 processing Methods 0.000 abstract description 2
- 238000011161 development Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据收集和分发***及工作方法,属于信息通信与数据处理技术领域。***,包括数据生产模块、数据应用模块、消息服务模块、数据存储模块和数据收发模块,其中,数据生产模块、数据应用模块和数据收发模块均连接有消息服务模块,数据收发模块连接有数据存储模块。本发明实现不同信息***之间的数据收集和分发,不需要暴露彼此的数据库连接信息,不存在数据安全风险,***安全性高。
Description
技术领域
本发明涉及一种数据收集和分发***及工作方法,属于信息通信与数据处理技术领域。
背景技术
随着互联网技术的发展,信息***越来越多,方便了人们生活,解放了人工,但因为不同信息***之间的技术差异等因素,造成了数据难以共享,存在比较严重的信息孤岛问题。
为实现数据共享,传统的技术方案是自主开发数据同步***,在数据库层面来实现不同信息***之间的数据同步和共享,此种方式多是一对一两个***之间的数据同步和共享。
当多个***之间彼此数据共享时,每个***可提供的数据内容、格式不同,每个***需求其他的***共享的数据格式也不同,中间涉及的数据转换,业务逻辑将变得非常复杂,且需要非常大的的开发工作量。并且多个不同***之间的数据同步和共享,需要暴露彼此的数据库连接信息,存在非常严重的数据安全风险。
从同步方式来说,多是基于数据库触发器的方式,当其中一个业务数据库中的数据发生变更时,***主动将数据转换、同步给其他需要共享的数据库中,多个共享数据库操作可以是串行的,也可以是并行的,无论哪种方式,都会对业务数据库产生严重的性能影响,且这种影响是随着共享数据节点的增加而加重的。
另一种常用的方式是使用ETL软件来实现不同***之间的数据转换和共享,虽减少了***的开发工作量,但仍存在暴露数据库连接和项目业务***本身性能的问题。
为此,本发明提出一种便于实现不同信息***之间的数据收集和分发的方法及***,来实现不同信息***之间的数据同步和共享。
发明内容
针对现有技术的不足,本发明提供一种数据收集和分发***及工作方法,实现不同信息***之间的数据收集和分发,不需要暴露彼此的数据库连接信息,不存在数据安全风险,***安全性高。
本发明的技术方案如下:
一种数据收集和分发***,包括数据生产模块、数据应用模块、消息服务模块、数据存储模块和数据收发模块,其中,
数据生产模块、数据应用模块和数据收发模块均连接有消息服务模块,数据收发模块连接有数据存储模块;
消息服务模块:作为各模块之间的通信平台,是整个***的基础模块,数据生产模块、数据应用模块和数据收发模块均在消息服务模块上注册、登录,消息服务模块向每个登录的模块发放唯一的编号,编号是其在消息服务模块上的标识;
数据生产模块:负责生产数据、更新维护数据;
数据收发模块:负责***中数据的集中管理,接收数据生产模块的数据,存储到数据存储模块中,也可提供数据给数据应用模块;在整个***中,仅数据收发模块与数据存储模块有数据交互,可以向数据存储模块写入、更新、删除数据,也可以从数据存储模块中读取数据,提供给其他数据应用模块。
数据存储模块:负责数据持久化的模块,仅和数据收发模块产生数据交互,不登录消息服务模块;
数据应用模块:***中使用数据的模块,设置有独立的数据存储模块,所有数据应用模块均在数据收发模块上注册,并声明各数据应用模块所需的数据类型,数据类型存储在数据收发模块的配置库中;数据收发模块在发送数据时,方便确定该向哪些数据应用模块发送消息。
优选的,数据生产模块、数据应用模块和数据收发模块与消息服务模块之间的通信技术采用TCP协议或UDP协议,也可以是基于其他协议的技术。
优选的,数据存储模块使用关系型数据库SQL Server、MySql或Oracle。
优选的,数据存储模块使用非关系型数据库Redis或MongoDB。
优选的,数据存储模块使用全文搜索引擎ElasticSearch。
上述数据收集和分发***的工作方法,步骤如下:
步骤101:数据生产模块通过新增、更新或删除操作产生新的数据;
步骤102:数据生产模块通过消息服务模块向数据收发模块发送一个消息,该消息包含数据生产模块编号、数据内容类型、数据操作类型和数据内容;
步骤103:数据收发模块收到消息后,解析消息内容和获取数据内容后,将数据存储到数据存储模块中;该数据存储模块包含数据库、文件和缓存等方式,也可以同时以多种方式进行存储。
步骤104:数据收发模块在完成数据存储后,从数据收发模块的配置库读取该数据应向哪些数据应用模块发送,使用广播消息发送新数据消息,该消息中应包含数据的唯一标识、数据类型、操作类型等内容。
步骤105:数据应用模块根据消息内容验证收到的消息,判断该数据是否为该应用模块所需数据,如需调取和使用的话,则进行步骤106。
步骤106:数据应用模块向数据收发模块发送调取数据的请求消息。
步骤107:数据收发模块从数据存储模块调取指定数据。
步骤108:数据收发模块以反馈请求消息的方式向数据应用模块提供数据,该步骤即可以是数据收发模块以点对点消息的方式将完整数据提供给数据应用模块,也可以是以点对点消息方式向数据应用模块提供一个数据接口地址。
步骤109:数据应用模块接收数据,并进行模块内的后续操作,该后续操作包含将数据本地持久化存储。
步骤110:数据应用模块以点对点消息的方式通知数据收发模块完成数据接收。
步骤111:数据收发模块更新该数据的被使用情况,便于数据存储中心的统计工作。
工作原理:在该***中,当数据生产模块产生新的数据后,通过消息服务模块向数据收发模块发送一个类型为“生产数据”的消息,数据收发模块收到类型为“生产数据”的消息后,解析消息内容和获取数据内容后,可将数据存储到数据存储模块中。
数据收发模块在完成数据存储和数据缓存后,从数据收发模块的配置库读取该数据应向哪些数据应用模块发送。使用广播消息发送新数据消息,该消息中应包含数据的唯一标识、数据类型等内容,以便数据应用模块判断是否需要调取、使用该数据。数据应用模块收到数据收发模块的广播消息后,根据数据类型判断是否为该模块所需要的数据,如是该模块所需要的数据,则向数据收发中心反馈需要调取该条数据,数据收发模块则从数据存储模块调取该数据,反馈给数据应用模块。
本发明的有益效果在于:
1、本发明提供一种数据收集和分发***及工作方法,实现不同信息***之间的数据收集和分发,不需要暴露彼此的数据库连接信息,不存在数据安全风险,***安全性高。
2、本发明业务逻辑简单,开发工作量小。
附图说明
图1为本发明的***网络拓扑图;
图2为本发明的使用流程图;
具体实施方式
下面通过实施例并结合附图对本发明做进一步说明,但不限于此。
实施例1:
如图1-2所示,本实施例提供一种数据收集和分发***,包括数据生产模块、数据应用模块、消息服务模块、数据存储模块和数据收发模块,其中,
数据生产模块、数据应用模块和数据收发模块均连接有消息服务模块,数据收发模块连接有数据存储模块;
消息服务模块:作为各模块之间的通信平台,是整个***的基础模块,数据生产模块、数据应用模块和数据收发模块均在消息服务模块上注册、登录,消息服务模块向每个登录的模块发放唯一的编号,编号是其在消息服务模块上的标识;
数据生产模块:负责生产数据、更新维护数据;
数据收发模块:负责***中数据的集中管理,接收数据生产模块的数据,存储到数据存储模块中,也可提供数据给数据应用模块;在整个***中,仅数据收发模块与数据存储模块有数据交互,可以向数据存储模块写入、更新、删除数据,也可以从数据存储模块中读取数据,提供给其他数据应用模块。
数据存储模块:负责数据持久化的模块,仅和数据收发模块产生数据交互,不登录消息服务模块;
数据应用模块:***中使用数据的模块,设置有独立的数据存储模块,所有数据应用模块均在数据收发模块上注册,并声明各数据应用模块所需的数据类型,数据类型存储在数据收发模块的配置库中;数据收发模块在发送数据时,方便确定该向哪些数据应用模块发送消息。
数据生产模块、数据应用模块和数据收发模块与消息服务模块之间的通信技术采用TCP协议。
数据存储模块使用关系型数据库SQL Server、MySql或Oracle。
上述数据收集和分发***的工作方法,步骤如下:
步骤101:数据生产模块通过新增、更新或删除操作产生新的数据;
步骤102:数据生产模块通过消息服务模块向数据收发模块发送一个消息,该消息包含数据生产模块编号、数据内容类型、数据操作类型和数据内容;
步骤103:数据收发模块收到消息后,解析消息内容和获取数据内容后,将数据存储到数据存储模块中;该数据存储模块包含数据库、文件和缓存等方式,也可以同时以多种方式进行存储。
步骤104:数据收发模块在完成数据存储后,从数据收发模块的配置库读取该数据应向哪些数据应用模块发送,使用广播消息发送新数据消息,该消息中应包含数据的唯一标识、数据类型、操作类型等内容。
步骤105:数据应用模块根据消息内容验证收到的消息,判断该数据是否为该应用模块所需数据,如需调取和使用的话,则进行步骤106。
步骤106:数据应用模块向数据收发模块发送调取数据的请求消息。
步骤107:数据收发模块从数据存储模块调取指定数据。
步骤108:数据收发模块以反馈请求消息的方式向数据应用模块提供数据,该步骤即可以是数据收发模块以点对点消息的方式将完整数据提供给数据应用模块,也可以是以点对点消息方式向数据应用模块提供一个数据接口地址。
步骤109:数据应用模块接收数据,并进行模块内的后续操作,该后续操作包含将数据本地持久化存储。
步骤110:数据应用模块以点对点消息的方式通知数据收发模块完成数据接收。
步骤111:数据收发模块更新该数据的被使用情况,便于数据存储中心的统计工作。
工作原理:在该***中,当数据生产模块产生新的数据后,通过消息服务模块向数据收发模块发送一个类型为“生产数据”的消息,数据收发模块收到类型为“生产数据”的消息后,解析消息内容和获取数据内容后,可将数据存储到数据存储模块中。
数据收发模块在完成数据存储和数据缓存后,从数据收发模块的配置库读取该数据应向哪些数据应用模块发送。使用广播消息发送新数据消息,该消息中应包含数据的唯一标识、数据类型等内容,以便数据应用模块判断是否需要调取、使用该数据。数据应用模块收到数据收发模块的广播消息后,根据数据类型判断是否为该模块所需要的数据,如是该模块所需要的数据,则向数据收发中心反馈需要调取该条数据,数据收发模块则从数据存储模块调取该数据,反馈给数据应用模块。
实施例2:
一种数据收集和分发***,结构如实施例1所述,不同之处在于,数据生产模块、数据应用模块和数据收发模块与消息服务模块之间的通信技术采用UDP协议,数据存储模块使用非关系型数据库Redis或MongoDB。
实施例3:
一种数据收集和分发***,结构如实施例1所述,不同之处在于,数据存储模块使用全文搜索引擎ElasticSearch。
Claims (6)
1.一种数据收集和分发***,其特征在于,包括数据生产模块、数据应用模块、消息服务模块、数据存储模块和数据收发模块,其中,
数据生产模块、数据应用模块和数据收发模块均连接有消息服务模块,数据收发模块连接有数据存储模块;
消息服务模块:数据生产模块、数据应用模块和数据收发模块均在消息服务模块上注册、登录,消息服务模块向每个登录的模块发放唯一的编号,编号是其在消息服务模块上的标识;
数据生产模块:负责生产数据、更新维护数据;
数据收发模块:负责***中数据的集中管理,接收数据生产模块的数据,存储到数据存储模块中,也可提供数据给数据应用模块;
数据存储模块:负责数据持久化的模块,仅和数据收发模块产生数据交互,不登录消息服务模块;
数据应用模块:设置有独立的数据存储模块,所有数据应用模块均在数据收发模块上注册,并声明各数据应用模块所需的数据类型,数据类型存储在数据收发模块的配置库中。
2.如权利要求1所述的数据收集和分发***,其特征在于,数据生产模块、数据应用模块和数据收发模块与消息服务模块之间的通信技术采用TCP协议或UDP协议。
3.如权利要求1所述的数据收集和分发***,其特征在于,数据存储模块使用关系型数据库SQL Server、MySql或Oracle。
4.如权利要求1所述的数据收集和分发***,其特征在于,数据存储模块使用非关系型数据库Redis或MongoDB。
5.如权利要求1所述的数据收集和分发***,其特征在于,数据存储模块使用全文搜索引擎ElasticSearch。
6.一种如权利要求1所述的数据收集和分发***的工作方法,其特征在于,步骤如下:
步骤101:数据生产模块通过新增、更新或删除操作产生新的数据;
步骤102:数据生产模块通过消息服务模块向数据收发模块发送一个消息,该消息包含数据生产模块编号、数据内容类型、数据操作类型和数据内容;
步骤103:数据收发模块收到消息后,解析消息内容和获取数据内容后,将数据存储到数据存储模块中;
步骤104:数据收发模块在完成数据存储后,从数据收发模块的配置库读取该数据应向哪些数据应用模块发送,使用广播消息发送新数据消息;
步骤105:数据应用模块根据消息内容验证收到的消息,判断该数据是否为该应用模块所需数据,如需调取和使用的话,则进行步骤106;
步骤106:数据应用模块向数据收发模块发送调取数据的请求消息;
步骤107:数据收发模块从数据存储模块调取指定数据;
步骤108:数据收发模块以反馈请求消息的方式向数据应用模块提供数据,该步骤即可以是数据收发模块以点对点消息的方式将完整数据提供给数据应用模块,也可以是以点对点消息方式向数据应用模块提供一个数据接口地址;
步骤109:数据应用模块接收数据,并进行模块内的后续操作,该后续操作包含将数据本地持久化存储;
步骤110:数据应用模块以点对点消息的方式通知数据收发模块完成数据接收;
步骤111:数据收发模块更新该数据的被使用情况,便于数据存储中心的统计工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111621777.6A CN114265903B (zh) | 2021-12-28 | 2021-12-28 | 一种数据收集和分发***及工作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111621777.6A CN114265903B (zh) | 2021-12-28 | 2021-12-28 | 一种数据收集和分发***及工作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114265903A true CN114265903A (zh) | 2022-04-01 |
CN114265903B CN114265903B (zh) | 2024-04-30 |
Family
ID=80830700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111621777.6A Active CN114265903B (zh) | 2021-12-28 | 2021-12-28 | 一种数据收集和分发***及工作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114265903B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013151529A2 (en) * | 2012-04-02 | 2013-10-10 | Basil Nasri Tawfig Moshtaha | Method and system for transmitting and/or receiving advertisement and data contents and providing multiple value added services on electronic communication device with a display mechanism |
CN110413677A (zh) * | 2019-07-30 | 2019-11-05 | 无锡柠檬科技服务有限公司 | 一种支持并发应用的分布式数据同步方法和*** |
CN110704192A (zh) * | 2019-09-30 | 2020-01-17 | 的卢技术有限公司 | 一种多元化数据云存储方法及*** |
CN111177246A (zh) * | 2019-12-27 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 一种业务数据的处理方法及装置 |
CN113742400A (zh) * | 2021-09-10 | 2021-12-03 | 哈尔滨工业大学(威海) | 一种基于自适应约束条件的网络数据获取***及方法 |
-
2021
- 2021-12-28 CN CN202111621777.6A patent/CN114265903B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013151529A2 (en) * | 2012-04-02 | 2013-10-10 | Basil Nasri Tawfig Moshtaha | Method and system for transmitting and/or receiving advertisement and data contents and providing multiple value added services on electronic communication device with a display mechanism |
CN110413677A (zh) * | 2019-07-30 | 2019-11-05 | 无锡柠檬科技服务有限公司 | 一种支持并发应用的分布式数据同步方法和*** |
CN110704192A (zh) * | 2019-09-30 | 2020-01-17 | 的卢技术有限公司 | 一种多元化数据云存储方法及*** |
CN111177246A (zh) * | 2019-12-27 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 一种业务数据的处理方法及装置 |
CN113742400A (zh) * | 2021-09-10 | 2021-12-03 | 哈尔滨工业大学(威海) | 一种基于自适应约束条件的网络数据获取***及方法 |
Non-Patent Citations (1)
Title |
---|
陈宇收;: "基于Mycat的分布式数据存储研究", 中国新通信, no. 22, 20 November 2018 (2018-11-20) * |
Also Published As
Publication number | Publication date |
---|---|
CN114265903B (zh) | 2024-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104333512B (zh) | 一种分布式内存数据库访问***及方法 | |
CN108536778B (zh) | 一种数据应用共享平台及方法 | |
CN108446335B (zh) | 基于数据库的异构***数据抽取及统一对外数据交换方法 | |
CN110912980B (zh) | 订单状态同步方法、***及存储介质 | |
US20030018701A1 (en) | Peer to peer collaboration for supply chain execution and management | |
CN106294741B (zh) | 一种自动化数据查询同步存储*** | |
CN112445863A (zh) | 一种数据实时同步方法及*** | |
CN109923847A (zh) | 调用链路的发现方法、装置、设备及存储介质 | |
CN101681461B (zh) | 管理电子用户社区的设备和方法 | |
CN110096545A (zh) | 一种基于大数据平台数据处理域构架方法 | |
CN109815294A (zh) | 一种无主节点分布并行数据存储方法和*** | |
CN104536965A (zh) | 一种大数据条件下的数据查询展示***及方法 | |
CN110213156A (zh) | 一种跨中心群组即时通信方法和*** | |
US8054764B2 (en) | Transmitting critical table information in databases | |
CN111858722A (zh) | 一种基于物联网的大数据应用***及方法 | |
CN102262561B (zh) | 数据库大批量任务处理的调度方法 | |
CN114265903A (zh) | 一种数据收集和分发***及工作方法 | |
CN109634757B (zh) | 一种地震行业大数据处理的数据采集方法 | |
CN117194156A (zh) | 一种多云平台的统一监控运维管理方法及*** | |
US20210152651A1 (en) | Method for the event-controlled retrieval of process data | |
CN108965483A (zh) | 物联网***大量设备的数据存储及推送的***实现方法 | |
KR20080029362A (ko) | 클라이언트와 서버 간의 인터페이스를 수행하는 매개장치및 그의 인터페이스방법 | |
CN113220732A (zh) | 一种联通同享的数据匹配方法及*** | |
CN111193614A (zh) | 连接全球不同地区网络环境的跨区域服务器***和方法 | |
CN106909636B (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 |