วันพฤหัสบดีที่ 1 มีนาคม พ.ศ. 2555

คุณสมบัติของ ODBMS เปรียบเทียบกับ RDBMS


คุณสมบัติของ ODBMS เปรียบเทียบกับ RDBMS                  
                                                                                                                                                                                   
Relational Database model เกิดขึ้นจากแนวคิดของทฤษฎีทางคณิตศาสตร์ มีการมองข้อมูลในรูปของตารางและสามารถ query ข้อมูลพื้นฐานได้ด้วยมาตรฐาน SQL ในขณะที่ ODBMS มุ่งเน้นที่การเก็บข้อมูลเป็น object ซึ่งมีส่วนประกอบที่สำคัญ คือ class , attribute และ instance ของ object และมีชุดเครื่องมือการพัฒนาที่ดีสำหรับการออกแบบ database แต่ระบบ ODBMS จะไม่มีทฤษฏีพื้นฐานและไม่มีชุดเครื่องมือการพัฒนาที่สำหรับการออกแบบ database เช่น นักออกแบบ RDBMS สามารถใช้ entity-relationship diagramming tool ในการตรวจสอบความถูกต้องได้ว่าการออกแบบของเขาอยู่ในระดับใด เป็น normal form หรือไม่ ในขณะที่นักออกแบบ ODBMSจะไม่มี concept ที่คล้าย ๆ กับ normal form ในการตรวจสอบความถูกต้องสำหรับ object ของเขา

Relational Database Management System (RDBMS)นั้นถูกออกแบบมาเพื่อเก็บข้อมูลที่เป็นอักษร ตัวเลขถึงแม้ว่าจะสนับสนุนการเก็บข้อมูลที่เป็น Binary ขนาดใหญ่ (Large Objects-LOB) การใช้ฐานข้อมูลแบบ RDBMS ไม่มีการสนับสนุนการเก็บข้อมูลประเภทมัลติมีเดียเช่นรูปภาพออดิโอและวีดีโอเพราะในการออกแบบนั้นมันถูกออกแบบมาเพื่อให้เก็บข้อมูลที่เป็นตัวอักษรเป็นหลักทำงานได้กับภาษาประเภท Object Oriented ได้ไม่ดีเท่าที่ควรเพราะภาษาเหล่านี้ถูกสร้างขึ้นหลังจากการสร้าง RDBMS นั่นเองและข้อมูลจะต้องถูกเก็บในรูปของตารางเท่านั้นซึ่งเป็นข้อกำหนด  RDBMSสามารถใช้เก็บข้อมูลเช่น รูป วิดีโอ และเสียงแต่ไม่สามารถจัดการข้อมูลเหล่านั้นได้โดยตรง ต้องใช้โปรแกรมภายนอกในการจัดการเช่น การแก้ไขรูป การแสดงรูปและเสียง การเปรียบเทียบและค้นหาทำโดยโปรแกรมเสริมอื่นๆ

Object-oriented Database Management System (ODBMS) เป็นเทคโนโลยีใหม่ของฐานข้อมูล ซึ่งเป็นเรื่องที่น่าสนใจเรื่องหนึ่งซึ่งพยายามจะจัดเก็บข้อมูลในรูปของ Object ซึ่งเบาบอกว่าเหมาะสำหรับเก็บข้อมูลที่เป็น Multimedia หรือซับซ้อนเช่น model หรือแบบของการออกแบบทางวิศวกรรม หรืออะไรที่ซับซ้อนกว่าข้อมูลที่เป็น text เช่นข้อมูลในรูปแบบของภาพ เสียง ภาพยนต์ เป็นต้น ซึ่งยากที่ใช้เทคนิค RDMS ในการเก็บข้อมูล

ODBMS

