บทความของ Andy Pavlo ศาสตราจารย์ด้าน DB จาก CMU

ตลอด 50 ปีที่ผ่านมา DB พัฒนาไปมาก แต่ก็ยังต้องอาศัยการมีส่วนร่วมของมนุษย์อยู่มาก (การติดตั้ง การตั้งค่า การดูแลจัดการ ฯลฯ)

ในอีก 50 ปีข้างหน้า DB จะ...

  • แม้โมเดลเชิงสัมพันธ์จะยังเป็นแกนหลัก แต่ผู้พัฒนาจะค่อย ๆ ไม่ต้องกังวลกับโมเดลข้อมูลมากเหมือนเดิม

  • แม้ SQL จะเป็นภาษามาตรฐาน แต่การที่มนุษย์เขียน SQL ด้วยตัวเองจะลดลง และจะหันไปตั้งคำถามด้วยภาษาธรรมชาติมากขึ้น

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

  • ทุกโปรแกรมจะทำงานอยู่บนพื้นฐานของธุรกรรมแบบ ACID

  • เมื่อมีโปรแกรมที่เก็บข้อมูลไม่มีโครงสร้างมากขึ้น เทคโนโลยีสำหรับจัดการและทำดัชนีข้อมูลเหล่านี้ได้อย่างง่ายดายก็จะพัฒนาขึ้น

  • นอกจากนี้ เมื่อข้อมูลที่เปลี่ยนแปลงไปตามเวลา เช่น วิดีโอ มีความสำคัญมากขึ้น Temporality (ประวัติการเปลี่ยนแปลง) ก็จะกลายเป็นเทคโนโลยีสำคัญเช่นกัน

  • เมื่ออุปกรณ์ IOT จำนวนมหาศาลเก็บข้อมูลจากสภาพแวดล้อม และมีฐานข้อมูลฝังตัวอยู่ในอุปกรณ์หลากหลายประเภท ก็จะเกิด API ที่ทำให้ DB เหล่านี้รวมกลุ่ม/เชื่อมต่อกันได้ง่ายขึ้น (อาจอิง SQL ก็ได้)

  • อาจมีชุดเครื่องมือที่ใช้ AI/แมชชีนเลิร์นนิงเพื่อทำการแมปข้อมูลระหว่าง DB ที่หลากหลายเหล่านี้

  • จะมีฮาร์ดแวร์เร่งความเร็วแบบใหม่สำหรับ DB เกิดขึ้น และหน่วยความจำขนาดใหญ่ที่เร็วและเสถียรกว่าจะพร้อมใช้งานมากขึ้น

  • บทบาทของมนุษย์ในฐานะผู้ดูแลฐานข้อมูลจะค่อย ๆ ลดลง ฐานข้อมูลในอนาคตจะซับซ้อนเกินกว่าที่มนุษย์จะจัดการเองได้

  • DBMS จะค่อย ๆ เป็นระบบอัตโนมัติและสามารถซ่อมแซมตัวเองได้

  • ด้วยการผสานกันอย่างแน่นแฟ้นระหว่างเฟรมเวิร์กการเขียนโปรแกรมกับ DBMS ระบบจะสามารถจัดโครงสร้างข้อมูล วางแผนทรัพยากร และปรับแต่งการทำงานได้อย่างมีประสิทธิภาพยิ่งกว่าสิ่งที่มนุษย์วางแผนเอง

  • เราอาจได้เห็นธุรกรรมฐานข้อมูลระหว่างอุปกรณ์ที่อยู่ห่างกันข้ามดาวเคราะห์ และในกรณีเช่นนี้อาจเกิด latency ระดับหลายนาทีหรือหลายชั่วโมงได้ ดังนั้นเทคนิค Weak Consistency ที่ใช้ในเทคโนโลยีบนเว็บปัจจุบันอาจถูกนำมาปรับใช้กับเรื่องนี้

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น