CN112565333A - 一种基于kafka-connect的数据传递方法 - Google Patents
一种基于kafka-connect的数据传递方法 Download PDFInfo
- Publication number
- CN112565333A CN112565333A CN202011210831.3A CN202011210831A CN112565333A CN 112565333 A CN112565333 A CN 112565333A CN 202011210831 A CN202011210831 A CN 202011210831A CN 112565333 A CN112565333 A CN 112565333A
- Authority
- CN
- China
- Prior art keywords
- kafka
- target
- data
- source
- connector
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Environmental & Geological Engineering (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于kafka‑connect的数据传递方法,包括:生成与源kafka的topic对应的kafka‑connector,并通过kafka‑connector生成对应的task任务;task任务监听该源kafka的topic是否有数据变化;如果确定task任务监听该源kafka的topic有数据变化,则判断源kafka是否与目标kafka联通;如果源kafka与目标kafka联通,执行推送数据到目标kafka的逻辑,并通过kafka‑connector记录对应的推送位置。通过上述方式,本发明所公开的基于kafka‑connect的数据传递方法能够使得信息数据的推送效率高,接近于实时推送,而且会自动记录推送的位置,在断开之后重新连接,会在对应的位置重新续上,大大提升了用户的体验。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种基于kafka-connect的数据传递方法。
背景技术
互联网发展迅速,已成为人们生活的重要组成部分和人类文明传播发展的重要载体,渗透到经济、政治、文化、社会生活各个方面,改变着人们的交往方式和思维方式。无论是在工业领域或者是在社会生活领域,互联网给人的改变是巨大的。
互联网成为大量信息数据的载体,文字、图片、数据库、音频、视频多媒体等不同类型数据大量出现于网络,再加以各式各样的网页设计,人类进入了信息爆炸的时代。互联网信息呈现了数据巨大、内容广泛、形式多样、增长迅速的特点。
由于互联网成为大量信息数据的载体,因此这些大量信息数据需要从一个节点进行推送到另一个节点,然而,传统方式中,信息数据的推送效率低,无法做到实时推送,大大降低了用户的体验。
发明内容
本发明主要解决的技术问题是提供一种基于kafka-connect的数据传递方法,信息数据的推送效率高,接近于实时推送,大大提升了用户的体验。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种基于kafka-connect的数据传递方法,其特征在于,包括:生成与源kafka的topic对应的kafka-connector,并通过kafka-connector生成对应的task任务;task任务监听该源kafka的topic是否有数据变化;如果确定task任务监听该源kafka的topic有数据变化,则判断源kafka是否与目标kafka联通;如果源kafka与目标kafka联通,执行推送数据到目标kafka的逻辑,并通过kafka-connector记录对应的推送位置。
进一步的,该方法还包括:如果确定源kafka与目标kafka不联通,task任务继续监测对应的目标kafka的联通性。
进一步的,该方法还包括:在执行推送数据到目标kafka的逻辑步骤时,当源kafka与目标kafka断开联通,记录推送数据到目标kafka的原推送位置,且在源kafka与目标kafka再次联通时,直接推送数据至原推送位置所对应的目标kafka中。
进一步的,该方法还包括:定时去检查kafka-connector的状态,并判断kafka-connector的状态是否正常;如果确定kafka-connector的状态不正常,对不正常的kafka-connector进行清理,并重新生成新的kafka-connector。
进一步的,所述判断目标kafka的端口与IP地址是否联通的步骤包括:判断是否需要发送目标数据;如果是,则从目标数据中解析出目标kafka的端口和IP地址;判断目标kafka的端口与IP地址是否联通。
进一步的,所述判断目标kafka的端口与IP地址是否联通的步骤包括:解析出目标数据中的附加字节,并将附加字节发送给IP地址,其中目标数据包括用于试探源kafka和目标kafka是否联通的附加字节;判断是否返回确认指令;如果返回确认指令,确定该目标kafka的端口和IP地址联通;如果不返回确认指令,确定该目标kafka的端口和IP地址不联通。
本发明的有益效果是:区别于现有技术的情况,本发明所公开的基于kafka-connect的数据传递方法包括:生成与源kafka的topic对应的kafka-connector,并通过kafka-connector生成对应的task任务;task任务监听该源kafka的topic是否有数据变化;如果确定task任务监听该源kafka的topic有数据变化,则判断源kafka是否与目标kafka联通;如果源kafka与目标kafka联通,执行推送数据到目标kafka的逻辑,并通过kafka-connector记录对应的推送位置。通过上述方式,本发明所公开的基于kafka-connect的数据传递方法能够使得信息数据的推送效率高,接近于实时推送,而且会自动记录推送的位置,在断开之后重新连接,会在对应的位置重新续上,大大提升了用户的体验。
附图说明
图1是本发明基于kafka-connect的数据传递方法的流程示意图。
具体实施方式
下面结合附图和实施方式对本发明进行详细说明。
本发明公开一种基于kafka-connect的数据传递方法,如图1所示,该基于kafka-connect的数据传递方法包括以下步骤:
步骤S101:生成与源kafka的topic对应的kafka-connector(连接器),并通过kafka-connector生成对应的task任务。
步骤S102:task任务监听该源kafka的topic是否有数据变化。
应理解,在一些实施例中,该源kafka的topic是否有数据变化主要是只指源kafka的topic的数据是否增加了目标kafka的IP地址信息,即当源kafka的topic的数据增加了目标kafka的IP地址信息时,说明源kafka的topic的数据需要发送至IP地址所对应的目标kafka,则源kafka的topic有数据变化。进一步的,在另一些实施例中,该源kafka的topic是否有数据变化主要是只指源kafka的topic的数据是否转换为待发送格式,即当源kafka的topic的数据转换为待发送格式时,说明源kafka的topic有数据变化,又或者当源kafka的topic的数据转换为待发送格式且增加了目标kafka的IP地址信息时,说明源kafka的topic有数据变化,需要准备发送,又或者当源kafka的topic的数据增加了待发送标号且增加了目标kafka的IP地址信息时,说明源kafka的topic有数据变化,需要准备发送。
如果确定task任务监听该源kafka的topic有数据变化,则执行步骤S103:判断源kafka是否与目标kafka联通。应理解,如果确定task任务监听该源kafka的topic没有数据变化,则继续执行步骤S102。
如果源kafka与目标kafka联通,执行步骤S104:执行推送数据到目标kafka的逻辑,并通过kafka-connector记录对应的推送位置。也就是说,本实施例会自动记录推送的位置,在源kafka与目标kafka断开之后重新连接,会在对应的推送位置重新续上。
应理解,执行推送数据到目标kafka的逻辑主要是源kafka将数据推送至目标kafka的过程,而这过程是基于kafka集群的kafka-connect框架,能够使得信息数据的推送效率高,接近于实时推送。
如果确定源kafka与目标kafka不联通,执行步骤S105:task任务继续监测对应的目标kafka的联通性。
应理解,该基于kafka-connect的数据传递方法还包括:在执行推送数据到目标kafka的逻辑步骤时,当源kafka与目标kafka断开联通,记录推送数据到目标kafka的原推送位置,且在源kafka与目标kafka再次联通时,直接推送数据至原推送位置所对应的目标kafka中。值得注意的是,当源kafka与目标kafka断开联通,目标kafka会保存当前已经接收到的一半数据,并不会删除,当源kafka与目标kafka再次联通时,目标kafka继续接收另一半数据,使得最终形成完整数据。
应理解,该基于kafka-connect的数据传递方法还包括:
步骤A1:定时去检查kafka-connector的状态,并判断kafka-connector的状态是否正常。
步骤A2:如果确定kafka-connector的状态不正常,对不正常的kafka-connector进行清理,并重新生成新的kafka-connector。应理解,当重新生成新的kafka-connector,新的kafka-connector会获取不正常的kafka-connector的数据以能够使得源kafka与目标kafka能够联通,并在数据获取完毕后删除不正常的kafka-connector。
在本实施例中,步骤S103中判断源kafka是否与目标kafka联通的步骤包括:
步骤S1031:判断是否需要发送目标数据。
如果确定需要发送目标数据,则执行步骤S1032:如果是,则从目标数据中解析出目标kafka的端口和IP地址。应理解,IP地址是与源kafka连通的,因此可以直接从目标数据中解析出源kafka所对应的IP地址。
步骤S1033:判断目标kafka的端口与IP地址是否联通。也就是说,在数据需要发送时才进行判断目标kafka的端口与IP地址是否联通是否联通的步骤。
进一步的,步骤S1033中判断判断目标kafka的端口与IP地址是否联通的步骤包括:
步骤S1034:解析出目标数据中的附加字节,并将附加字节发送给IP地址。应理解,目标数据包括用于试探源kafka和目标kafka是否联通的附加字节,而字节比较小的附加字节是特意加上去的。
步骤S1035:判断是否返回确认指令。应理解,当目标kafka从IP地址接收到附加字节时,目标kafka会产生确认指令,说明目标kafka的端口与IP地址连通,即源kafka和目标kafka联通。当源kafka发送附加字节至IP地址后,在预定时间段内未收到确认指令,说明目标kafka的端口与IP地址不连通,即源kafka和目标kafka不联通。
步骤S1036:如果返回确认指令,确定该目标kafka的端口和IP地址联通;
步骤S1037:如果不返回确认指令,确定该目标kafka的端口和IP地址不联通。
综上,本发明所公开的基于kafka-connect的数据传递方法包括:生成与源kafka的topic对应的kafka-connector,并通过kafka-connector生成对应的task任务;task任务监听该源kafka的topic是否有数据变化;如果确定task任务监听该源kafka的topic有数据变化,则判断源kafka是否与目标kafka联通;如果源kafka与目标kafka联通,执行推送数据到目标kafka的逻辑,并通过kafka-connector记录对应的推送位置。通过上述方式,本发明所公开的基于kafka-connect的数据传递方法能够使得信息数据的推送效率高,接近于实时推送,而且会自动记录推送的位置,在断开之后重新连接,会在对应的位置重新续上,大大提升了用户的体验。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种基于kafka-connect的数据传递方法,其特征在于,包括:
生成与源kafka的topic对应的kafka-connector,并通过kafka-connector生成对应的task任务;
task任务监听该源kafka的topic是否有数据变化;
如果确定task任务监听该源kafka的topic有数据变化,则判断源kafka是否与目标kafka联通;
如果源kafka与目标kafka联通,执行推送数据到目标kafka的逻辑,并通过kafka-connector记录对应的推送位置。
2.根据权利要求1所述的方法,其特征在于,该方法还包括:
如果确定源kafka与目标kafka不联通,task任务继续监测对应的目标kafka的联通性。
3.根据权利要求1所述的方法,其特征在于,该方法还包括:
在执行推送数据到目标kafka的逻辑步骤时,当源kafka与目标kafka断开联通,记录推送数据到目标kafka的原推送位置,且在源kafka与目标kafka再次联通时,直接推送数据至原推送位置所对应的目标kafka中。
4.根据权利要求1所述的方法,其特征在于,该方法还包括:
定时去检查kafka-connector的状态,并判断kafka-connector的状态是否正常;
如果确定kafka-connector的状态不正常,对不正常的kafka-connector进行清理,并重新生成新的kafka-connector。
5.根据权利要求1所述的方法,其特征在于,所述判断源kafka是否与目标kafka联通的步骤包括:
判断是否需要发送目标数据;
如果是,则从目标数据中解析出目标kafka的端口和IP地址;
判断目标kafka的端口与IP地址是否联通。
6.根据权利要求5所述的方法,其特征在于,所述判断目标kafka的端口与IP地址是否联通的步骤包括:
解析出目标数据中的附加字节,并将附加字节发送给IP地址,其中目标数据包括用于试探源kafka和目标kafka是否联通的附加字节;
判断是否返回确认指令;
如果返回确认指令,确定该目标kafka的端口和IP地址联通;
如果不返回确认指令,确定该目标kafka的端口和IP地址不联通。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011210831.3A CN112565333A (zh) | 2020-11-03 | 2020-11-03 | 一种基于kafka-connect的数据传递方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011210831.3A CN112565333A (zh) | 2020-11-03 | 2020-11-03 | 一种基于kafka-connect的数据传递方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112565333A true CN112565333A (zh) | 2021-03-26 |
Family
ID=75041612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011210831.3A Pending CN112565333A (zh) | 2020-11-03 | 2020-11-03 | 一种基于kafka-connect的数据传递方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112565333A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076508A (zh) * | 2023-10-18 | 2023-11-17 | 江苏数兑科技有限公司 | 一种流数据处理系统支持批数据处理的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026917A (zh) * | 2017-06-16 | 2017-08-08 | 智者四海(北京)技术有限公司 | 用于消息推送的方法及系统 |
US20190102415A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | Recreating an oltp table and reapplying database transactions for real-time analytics |
CN110809050A (zh) * | 2019-11-08 | 2020-02-18 | 智者四海(北京)技术有限公司 | 基于流式计算的个性化推送系统及方法 |
CN110865974A (zh) * | 2019-09-27 | 2020-03-06 | 苏州浪潮智能科技有限公司 | 一种基于kafka智能加载离线SQL表数据的方法 |
-
2020
- 2020-11-03 CN CN202011210831.3A patent/CN112565333A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107026917A (zh) * | 2017-06-16 | 2017-08-08 | 智者四海(北京)技术有限公司 | 用于消息推送的方法及系统 |
US20190102415A1 (en) * | 2017-09-29 | 2019-04-04 | Oracle International Corporation | Recreating an oltp table and reapplying database transactions for real-time analytics |
CN110865974A (zh) * | 2019-09-27 | 2020-03-06 | 苏州浪潮智能科技有限公司 | 一种基于kafka智能加载离线SQL表数据的方法 |
CN110809050A (zh) * | 2019-11-08 | 2020-02-18 | 智者四海(北京)技术有限公司 | 基于流式计算的个性化推送系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076508A (zh) * | 2023-10-18 | 2023-11-17 | 江苏数兑科技有限公司 | 一种流数据处理系统支持批数据处理的方法 |
CN117076508B (zh) * | 2023-10-18 | 2023-12-29 | 江苏数兑科技有限公司 | 一种流数据处理系统支持批数据处理的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2460258B1 (en) | Method and device for auto-generating goose signal connection topology from substation level | |
CN103546467B (zh) | 在TCP/IP网络上应用Modbus RTU协议的方法 | |
WO2016004733A1 (zh) | 基于远程调阅和信息交互的主配网图/模/数集成系统及方法 | |
CN103095819A (zh) | 推送数据信息的方法及数据信息推送系统 | |
CN102932352A (zh) | 和客户端进行通信的方法以及服务器 | |
CN108170832B (zh) | 一种面向工业大数据的异构数据库的监控系统及监控方法 | |
US20230239358A1 (en) | Method for fowarding data, device, storage medium and data transmission system | |
CN109325077A (zh) | 一种基于canal和kafka实现实时数仓的系统 | |
CN102904903A (zh) | 通信系统和通信方法 | |
CN115080275B (zh) | 一种基于实时数据模型的孪生服务组件及其方法 | |
CN106487891A (zh) | 一种基于kafka的处理消息的方法 | |
CN104901961B (zh) | 一种数据推送方法、服务器、终端及系统 | |
CN112600881A (zh) | 提供物联网服务的方法、设备、服务器及存储介质 | |
CN103513986B (zh) | 一种在无操作系统设备中利用CGI技术实现动态web服务器的方法 | |
CN114866528A (zh) | 一种基于MQTT和Websocket的数据通讯方法 | |
CN112565333A (zh) | 一种基于kafka-connect的数据传递方法 | |
CN102446193A (zh) | 一种搜索微博消息的方法及装置 | |
CN109508273A (zh) | 一种基于Web的电动汽车充电站监控系统及数据获取方法 | |
CN111931105A (zh) | 一种kafka消费指定推送时间数据处理方法 | |
CN118113766A (zh) | 批量数据处理方法、装置、设备及介质 | |
CN108681588A (zh) | 一种接口访问实时统计方法及系统 | |
CN103633736A (zh) | 从变电子站至主站的在线监测通信方法 | |
CN116089545A (zh) | 一种采集存储介质变更数据入数据仓库的方法 | |
CN113973105B (zh) | 一种简化服务总线上soap消息的系统及方法 | |
CN113918845B (zh) | 可识别状态的外链url的生成方法、装置及存储介质 |
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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20230120 |