ข้ามไปที่เนื้อหาหลัก

Debezium คืออะไร คุณสมบัติหลักและการทำงาน สำคัญอย่างไรกับ Data Replication สู่ Real-time Analytics

 

Debezium  คืออะไร

Debezium คือ open-source platform แบบกระจาย (Distributed Platform) สำหรับทำ Change Data Capture (CDC) ที่ช่วยแปลงการเปลี่ยนแปลงข้อมูลระดับแถว (Row-level changes) ในฐานข้อมูลให้กลายเป็น event streams แบบเรียลไทม์

คุณสมบัติหลักและการทำงานการทำงาน Debezium (Log-based CDC)

  • อ่านข้อมูลจาก transaction log ของฐานข้อมูลโดยตรง ทำให้มีผลกระทบ (Overhead) ต่อระบบฐานข้อมูลต้นทางน้อยมากเมื่อเทียบกับการใช้ Triggers 
  • สตรีมมิ่งผ่าน Kafka: ทำงานร่วมกับ Apache Kafka และ Kafka Connect เพื่อบันทึกเหตุการณ์การเปลี่ยนแปลงลงใน Kafka 
  • รองรับฐานข้อมูลหลากหลาย: มี Connectors สำหรับฐานข้อมูลยอดนิยม เช่น MySQL, PostgreSQL, Oracle, SQL Server, MongoDB, MariaDB, Cassandra และอื่นๆ 
  • การทำ Snapshot: รองรับการทำ Initial Snapshot ทั้งแบบปกติและ Incremental Snapshot เพื่อเก็บสถานะเริ่มต้นของข้อมูลก่อนเริ่มสตรีม Log 

ใช้ Debezium ร่วมกับ Kafka สำหรับทำ CDC

วิธีนี้แทบไม่ต้องเขียนโค้ดเพื่อดึงข้อมูลเองเลย แต่เป็นการสถาปนาระบบ (Setup Infrastructure) โดยใช้ซอฟต์แวร์ Open-source 100%
  • ขั้นตอนที่ 1: เปิดใช้งานฟังก์ชัน Log บนฐานข้อมูลต้นทาง
    • ฐานข้อมูลสมัยใหม่จะมี Log ที่บันทึกทุกคำสั่งที่เกิดขึ้น เช่น Binlog (MySQL) หรือ Write-Ahead Log / WAL (PostgreSQL)
    • คุณต้องเข้าไปเปิด Config ให้ฐานข้อมูลยอมปล่อย Log นี้ออกมาภายนอก
  • ขั้นตอนที่ 2: ตั้งค่า Apache Kafka และ Kafka Connect
    • ติดตั้ง Kafka เพื่อใช้เป็นตัวรับส่งข้อมูลความเร็วสูง
    • ติดตั้ง Debezium (ซึ่งเป็นปลั๊กอินของ Kafka Connect)
  • ขั้นตอนที่ 3: สั่งให้ Debezium อ่าน Log
    • เขียน Configuration ไฟล์ (JSON) สั้น ๆ เพื่อบอกให้ Debezium ทราบว่าฐานข้อมูลต้นทางอยู่ที่ไหน รหัสผ่านอะไร
    • Debezium จะเข้าไปอ่าน Log และแปลงเหตุการณ์ (เช่น มีคนกดเพิ่มข้อมูล) ให้กลายเป็นข้อความ JSON ส่งเข้าไปใน Kafka
  • ขั้นตอนที่ 4: ดึงข้อมูลจาก Kafka ไปปลายทาง
    • ใช้ Kafka Connect ตัวอื่น หรือเขียนโค้ดสั้น ๆ (Python/Java) ดึงข้อมูลจาก Kafka ไปหยอดลงฐานข้อมูลปลายทาง หรือไฟล์ตามต้องการ

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

อะไรคือ NPU (Neural Processing Unit) มีความสำคัญอย่างไร แนวคิดมาจากไหน

