1、kafka分区,sparkStreaming的excutor,RDD分区的关系:
sparkStreaming 采用直连的方式从 kafka 中拉取数据,kafka 的分区数应该和 sparkStreaming 的 excutor 的数量要一 一对应。RDD 的 partition 分区数应该和 kafka patition的分区数量是一 一对应的。
direct方案,是当前的主流用法,其采用Kafka’s simple consumer API,创建的RDD partitions数与kafka partitions数一致。性能比前者好。
采用 KafkaUtils.createDirectStream
具体的介绍可以查看官方介绍:Spark Streaming + Kafka Integration Guide