Back to Home

DataBase System

Lesson12345679101112131415

Lesson 8 : Query Processing



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


<<Prev pageCourse MapNext page>>

Print content of this page
Save content of this page

 

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

1 โครงสร้างของตัวประมวลผลสอบถาม

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

ภาพที่ 1 โครงสร้างของตัวประมวลผลสอบถาม

1.1 ส่วนตรวจสอบภาษา (parser)

เป็นส่วนหนึ่งของตัวประมวลผลสอบถามที่ทำหน้าที่ตรวจเช็คกฎและหลักเกณฑ์ (syntax) ของคำสั่งสอบถามข้อมูลที่กำหนดไว้ในระบบฐานข้อมูล โดยจะทำการตรวจสอบข้อมูลที่อยู่ในพจนานุกรมข้อมูลแล้วทำการแปลคำสั่งให้อยู่ในรูปของสมการพีชคณิตแบบสัมพันธ์ (relational algebraic expression) ที่ระบบจัดการฐานข้อมูลสามารถเข้าใจได้

ตัวอย่าง ภาษาSQL เพื่อภาษาสอบถามข้อมูลต้องการสอบถามข้อมูลจากตาราง COURSE โดยทำการค้นหาข้อมูลที่มีรหัสวิชา (Course#) เป็น COMP353 ที่มี Smith เป็นผู้สอนมีดังนี้

select Course#

from COURSE

where Course# = COMP353 and

Insturctor = ‘Smith’;

จากคำสั่งภาษา SQL ดังกล่าวข้างต้น ส่วนตรวจสอบภาษา (parser) จะทำการแปลคำสั่งในการสอบถามจากภาษา SQL ให้อยู่ในรูปของสมการพีชคณิตแบบสัมพันธ์ (relational algebraic expression) ได้ดังนี้

 s Course# = COMP353 Ù (Instructor = ‘Smith’(COURSE)) 

1.2 ออฟติไมเซอร์ (optimizer)

เป็นส่วนหนี่งของตัวประมวลผลสอบถามที่ทำหน้าที่ในการกลยุทธ์หรือวิธีการที่เหมาะสมเพื่อให้การเข้าถึงข้อมูลประหยัดเวลาที่สุด เมื่อคำสั่งในภาษาสอบถามผ่านตัวตรวจสอบภาษา (parser) แล้วจะได้คำสั่งในการสอบถามที่อยู่ในรูปของสมการพีชคณิตแบบสัมพันธ์ (relational algebraic expression) ซึ่งสามารถประมวลผลได้หลายวิธีด้วยเทคนิคต่าง ๆ ในการหาทางเลือกที่เหมาะสม (optimization) ออฟติไมเซอร์จะทำการเลือกการเข้าถึงข้อมูล (aceess plan) โดยการเลือกแผนการเข้าถึงข้อมูลซึ่งจะต้องคำนึงถึงประเด็นต่อไปนี้

· การลดปริมาณการดึงหรือเรียกใช้ข้อมูล

· การลดขนาดของโครงสร้างข้อมูลโดยพิจารณาใช้เทคนิคการลดการทำงานระหว่างการดึงข้อมูล

· เพิ่มความสามารถในการดึงข้อมูลด้วยการเรียงลำดับไว้ก่อน การจัดเรียงลำดับใหม่อาจจะช่วยลดการทำงานบางอย่างไร เพื่อช่วยให้การประมวลผลสอบถามสามารถทำงานได้ดีขึ้น ออฟติไมเซอร์โดยอาจสร้างสมการพีชคณิตแบบสัมพันธ์ให้อยู่ในรูปแบบของโครงสร้างต้นไม้ที่อยู่ในรูปของกราฟ (operator graph) ดังภาพที่ 8.1.2.2 เป็นโอเปอร์เรเตอร์กราฟ (operator graph) ของการค้นหารายชื่อของนักศึกษาที่ลงทะเบียนเรียนวิชา Database

 

ภาพที่ .2 ตัวอย่างโอเปอร์เรชันกราฟ(operator graph)

 · จัดลำดับคำสั่งเพื่อให้ขั้นตอนการทำงานลดลงได้แก่ จัดลำดับการคำสั่ง SELECT เพื่อลดการนำเข้าข้อมูลตั้งแต่เริ่มต้นดึงข้อมูลจากดิสก์

· เลือกใช้คำสั่งในการจัดกลุ่ม( PROJECT ) และคำสั่งค้นหา (SELECT) ในการเลือกกลุ่มข้อมูล

 

 

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