Spark Streaming ma'lumotlarini tozalash mexanizmi
(I) DStream va RDD
Ma'lumki, Spark Streaming hisoblash Spark Core-ga asoslangan va Spark Core yadrosi RDD, shuning uchun Spark Streaming RDD bilan ham bog'liq bo'lishi kerak. Biroq, Spark Streaming foydalanuvchilarga to'g'ridan-to'g'ri RDD dan foydalanishga ruxsat bermaydi, lekin DStream tushunchalari to'plamini abstrakt qiladi, DStream va RDD inklyuziv munosabatlardir, siz buni Java-dagi bezak namunasi sifatida tushunishingiz mumkin, ya'ni DStream RDD-ni takomillashtirishdir, lekin xatti-harakatlar RDD ga o'xshaydi.
DStream va RDD ikkalasida ham bir nechta shartlar mavjud.
(1) map, reduceByKey va boshqalar kabi oʻxshash oʻzgartirish amallariga ega, shuningdek, Window, mapWithStated va boshqalar kabi oʻziga xos xususiyatlarga ega.
(2) barchasida foreachRDD, count va hokazo kabi Harakatlar mavjud.
Dasturlash modeli izchil.
(B) Spark Streamingda DStreamni joriy qilish
DStream bir nechta sinflarni o'z ichiga oladi.
(1) DirectKafkaInputStream kabi maxsus InputDStream kabi ma'lumotlar manbalari sinflari va boshqalar.
(2) Konversiya sinflari, odatda MappedDStream, ShuffledDStream
(3) chiqish sinflari, odatda ForEachDStream kabi
Yuqorida aytilganlardan ma'lumotlar boshidan (kirish) oxirigacha (chiqish) DStream tizimi tomonidan amalga oshiriladi, ya'ni foydalanuvchi odatda RDDlarni to'g'ridan-to'g'ri ishlab chiqa olmaydi va manipulyatsiya qila olmaydi, ya'ni DStream uchun imkoniyat va majburiyat mavjud. RDDlarning hayot aylanishi uchun javobgardir.
Boshqacha qilib aytganda, Spark Streaming-da mavjudavtomatik tozalashfunktsiyasi.
(iii) Spark Streaming-da RDD yaratish jarayoni
Spark Streaming-dagi RDDlarning hayotiy oqimi quyidagicha.
(1) InputDStream-da qabul qilingan ma'lumotlar RDD-ga aylantiriladi, masalan, KafkaRDD-ni yaratadigan DirectKafkaInputStream.
(2) keyin MappedDStream va boshqa ma'lumotlarni konvertatsiya qilish orqali bu vaqt to'g'ridan-to'g'ri konvertatsiya qilish uchun xarita usuliga mos keladigan RDD deb ataladi.
(3) Chiqish klassi ishida, faqat RDD ochilganda, foydalanuvchiga tegishli saqlash, boshqa hisob-kitoblar va boshqa operatsiyalarni bajarishiga ruxsat berishingiz mumkin.