ระบบจัดการฐานข้อมูล

          ระบบจัดการฐานข้อมูล (Database Management System : DBMS) คือ ซอฟต์แวร์ระบบที่ใช้ในการจัดการฐานข้อมูล โดยมีวัตถุประสงค์หลักคือ การสร้างสภาวะแวดล้อมที่สะดวกและมีประสิทธิภาพในการเข้าถึงและจัดเก็บข้อมูลของฐานข้อมูล 
        หน้าที่ของ DBMS
         1.เป็นสื่อกลางในการจัดการฐานข้อมูลระหว่างผู้ใช้และโปรแกรมประยุกต์ต่างๆที่มีอยู่ในระบบฐานข้อมูล
         2.ควบคุม ดูแล การสร้าง การเรียกใช้ข้อมูล การจัดทำรายงาน การปรับเปลี่ยนแก้ไขโครงสร้างและข้อมูล รวมไปถึงการควบคุมต่าง
         3.กำหนดข้อมูล (Data Definition)
         4.การเรียกใช้ข้อมูล (Data Manipulation)
              - เก็บและดูแลข้อมูล (Store and  Maintain Data)
              - บรรจุข้อมูลจากฐานข้อมูล (Load Data)
              - ประสานงานกับระบบปฏิบัติการ (Operating System)
         5.ควบคุมความปลอดภัยและบูรณภาพของข้อมูล (Data  Security and Integrity)
         6.การฟื้นสภาพและการใช้ข้อมูลพร้อมกัน (Data Recovery and Concurrency)
              - จัดทำข้อมูล สำรองข้อมูล (Backup and Recovery)
              - ควบคุมการใช้งานพร้อมกันของผู้ใช้ระบบ (Concurrency Control)
         7.การสร้างพจนานุกรมข้อมูล (Data Dictionary)

ความสัมพันธ์ระหว่างระบบจัดการฐานข้อมูล ผู้ใช้ และฐานข้อมูล


สถาปัตยกรรมฐานข้อมูล
          เนื่องจากการใช้งานฐานข้อมูลผู้ใช้งานส่วนใหญ่ไม่ใช่ผู้เชี่ยวชาญทางด้านคอมพิวเตอร์ ดังนั้นการออกแบบระบบบานข้อมูลจึงได้มีการซ่อนรายละเอียดที่ซับซ้อนต่างๆไว้ภายใน ทำให้ผู้ใช้จะเห็นข้อมูลที่อยู่ในรูปของนามธรรม และมองเห็นในมุมมองที่ต่างกันขึ้นอยู่กับการนำข้อมูลต่างๆไปใช้งาน ต่อมาในปี คศ.1975 สถาบัน America National standard Institute ได้มีการกำหนดสถาปัยกรรมฐานข้อมูล
