นักวิจารณ์ SQL เผชิญการต่อต้านอย่างแรงขณะที่ชุมชนปกป้องมาตรฐานฐานข้อมูล

ทีมชุมชน BigGo
นักวิจารณ์ SQL เผชิญการต่อต้านอย่างแรงขณะที่ชุมชนปกป้องมาตรฐานฐานข้อมูล

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

การวิจารณ์หลักของบทความต้นฉบับ:

  • ตารางไม่สามารถขยายขนาดได้เมื่อมีข้อมูลจำนวนมาก
  • การรองรับ JSON/XML แบบ native ที่ไม่ดี
  • การจัดการข้อมูล (data marshalling) ที่ใช้เวลานาน
  • ความสามารถในการทำงานแบบ real-time ที่จำกัด
  • การดำเนินการ JOIN ที่ซับซ้อน
  • โครงสร้างคอลัมน์ที่แข็งแกร่งเกินไป
  • ผลลัพธ์การปรับแต่งประสิทธิภาพที่ไม่สม่ำเสมอ
  • ช่องโหว่ด้านความปลอดภัยจาก SQL injection
  • การใช้งานที่ไม่เป็นมาตรฐานเดียวกันระหว่างผู้ให้บริการต่างๆ

ชุมชนปฏิเสธข้อโต้แย้งต่อต้าน SQL

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

การวิจารณ์มุ่งเน้นไปที่สิ่งที่หลายคนมองว่าเป็นกลยุทธ์ clickbait มากกว่าการวิเคราะห์ทางเทคนิคที่แท้จริง สมาชิกชุมชนหลายคนเลิกอ่านบทความทั้งหมดหลังจากพบสิ่งที่พวกเขาถือว่าเป็นข้อโต้แย้งเปิดต้นที่มีข้อบกพร่องพื้นฐานเกี่ยวกับการขยายตารางและความเข้ากันได้กับ JSON

การแบ่งแยกการตอบสนองของชุมชน:

  • นักพัฒนาหลายคนเรียกบทความนี้ว่า "clickbait" และ "ตื้นเขิน"
  • ผู้อ่านหลายคนหยุดอ่านหลังจากประเด็นสองข้อแรกเกี่ยวกับการปรับขนาดตารางและความเข้ากันได้กับ JSON
  • การปกป้อง SQL อย่างแข็งขันในเรื่องสถาปัตยกรรมหลักที่ใช้ตาราง
  • เน้นย้ำถึงผลกระทบเครือข่ายและข้อได้เปรียบของระบบนิเวศของ SQL

Network Effect ทำให้ SQL ยังคงครอบงำ

แม้จะมีความพยายามต่างๆ ในการแทนที่ SQL มาหลายทศวรรษ ภาษานี้ยังคงรักษาการครอบงำผ่านสิ่งที่ผู้เชี่ยวชาญเรียกว่า network effect ผู้จำหน่ายฐานข้อมูลทุกรายรู้ว่าพวกเขาต้องสนับสนุนภาษาสอบถามที่คล้าย SQL ในรูปแบบใดรูปแบบหนึ่งเพื่อให้ยังคงแข่งขันได้ สิ่งนี้สร้างวงจรที่เสริมตัวเองที่ความรู้เรื่อง SQL กลายเป็นสิ่งที่มีค่ามากขึ้น และทางเลือกอื่นๆ ต่อสู้เพื่อให้ได้การยอมรับที่มีความหมาย

พลังในการอยู่รอดของ SQL ไม่ได้เป็นเพียงเรื่องของคุณค่าทางเทคนิคเท่านั้น แต่เป็นเรื่องของระบบนิเวศขนาดใหญ่ของเครื่องมือ ความรู้ และโครงสร้างพื้นฐานที่สร้างขึ้นรอบๆ มัน เมื่อนักพัฒนาหลายล้านคนรู้จัก SQL แล้วและระบบนับไม่ถ้วนพึ่งพามัน อุปสรรคในการเปลี่ยนแปลงจะกลายเป็นสิ่งที่ยิ่งใหญ่มาก

การวิจารณ์ SQL ถูกทิ้งไปเพราะไม่มีคุณค่า สะท้อนถึงผลกระทบเครือข่ายที่แข็งแกร่งและการครอบงำของภาษา SQL
การวิจารณ์ SQL ถูกทิ้งไปเพราะไม่มีคุณค่า สะท้อนถึงผลกระทบเครือข่ายที่แข็งแกร่งและการครอบงำของภาษา SQL

เทคโนโลยีทางเลือกยังคงเป็น Niche

ในขณะที่บทความต้นฉบับส่งเสริมทางเลือกอื่นเช่น GraphQL และโซลูชัน NoSQL การตอบสนองของชุมชนชี้ให้เห็นว่าเทคโนโลยีเหล่านี้ให้บริการกรณีการใช้งานเฉพาะมากกว่าการแทนที่ SQL ทั่วไป แอปพลิเคชันสมัยใหม่มักใช้เทคโนโลยีฐานข้อมูลหลายตัวร่วมกัน โดย SQL databases จัดการข้อมูลที่มีโครงสร้างและระบบเฉพาะทางจัดการภาระงานเฉพาะเช่นการจัดเก็บเอกสารหรือความสัมพันธ์กราฟ

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

SQL เยี่ยมมาก

คำกล่าวง่ายๆ นี้จากการสนทนาของชุมชนสะท้อนความรู้สึกของนักพัฒนาหลายคนที่ได้ทำงานกับ SQL อย่างกว้างขวางและชื่นชมความน่าเชื่อถือและการสนับสนุนที่แพร่หลาย

อ้างอิง: 13 reasons SQL has got to go