通过Apache Kafka集成流式传输大数据

从实时实时过滤和处理大量数据,到将日志数据和度量数据记录到不同来源的集中处理程序中,Apache Kafka日益集成到各种系统和解决方案中。 使用CData Sync ,可以轻松地将此类解决方案应用于任何CRM,ERP或Analytics软件。

配置Apache Kafka目标以进行CData同步

在CData Sync中设置Kafka目标非常简单。 只需提供“服务器”和“端口”,然后复制命令就可以接管-不需要其他配置。 要设置这种连接,请首先导航到“连接”页面,然后单击“目标”选项卡,然后选择“ Kafka”。

1- Apache Kafka集成

指定服务器和端口属性。 如果启用了身份验证,请同时指定“用户”和“密码”属性。 单击“保存更改”和“测试连接”以保存更改,并确保CData Sync可以连接到Kafka服务器。

2- Apache Kafka集成

其他一些属性可用,并在“高级”选项卡中进行了分类:

  • 启用幂等:确保邮件仅传递一次。 在某些情况下,生产者可能会产生重复的消息。 为了进行验证,客户端可以在执行作业后将消耗的结果数与“受影响的记录”状态进行比较。
  • 序列化格式:指定产生的消息的格式; 可用值为JSON,XML和CSV
  • 主题:如果指定,该属性将覆盖表名称作为复制的目标主题。

增量更新如何工作

CData Sync使无缝更新变得无缝。 服务器不需要配置,并且所有必需的属性都已预先配置,具体取决于Source和Source表。

与SQL Server等其他数据库工具不同,Kafka不支持可靠的状态存储方式。 CData Sync使用本地SQLite数据库来解决此问题。 它将存储上次复制表的时间,并使用该时间戳过滤最新记录。 大多数企业系统都提供一个系统列来指定记录的最后更新日期,这足以满足此目的。

例如,QuickBooks Online中的“帐户”表包含此类列。 复制表:

并在修改三个记录后运行另一个副本:

某些表没有自动更新的列,该列保存记录的最后更新日期。 在这种情况下,别无选择,只能从一开始就完全复制结果。 Kafka提供了附加到消息的时间戳字段,可用于区分较新的结果。

QuickBooks Online中的department表没有用于指定上次更新时间的列。 复制此表将导致:

在添加两个新记录的同时再运行一次复制会产生:

优化查询

有多种方法可以管理CData Sync生成的消息大小。 根据Kafka服务器的配置,可能需要进行优化,或者仅考虑使复制性能有所提高就值得考虑。

压缩类型:指定如何压缩生成的数据。 可用选项为gzip,lz4,snappy或无。 指定非“ none”以外的压缩类型将减少消息有效负载。

最大批处理大小:指定在单个请求中发送的最大批处理大小(以字节为单位)。 批处理中充满了整个消息。 如果批次已等待一段时间,则可以提前发送批次而无需填充。 降低此值可能会降低性能,但是如果生成的消息超过服务器允许的最大消息大小,则可能有必要。

排除列:如果单个记录本身太大,则转换功能提供了一种从输出消息中省略某些列的方法。 这是最常用的聚合列。 要排除列,请导航至作业,然后单击所需表旁边的转换按钮:

接下来,取消选择聚合列:

最后,单击“确定”进行保存。

设置CData Sync来管理数据源

通过使用计划作业,可以设置完全自动的记录提取,Kafka消费者可以使用它来始终获取新条目的最新信息。 时间可以根据特定数据集的需要进行调整。

要安排作业,请选择所需的作业。 在“计划”部分下,选中“计划此作业自动运行”框。 最后,选择适当的间隔。

结论

CData Sync和Apache Kafka是强大的组合; 可以从任何数据源复制到Kafka使用者,以支持从分析到日志记录的一系列需求。 自动检测新记录并安排作业可确保新数据稳定地流向其订户。 压缩,转换和其他优化可进一步控制数据格式,量和频率。 下载CData Sync的30天免费试用版 ,今天就开始将大数据流式传输到Apache Kafka!


翻译自: https://www.javacodegeeks.com/2019/11/stream-big-data-with-apache-kafka-integration.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/340442.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php7 获取数据流,stream_socket_accept()

stream_socket_accept()(PHP 5, PHP 7)接受由stream_socket_server()创建的套接字连接说明stream_socket_accept(resource$server_socket[,float$timeout ini_get("default_socket_timeout")[,string&$peername]]):resource接受由stream_socket_server()创建的套…

浪潮as5300技术方案_浪潮智能存储AS5300G2双活解决方案

智慧医疗已成为提高就医效率、减少医疗差错的有效科技手段。江西省泰和中医院通过采用浪潮智能存储AS5300G2双活解决方案,构筑了一个满足医院数字化、信息化、智能化、可持续发展的信息支撑系统平台,使业务数据有保障、资源调配共享更高效、运维管理更方…

安卓php推送消息机制,深入剖析Android消息机制原理

在Android中,线程内部或者线程之间进行信息交互时经常会使用消息,这些基础的东西如果我们熟悉其内部的原理,将会使我们容易、更好地架构系统,避免一些低级的错误。在学习Android中消息机制之前,我们先了解与消息有关的…

python单元测试mock_Mock 在 Python 单元测试中的使用

本文讲述的是 Python 中 Mock 的使用。如何执行单元测试而不用考验你的耐心很多时候,我们编写的软件会直接与那些被标记为“垃圾”的服务交互。用外行人的话说:服务对我们的应用程序很重要,但是我们想要的是交互,而不是那些不想要…

php bin2hex(),PHP bin2hex() 函数 pack() 函数