ขึ้น เรียกว่า ANSI-SPARK โดยแบ่งเป็น 3 ระดับ คือ   
              1.ระดับภายใน (Internal Level)
              2.ระดับความคิด (Concept Level)
              3.ระดับภายนอก (External Level)
              ระดับภายใน (Internal level) เป็นระดับที่มองถึงวิธีการจัดเก็บข้อมูลเชิงกายภาพ ว่ามีรูปแบบและโครงสร้างการจัดเก็บข้อมูลอย่างไร ซึ่งมีหน้าที่ในการจัดเก็บข้อมูลจริงๆในหน่วยความจำ โครงสร้างในแต่ละรูปแบบก็จะส่งผลถึงประสิทธิภาพที่แตกต่างกัน เช่น การจัดเก็บรายละเอียดของเรคอร์ด การบีบข้อมูล รวมทั้งที่เกี่ยวกับดัชนี (Index) ซึ่งในระดับดังนั้นโครงสร้างในระดับนี้จึงพิจารณาในเรื่องของความเร็วและประสิทธิภาพในการปฏิบัติกับข้อมูล
              ระดับแนวคิด (Conceptual Level) ระดับแนวคิดหรือระดับตรรกะ (Logical Level) ในระดับนี้จะมองความสัมพันธ์ระหว่างข้อมูลเป็นสำคัญหรือเรียกว่า แบบจำลองข้อมูล (Data Model) การใช้งานหรือทำการใดๆในโปรแกรมจากผู้ใช้จะทำอยู่ในระดับนี้เท่านั้น ผู้ที่เกี่ยวข้องจึงเป็นผู้บริหารฐานข้อมูลหรือโปรแกรมเมอร์ โดยในระดับแนวคิดยังเกี่ยวข้องกับสิ่งนี้
                   - จำนวนเอ็นติตี้ทั้งหมด แอตติบิวต์ รวมไปถึงความสัมพันธ์ระหว่างเอ็นติตี้
                   - กฎข้อบังคับในข้อมูล
                   - ระบบความปลอดภัยข้อบังคับในข้อมูล
             ระดับภายนอก (External Level) หรือระดับ (View Level) เป็นข้อมูลเชิงนามธรรมระดับสูงสุด จะมองการใช้งานของผู้ใช้ในแต่ละคน ซึ่งถือว่าโครงสร้างระดับภายนอกก็คือบางส่วนของข้อมูลในฐานข้อมูลของโครงสร้างระดับแนวคิด โดยสามารถกำหนดวิวได้หลายๆวิว ที่แตกต่างกัน เพื่อป้องกันและรักษาความปลอดภัยและความมั่นคงให้กับฐานข้อมูลได้ดีขึ้น ทำให้ผู้ใช้แต่ละคนจะมองเห็นวิวแต่ละวิวที่แตกต่างกันขึ้นอยู่กับสิทธิในการเข้าถึงข้อมูลนั้นๆ
           ชนิดของระบบฐานข้อมูล
            ระบบฐานข้อมูลสามารถแบ่งย่อยได้หลายประเภท ขึ้นอยู่กับเกณฑ์ต่างๆ ที่ใช้ในการพิจารณา เช่น
         1.จำนวนผู้ใช้ แบ่งออกเป็น 2กลุ่ม
               1.1ผู้ใช้คนเดียว ระบบจัดการฐานข้อมูลแบบนี้จะสนับสนุนการใช้งานได้แค่คนเดียว คือ ถ้ามีบุคคลใช้งานอยู่ จะไม่สามารถเข้าไปใช้งานฐานข้อมูลดังกล่าวได้ ต้องรอให้ผู้ใช้งานคนดังกล่าวใช้งานให้เสร็จก่อนจึงจะใช้งานต่อไปได้
               1.2ผู้ใช้หลายคน เป็นระบบฐานข้อมูลที่สนับสนุนการใช้งานของผู้ใช้หลายคนพร้อมกันในเวลาเดียวกัน คือ ถ้ามีการใช้งานไม่เกิน 50 user จะเรียกว่า Workgroup Database แต่ถ้าใช้เกิน จะเรียกว่า Enterprise Database
           2.สถานที่ตั้งของฐานข้อมูล แบ่งออกเป็นฐานข้อมูลแบบรวมศูนย์ และฐานข้อมูลแบบกระจาย
           ชนิดของการใช้งานฐานข้อมูล แบ่งออกเป็น 2 ประเภทใหญ่ๆ คือ ฐานข้อมูลดำเนินการ (operational database) และฐานข้อมูลเพื่อสนับสนุนการตัดสินใจ (decision support database) 
           การประยุกต์ใช้งานฐานข้อมูล (The Range of Database Application)
               1.ฐานข้อมูลส่วนบุคคล (Personal Database) เป็นฐานข้อมูลพนักงานขายที่มีการจัดเก็บข้อมูลลูกค้า มีการบันทึกรายละเอียดของลูกค้า
                      ข้อดี
                         - ช่วยเพิ่มยอดขายให้กับพนักงานขาย
                         - บริหารจัดการข้อมูลลูกค้าได้ดีขึ้น
                      ข้อเสีย
                         - ไม่สามารถแชร์ข้อมูลร่วมกับบุคคลอื่นได้
               2.ฐานข้อมูลระดับเวิร์กกรุ๊ป (Workgroup Database ) มีจำนวนผู้ใช้งานไม่เกิน 50 คน จุดประสงค์เพื่อแชร์ทรัพยากรร่วมกันภายในเครือข่ายแลน
               3.ฐานข้อมูลระดับแผนก (Department Database) มีจำนวนผู้ใช้ตั้งแต่ 50-100 คน แต่ละแผนกจะมีหน้าที่รับผิดชอบที่แตกต่างกัน ฐานข้อมูลถูกออกแบบเพื่อสนับสนุนการใช้งานในหน้าที่ ท่ี่แตกต่างกันตามความต้องการในแผนกนั้นๆ
               4.ฐานข้อมูลระดับเอนเตอร์ไพรส์ (Enterprise Database) มีจุดมุ่งหมายเพื่อสนับสนุนงานเชิงปฏิบัติการและงานด้านการตัดสินใจในองค์กรใหญ่ มีระบบสารสนเทศที่พัฒนาขึ้นมาเพื่อเชื่อมโยงในแต่ละแผนกด้วยกัน คือ ระบบวางแผนทรัพยากรองค์กร หรือระบบ ERP (Enterprise Resource Planing) มีการรวบรวมระบบงาน ทำให้สามารถใช้งานร่วมกันได้ทั้งองค์กร เช่น ระบบขายสินค้าเชื่อมโยงไปยังระบบจัดซื้อ ระบบสินค้าคงคลัง ระบบบัญชี ระบบการเงิน ระบบทรัพยากรบุคคล ระบบวางแผน เพื่อการผลิตและควบคุม 
               5.ฐานข้อมูลอินเทอร์เน็ต (Internet Database) จากผลกระทบในเรื่องของระบบอินเทอร์เน็ต ทำให้องค์กรหรือหน่่วยงานจำเป็นต้องจัดทำฐานข้อมูลบนเว็บ เพื่อให้ทันกับคู่แข่ง จึงเกิดรูปแบบของธุรกิจในรูปของพาณิชย์อิเล็กทรอนิกส์
           การทำงานของระบบจัดการฐานข้อมูล
                จะแบ่งการทำงานออกเป็นมอดูลย่อยๆ เพื่อรับผิดชอบการทำงานในแต่ละส่วน การทำงานบางอย่างต้องได้รับการสนับสนุนจากระบบปฏิบัติการคอมพิวเตอร์ การออกแบบระบบฐานข้อมูลจึงต้องพิจารณาการเชื่อมต่อระหว่างระบบฐานข้อมูลกับระบบปฏิบัติการคอมพิวเตอร์ด้วย การทำงานสามารถแบ่งออกเป็น 2 ส่วนใหญ่ๆด้วยกันคือ
                  1.หน่วยประมวลผลคิวรี เช่น ตัวแปรภาษา DML ,ตัวแปรภาษา DDl,ตัวประมวลผลคิวรี
                  2.ผู้จัดการหน่วยเก็บข้อมูล (storage manager) เป็นโปแกรมโมดูลที่ทำหน้าที่ในการเชื่อมต่อระหว่างหน่วยเก็บข้อมูลในระบบฐานข้อมูลกับโปรแกรมประยุกต์ และคิวรีที่ส่งเข้ามาในระบบ ประกอบด้วยส่วนย่อยๆดังนี้
                      - ผู้จัดการสิทธิและบูรณาภาพ ทำหน้าที่ในการทดสอบกฎข้อบังคับเกี่ยวกับความถูกต้องของข้อมูล
                      - ผู้จัดการทรานแซคชัน ทำหน้าที่เพื่อให้แน่ใจว่่าฐานข้อมูลมีสถานะที่ถูกต้องแม้ว่าระบบจะล้มเหลว
                      - ผู้จัดการแฟ้มข้อมูล ทำหน้าที่ในการแบ่งสรรพื้นที่บนหน่วยเก็บข้อมูล และกำหนดโครงสร้างข้อมูลที่จัดเก็บ
                      - ผู้จัดการบัฟเฟอร์
            ข้อดี - ข้อเสีย ของระบบฐานข้อมูล
                ข้อดี
                  1.โปรแกรมและข้อมูลมีความอิสระ ไม่กระทบจากโปรแกรมที่ใช้งาน
                  2.ลดความซ้ำซ้อนของข้อมูล ข้อมูลจะเก็บไว้ที่ส่วนกลางที่เดียว
                  3.ข้อมูลมีความสอดคล้องกัน
                  4.การใช้ข้อมูลร่วมกัน ฐานข้อมูลถูกออกแบบมาเพื่อแบ่งปันการใช้งาน แม้จะเก็บไว้ที่เดียว
                  5.เพิ่มคุณประโยชน์ในการพัฒนาแอปพลิเคชั่น ลดต้นทุนในการพัฒนาโปรแกรมประยุกต์ใหม่ๆ
                  6.ความเป็นมาตรฐานเดียวกัน กำหนดรูปแบบข้อมูลให้เป็นไปตามมาตรฐานที่กำหนด
                  7.ข้อมูลมีคุณภาพยิ่งขึ้น มีการป้องกันแก้ไขข้อมูลในขณะที่มีผู้ใช้กำลังใช้งานอยู่
                ข้อเสีย
                  1.เทคโนโลยีฐานข้อมูลมีความซับซ้อนมากกว่าแบบไฟล์ ทำให้เกิดความซับซ้อนเพิ่มขึ้น
                  2.มีขนาดความจุที่เพิ่มขึ้น DBMS ที่มีประสิทธิภาพสูงขนาดก็จะยิ่งสูงขึ้นตามไปด้วย
                  3.ต้นทุนของ DBMS มีราคาสูง ราคาจะขึ้นอยู่กับลักษณะการนำไปใช้
                  4.อุปกรณ์ที่จะนำใช้ต้องมีประสิทธิภาพและมีความเร็วสูง จึงต้องมีอุปกรณ์ฮาร์ดแวร์ที่เพิ่มขึ้น
                  5.ต้องมีการจัดซื้ออุปกรณ์ใหม่ๆเพื่อรองรับกับ DBMS
                  6.เนื่องจากการใช้งานร่วมกันกับหลายระบบงานทำให้ไม่เหมาะกับงานในบางเรื่อง
                  7.ข้อมูลต่างๆจัดเก็บอยู่ที่ส่วนกลางเพียงจุดเดียว ระบบเสียหายจะกระทบในทุกๆส่วนงานที่ใช้ร่วมกัน




ที่มา : http://www.pongkorn.net/dbms

ไม่มีความคิดเห็น:

แสดงความคิดเห็น