Back to Home

DataBase System

Lesson123456791011121415

Lesson 13 : Distributed Database System



Lesson Plan
Section No.
Section 1
Section 2
Test
PDF file
PPT File


<<Prev pageCourse MapNext page>>

Print content of this page
Save content of this page

 

สถาปัตยกรรมระบบฐานข้อมูลแบบกระจาย

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

ในระบบฐานข้อมูลแบบกระจาย ข้อมูลจะถูกจัดเก็บไว้ในหลาย ๆ เครื่อง และจะเชื่อมต่อเข้าด้วยกันผ่านระบบเครือข่าย โดยแต่ละที่จะมีระบบจัดการฐานข้อมูลเป็นของตนเอง และสามารถที่จะทำงานได้ด้วยตนเอง หรือร่วมกันทำงานก็ได้ โดยที่คอมพิวเตอร์แต่ละเครื่อง จะเรียกว่าไซต์หรือโหนด ดังรูปที่ 13.1

รูปที่13.1 แสดงลักษณะทางกายภาพของระบบฐานข้อมูลแบบกระจาย

สถาปัตยกรรมไคลเอนท์-เซิฟร์เวอร์(Client-Server Architecture) เป็นระบบคอมพิวเตอร์ที่ประกอบไปด้วยเครื่องคอมพิวเตอร์จำนวนหลาย ๆ เครื่อง ทั้งคอมพิวเตอร์ส่วนบุคคล เวิรค์สเตชัน เครื่องให้บริการแฟ้มข้อมูล เครื่องให้บริการการพิมพ์ ฯลฯ โดยมีการเชื่อมต่อกันผ่านระบบเครือข่าย โดยแบ่งออกเป็นสองส่วนคือเครื่องที่ขอใช้บริการ(Client) และเครื่องให้บริการ(Server) ในเรื่องของระบบฐานข้อมูลจะแบ่งโปรแกรมระบบจัดการฐานข้อมูลออกเป็นสองระดับ คือ ไคลเอนท์ และเซิฟร์เวอร์ บางไซต์จะรันเฉพาะโปรแกรมไคลเอนท์ และบางไซต์จะรันเฉพาะโปรแกรมเซิฟร์เวอร์เท่านั้น ตัวอย่างเช่น ในการประมวลผลคำสั่ง SQL ดำเนินการระหว่างไคลเอนท์และเซิฟร์เวอร์ จะมีขั้นตอนดังนี้

    1. ไคลเอนท์วิเคราะห์คำสั่ง และแยกคำสั่งออกเป็นหลาย ๆ คำสั่งตามจำนวนของเซิฟร์เวอร์ไซต์ที่จะทำการสืบค้นข้อมูล จากนั้นก็จะส่งคำสั่งไปยังแต่ละเซิฟร์เวอร์ไซต์นั้น
    2. เซิฟร์เวอร์แต่ละตัวจะประมวลผลคำสั่งในเครื่องตนเอง และส่งผลลัพธ์กลับไปยังไคลเอนท์
    3. ไคลเอนท์รวบรวมผลลัพธ์ที่ได้รับกลับมาจากไซต์ต่าง ๆ แล้วสร้างเป็นผลลัพธ์สุดท้าย

จากแนวทางนี้เครื่องที่ทำหน้าที่ประมวลผลคำสั่งจะเรียกว่า database processor (DP) หรือเครื่อง back-end และเครื่องไคลเอนท์จะเรียกว่า application processor(AP) หรือเครื่อง front-end

ในระบบจัดการฐานข้อมูลแบบกระจาย(Distributed Database Management System : DDBMS) จะแบ่งออกเป็นสามระดับคือ

    1. โปรแกรมส่วน Server รับผิดชอบเกี่ยวกับการจัดการข้อมูลที่ ซึ่งจะเหมือนกับโปรแกรม DBMS แบบรวมศูนย์
    2. โปรแกรมส่วน Client รับผิดชอบเกี่ยวกับการเข้าถึงข้อมูลที่อยู่ใน DDBMS catalog และทำการร้องขอการใช้บริการข้อมูลไปที่ไซต์อื่น
    3. โปรแกรมส่วน Communication จะสนับสนุนการสื่อสารข้อมูลบนระบบเครือข่าย ซึ่งจะถูกใช้งานโดยโปรแกรมส่วน Client เพื่อทำการส่งคำสั่งและข้อมูลไปยังไซต์ที่ต้องการ

Client จะทำหน้าที่ในการสร้างแผนการสืบค้นข้อมูลแบบกระจาย ควบคุมให้การทำทรานแซกชันมีคุณสมบัติ ACID อยู่เสมอ และหน้าที่ที่สำคัญอีกอย่างหนึ่งคือมีความสามารถที่จะซ่อนรายละเอียดของการกระจายของข้อมูลจากผู้ใช้ได้ นั่นคือผู้ใช้งานในไซต์ต่างๆ ก็สามารถที่จะเข้าถึงข้อมูลได้โดยไม่จำเป็นจะต้องรู้ว่าข้อมูลเก็บอยู่ที่ไหนเราเรียกคุณสมบัตินี้ว่า distribution transparancy ดังรูปที่ 13.2 โดย DDBMS จะต้องบอกได้ว่าข้อมูลที่จัดเก็บนั้นอยู่ที่ไซต์ไหนบ้าง

รูปที่ 13.2 แสดงสถาปัตยกรรมไคลเอนท์-เซิฟร์เวอร์สำหรับระบบฐานข้อมูลแบบกระจาย

 


 

Last Updated: 12/13/2001 11:29:24 AM
© โครงการเครือข่ายสารสนเทศเพื่อพัฒนาการศึกษา ทบวงมหาวิทยาลัย