kafka处理流式数据_通过Apache Kafka集成流式传输大数据

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

kafka处理流式数据

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

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

相关文章

Oracle入门(十一)之SQL

一、SQL组成 SQL的组成 核心SQL主要有四个部分: 1、数据定义语言即SQL DDL(Data Definition Language ),用于定义 SQL模式、基本表、视图、索引等结构。 CREATE、ALTER、DROP、REVOKE、GRANT2、数据操纵语言 即SQL DML(Data Manipulation Language)。 数…

常见 Java 字节码 指令 助记符

转自: 常见java字节码 有时候为了能理解JVM对程序所做的优化等,需要查看程序的字节码,因此知道了解一些常见的指令集很重要! 指令码 助记符 说明 0x00 nop 什么都不做 0x01 aconst_null 将null推送至栈顶 0x02…

等价关系和等价类_确定Java等价性的新时代?

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

数据结构(一)之链表

一、链表链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分&#xff…

高级数据结构实现——自顶向下伸展树

【0】README 1) 本文部分内容转自 数据结构与算法分析,旨在理解 高级数据结构实现——自顶向下伸展树 的基础知识; 2) 源代码部分思想借鉴了数据结构与算法分析,有一点干货原创代码,for original source …

测试框架 如何测试私有方法_高效的企业测试–测试框架(5/6)

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

数据结构(二)之链表反转

一、链表反转 1、反转非递归算法 2、反转递归算法 链表结点&#xff1a; package cn.edu.scau.mk;/**** author MK* param <T>*/ public class Node<T> {private T data;private Node<T> next null;public Node(T data) {this.data data;}public T getD…

web安全测试视频课程专题_有关有效企业测试的视频课程

web安全测试视频课程专题我已经制作了一些有关有效企业测试的视频。 在实际项目中&#xff0c;我仍然认为该主题非常重要。 这是我在测试Enterprise Java项目中的经验以及一些示例。 1.介绍和有效的Maven使用 在此视频中&#xff0c;我将介绍测试过程&#xff0c;并演示如何使…

网络——获取Web数

【0】README 0.1&#xff09; 本文描述转自 core java volume 2&#xff0c; 旨在理解 “网络——获取Web数” 的基础知识&#xff1b; 0.2&#xff09; for source code , please visit https://github.com/pacosonTang/core-java-volume/blob/master/coreJavaAdvanced/chap…

数据结构(三)之单链表反向查找

一、反向查找单链表 1、简单查找 先遍历获取单链表单长度n&#xff0c;然后通过计算得到倒数第k个元素的下标为n-k&#xff0c;然后查找下标为n-k的元素。 2、优化查找 先找到下标为k的元素为记录点p1&#xff0c;然后设置新的记录点p2的下标从0开始&#xff0c;同时遍历两个…

java使用:: 表达式_Java 13:切换表达式的增强功能

java使用:: 表达式您可能还记得我以前的文章&#xff0c;在Java 12中&#xff0c;传统的switch语句得到了增强&#xff0c;因此可以用作表达式。 在Java 13中&#xff0c;对该功能进行了进一步的更改 。 break语句不能再返回值。 相反&#xff0c;您必须使用新的yield语句&…

网络——Base64Encode(转:自定义Base64编码器——Base64Encode)

【0】README 0.1&#xff09; 本文source code 转自 core java volume 2 &#xff0c; 旨在了解 如何定义一个 编码器&#xff0c; 如Base64Encode &#xff1b; 0.2&#xff09;注意&#xff1a; 区别自定义的 Base64Encode 和 java.util.Base64 编码器 0.3&#xff09;fo…

数据结构(四)之单链表查找中间结点

一、查找单链表中间结点 1、简单查找 先遍历获取单链表单长度n&#xff0c;然后通过计算得到中间结点为n/2&#xff0c;然后查找下标为n/2的元素。 2、优化查找 先设置记录点fast、slow&#xff0c;下标均从0开始&#xff0c;fast走两步&#xff0c;slow走一步&#xff0c;同…

java面试常见面试问题_Java面试准备:15个Java面试问题

java面试常见面试问题并非所有的访谈都将重点放在算法和数据结构上—通常&#xff0c;访谈通常只侧重于您声称是专家的语言或技术。在此类访谈中&#xff0c;通常没有任何“陷阱”问题&#xff0c;而是它们要求您利用内存和使用该语言的经验–换句话说&#xff0c;它们测试您对…

网络——提交表单数据(post方式)

【0】README 1&#xff09; 本文文字描述 转自 core java volume 2 &#xff0c; 旨在理解 网络——提交表单数据 的基础知识 &#xff1b; 2&#xff09; for source code, please visit https://github.com/pacosonTang/core-java-volume/tree/master/coreJavaAdvanced/cha…

html5实现最智能大气的公司年会抽奖(源码)

文章目录 1.设计来源1.1 主界面1.3 数据配置1.4 抽奖效果1.5 中奖效果 2.效果和源码配置2.1 动态效果2.2 员工信息配置2.3 奖品信息配置2.4 抽奖音效配置2.5 源代码2.6 项目结构 源码下载 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151418/…

Linux入门(一)之权限指令系统管理

一、权限指令 普通用户需要使用sudo或者root超级管理员可以执行权限指令。 二、linux系统init程序 &#xff08;1&#xff09;运行init程序&#xff08;引用runoob.com&#xff09; init 进程是系统所有进程的起点&#xff0c;你可以把它比拟成系统所有进程的老祖宗&#xf…

java jsf_使用Java和JSF构建一个简单的CRUD应用

java jsf使用Okta的身份管理平台轻松部署您的应用程序 使用Okta的API在几分钟之内即可对任何应用程序中的用户进行身份验证&#xff0c;管理和保护。 今天尝试Okta。 JavaServer Faces&#xff08;JSF&#xff09;是用于构建Web应用程序的Java框架&#xff0c;其中心是作为用户…

网络——发送email(一个简单荔枝)

【0】README 1&#xff09; 本文文字描述 转自 core java volume 2 &#xff0c; 旨在理解 网络——发送email 的基础知识 &#xff1b; 2&#xff09; for souce code , please visit https://github.com/pacosonTang/core-java-volume/tree/master/coreJavaAdvanced/chapte…

算法七之希尔排序

一、希尔排序 &#xff08;1&#xff09;简介 希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序&#xff0c;是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL&#xff0e;Shell于1959年提出而得名。希尔排序是把记录按下标的一定增量…