วันพุธที่ 29 ตุลาคม พ.ศ. 2557

ฐานข้อมูล

ประวัติ
ฐานข้อมูลในลักษณะที่คล้ายกับฐานข้อมูลสมัยใหม่ ถูกพัฒนาเป็นครั้งแรกในทศวรรษ 1960 ซึ่งผู้บุกเบิกในสาขานี้คือ ชาลส์ บากแมน แบบจำลองข้อมูลสำคัญสองแบบเกิดขึ้นในช่วงเวลานี้ ซึ่งเริ่มต้นด้วย แบบจำลองข่ายงาน (พัฒนาโดย CODASYL) และตามด้วยแบบจำลองเชิงลำดับชั้น (นำไปปฏิบัติใน IMS) แบบจำลองทั้งสองแบบนี้ ในภายหลังถูกแทนที่ด้วย แบบจำลองเชิงสัมพันธ์ ซึ่งอยู่ร่วมสมัยกับแบบจำลองอีกสองแบบ แบบจำลองแบบแรกเรียกกันว่า แบบจำลองแบนราบซึ่งออกแบบสำหรับงานที่มีขนาดเล็กมาก ๆ แบบจำลองร่วมสมัยกับแบบจำลองเชิงสัมพันธ์อีกแบบ คือ ฐานข้อมูลเชิงวัตถุ หรือ โอโอดีบี3 (OODB)
ในขณะที่แบบจำลองเชิงสัมพันธ์ มีพื้นฐานมาจากทฤษฎีเซต ได้มีการเสนอแบบจำลองดัดแปลงซึ่งใช้ทฤษฎีเซตคลุมเครือ (ซึ่งมีพื้นฐานมาจากตรรกะคลุมเครือ) ขึ้นเป็นอีกทางเลือกหนึ่ง
ปัจจุบันมีการกล่าวถึงมาตรฐานโครงสร้างฐานข้อมูล เพื่อให้สามารถเชื่อมโยงฐานข้อมูลต่างระบบ ให้สืบค้นรวมกันเสมือนเป็นฐานข้อมูลเดียวกัน และการสืบค้นต้องแสดงผลตรงตามคำถาม มาตรฐานดังกล่าวได้แก่ XML RDF Dublin Core Metadataเป็นต้น และสิ่งสำคัญอีกประการหนึ่งที่จะช่วยให้การแลกเปลี่ยนข้อมูลรหว่างต่างหน่วยงานได้ดี คือการใช้ Taxonomy และ อรรถาภิธาน ซึ่งเป็นเครื่องมือสำหรับจัดการความรู้ในลักษณะศัพท์ควบคุม เพื่อจำกัดความหมายของคำที่ใช้ได้หลายคำในความหมายเดียวกัน
สถาปัตยกรรม
สถาปัตยกรรมฐานข้อมูล ประกอบด้วย 3 ระดับ คือ ระดับภายนอก, ระดับแนวคิด และ ระดับภายใน โดยทั้ง 3 ระดับ จะถูกแบ่งแยกออกจากกันโดยชัดเจน ซึ่งทั้ง 3 ระดับเป็นลักษณะสำคัญหลักๆ ของแบบจำลองฐานข้อมูลเชิงสัมพันธ์ ที่นิยมนำมาใช้กับฐานข้อมูลในยุคศตวรรษที่ 21
ระดับภายนอก คือ การบอกผู้ใช้ให้เข้าใจว่าจะจัดการข้อมูลได้อย่างไร โดยในฐานข้อมูลหนึ่งๆ สามารถมีจำนวนวิวที่ระดับภายในกี่วิวก็ได้ ระดับภายใน คือ การที่ข้อมูลจะถูกเก็บไว้ในที่จัดเก็บข้อมูลเชิงกายภาพและประมวลผลโดยระบบคอมพิวเตอร์ได้อย่างไร สถาปัตยกรรมภายในจะมีเกี่ยวข้องกับ ต้นทุน, ประสิทธิภาพ, การขยายขนาดของงาน และ ปัจจัยในการดำเนินการอื่นๆ ระดับแนวคิด คือ ระดับที่อยู่ระหว่างระดับภายในและระดับภายนอก โดยจะต้องจัดเตรียมวิวของฐานของมูลให้ไม่ซับซ้อน โดยจะมีรายละเอียดว่าจะจัดเก็บหรือจัดการข้อมูลอย่างไร, และสามารถรวมระดับภายนอกที่หลากหลายต่างๆ ให้สอดคล้องเข้าไว้ด้วยกัน
ระบบจัดการฐานข้อมูล
ดูบทความหลักที่: ระบบจัดการฐานข้อมูล
ระบบจัดการฐานข้อมูล (DBMS) ประกอบด้วยซอฟต์แวร์ที่ใช้ในการจัดการฐานข้อมูล, จัดเตรียมพื้นที่ในการเก็บ, การเข้าถึง,ระบบรักษาความปลอดภัย, สำรองข้อมูล และสิ่งอำนวยความสะดวกอื่นๆ ระบบจัดการฐานข้อมูลสามารถแบ่งหมวดหมู่ได้ตามแบบจำลองฐานข้อมูลที่สนับสนุน อาทิเช่น เชิงสัมพันธ์ หรือ XML เป็นต้น แบ่งตามประเภทของคอมพิวเตอร์ที่สนับสนุน อาทิเช่นserver cluster หรือ โทรศัพท์พกพา เป็นต้น แบ่งตามประภทของภาษาสอบถามที่ใช้ในการเข้าถึงฐานข้อมูล อาทิเช่น ภาษาสอบถามเชิงโครงสร้าง หรือ XQuery แบ่งตามประสิทธิภาพในการ trade-offs อาทิเช่น ขนาดที่ใหญ่ที่สุด หรือ ความเร็วสูงสุด หรือ อื่นๆ เป็นต้น ในบาง DBMS จะครอบคลุมมากกว่าหนึ่งหมวดหมู่ เช่น สนับสนุนภาษาสอบถามได้หลายๆ ภาษา ยกตัวอย่างเช่น ในDBMS ที่นิยมใช้การอย่างแพร่หลาย MySQL, PostgreSQL, Microsoft Access, SQL Server, FileMaker,Oracle,Sybase, dBASE, Clipper,FoxPro อื่นๆ ในทุกๆ ซอฟต์แวร์ฐานข้อมูลจะมี Open Database Connectivity (ODBC) driver มาให้ด้วย เพื่ออนุญาตให้ฐานข้อมูลสามารถทำงานร่วมกับฐานข้อมูลแบบอื่นๆ ได้
การออกแบบฐานข้อมูล
การออกแบบฐานข้อมูล (Designing Databases) มีความสำคัญต่อการจัดการระบบฐานข้อมูล (DBMS) ทั้งนี้เนื่องจากข้อมูลที่อยู่ภายในฐานข้อมูลจะต้องศึกษาถึงความสัมพันธ์ของข้อมูล โครงสร้างของข้อมูลการเข้าถึงข้อมูลและกระบวนการที่โปรแกรมประยุกต์จะเรียกใช้ฐานข้อมูล ดังนั้น เราจึงสามารถแบ่งวิธีการสร้างฐานข้อมูลได้ 3 ประเภท
1. รูปแบบข้อมูลแบบลำดับขั้น หรือโครงสร้างแบบลำดับขั้น (Hierarchical data model) วิธีการสร้างฐาน ข้อมูลแบบลำดับขั้นถูกพัฒนาโดยบริษัท ไอบีเอ็ม จำกัด ในปี 1980 ได้รับความนิยมมาก ในการพัฒนาฐานข้อมูลบนเครื่องคอมพิวเตอร์ขนาดใหญ่และขนาดกลาง โดยที่โครงสร้างข้อมูลจะสร้างรูปแบบเหมือนต้นไม้ โดยความสัมพันธ์เป็นแบบหนึ่งต่อหลาย (One- to -Many)
2. รูปแบบข้อมูลแบบเครือข่าย (Network data Model) ฐานข้อมูลแบบเครือข่ายมีความคล้ายคลึงกับฐาน ข้อมูลแบบลำดับชั้น ต่างกันที่โครงสร้างแบบเครือข่าย อาจจะมีการติดต่อหลายต่อหนึ่ง (Many-to-one) หรือ หลายต่อหลาย (Many-to-many) กล่าวคือลูก (Child) อาจมีพ่อแม่ (Parent) มากกว่าหนึ่ง สำหรับตัวอย่างฐานข้อมูลแบบเครือข่ายให้ลองพิจารณาการจัดการข้อมูลของห้องสมุด ซึ่งรายการจะประกอบด้วย ชื่อเรื่อง ผู้แต่ง สำนักพิมพ์ ที่อยู่ ประเภท
3. รูปแบบความสัมพันธ์ข้อมูล (Relation data model) เป็นลักษณะการออกแบบฐานข้อมูลโดยจัดข้อมูลให้อยู่ในรูปของตารางที่มีระบบคล้ายแฟ้ม โดยที่ข้อมูลแต่ละแถว (Row) ของตารางจะแทนเรคอร์ด (Record) ส่วน ข้อมูลนแนวดิ่งจะแทนคอลัมน์ (Column) ซึ่งเป็นขอบเขตของข้อมูล (Field) โดยที่ตารางแต่ละตารางที่สร้างขึ้นจะเป็นอิสระ ดังนั้นผู้ออกแบบฐานข้อมูลจะต้องมีการวางแผนถึงตารางข้อมูลที่จำเป็นต้องใช้ เช่นระบบฐานข้อมูลบริษัทแห่งหนึ่ง ประกอบด้วย ตารางประวัติพนักงาน ตารางแผนกและตารางข้อมูลโครงการ แสดงประวัติพนักงาน ตารางแผนก และตารางข้อมูลโครงการ

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

