Event Sourcing: เก็บทุกเหตุการณ์ แทนที่จะเก็บแค่สถานะปัจจุบัน

29 มิถุนายน 2569อ่าน 6 นาที
Event Sourcing: เก็บทุกเหตุการณ์ แทนที่จะเก็บแค่สถานะปัจจุบัน

ระบบทั่วไปเก็บแค่สถานะล่าสุด เช่น ยอดคงเหลือปัจจุบัน แต่ Event Sourcing เก็บทุกเหตุการณ์ที่ทำให้ถึงยอดนั้น ทำให้ย้อนดูประวัติ ตรวจสอบ และแก้ย้อนหลังได้ แต่ก็ซับซ้อนขึ้น

ระบบส่วนใหญ่เก็บแค่สถานะปัจจุบัน เช่น ยอดคงเหลือในบัญชีตอนนี้คือเท่าไร เมื่อมีการเปลี่ยนแปลง ก็เขียนทับค่าเดิม ทำให้ประวัติหายไป Event Sourcing คิดกลับกัน คือเก็บทุกเหตุการณ์ที่เกิดขึ้นตามลำดับ เช่น ฝากเงิน ถอนเงิน โอนเงิน แล้วคำนวณสถานะปัจจุบันจากการเล่นเหตุการณ์เหล่านั้นซ้ำ ยอดคงเหลือจึงเป็นผลลัพธ์ ไม่ใช่สิ่งที่เก็บโดยตรง

ข้อดีที่ทรงพลัง และต้นทุนที่ต้องแลก

ข้อดีคือได้ประวัติครบทุกการเปลี่ยนแปลงโดยธรรมชาติ ตรวจสอบย้อนหลังได้ว่าเกิดอะไรขึ้นเมื่อไร ย้อนดูสถานะ ณ จุดใดในอดีตได้ และแก้ข้อผิดพลาดด้วยการเพิ่มเหตุการณ์แก้ไข แทนการลบข้อมูล เหมาะมากกับงานที่ต้องการความรับผิดชอบสูง เช่น การเงินและบัญชี แต่แลกมาด้วยความซับซ้อนที่มากขึ้น การคำนวณสถานะจากเหตุการณ์จำนวนมากต้องออกแบบดี และไม่ใช่ทุกงานที่ต้องการประวัติละเอียดขนาดนี้

  • เหมาะกับงานที่ต้องการประวัติและความรับผิดชอบสูง เช่น การเงิน
  • แก้ข้อผิดพลาดด้วยการเพิ่มเหตุการณ์แก้ ไม่ใช่ลบของเดิม
  • เพิ่มความซับซ้อน จึงไม่จำเป็นกับทุกระบบ

Event Sourcing เป็นแนวคิดที่ทรงพลังในงานที่ประวัติและการตรวจสอบย้อนหลังคือหัวใจ แต่มันมาพร้อมความซับซ้อนที่ต้องแลก การเลือกใช้ให้เหมาะกับงาน ไม่ใช่ตามความตื่นเต้นทางเทคนิค คือกุญแจ สำหรับงานที่ต้องการเพียงสถานะปัจจุบัน วิธีเก็บแบบเดิมที่เรียบง่ายกว่ามักเป็นทางเลือกที่ดีกว่า

Event SourcingArchitectureAuditData

บริการที่เกี่ยวข้อง

รับพัฒนาเว็บแอปพลิเคชัน

สร้างเว็บแอปที่รองรับการเติบโตและเชื่อมกับระบบอื่นได้

WhaleScope

ดูโครงสร้างตลาดของทุกหมวดธุรกิจไทย บน WhaleScope

รายชื่อบริษัท ผู้เล่นรายใหญ่ และอัตราคงอยู่ของแต่ละหมวด — จากข้อมูลจดทะเบียน 2 ล้านนิติบุคคล

อ่านต่อ

Cache ผิดที่ ทำให้ข้อมูลเก่าค้าง: เข้าใจ Cache Invalidation

Cache ทำให้ระบบเร็วขึ้น แต่ถ้าไม่ล้างให้ถูกจังหวะ ลูกค้าอาจเห็นราคาเก่า สต็อกผิด หรือโปรที่หมดไปแล้ว เข้าใจว่าเมื่อไรควร Cache และเมื่อไรต้องล้าง คือหัวใจของระบบที่ทั้งเร็วและถูกต้อง

แหล่งข้อมูลจริงหนึ่งเดียว: ทำไมตัวเลขของแต่ละฝ่ายถึงไม่ตรงกัน และวิธีทำให้เหลือชุดเดียวที่เชื่อได้

เมื่อฝ่ายขายบอกยอดหนึ่ง บัญชีบอกอีกยอด และคลังบอกอีกยอด ปัญหาไม่ใช่ใครคำนวณผิด แต่คือธุรกิจมีข้อมูลจริงอยู่หลายชุดพร้อมกัน บทความนี้อธิบายว่า single source of truth คืออะไรจริง ๆ ทำไมการคีย์ซ้ำสร้างความจริงคู่ขนานเสมอ และเส้นทางสี่ขั้นที่พาธุรกิจกลับมาเหลือตัวเลขชุดเดียว

ถามยอดขายกับ AI แทนการเปิดสิบรายงาน: ธุรกิจต้องพร้อมอะไรบ้าง ก่อน AI จะตอบเลขของตัวเองได้แบบเชื่อถือได้

ภาพฝันคือพิมพ์ถามว่าเดือนนี้กำไรเท่าไหร่แล้วได้คำตอบทันที ภาพจริงของธุรกิจส่วนใหญ่คือ AI ที่ตอบมั่นใจบนข้อมูลที่ผิด บทความนี้ไล่บันไดความพร้อมสี่ขั้นจากข้อมูลสะอาดถึงคำนิยามตัวเลขที่ตรงกัน วิธีตั้งคำถามให้ AI ตอบแม่น และกติกาตรวจทานที่ทำให้คำตอบใช้ประชุมได้จริง

Synthetic Data: สร้างข้อมูลจำลองเพื่อฝึก AI เมื่อข้อมูลจริงมีน้อย

บางครั้งข้อมูลจริงมีน้อย อ่อนไหว หรือหายาก Synthetic Data คือข้อมูลที่สร้างขึ้นให้คล้ายของจริงเพื่อใช้ฝึกหรือทดสอบ เข้าใจว่ามันช่วยตรงไหน และมีกับดักอะไรที่ต้องระวัง