美文网首页工作生活
根据offset读取kafka中的数据

根据offset读取kafka中的数据

作者: 机灵鬼鬼 | 来源:发表于2019-07-04 15:20 被阅读0次

    这里的文件列表就是在server.properties中配置的

    下图就是kafka中,消息数据存放的文件,其中log文件里存放的是消息内容。其中******5059.log或者******5059.index其中5059就是文件中消息开始的offset。

    我测试了一下,第一个样例是从offset为0的位置开始读取计算

    (2019-06-27_ZFB,171)

    (2019-06-22_WX,543)

    (2019-06-25_ZFB,63)

    (2019-06-26_WX,1066)

    (2019-06-24_WX,83)

    (2019-06-28_WX,222)

    (2019-06-24_ZFB,15)

    (2019-06-27_WX,1468)

    (2019-07-01_WX,136)

    (2019-07-03_WX,227)

    另一个是从offset为5059的位置开始读取计算

    (2019-07-01_WX,136)

    (2019-07-03_WX,227)

    (2019-07-03_ZFB,3)

    (2019-07-04_WX,27)

    (2019-07-01_ZFB,26)

    (2019-07-02_WX,460)

    其中不难发现,2019-07-01和2019-07-03有交集。

    这样根据offset分析数据的方式,目的是为了减少Spark Streaming每次分析的数据量。如果一旦加上去kafka,他的数据会一直增加,如果一直从offset为0的位置开始读取和分析,就会干很多无用的分析任务。所以这种根据offset读取部分数据的机制,还是很有必要的。

    相关文章

      网友评论

        本文标题:根据offset读取kafka中的数据

        本文链接:https://www.haomeiwen.com/subject/xeqrhctx.html