การออกแบบฐานข้อมูลในระดับตรรกะ
การออกแบบฐานข้อมูลในระดับตรรกะ หรือในระดับแนวความคิด เป็นขั้นตอนการออกแบบความสัมพันธ์ระหว่างข้อมูลในระบบโดยใช้แบบจำลองข้อมูลเชิงสัมพันธ์ ซึ่งอธิบายโดยใช้แผนภาพแสดงความสัมพันธ์ระหว่างข้อมูล (E-R Diagram) จากแผนภาพ E-R Diagram นำมาสร้างเป็นตารางข้อมูล (Mapping E-R Diagram to Relation) และใช้ทฤษฏีการ Normalization เพื่อเป็นการรับประกันว่าข้อมูลมีความซ้ำซ้อนกันน้อยที่สุด ซึ่งการออกแบบเชิงตรรกะนี้จะบอกถึงรายละเอียดของ Relation , Attributeและ Entity

วันศุกร์ที่ 19 กันยายน พ.ศ. 2557

บทบาทและการสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์

บทบาทและการสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์

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

    สำหรับการติดต่อสื่อสารระหว่างเครื่องคอมพิวเตอร์หลายเครื่องในเวลาเดียวกันที่เรียกว่าระบบเครือข่าย (network) มีการพัฒนาให้ดีขึ้นเป็นลำดับ จากในอดีตการใช้งานคอมพิวเตอร์จะเป็นคอมพิวเตอร์ที่มีขนาดใหญ่เช่น เมนเฟรม การใช้งานจะมีการเชื่อมต่อไปยังเครื่องปลายทางหรือเทอร์มินัล (terminal) หลายเครื่อง ซึ่งถือว่าเป็น