bin2hex() 函数bin2hex() 函数把 ASCII 字符的字符串转换为十六进制值。字符串可通过使用 pack() 函数再转换回去。语法bin2hex(string)string必需。要转换的字符串。示例一把 "Shanghai" 转换为十六进制值$str bin2hex("Shanghai");echo($str); // 53686…

java 泛型示例_使用Java泛型的模板方法模式示例

java 泛型示例如果您发现除了某些部分外,您的许多例程完全相同,那么您可能需要考虑使用Template Method来消除容易出错的代码重复 。 这是一个示例:下面是两个做类似事情的类: 实例化并初始化Reader以从CSV文件读取。 阅读每一行…

vue如何使浏览器url固定_怎么给 vue的 vue-router url地址最后加上 / 斜杠

这样没用 - -应该需要怎么加?router.beforeEach((to, from, next) > {if (!checkJs.getCookie(token) && to.path ! / && to.path ! /resetpassword) {next(/);} else if (checkJs.getCookie(token) && from.path /login || checkJs.ge…

oracle dbstart,dbstart: 未找到命令

oracle 12c在centos最小化下安装后,数据库不随机启动,按照网上的教程,编辑了/etc/oratab文件增加了rc.local文件结果还是不随机启动,通过:systemctl status rc-local.service可以看到服务启动失败,提示如标…

确定Java等价性的新时代?

几个月前,我读了一篇题为“确定Java等价性的新时代?”的博客文章。 这在某种程度上与我当时在我那令人脚的副项目Java :: Geci中开发的内容非常吻合 。 我建议您暂停阅读,阅读原始文章,然后再返回此处,即使您知道一定比…

oracle数据modeling分类,由浅入深 NoSQL的五种主流数据模型

【IT168 技术】本文内容是对《NoSQL Data Modeling Techniques》一文的简单概述,原文对NoSQL的几种数据模型进行了详细深入的讨论。是了解NoSQL数据模型不过错过的全面资料。NoSQL的一些非功能性的特性,比如扩展性、性能以及一致性的讨论,目前…

sklearn svm 调参_网舟科技 | 使用SVM模型进行分类预测时的参数调整技巧

原标题:网舟科技 | 使用SVM模型进行分类预测时的参数调整技巧SVM是一种在小样本低维度下比较适用的非线性建模方法,相对比其他常用的算法(比如决策树),模型根据调参的好坏所表现的性能波动非常大。当我们决定使用SVM模型,模型的效…

dederss.php美国与,Dede经验:全站rss/连载和分类首页模板替换

我用的是Dedecms55 utf-8建的站。首先感谢开源工作者们的劳动,其次要感谢使用者写的N多问题与解答。我一个PHP初用者,能在一个月内,一个人把酷猫网http://www.92kcuat.com 建成今天这样,相信很多朋友都可以。当遇到问题时&#xf…

物联网协议之COAP简介及Java实践

目录 前言 一、COAP简介 1、关于COAP 2、COAP特点 3、基于COAP的NB-IoT接入流程 二、CoAP协议JAVA实践 1、californium介绍 2、Java集成 3、Maven 资源引入 4、定义Server端 5、Client调用 6、运行测试 总结 前言 今天平安夜,祝大家圣诞快乐&#xff0c…

遗传算法可用什么算法代替_获取可用密码算法的列表

遗传算法可用什么算法代替您如何了解可用的密码算法? Java规范列出了几种必需的密码,摘要等,但是提供程序通常提供的不止这些。 幸运的是,这很容易了解我们系统上的可用内容。 public class ListAlgorithms {public static void…

bp配置 sap_SAP转储订单之 STO without delivery

在《SAP转储订单STO小结》一文中,介绍了存转储订单(STO)的几种方式,在SAP Library中有相应的描述:1 Stock Transfer Between Plants in One Step2 Stock Transfer Between Plants in TwoSteps3 Stock Transport Order Without Delivery4 Stoc…

高效的企业测试–测试框架(5/6)

本系列文章的这一部分将介绍测试框架以及我在何时以及是否应用它们方面的想法和经验。 关于测试框架的思考 我对大多数测试框架不太满意的原因是,按照我的观点,它们大多增加了一些语法上的便利性和便利性,但本质上并不能解决拥有可维护的测…

linux 源码 目录,Linux系统主要目录及kernel源代码目录

1.在安装Linux后,先要了解清楚系统主要目录到底是干什么用的,避免以后再操作上的失误等。下面,就对Linux主要目录做一下简要说明:/boot:系统启动相关的文件,如内核、initrd,以及grub(bootloader…

[MEGA DEAL] 2020年完整的Java Master Class Bundle(96%)

通过超过62个小时的培训来掌握最流行的编程语言,从而树立良好的开发生涯 嘿,怪胎, 这一周,我们JCG促销专区 ,我们有另一个极端的报价 。我们正在提供一个巨大的96%off的完整2020 Python编程认证捆绑 。 立…

linux nc命令测试端口,Linux和Windows下的NC(Netcat)命令测试端口连通性

1、Linux OS 环境下(以Centos为例),使用nc命令分别测试TCP和UDP端口连通性:css安装方法:nginx在客户端和服务器端分别安装nc工具,安装命令以下:webyum install nc1. Linux OS下使用nc命令,实现TCP方式监听服…

javafx css颜色_JavaFX技巧7:使用CSS颜色常量/派生颜色

javafx css颜色在使用FlexCalendarFX时,我不得不定义一组颜色以可视化不同颜色的不同日历的控件。 每个日历不仅提供一种颜色,还提供几种:用于取消选择/选定/悬停状态的背景和文本颜色。 颜色曾在多个地方使用过,但为了简洁起见&…