首页 > 代码库 > spark streaming基础知识1
spark streaming基础知识1
1.怎么理解spark streaming中的dstream?
它是spark streaming的基础数据结构,代表着(time,RDD)序列,有两种生成方式,一种是
基于流数据创建(kafka,socket...),一种是基于已有的dstream进行转换产生.
在spark streaming作业运行的时候,Dstream会根据它的duration,定期生成RDD.
而且会进一步根据rdd生成作业,排入队列,调度器触发执行.
由此可以理解,为什么说spark streaming是微批处理的.它提前生成好一批一批的作业,
调度执行.并不是真正的实时的流.
2.kafkaUitls.createstream和createDirectStream有什么不同?
directStream:返回的Rdd的partition的数量与topic/partitions的数量一致,不需要写代码来控制并发取数据的逻辑.
directStream返回的key,value就是原始的发送到kafka中的key,value,key就是消息本身的key,value就是消息.
Directstream直接派生自inputStream,而kafkastream派生自receiverinputstream,同上面的理解,
directstream是运行在driver端的,而且支持后压的特性.
而createstream是运行在worker端的.
directstream没有更新zookeeper上的offset,需要自己手动更新.
spark streaming基础知识1
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。