• Spark-StructuredStreaming checkpointLocation分析、优化耗时

    1 问题描述Spark StructuredStreaming 任务 kafka -> elasticsearch、kafka -> hdfs 任务运行过程中每隔固定时间后某个出现耗时较长。2 分析 checkpointLocation 配置2.1 checkpointLocation 在源码调用链分析源码查看 StructuredStreaming 启动流程发现,DataStreamWriter#start 方法启动一个 StreamingQuery。同时将 checkpointLocation配置参数传递给StreamingQuery管理。StreamingQuery 接口实现关系如下:StreamingQueryWrapper 仅包装了一个不可序列化的StreamExecutionStreamExecution 管理Spark SQL查询的执行器MicroBatchExecution 微批处理执行器ContinuousExecution 连续处理(流式)执行器因此我们仅需要分析 checkpointLocation 在 StreamExecution中调用即可。checkpointLocation 文件内容均使用 MetadataLog进行维护。原文链接:https://blog.csdn.net/xiaohulunb/article/details/1031855893 分析 checkpointLocation 目录内容目前 checkpointLocation 内容主要包含以下几个目录offsetscommitsmetadatasourcessinks3.1 offsets 目录记录每个批次中的偏移量。
公众号
码农俱乐部
关注公众号订阅更多技术干货!