六(2)、sparkstreaming代码出现的一些情况分析

  1. 作业流程:
    mysql binlog——(steamsets)——>kafka——(sparkstreaming、sparksql)——>redis
    除了把结果数据放redis以外,还有把验证数据放redis
  2. 如果kafka中堆积很多数据,sparkstreaming一批次消费,导致验证redis里面的数据不准确,导致结果数据错误
    解决办法:在判断语句之间,加入println,使得在driver端执行了之后再执行后面的语句
  3. 运行sparkstreaming的机子获取当前时间A与进来的binlog时间B有差距,如果以时间A判断时间B来获取数据,会在跨天的时候不准确。
    解决办法:除了与时间A匹配的数据拿到以外,如果有时间A+1Day的时间B的数据,也取过来

你可能感兴趣的:(spark)