ODBMS จะเก็บข้อมุลในรูป Object ซึ่งเก็บตัว Object, Attribute หรือคุณสมบัติ และ Method ของ Object ไว้ในฐานข้อมูลการใช้งานสามารถทำได้ผ่านโปรแกรมที่เขียนโดยหลัก Object-oriented เช่น Java หรือ C++ หรืออาจจะใช้ ภาษา SQL ในการติดต่อ ตัวอย่างของฐานข้อมูลแบบ ODBMS ได้แก่ Versant, Object store, Jasmine และ Poet 
RDBMS 
              โครงสร้างของ ODBMS นั้นยืดหยุ่นกว่า แบบ RDBMS คือไม่จำเป็นต้องมีโครงสร้างแบบ Row Column และสามารถมีความสัมพันธ์แบบ Many-to-Many ได้ และไม่ต้องทำ Normalization ซึ่งลดขั้นตอน และเวลาในการออกแบบ Database ไปได้ (ระบบที่มีความยืดหยุ่นเกินไป และไม่มีกฎเกณฑ์ท้ายสุดก็กลายเป็นไม่มีระบบนั่นเอง)ในการออกแบบแทนที่จะออกแบบโดย E-R Diagram ก็จะเป็นออกแบบ ตามแบบ Object ซึ่งมีความสามารถในการทำ Inheritance และ มี Method ของตัวเองทำให้สามารถออกแบบ Process ไปพร้อมๆกัน การออกแบบก็ใช้พวก OO Diagram เช่นพวก Unified Model Method เป็นต้น
สำหรับการจัดการข้อมูลที่มีความซับซ้อน modelของ ODBMS จะพร้อมมากกว่า RDBMS model ในเรื่องระบบข้อมูลแบบกระจายและการเก็บข้อมูลของท้องถิ่น ODBMS จะสามารถ query ง่าย ๆ ได้บนข้อมูลที่มีความซับซ้อน ในขณะที่ RDBMS จะสามารถ query ได้อย่างละเอียดบนข้อมูลง่าย ๆ ธรรมดา ๆ


สรุป
RDBMSเหมาะสำหรับการเก็บข้อมูลที่เป็น scalar เช่น ชื่อ, ที่อยู่, จำนวน เป็นต้น และสามารถจัดการ query ที่มีความซับซ้อนได้ดีจึงเหมาะกับ application ทางธุรกิจและการเงิน ส่วน ODBMS จะมี model ที่ซับซ้อนเหมาะกับ video games, internet และ multimedia application

ODBMSยังไม่มีทฤษฎีที่ชัดเจนและเป็นที่ยอมรับ ความไม่มาตรฐานของ ODBMS เองทั้งในเรื่องของภาษา และ API และ Vendor ทั้งหลายต่างๆ ก็พัฒนา Software ODBMS ไปคนละทิศละทาง และที่สำคัญที่สุด RDBMS ซึ่งครองตลาด Application ทางธุรกิจส่วนใหญ่ปัจจุบันได้พยายามนำเองจุดเด่นของ ODBMS ความสามารถใน Database ของตนเพื่อให้มีประสิทธิภาพที่ดีขึ้น

ODBMS และ RDBMS สามารถใช้งานร่วมกันได้ และมักจะพบว่าจะถูกใช้งานควบคู่กันไป เพราะทั้งสองถูกออกแบบมาสำหรับงานที่แตกต่างกัน ODBMS ถูกใช้สำหรับงานที่เกี่ยวกับระบบ Information Technology ซึ่งต้องการ " high performance on complex data " เช่น ภาพวาดที่เป็น 3 มิติ , animation,หรือข้อมูลอื่น ๆ ที่มีความซับซ้อน ส่วน RDBMS จะถูกใช้กับข้อมูลประเภท descriptive data เช่น การเก็บที่อยู่,เบอร์โทรศัพท์ การเลือกใช้ DBMS จึงขึ้นอยู่กับชนิดของข้อมูลที่เราต้องการจะจัดเก็บและการเข้าถึงข้อมูลของผู้ใช้ ดังคำกล่าวที่ว่า " using the right tool for the right purpose ".


1 ความคิดเห็น: