ข้ามไปเนื้อหาหลัก
เชื่อมต่อแอป· ~14 นาที· อัปเดตล่าสุด

Kinesis (Data Streams/Firehose)

รับและประมวลผลข้อมูลสตรีมแบบเรียลไทม์

เปรียบเทียบ: Kinesis เหมือนสายพานลำเลียงในโรงงานความเร็วสูง

สายพานจะรับของ (ข้อมูล) ที่ไหลมาอย่างไม่ขาดสายตลอดเวลา โดยมีหุ่นยนต์ (แอปพลิเคชัน) คอยหยิบของบนสายพานไปตรวจสอบหรือจัดเก็บ

พื้นฐานที่ควรรู้: ข้อมูลบางประเภทไม่ได้มาเป็นก้อนใหญ่ๆ นานๆ ครั้ง แต่ไหลเข้ามา "ทีละนิด ตลอดเวลา และรวดเร็วมาก" (Streaming Data) เช่น ข้อมูลตำแหน่งรถยนต์, เซนเซอร์ IoT, หรือประวัติการคลิกเว็บ ซึ่งต้องใช้ระบบรับส่งข้อมูลแบบพิเศษ

Amazon Kinesis เป็นบริการสำหรับรับ เก็บ และประมวลผลข้อมูล Streaming ปริมาณมหาศาลแบบเรียลไทม์ (Real-time)

  • Kinesis Data Streams (KDS) — ท่อรับสตรีมที่ให้เราเขียนโปรแกรม (Consumer) ไปดึงข้อมูลมาประมวลผลเอง (เก็บ Record ย้อนหลังได้, สั่ง Replay กลับไปอ่านใหม่ได้)
  • Kinesis Data Firehose — เครื่องมือดูดและสูบข้อมูลสตรีมส่งไปยังปลายทางแบบอัตโนมัติ (เช่น S3, Redshift, OpenSearch) แบบ Near real-time โดยไม่ต้องเขียนโค้ดทำ Consumer เอง

สรุป Key Takeaways

  • Kinesis = ประมวลผลข้อมูล streaming เรียลไทม์
  • Data Streams = อ่าน/ประมวลผลเอง (replay ได้); Firehose = โหลดเข้าปลายทางอัตโนมัติ

คำถามที่พบบ่อย

Kinesis Data Streams กับ Firehose ต่างกันยังไง

Streams = real-time (มิลลิวินาที) เราเขียน consumer เอง ประมวลผลแบบ custom ได้ เก็บ replay ได้ ส่วน Firehose = ส่งของเข้าปลายทาง (S3, Redshift, OpenSearch) แบบ near real-time โดยไม่ต้องเขียนโค้ด แปลงข้อมูลระหว่างทางด้วย Lambda ได้ — โจทย์ "โหลดข้อมูล streaming เข้า S3 ง่ายที่สุด" = Firehose, "ประมวลผล real-time เอง" = Streams

Kinesis กับ SQS ต่างกันตรงไหน ทั้งคู่ก็รับข้อความ

Kinesis = สายธารข้อมูลที่ "หลาย consumer อ่านซ้ำได้" ตามลำดับ เก็บย้อนหลัง (replay) — เกิดมาเพื่อ analytics/streaming ส่วน SQS = คิวงานที่ข้อความถูกหยิบแล้วหายไป ทำครั้งเดียว — โจทย์ clickstream/IoT telemetry/log analytics = Kinesis, job queue = SQS

ลองทำ Quiz ท้ายบท

คำถามแนวข้อสอบของโมดูลนี้ 5 ข้อ · เฉลยทันที

อ่านจบแล้วอย่าลืมทำเครื่องหมาย