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

 

ขั้นตอนของการทำกระบวนการสอบถามข้อมูล และการสอบถามข้อมูลที่ได้คำตอบที่ดีที่สุด

การประมวลผลสอบถามจะทำการประมวลผลเป็นขั้นตอนต่าง ๆ โดยจะนำคำสั่งภาษาสอบถามที่ผู้ใช้ต้องการมาตรวจสอบกับกฎและไวยากรณ์ (rule of grammars) ของภาษาสอบถามนั้น ๆ ระบบการจัดการฐานข้อมูลจะใช้กลยุทธ์การประมวลผล (execution strategy) สำหรับหาผลลัพธ์ของคำสั่งภาษาสอบถามนั้น ๆ จะทำให้ได้ผลลัพธ์ในเวลาอันรวดเร็ว ขั้นตอนในการประมวลผลสอบถามดังภาพที่ 8.2.1 มีขั้นตอนดังนี้

 

ภาพที่ 1 ขั้นตอนการประมวลผลในภาษาสอบถาม

ขั้นตอนที่ 1 การตรวจเช็คกฎไวยากรณ์ของภาษา (syntax checking) เมื่อผู้ใช้ได้ทำการป้อนคำสั่งภาษาสอบถาม ระบบจัดการฐานข้อมูลโดย ตัวประมวลผลสอบถาม (query processor) จะทำการตรวจเช็คกฎและหลักเกณฑ์ (syntax checking) ของภาษาสอบถามนั้น เมื่อตรวจเช็คแล้วหากพบว่าคำสั่งภาษาสอบถามที่ป้อนเข้ามายังระบบมีความผิดพลาดไม่เป็นไปตามกฎเกณฑ์ของภาษาสอบถาม ระบบจัดการฐานข้อมูลโดยตัวประมวลผลสอบถามก็จะส่งข้อความไปยังผู้ใช้ให้ผู้ใช้ปรับแก้ให้ถูกต้อง แต่ถ้าตรวจเช็คแล้วคำสั่งนั้นถูกต้องตามกฎไวยากรณ์ของภาษาสอบถาม จะแปลงทำให้ได้รูปแบบของภาษาสอบถาม (intermediate from of query) เพื่อให้ระบบจัดการฐานข้อมูลสามารถเข้าใจได้ ซึ่งผลที่แปลงจะอยู่ในรูปของสมการพีชคณิตแบบสัมพันธ์ (relational algebraic expression) เพื่อให้ ระบบจัดการฐานข้อมูลเข้าใจและทำตามผลที่ได้นั้น ตัวอย่างเช่น ต้องการหารายชื่อนักศึกษาที่ลงทะเบียนในวิชาฐานข้อมูล ซึ่งสามารถเขียนเป็นภาษา เอสคิวแอลได้ดังนี้

select Std_Name, Course_Name

from STUDENT, REGISTRATION, COURSE

where STUDENT.Std_ID = REGISTRATION.Std_ID and

COURSE. = REGISTRATION.Course# and

REGISTRATION.Course# = ‘Database’;

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

ขั้นตอนที่ 2 การแปลงการสอบถามให้อยู่ในรูปที่เหมาะสมที่สุด (query optimizer) เมื่อได้สมการพีชคณิตแบบสัมพันธ์แล้วระบบการจัดการฐานข้อมูลจะทำการประมวลผลสมการรพีชคณิตแบบสัมพันธ์นั้น เพื่อให้ได้แผนการเข้าถึงข้อมูลในการประมวลผล การที่จะให้ได้แผนการเข้าถึงข้อมูล (access) นั้นจะมีวิธีการเข้าถึงฐานข้อมูลได้หลายวิธี ระบบการจัดการฐานข้อมูลจะทำการหาวิธีที่เหมาะสมในการเข้าถึงฐานข้อมูล โดยจะมีเทคนิคต่างๆในการเข้าถึงข้อมูลที่ใช้เวลาน้อยที่สุด หรือเรียกว่าการทำออพติไมเซชั่น (optimisation) ซึ่งเทคนิคในการเข้าถึงข้อมูลที่เหมาะสมเหล่านี้ เช่น เทคนิคการซอร์ตและการเมอร์จ (sorting and merge method) เป็นการเรียงลำดับข้อมูลในตารางข้อมูลโดยในระบบจัดการฐานข้อมูลจะมีโปรแกรมสำหรับจัดเรียงลำดับข้อมูล เพื่อให้การประมวลผลประหยัดเวลาในการประมวลผลลง เทคนิคดีคอมโพสิชั่น (decomposition method) เป็นการแตกคำสั่งในภาษาสอบถามให้เป็นโมดูลย่อยๆเพื่อง่ายต่อการประมวลผล หรือเทคนิคโอเปอร์เรเตอร์กราฟ (operator graph) เป็นการนำสมการพีชคณิตที่ได้จากการตรวจเช็คกฎไวยากรณ์ของภาษา แล้วนำมาหาทางการประมวลผลที่ทำให้การประมวลผลนั้นใช้เวลาน้อย เทคนิคต่างๆ เหล่านี้จะทำให้ได้แผนการในการประมวลผลที่เหมาะสมว่าระบบจะต้องประมวลผลอย่างไร เพื่อให้ได้วิธีการเข้าถึงฐานข้อมูลที่มีประสิทธิภาพและใช้เวลาในการประมวลผลน้อยที่สุด

ขั้นตอนที่ 3 การสร้างชุดคำสั่งของภาษาสอบถาม (query code generator) เมื่อได้วิธีที่เหมาะสมที่สุดในการเข้าถึงฐานข้อมูลแล้ว ระบบจัดการฐานข้อมูลโดยตัวประมวลผลสอบถามจะทำการสร้างชุดคำสั่งของภาษาสอบถาม ทำให้ได้ชุดคำสั่ง (source code) ที่พร้อมจะประมวลผล

ขั้นตอนที่ 4 การประมวลผลในฐานข้อมูล (runtime database processor) เมื่อได้ชุดคำสั่งที่พร้อมจะประมวลผลแล้ว ตัวประมวลผลสอบถามก็จะทำการคอมไพล์ (compile) หรือแปลคำสั่ง (interpret) และประมวลผล (executed ) ชุดคำสั่งจนได้ผลลัพธ์

 

 

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