การติดต่อสื่อสารระหว่างคอมพิวเตอร์กับเทอร์มินัลในยุคแรก

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

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

    ปัจจุบันมีการใช้งานคอมพิวเตอร์เป็นอุปกรณ์ในการคำนวณและเก็บข้อมูล รวมถึงการสื่อสารข้อมูล การแลกเปลี่ยนข้อมูลข่าวสารต่างระหว่างคอมพิวเตอร์ เช่น ระบบสำนักงานอัตโนมัติ (Office Automation : OA) เป็นระบบงานที่ใช้คอมพิวเตอร์ ซอฟต์แวร์ประยุกต์ และระบบเครือข่ายช่วยในงานที่เกี่ยวกับเอกสาร การโอนย้ายแลกเปลี่ยนไฟล์ การควบคุมเอกสารและส่งเอกสารไปยังหน่วยต่างๆ ที่เกี่ยวข้อง และการส่งอีเมล ผู้ใช้งานอาจอยู่-ภายในอาคารเดียวกันหรืออยู่คนละเมืองก็ได้ การส่งข้อมูลข่าวสารเช่นนี้ต้องอาศัยอุปกรณ์อิเล็กทรอนิกส์หลายประเภทที่สามารถเชื่อมต่อและทำงานร่วมกัน โดยผ่านสื่อกลางในการส่งผ่านข้อมูล ซึ่งผู้เรียนจะได้ศึกษาต่อไป นอกจากนี้ยังมีการกระจายฐานข้อมูลความรู้ต่างๆ ไว้ผ่านระบบเครือข่าย เช่น ฐานข้อมูลเกี่ยวกับสิ่งแวดล้อม งานวิจัย เศรษฐกิจ และสินค้าต่างๆ ในสถานศึกษาอาจจะมีข้อมูลที่เกี่ยวกับหนังสือและตำราวิชาการ หากผู้ใช้ต้องการข้อมูลใดก็สามารถติดต่อผ่านเครือข่ายสื่อสารด้วยคอมพิวเตอร์มายังศูนย์บริการข้อมูลนั้น ทำให้การได้รับข้อมูลเป็นไปอย่างสะดวกรวดเร็ว

