อ่าน 2 นาที
การปรับโครงสร้างฐานข้อมูลใหม่
การปรับโครงสร้างฐานข้อมูล (Database refactoring) คือการเปลี่ยนแปลง โครงสร้างฐานข้อมูล อย่างง่ายๆ เพื่อปรับปรุงการออกแบบโดยยังคงรักษาความหมายเชิงพฤติกรรมและข้อมูลเอาไว้...
การปรับโครงสร้างฐานข้อมูลใหม่
การปรับโครงสร้างฐานข้อมูล (Database refactoring)คือการเปลี่ยนแปลงโครงสร้างฐานข้อมูล อย่างง่ายๆ เพื่อปรับปรุงการออกแบบโดยยังคงรักษาความหมายเชิงพฤติกรรมและข้อมูลเอาไว้ การปรับโครงสร้างฐานข้อมูลไม่ได้เปลี่ยนแปลงวิธีการตีความหรือการใช้งานข้อมูล และไม่ได้แก้ไขข้อผิดพลาดหรือเพิ่มฟังก์ชันการทำงานใหม่ การปรับโครงสร้างฐานข้อมูลทุกครั้งจะทำให้ระบบอยู่ในสถานะที่ใช้งานได้ ดังนั้นจึงไม่ทำให้เกิดความล่าช้าในการบำรุงรักษา ตราบใดที่ข้อมูลที่มีความหมายนั้นมีอยู่ในสภาพแวดล้อมการใช้งานจริง
การปรับโครงสร้างฐานข้อมูลนั้นมีความซับซ้อนกว่าการปรับโครงสร้างโค้ด ในเชิงแนวคิด เพราะการปรับโครงสร้างโค้ดนั้นจำเป็นต้องคงไว้เพียงความหมายเชิงพฤติกรรม ในขณะที่การปรับโครงสร้างฐานข้อมูลนั้นต้องคงไว้ซึ่งความหมายเชิงข้อมูลด้วย
โดยทั่วไปแล้ว การปรับโครงสร้างโครงสร้างฐานข้อมูลมักเกิดขึ้นด้วยเหตุผลหลายประการ:
- เพื่อพัฒนารูปแบบโครงสร้างในลักษณะวิวัฒนาการควบคู่ไปกับการออกแบบเชิงวิวัฒนาการของส่วนอื่นๆ ของระบบ
- เพื่อแก้ไขปัญหาด้านการออกแบบในโครงสร้างฐานข้อมูลเดิมที่มีอยู่ การปรับโครงสร้างฐานข้อมูลมักมีแรงจูงใจมาจากความต้องการในการทำให้ฐานข้อมูลที่ใช้งานอยู่เป็นรูปแบบมาตรฐาน โดยทั่วไปแล้วเพื่อ "ปรับปรุง" โครงสร้างของฐานข้อมูล
- เพื่อดำเนินการเปลี่ยนแปลงครั้งใหญ่ (และอาจมีความเสี่ยง) โดยแบ่งออกเป็นการเปลี่ยนแปลงเล็กๆ ที่มีความเสี่ยงต่ำหลายๆ ครั้ง
ประเภทของการปรับโครงสร้างฐานข้อมูล
ในปี พ.ศ. 2549 Scott Ambler และ Pramod Sadalage [ 1 ]ได้อธิบายประเภทของการปรับโครงสร้างฐานข้อมูลดังต่อไปนี้: [ 2 ]
- การปรับโครงสร้างสถาปัตยกรรม
- การเปลี่ยนแปลงที่ช่วยปรับปรุงวิธีการโดยรวมที่โปรแกรมภายนอกโต้ตอบกับฐานข้อมูลให้ดีขึ้น
หมวดหมู่ วิธีการปรับโครงสร้างสถาปัตยกรรม: เพิ่มเมธอด CRUD; เพิ่มตารางมิเรอร์; เพิ่มเมธอดอ่าน; ห่อหุ้มตารางด้วยวิว; เพิ่มเมธอดคำนวณ; เพิ่มดัชนี; เพิ่มตารางอ่านอย่างเดียว; ย้ายเมธอดจากฐานข้อมูล; ย้ายเมธอดไปยังฐานข้อมูล; แทนที่เมธอดด้วยวิว; แทนที่วิวด้วยเมธอด; ใช้แหล่งข้อมูลอย่างเป็นทางการ
- การปรับโครงสร้างใหม่
- การเปลี่ยนแปลงโครงสร้างตารางในสคีมาฐานข้อมูลของคุณ
หมวดหมู่ วิธีการปรับโครงสร้างข้อมูลใหม่: ลบคอลัมน์; ลบตาราง; ลบมุมมอง; เพิ่มคอลัมน์คำนวณ; เพิ่มคีย์ทดแทน; รวมคอลัมน์; รวมตาราง; ย้ายคอลัมน์; เปลี่ยนชื่อคอลัมน์; เปลี่ยนชื่อตาราง; เปลี่ยนชื่อมุมมอง; แทนที่ LOB ด้วยตาราง; แทนที่คอลัมน์; แทนที่ความสัมพันธ์แบบหนึ่งต่อหลายด้วยตารางแบบเชื่อมโยง; แทนที่คีย์ทดแทนด้วยคีย์ธรรมชาติ; แยกคอลัมน์; แยกตาราง
- การปรับปรุงคุณภาพข้อมูล
- การเปลี่ยนแปลงที่ช่วยปรับปรุงและ/หรือรับประกันความสม่ำเสมอและการใช้งานของค่าที่จัดเก็บไว้ในฐานข้อมูล
หมวดหมู่ วิธีการปรับปรุงคุณภาพข้อมูล: เพิ่มตารางค้นหา; ใช้รหัสมาตรฐาน; ใช้ประเภทมาตรฐาน; รวมกลยุทธ์คีย์; ลบข้อจำกัดคอลัมน์; ลบค่าเริ่มต้น; ลบค่าที่ไม่เป็นค่าว่าง; เพิ่มข้อจำกัดคอลัมน์; เพิ่มรูปแบบทั่วไป; เพิ่มค่าเริ่มต้น; ทำให้คอลัมน์ไม่เป็นค่าว่าง; ย้ายข้อมูล; แทนที่รหัสประเภทด้วยแฟล็กคุณสมบัติ
- การปรับโครงสร้างความสมบูรณ์ของการอ้างอิง
- การเปลี่ยนแปลงที่ทำให้แน่ใจว่าแถวที่อ้างอิงนั้นมีอยู่ในตารางอื่น และ/หรือทำให้แน่ใจว่าแถวที่ไม่จำเป็นอีกต่อไปถูกลบออกอย่างเหมาะสม
หมวดหมู่ วิธีการปรับโครงสร้างความสมบูรณ์ของข้อมูลอ้างอิง: เพิ่มข้อจำกัดคีย์ต่างประเทศ; เพิ่มทริกเกอร์สำหรับคอลัมน์คำนวณ; ลบข้อจำกัดคีย์ต่างประเทศ; เพิ่มการลบแบบเรียงลำดับ; เพิ่มการลบแบบถาวร; เพิ่มการลบแบบชั่วคราว; เพิ่มทริกเกอร์สำหรับประวัติการเปลี่ยนแปลง
- การเปลี่ยนแปลง
- การเปลี่ยนแปลงที่เปลี่ยนความหมายของโครงสร้างฐานข้อมูลของคุณ โดยการเพิ่มองค์ประกอบใหม่เข้าไป หรือโดยการแก้ไของค์ประกอบที่มีอยู่เดิม
หมวดวิธีการแปลงข้อมูล: แทรกข้อมูล; เพิ่มคอลัมน์ใหม่; เพิ่มตารางใหม่; เพิ่มมุมมอง; อัปเดตข้อมูล
- การปรับโครงสร้างวิธีการ
- การเปลี่ยนแปลงที่ช่วยปรับปรุงคุณภาพของ stored procedure, stored function หรือ trigger
วิธีการในหมวดหมู่การปรับโครงสร้างเมธอด (Method Refactoring): การกำหนดพารามิเตอร์ให้กับเมธอด; การลบพารามิเตอร์; การเปลี่ยนชื่อเมธอด; การจัดลำดับพารามิเตอร์ใหม่; การแทนที่พารามิเตอร์ด้วยเมธอดที่ระบุอย่างชัดเจน; การรวมนิพจน์เงื่อนไข; การแยกเงื่อนไข; การดึงเมธอด; การแนะนำตัวแปร; การลบแฟล็กควบคุม; การลบตัวกลาง; การแทนที่ค่าคงที่ด้วยการค้นหาในตาราง; การแทนที่เงื่อนไขแบบซ้อนด้วยข้อกำหนดการป้องกัน; การแยกตัวแปรชั่วคราว; การแทนที่อัลกอริทึม
ในปี 2019 Vladislav Struzik ได้เพิ่มหมวดหมู่การปรับโครงสร้างฐานข้อมูลด้วยหมวดหมู่ใหม่: [ 3 ]
- การปรับโครงสร้างการเข้าถึง
- การเปลี่ยนแปลงที่เกี่ยวข้องกับการเข้าถึงข้อมูล
วิธีการในหมวดหมู่การปรับโครงสร้างการเข้าถึง: [ 4 ] [ 5 ]เปลี่ยนคุณลักษณะการตรวจสอบสิทธิ์; เพิกถอนสิทธิ์การอนุญาต; มอบสิทธิ์การอนุญาต; แยกโครงสร้างฐานข้อมูล; รวมโครงสร้างฐานข้อมูล
กระบวนการปรับโครงสร้างฐานข้อมูลใหม่
กระบวนการปรับโครงสร้างฐานข้อมูล (Database refactoring) คือการนำการปรับโครงสร้างฐานข้อมูลมาใช้เพื่อพัฒนาโครงสร้างฐานข้อมูลที่มีอยู่เดิม (การปรับโครงสร้างฐานข้อมูลเป็นหัวใจสำคัญของการออกแบบฐานข้อมูลเชิงวิวัฒนาการ ) มีสามประเด็นสำคัญที่ต้องพิจารณา:
- วิธีการนำการปรับโครงสร้างโค้ดเพียงครั้งเดียวไปใช้
- วิธีการติดตามและแบ่งปันการปรับปรุงโครงสร้างฐานข้อมูลภายในองค์กร
- วิธีการนำการปรับปรุงโครงสร้างฐานข้อมูลหลายขั้นตอนมาประยุกต์ใช้
ดูเพิ่มเติม
ลิงก์ภายนอก
- เว็บไซต์เกี่ยวกับการปรับโครงสร้างฐานข้อมูลโดย Pramod Sadalage
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ การปรับโครงสร้างฐานข้อมูลใหม่
การปรับโครงสร้างฐานข้อมูล (Database refactoring) คือการเปลี่ยนแปลง โครงสร้างฐานข้อมูล อย่างง่ายๆ เพื่อปรับปรุงการออกแบบโดยยังคงรักษาความหมายเชิงพฤติกรรมและข้อมูลเอาไว้...
ประเภทของการปรับโครงสร้างฐานข้อมูล
ในปี พ.ศ. 2549 Scott Ambler และ Pramod Sadalage [ 1 ] ได้อธิบายประเภทของการปรับโครงสร้างฐานข้อมูลดังต่อไปนี้: [ 2 ]
กระบวนการปรับโครงสร้างฐานข้อมูลใหม่
กระบวนการปรับโครงสร้างฐานข้อมูล (Database refactoring) คือการนำการปรับโครงสร้างฐานข้อมูลมาใช้เพื่อพัฒนาโครงสร้างฐานข้อมูลที่มีอยู่เดิม (การปรับโครงสร้างฐานข้อมูลเป็นหัวใจสำคัญของ การออกแบบฐานข้อมูลเชิงวิวัฒนาการ ) มีสามประเด็นสำคัญที่ต้องพิจารณา:
ดูเพิ่มเติม
การทดสอบฐานข้อมูล การย้ายข้อมูล การลดความปกติ การปรับโครงสร้างใหม่ การพัฒนาแบบทดสอบนำ การทดสอบหน่วย