ทำไม schema migration ของฉันถึงทำงานก่อนที่จะตรวจสอบว่า service ที่ deploy ไว้นั้นจะรับมือกับมันได้?
โอกาส
เมื่อคุณ push การเปลี่ยนแปลง schema ไปยังฐานข้อมูล production การ migrate จะทำงานก่อนที่เครื่องมือใดจะยืนยันว่า service versions ที่กำลังทำงานอยู่สามารถอ่านและเขียนรูปแบบใหม่ได้ คอลัมน์ที่ถูกลบหรือ field ที่เปลี่ยนชื่อจะถึงฐานข้อมูลก่อนที่ pod เก่าจะ drain เสร็จสิ้น และการ rollback จะคืน schema แต่ไม่ได้คืนข้อมูลที่ถูกเขียนโดย version ใหม่ในระหว่างนั้น เครื่องมือ ORM สร้าง SQL จาก diff แต่ไม่ได้จำลองอะไรเกี่ยวกับ deployment topology, service versions ที่ทำงานพร้อมกัน หรือรูปแบบการอ่านเขียนจริง ทีมงานชดเชยด้วยพิธีกรรม expand-contract ที่บันทึกไว้ใน wiki และความรู้ภายในทีม ไม่ใช่การบังคับใช้ผ่านเครื่องมือ ขั้นตอนที่ผิดลำดับเพียงขั้นเดียวก่อให้เกิดความล้มเหลวแบบ cascading ในหลาย service และเป็นเหตุการณ์ที่มีหลักฐานชัดเจนมูลค่า 4.5 ล้านดอลลาร์ในปีที่ผ่านมา
ทำไมถึงสำคัญ
การตรวจสอบความเข้ากันได้ก่อนการ deploy ที่จำลอง live service topology ของคุณจะเปลี่ยนขั้นตอนที่เสี่ยงที่สุดใน deployment ให้เป็นสิ่งที่คุณสามารถวิเคราะห์ได้ก่อนกด apply
วิธีที่ผมให้คะแนนโอกาส
คะแนนโอกาสเป็นมุมมองส่วนตัวของผม ไม่ใช่การวัดผล โดยดูว่ามันเจ็บปวดแค่ไหน บ่อยแค่ไหนที่มันกัดกิน และมีทางแก้อยู่น้อยเพียงใดในปัจจุบัน คะแนนสูงกว่าหมายความว่าผมคิดว่าคุ้มค่าแก่การสร้างมากกว่า
ความเจ็บปวดที่มันก่อขึ้นเมื่อปรากฏตัว
ความถี่ที่คนจริงๆ เจอมัน
ความขาดแคลนของเครื่องมือที่ดีสำหรับมันในปัจจุบัน
ปัญหาอื่นที่น่าแก้ไข
ทำไมซอฟต์แวร์ที่เราพึ่งพามากที่สุดถึงใช้งานยากที่สุด?
Techทำไมฉันยังไม่เป็นเจ้าของข้อมูลที่ตัวเองสร้างขึ้นมาเลยแม้แต่น้อย?
Techทำไมฉันถึงไม่สามารถรับใบรับรองที่พิสูจน์ได้ว่าข้อมูลของฉันถูกลบออกจริง?
Techทำไมฉันถึงไม่รู้ได้ว่าสิ่งที่กำลังทำงานอยู่ตรงกับสิ่งที่ SBOM ของฉันประกาศไว้หรือไม่
Techทำไม security scanner ของฉันจึงพลาดประเภทช่องโหว่ที่ AI assistant เขียนบ่อยที่สุด?
Techทำไม AI agent ของฉันจึงส่งข้อมูลสุขภาพของยุโรปผ่านเซิร์ฟเวอร์ในสหรัฐอเมริกาโดยไม่แจ้งเตือน?