การสื่อสารข้อมูลและเครือข่ายคอมพิวเตอร์ก่อให้เกิดประโยชน์ ดังนี้

    1. ความสะดวกในการแบ่งปันข้อมูล ปัจจุบันมีข้อมูลจำนวนมากสามารถถูกส่งผ่านเครือข่ายการสื่อสารได้อย่างมีประสิทธิภาพและรวดเร็ว เช่น การส่งข้อมูลผ่านเครือข่ายโทรศัพท์ระบบ ดีเอสแอล ( Digital Subscriber Line DSL ) ถ้าส่งด้วยอัตราเร็ว 2 Mbps หรือประมาณ 256 kB/s จะส่งข้อมูลจำนวน 200หน้าได้ในเวลาน้อยกว่า 10 วินาที

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

    3. ความเร็วในการรับส่งข้อมูล การใช้คอมพิวเตอร์ในการส่งข้อมูล หรือ ค้นคว้าข้อมูลจากฐานข้อมูลขนาดใหญ่ทำได้รวดเร็ว เนื่องจากสัญญาณทางไฟฟ้าเดินทางด้วยความเร็วใกล้เคียงความเร็วแสง เช่น การดูภาพยนตร์ หรือรายการโทรทัศน์ผ่านอินเทอร์เน็ต การตรวจสอบหรือการจองที่นั่งของสายการบินสามารถทำได้ทันที

    4. การประหยัดค่าใช้จ่ายในการสื่อสารข้อมูล การรับและส่งข้อมูลผ่านเครือข่ายการสื่อสารสามารถทำได้ในราคาถูกกว่าการสื่อสารแบบอื่น เช่น การใช้งานโทรศัพท์โดยผ่านอินเทอร์เน็ตหรือที่เรียกว่า วอยซ์โอเวอร์ไอพี
( Voice over IP : VoIP ) จะมีค่าใช้จ่ายต่ำกว่าการใช้งานโทรศัพท์โดยผ่านระบบโทรศัพท์พื้นฐาน หรือการใช้อีเมลส่งข้องมูลหรือเอกสารในรูปแบบอีเล็กทรอนิกส์จะมีค่าใช้จ่ายต่ำกว่า และรวดเร็วกว่าการส่งเอกสารแบบวิธีอื่น

    5. ความสะดวกในการแบ่งปันทรัพยากร ในองค์กรสามารถใช้อุปกรณ์สารสนเทศร่วมกันได้โดยไม่ต้องเสียค่าใช้จ่ายติดตั้งอุปกรณ์ให้กับทุกเครื่อง เช่น เครื่องพิมพ์ นอกจากนี้ยังสามารถให้โปรแกรมและข้อมูลร่วมกันได้ โดยจัดเก็บโปรแกรมและข้อมูลเหล่านั้นไว้ที่แหล่งเก็บข้อมูลที่เป็นศูนย์กลาง เช่น เครื่องบริการไฟล์ ( file server ) เป็นต้น

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

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

    8. การสร้างบริการรูปแบบใหม่บนเครือข่าย การให้บริการต่างๆ ผ่านเครือข่ายคอมพิวเตอร์ทำให้ผู้ใช้สามารถเข้าใช้บริการได้ทุกที่ทุกเวลา เช่น การซื้อสินค้าผ่านร้านค้าออนไลน์ ซึ่งเป็นบริการแบบหนึ่งของพาณิชย์อิเล็กทรอนิคส์ ( e – commerce ) และการรับชำระสินค้า ค่าสาธารณูปโภคผ่านจุดรับชำระแบบออนไลน์ ที่เรียกว่าเคาน์เตอร์เซอร์วิส ( counter service )a