
kafka
QYHuiiQ
谁动了我的代码
展开
-
Flink DataStream之从Kafka读数据
如图说明flink从kafka成功读取数据。原创 2023-07-04 22:28:42 · 923 阅读 · 0 评论 -
Flink读取kafka数据报错
【代码】Flink读取kafka数据报错。原创 2023-07-04 22:26:49 · 3257 阅读 · 0 评论 -
使用splunk for kafka connect实现连通,但是数据却没有进入splunk
在实现splunk与kafka数据通路时,需要的配置都配了,在kafka自身的consumer中可以读取到producer发送的数据,但是数据却一直没有进到splunk。思路:由于在kafka的consumer中可以读到数据,但是在splunk里读不到,就说明问题很可能出在connect这一环节,所以查看kafka的connect.log(kafka_2.12-2.8.1/logs/):从上面的报错信息可以看出是序列化错误,想到之前在connect-distributed.properti.原创 2021-12-07 21:29:28 · 499 阅读 · 0 评论 -
使用splunk for kafka connector实现splunk与kafka数据通路
在前一篇博客(使用DB Connect实现oracle与splunk数据通路_QYHuiiQ-优快云博客)中已经安装过splunk enterprise了,这里直接安装kafka。官网下载kafkahttps://kafka.apache.org/downloadsgithub上下载splunk for kafka connector的jarhttps://github.com/splunk/kafka-connect-splunk在latest页面中下载jar启动sp原创 2021-12-07 20:52:43 · 900 阅读 · 0 评论 -
kafka _schema topic 损坏问题WARN The replication factor of the schema topic _schemas is less than
有的时候可能会遇到_schema topic被人损坏的问题,会报如下的警告:WARN The replication factor of the schema topic _schemas is less than the desired one of 3. If this is a production environment, it's crucial to add more brokers and increase the replication factor of the topic. 解原创 2020-07-16 21:11:36 · 676 阅读 · 0 评论 -
This member will leave the group because consumer poll timeout has expired.
在使用logstash读取kafka中的数据时过一段时间之后logstash会报出leave group的错误,此后数据不再读入。怀疑是由于kafka每次poll的量太大或者poll的间隔太小,导致上一次度的数据还没有消费完,就又要去poll,但实际上此时无法继续去拉取新数据,这样如果时间久了,可能就会认为consumer停止了通信,从而被驱除group。根据自己的应用场景数据量对input中的如下三个配置项做出了测试后的调整:max_poll_interval_ms=>"60000"ma原创 2020-06-06 15:47:39 · 4815 阅读 · 0 评论 -
一次kafka producer没有close引发的思考
这个问题研究了两天,最后被一句话点醒。在此记录一下整个问题的思考过程。 在上一篇博客中实现了一个Avro序列化器https://blog.youkuaiyun.com/QYHuiiQ/article/details/88723584,但是在实现的过程中producer里使用send(record)这种最简单的方式发送消息时一直没有在topic中读取到这条消息(现在依旧可以看到上一...原创 2019-03-23 12:22:58 · 11625 阅读 · 14 评论 -
启动kafka connect worker进程报错
执行[root@localhost kafka_2.12-2.1.0]# bin/connect-distributed.sh config/connect-distributed.properties &时报错:ERROR Stopping due to error (org.apache.kafka.connect.cli.ConnectDistributed:117)java...原创 2019-03-26 20:59:57 · 1981 阅读 · 0 评论 -
java.lang.IllegalArgumentException: Number of groups must be positive.
在使用kafka connector功能连接oracle时,出现了下面的错误:java.lang.IllegalArgumentException: Number of groups must be positive.这个报错不太明显,最后在google上面发现出现这个问题是因为在oracle的内部,表名和列名都是大写的,所以在写connector的配置文件时里面的table.white...原创 2019-04-08 19:41:20 · 1200 阅读 · 0 评论 -
kafka connect中连接oracle出错:No suitable driver found for
在实现kafka connector 的功能连接Oracle时出现了下面这个错误:"error_code":400,"message":"Connector configuration is invalid and contains the following 2 error(s):\nInvalid value java.sql.SQLException: No suitable drive...原创 2019-04-08 19:49:18 · 2160 阅读 · 0 评论 -
使用kafka connect 实现从oracle到kafka的数据同步
1.登陆Oracle:[oracle@localhost ~]$ lsnrctl status[oracle@localhost ~]$ lsnrctl start[oracle@localhost ~]$ sqlplus /nologSQL> conn / as sysdbaSQL> startup这样oracle就启动了。为了使在kafka的服务器上可以...原创 2019-04-09 20:57:44 · 17092 阅读 · 18 评论 -
kafka connect启动时找不到文件
在启动connector时遇到下面的报错:但是我检查了一下文件是存在的。然后我就在kafka的目录下cat 文件名看看是不是存在,结果出现了诧异的地方:第一种是复制之前的命令,第二种是我手敲的,这两条语句我检查的没有区别,为什么会一个是对的一个是错的。至于原因暂且不纠结,至少知道下次再遇到这种情况就手敲一遍试试。...原创 2019-04-09 22:08:14 · 976 阅读 · 0 评论 -
kafka streams中kstreams join globalktable时使用flatMapValues()将一条数据变成多条数据
需求:有一个topic:student-grade是学生的各门课程的成绩,第二个topic:student-course是学生的弱势学科,需要重点关注的,现在想把每个学生的每个弱势科目的成绩单独变成一条记录,这样可以达到老师只看学生弱势科目的成绩。这个需求并不是真实的,只是在这里想来实现一下kstream join globalktable时只能得到一条记录,如果在一条记录里面存在多个值的集合...原创 2019-04-21 19:05:31 · 1568 阅读 · 0 评论 -
org.apache.kafka.streams.errors.InvalidStateStoreException
在使用kafka streams 时使用了globalktable,需要用到statestore,在使用过程中出现如下异常:Exception in thread "mywordcount-27abf25a-4a79-47ac-8114-86694871acee-StreamThread-1" org.apache.kafka.streams.errors.StreamsException...原创 2019-04-21 19:09:30 · 1386 阅读 · 0 评论 -
springboot整合kafka
1.启动kafka创建topic:[root@localhost kafka_2.12-2.1.0]# bin/kafka-topics.sh --create --zookeeper 192.168.184.128:2181 --replication-factor 1 --partitions 1 --topic springboot-topic2.创建springboot项...原创 2019-06-02 12:05:41 · 672 阅读 · 0 评论 -
kafka streams中自定义state store实现对状态存储的灵活操作
1.启动zookeeper :[root@localhost kafka_2.12-2.1.0]# bin/zookeeper-server-start.sh -daemon config/zookeeper.properties2.启动kafka:[root@localhost kafka_2.12-2.1.0]# bin/kafka-server-start.sh config...原创 2019-06-16 16:27:20 · 4571 阅读 · 2 评论 -
自定义kafka分区器Partitioner
研究分区器先从ProducerRecord看起,因为分区是在每条record的基础上实现的。ProducerRecord的字段:在构造函数中可以指定partition,消息会直接放在指定的分区上。如果不指定partion,那么就会以默认分区器,按照key的散列算法进行分区,分布在主题的所有分区上,有可能放在不可用的分区上。相同的key会有相同的散列值,相同的散列值会在同一个分区,也就是...原创 2019-03-25 21:40:41 · 2889 阅读 · 0 评论 -
使用kafka中提供的Avro序列化框架实现序列化
Avro是一种与编程语言无关的序列化格式,Avro数据通过与语言无关的schema来定义,schema通过json来描述,不过一般会使用二进制文件。Avro在读写文件时需要用到schema,schema一般会被内嵌在数据文件里。Avro有一个特性,当负责写消息的应用程序使用了新的schema,负责读消息的应用程序可以继续处理消息而无需做任何改动。缺点:每条kafka记录中都嵌入了schema,这会...原创 2019-03-21 19:59:54 · 6671 阅读 · 4 评论 -
kafka初学
kafka官方文档中文版:http://kafka.apachecn.org/documentation.htmlkafka是一个分布式消息系统,使用scala语言编写。被用作构建实时数据管道及数据流的应用,它可以横向扩展(横向扩展:比较典型的就是分布式,多台机器通过网络串联起来对外提供服务,每台机器都有自己的能力,组合起来提高综合能力。优点是成本低。缺点是不好维护。纵向扩展:在一台机器上,不...原创 2019-01-19 13:43:54 · 245 阅读 · 0 评论 -
kafka在java程序中实现生产者与消费者的应用
官方API文档:http://kafka.apache.org/documentation/#producerapi参考书籍:《kafka权威指南》注意:kafka的主题只能用命令创建,在代码中无法创建。1.创建maven项目,配置pom文件:<dependencies> <!-- kafka --> <dependency> ...原创 2019-01-24 21:05:58 · 1066 阅读 · 0 评论 -
centos7下kafka2.12-2.1.0的安装及使用
kafka可以安装在很多种操作系统上,我们常用的是安装在Linux上。准备工作:1.下载安装vm,centos7(http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso)下载哪个都行。(安装centos7的教程:https://blog.youkuaiyun.com/QYHuiiQ/article/...原创 2019-01-20 14:19:58 · 4589 阅读 · 3 评论 -
kafka streams2.1.0官方wordcount代码实现过程中遇到的问题(NoSuchMethodError,UnsatisfiedLinkError)
1.出现Exceptioninthread"main"java.lang.NoSuchMethodError:solution:把pom文件中的kafka stremas的版本号要与kafka安装的版本号改为一致。可能你在参考网上的示例代码时遇到很多都是老版本的API,他们使用的一些方法和类可能和你安装的新版本的不太一样,所以这个时候就要参考官方API中的示例。当你按照自己的新版...原创 2019-01-30 22:00:08 · 623 阅读 · 0 评论 -
初学kafka streams2.1.0原理及代码实现(wordcount)
前面学习了kafka的基础知识,给大家推荐《kafka权威指南》这本书,这次学习kafka streams,参考书籍:《kafka从入门到实践》,电子书分享给大家。但是书中给出的有些示例是比较老的版本,有些类的用法已经更新了,我使用的是最新版的2.1.0,在此推荐大家参考官方文档:http://kafka.apache.org/documentation/streams/《kafka权威指南》...原创 2019-01-30 22:48:42 · 1186 阅读 · 1 评论 -
kafka streams 中streams.errors.StreamsException: java.nio.file.DirectoryNotEmptyException
在项目中使用到了cleanUp()及state store,可能会出现下面这种异常:Exception in thread "main" org.apache.kafka.streams.errors.StreamsException: java.nio.file.DirectoryNotEmptyException: C:\IT\tool\kafka-state-store\mywindo...原创 2019-02-16 19:47:56 · 4050 阅读 · 0 评论 -
kafka streams中多个window统计count
场景描述:统计某个商品(商品id)在10min,30min,1hour内的购买量。我们把商品的每一次购买事件作为流,对其加窗,统计各需求时间段内的购买次数。1.先创建一个读取数据的topic:window-count,再创建一个统计结果输出的topic:window-count-out。2.编写代码。3.启动程序WindowCount。package teststreams;...原创 2019-02-16 19:51:17 · 1675 阅读 · 2 评论 -
kafka connect连接器从文件(文件数据源)中读取数据输出到kafka,并从topic中读取数据输出到文件(文件数据池)
本例中使用到的文件连接器和JSON转换器都是kafka自带的。1.进入到kafka安装目录下启动zookeeper及kafka:kafka安装及启动链接:https://blog.youkuaiyun.com/QYHuiiQ/article/details/865565912.启动一个分布式的worker进程。为了实现高可用性,真实的生产环境一般需要至少2~3个worker集群。在此,我们只启动一...原创 2019-03-06 22:50:06 · 4743 阅读 · 0 评论 -
kafka与elk整合搭建日志系统
版本:centos7jdk1.8kafka2.12-2.1.0elasticsearch6.6.0logstash6.6.0kibana6.6.0准备工作:logstash,elasticsearch,kafka 的运行都需要java虚拟机。本机在centos7下已安装好JDK1.8及kafka2.12-2.1.0,安装参考链接:https://blog.c...原创 2019-03-24 21:05:46 · 3558 阅读 · 0 评论 -
Error when sending message to topic wyh-elk-kafka-topic with key: null
在kafka中向topic中发送消息报错:[root@localhostkafka_2.12-2.1.0]#bin/kafka-console-producer.sh--broker-list192.168.184.128:2181--topicwyh-elk-kafka-topic>wyh[2019-03-1321:21:06,457]ERRORErrorw...原创 2019-03-14 18:56:13 · 1771 阅读 · 0 评论 -
kafka中branch的用法示例
在kafka中有的时候我们在进行流处理时可能会遇到一些不符合流处理逻辑的数据,而这些数据如果进入到流处理中可能会出现异常,所以我们在进行流处理之前可以先对读取的流数据进行预判断,如果是异常数据,就直接放到异常topic中。1.创建三个topic:wyh-in是读取数据的topic,wyh-out是正常的数据经过流处理之后进入的topic,wyh-exc是异常数据进入的topic...原创 2019-03-19 20:51:29 · 794 阅读 · 0 评论 -
[B cannot be cast to java.lang.String
在kafka的branch应用中出现了上述异常,原来是这样写的:properties.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");properties.put("value.serializer", "org.apache.kafka.common.serializatio...原创 2019-03-19 21:00:12 · 6293 阅读 · 1 评论 -
org.apache.avro.SchemaParseException
在使用kafka的avro定义schema的时候,出现了这个异常:原来代码是这么写的:String schemaStr = "{\"type\":\"record\",\"name\";\"Student\",\"fields\":[{\"name\":\"id\","type\":\"int\"},{\"name\":\"name\",\"type":"String\"},{\"na...原创 2019-03-20 19:30:59 · 2169 阅读 · 0 评论 -
kafka自定义序列化类和反序列化类
在kafka中,broker希望收到的消息的key和value都是字节数组,所以在创建生产者对象的时候必须指定序列化器。将消息进行序列化才可以进行网络传输,在kafka中默认提供了ByteArraySerializer(字节数组序列化器)、StringSerializer(字符串序列化器)、IntegerSerializer(整形序列化器)。如果发送到Kafka的消息不是提供的这几种类型,那么可以...原创 2019-03-20 21:30:12 · 4279 阅读 · 0 评论 -
使用java代码连接不上kafka的解决方案(生产者与消费者都没能连上)
本篇修改设置等操作是基于上一篇kafka安装配置操作基础之上:https://blog.youkuaiyun.com/QYHuiiQ/article/details/86556591使用命令可以生产并消费成功,但是使用java代码生产的消息没能写入kafka中,尝试以下解决方案,以下是我解决问题时的倒序方法,你也可以尝试着从第一步开始:1.把代码中的localhost改为服务器IP:这一步很重要!...原创 2019-01-23 21:55:38 · 9965 阅读 · 2 评论