Spark Streaming ກົນໄກການທໍາຄວາມສະອາດຂໍ້ມູນ
(I) DStream ແລະ RDD
ດັ່ງທີ່ພວກເຮົາຮູ້, Spark Streaming computation ແມ່ນອີງໃສ່ Spark Core, ແລະຫຼັກຂອງ Spark Core ແມ່ນ RDD, ດັ່ງນັ້ນ Spark Streaming ຕ້ອງກ່ຽວຂ້ອງກັບ RDD ເຊັ່ນກັນ.ຢ່າງໃດກໍຕາມ, Spark Streaming ບໍ່ໄດ້ໃຫ້ຜູ້ໃຊ້ໃຊ້ RDD ໂດຍກົງ, ແຕ່ abstracts ຊຸດຂອງແນວຄວາມຄິດ DStream, DStream ແລະ RDD ແມ່ນຄວາມສໍາພັນລວມ, ທ່ານສາມາດເຂົ້າໃຈມັນເປັນຮູບແບບການຕົກແຕ່ງໃນ Java, ນັ້ນແມ່ນ, DStream ແມ່ນການເພີ່ມປະສິດທິພາບຂອງ RDD, ແຕ່. ພຶດຕິກໍາແມ່ນຄ້າຍຄືກັນກັບ RDD.
DStream ແລະ RDD ທັງສອງມີເງື່ອນໄຂຫຼາຍຢ່າງ.
(1) ມີການປະຕິບັດການປ່ຽນແປງທີ່ຄ້າຍຄືກັນ, ເຊັ່ນ: ແຜນທີ່, reduceByKey, ແລະອື່ນໆ, ແຕ່ຍັງມີບາງອັນທີ່ເປັນເອກະລັກ, ເຊັ່ນ: Window, mapWithStated, ແລະອື່ນໆ.
(2) ທັງຫມົດມີການປະຕິບັດ Action, ເຊັ່ນ foreachRDD, ນັບ, ແລະອື່ນໆ.
ຮູບແບບການຂຽນໂປຼແກຼມແມ່ນສອດຄ່ອງ.
(B) ການແນະນໍາ DStream ໃນ Spark Streaming
DStream ປະກອບມີຫຼາຍຊັ້ນຮຽນ.
(1) ຫ້ອງຮຽນແຫຼ່ງຂໍ້ມູນ, ເຊັ່ນ InputDStream, ສະເພາະເຊັ່ນ DirectKafkaInputStream, ແລະອື່ນໆ.
(2) ຫ້ອງຮຽນການແປງ, ໂດຍປົກກະຕິ MappedDStream, ShuffledDStream
(3) ຫ້ອງຮຽນຜົນຜະລິດ, ໂດຍປົກກະຕິເຊັ່ນ ForEachDStream
ຈາກຂ້າງເທິງ, ຂໍ້ມູນໃນຕອນເລີ່ມຕົ້ນ (ການປ້ອນຂໍ້ມູນ) ຈົນເຖິງທີ່ສຸດ (ຜົນຜະລິດ) ແມ່ນເຮັດໂດຍລະບົບ DStream, ຊຶ່ງຫມາຍຄວາມວ່າຜູ້ໃຊ້ປົກກະຕິບໍ່ສາມາດສ້າງແລະຈັດການ RDDs ໂດຍກົງ, ຊຶ່ງຫມາຍຄວາມວ່າ DStream ມີໂອກາດແລະພັນທະທີ່ຈະເປັນ. ຮັບຜິດຊອບຕໍ່ວົງຈອນຊີວິດຂອງ RDDs.
ໃນຄໍາສັບຕ່າງໆອື່ນໆ, Spark Streaming ມີທໍາຄວາມສະອາດອັດຕະໂນມັດຫນ້າທີ່.
(iii) ຂະບວນການຜະລິດ RDD ໃນ Spark Streaming
ກະແສຊີວິດຂອງ RDDs ໃນ Spark Streaming ແມ່ນ rough ດັ່ງຕໍ່ໄປນີ້.
(1) ໃນ InputDStream, ຂໍ້ມູນທີ່ໄດ້ຮັບຈະຖືກປ່ຽນເປັນ RDD, ເຊັ່ນ DirectKafkaInputStream, ເຊິ່ງສ້າງ KafkaRDD.
(2) ຫຼັງຈາກນັ້ນໂດຍຜ່ານ MappedDStream ແລະການແປງຂໍ້ມູນອື່ນໆ, ເວລານີ້ຖືກເອີ້ນວ່າ RDD ໂດຍກົງທີ່ກົງກັບວິທີການແຜນທີ່ສໍາລັບການປ່ຽນ.
(3) ໃນການປະຕິບັດຊັ້ນຜົນຜະລິດ, ພຽງແຕ່ໃນເວລາທີ່ RDD ເປີດເຜີຍ, ທ່ານສາມາດໃຫ້ຜູ້ໃຊ້ປະຕິບັດການເກັບຮັກສາທີ່ສອດຄ້ອງກັນ, ການຄິດໄລ່ອື່ນໆ, ແລະການດໍາເນີນງານອື່ນໆ.