ความหมาของคำว่า NPU (Neural Processing Unit)  NPU (Neural Processing Unit) คือ หน่วยประมวลผลโครงข่ายประสาทที่สร้างมาเพื่อใช้งานด้านปัญญาประดิษฐ์ เป็นหน่วยประมวลผลพิเศษที่ออกแบบมาเพื่อใช้ในแนวคิดของการเรียนรู้ของเครื่อง (Machine Learning) ของคอมพิวเตอร์โดยเฉพาะ ทำให้การประมวลผล AI ทรงประสิทธิภาพเพิ่มขึ้นจากเดิมของ TPU GPU และ CPU เช่น การจดจำภาพ, วิเคราะห์เสียง, หรือการแปลภาษา ทำได้รวดเร็วและประหยัดพลังงานกว่า CPU/GPU ทั่วไป โดยทำงานคล้ายโครงข่ายประสาทของมนุษย์ และพบได้ทั้งในสมาร์ตโฟน, คอมพิวเตอร์ (PC), และอุปกรณ์ AI อื่นๆ ในอนาคต เพื่อเร่งความเร็วของการทำงานของ AI สามารถจัดการงานและปัญหาที่ซับซ้อนได้อย่างมีประสิทธิภาพ  ประวัติความเป็นมาของ NPU (Neural Processing Unit)  ตั้งแต่ปี 1970 เป็นต้นมาเราได้ใช้เริ่มมีการใช้หน่วยการประมวลผลแบบดั้งเดิม คือ หน่วยประมวลผลกลาง (CPU) ถือเป็น "สมอง" และเป็นกลไกการทำงานของคอมพิวเตอร์ ดังนั้นซีพียู CPU ประมวลผลงานคำนวณแบบดั้งเดิมส่วนใหญ่มีหน้าที่รับผิดชอบการทำงานของแอปพลิเคชันให้มีศักยภาพหลากหลายเพิ่มมาเรื่อย แม้ว่าจะมีหลายประเภท แต่โดยทั่...

Micro SaaS "ขนาดพอดีคำ" สร้างธุรกิจเริ่มต้นอย่างง่ายด่าย จากไอเดียสู่สร้างรายได้ โดยใช้ AI Agent ตอบสนองความต้องการซอฟต์แวร์ที่เล็ก ง่าย และทรงพลัง

ผลิตภัณฑ์ Micro SaaS กำลังได้รับความนิยมมากขึ้นกว่าที่เคย เป็นผลมาจากความต้องการซอฟต์แวร์เฉพาะทางที่เพิ่มสูงขึ้น ผู้ประกอบการกำลังสร้างเครื่องมือน้ำหนักเบาที่ตอบโจทย์ความต้องการเฉพาะด้าน ตั้งแต่เครื่องมือสร้างเนื้อหาที่ขับเคลื่อนด้วย AI และ CRM เฉพาะกลุ่ม ไปจนถึงแอปพลิเคชันการออกใบแจ้งหนี้และแพลตฟอร์มการจัดการโครงการที่ใช้งานง่าย โซลูชันที่มุ่งเน้นเฉพาะด้านเหล่านี้กำลังได้รับความนิยมในอุตสาหกรรมต่างๆ เช่น การศึกษา ฟิตเนส บริการ และการตลาด ไม่ว่าจะเป็นการช่วยให้ธุรกิจขนาดเล็กปรับปรุงกระบวนการทำงาน หรือการนำเสนอเครื่องมือที่ชาญฉลาดยิ่งขึ้นให้กับผู้สร้างสรรค์ แนวคิด SaaS ขนาดเล็กกำลังเปิดโอกาสใหม่ๆ ให้กับผลิตภัณฑ์ที่ทำกำไรได้และดูแลรักษาง่าย Micro SaaS คืออะไร? Micro SaaS (ไมโครซาส) เป็นรูปแบบซอฟต์แวร์ออนไลน์ที่ให้บริการผ่านเว็บ (Software as a Service) แต่มี ขนาดเล็ก, เน้นแก้ปัญหาเฉพาะด้าน (Niche), ทีมพัฒนาเล็กมากถึงขั้น ผู้พัฒนาคนเดียวก็ทำได้, ต้นทุนต่ำ และมักสร้างรายได้แบบ Subscription รายเดือน/รายปี วิเคราห์ตลาดของ Micro SaaS  Micro SaaS มีการเติบโตอย่างมีนัยสำคัญภายในตลาดเทคโทนโลย...

TomCat สำหรับติดตั้ง แก้ไข คอนฟิก ใช้งาน JSP

Apache Tomcat เป็น  HTTP Server ที่มีความสามารถนำภาษาจาวามาใช้งานได้  สามารถใช้เทคโนโลยีของภาษาจาวาที่เรียกว่า Java Servlet  และ Java Server Page (JSP)  Tomcat เป็นโปรแกรม Open-Source  อยู่ภายใต้การดูแลของ Apache Software Foundation  (ซึ่งเป็นผู้สร้าง Apache HTTP Server ที่เป็นที่นิยมใช้กันอย่างแพร่หลาย)  สามารถอ่านรายละเอียดของ Tomcat ได้ที่  http://tomcat.apache.org  โดยเลือกหัวข้อ “ Documentation”  และเลือก “Tomcat 7.0” ขั้นตอนการติดตั้ง Tomcat เรียงลำดับดังนี้