kafka
JasonLee实时计算
博主一直从事大数据开发的工作,工作经验非常丰富,目前主要专注于 Flink 实时计算领域,博客里面主要分享 spark 和 flink 的实战系列和源码分析的文章,欢迎交流和沟通,也欢迎关注我,希望和你一起学习,共同进步!
展开
-
kafka 的 auto.offset.reset 含义详解
最近也是有人问我kafka的auto.offset.reset设置为earliest后怎么结果和自己想象的不一样呢,相信很多人都对这个参数心存疑惑,今天来详细讲解一下:kafka-0.10.1.X版本之前:auto.offset.reset 的值为smallest,和,largest.(offest保存在zk中)kafka-0.10.1.X版本之后:auto.offset.reset ...原创 2018-11-22 20:34:52 · 34218 阅读 · 3 评论 -
【Spark实战系列】sparkstreaming 整合 kafka 如何实现 exactly-once 语义
1,sparkstreaming消费kafka有两种方法,这里我就不介绍了,网上关于这方面的资料很多,我就简单说一下两者的区别吧,(1)基于receiver的方式,是使用Kafka的高阶API来在ZooKeeper中保存消费过的offset的。这是消费Kafka数据的传统方式。这种方式配合着WAL机制可以保证数据零丢失的高可靠性,但是却无法保证数据被处理一次且仅一次,可能会处理两次。因为Spa...原创 2018-06-23 21:30:37 · 4648 阅读 · 16 评论 -
scala中的:: , +:, :+, :::, +++, 等操作的含义
初学scala者肯定会对:: , +:, :+, :::, +++,这些操作有些疑惑,今天总结一下,方便大家的使用package test/** * scala中的:: , +:, :+, :::, +++, 等操作; */object listTest { def main(args: Array[String]): Unit = { val list = List...原创 2018-07-21 11:58:04 · 20204 阅读 · 0 评论 -
java.util.ConcurrentModificationException: KafkaConsumer is not safe for multi-threaded access
最近在项目中遇到一个错,搞了很长时间才找到原因,记录一下,主要报错的代码如下:val rdd1 = r.filter(x=>x.value().contains("history_price")).map(y=>{ val json = JSONObject.fromObject(y.value()) json.remove("hi...原创 2018-09-22 12:43:03 · 5052 阅读 · 0 评论 -
【Spark实战系列】sparkstreaming 中 UpdateStateByKey 和 mapWithState 算子的使用(spark的状态管理)
今天我们主要来说一下sparkstreaming带状态的操作,updateStateByKey和mapWithState这两个方法,先看一下官网的介绍:UpdateStateByKey操作该updateStateByKey操作允许您在使用新信息持续更新时保持任意状态。要使用它,您必须执行两个步骤。 定义状态 - 状态可以是任意数据类型。 定义状态更新功能 - 使用函数指定如...原创 2018-09-16 21:46:18 · 2365 阅读 · 0 评论 -
【Spark实战系列】sparkstreaming 的 reduceByKeyAndWindow 窗口函数的用法详解
今天我们主要来说一下spark中reduceByKeyAndWindow窗口函数的使用方法;先看一下官网的图片吧:这个是sparkstreaming提供的窗口计算,允许你在一个滑动的窗口中进行计算,所有这些窗口操作都需要两个参数 -windowLength和slideInterval。(窗口长度-窗口的持续时间,滑动间隔- 执行窗口操作的间隔)比如说我们现在要每隔2秒,统计前3...原创 2018-09-02 15:55:19 · 8506 阅读 · 7 评论 -
【Spark实战系列】structuredstreaming 消费 kafka 数据实现简单的 wordcount
最近也是有很多同学问我,StructuredStreaming结合kafka的使用,我简单的写了一个wordcount的demo,后续会有更加具体和详细的介绍,今天先来一个简单的demo吧.代码在本地可以直接跑通.添加依赖: <dependency> <groupId>org.apache.spark</groupId> ...原创 2018-08-19 22:25:04 · 2803 阅读 · 9 评论 -
【Spark实战系列】sparkstreaming 写入 kafka 性能上不去该如何优化?
在实际的项目中,有时候我们需要把一些数据实时的写回到kafka中去,一般的话我们是这样写的,如下:kafkaStreams.foreachRDD(rdd => { if (!rdd.isEmpty()) { rdd.foreachPartition(pr => { val properties = new Properties()...原创 2018-08-05 17:17:52 · 5646 阅读 · 4 评论 -
java,scala读写kafka操作
今天主要简单写一下kafka的读写,我写了java,scala两个版本的,写法比较老,但都能用,已经测试过了,直接上代码吧;java版本:package com.cn.kafka;import java.util.Arrays;import java.util.HashMap;import java.util.Map;import java.util.Properties;i...原创 2018-07-27 22:59:39 · 7388 阅读 · 2 评论 -
kafka的常用命令
今天主要来介绍一些kafka的常用命令,记录一下,便于平时使用:1.kafka启动: ./kafka-server-start.sh ../config/server.properties &2.创建topic: ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --par...原创 2018-07-20 22:12:23 · 8630 阅读 · 0 评论