Posted in Spark

Một số kinh nghiệm làm spark streaming

  • Xóa checkpoints khi run lại job , bởi nếu không sẽ thường bị lỗi KafkaError , nếu trong job đó có Accumulator thì sẽ bị lỗi cast từ Interger sang Long
  • Cố gắng ít stages nhất có thể . Nếu map 1 lần kafka mà k persist hay cache lại sẽ load lại đúng offset đó trong kafka . Sẽ lâu
  • Lưu lại checkpoints nếu job sparkstreaming chết …. initRdd
  • Updating
  • TreeSet…mất bản ghi …
  • Thiết kế key value sao cho ít stages nhất ….
  • ByteArray for key
  • put accumulator to mapPartitions or UPdateStateBykey . Set accumulator về 0 nếu k , giá trị sẽ bị cache lại
  • Check WebUI
  • In ra Accumulator
  • Queue streaming –> tăng batch duration
Advertisements