เคหะงั้นเดี๋ยวเริ่มเลยนะคะ วันนี้จะเป็นบทที่ 8
บท
เหลืออีก 2 บทเราก็
ได้
ธรรมปฏิบัติ
วันนี้จะเป็นเกี่ยวกับ
กระบวนการทำงานของฐานข้อมูลเนี่ยมันก็จะมีการเปลี่ยนแปลงข้อมูล
มันเป็นการเพิ่มลบแก้ไขเราจะเรียกว่าเป็นการเปลี่ยนแปลง
รวมถึงถ้าสมมุติว่าระบบฐานข้อมูลเรามีปัญหา
เราจะทำการกู้คืนระบบอย่างไรหรือ
จะสำรองข้อมูล
อย่างไร เพื่อป้องกันความเสียหายของข้อมูล
นะคะ
ตัวรายการการเปลี่ยนแปลงนี่ มันจะมีนิยามอยู่ 3 ยุค
ยุคแรกก็คือไฟล์ที่เราเก็บ
รายการ ที่มีการเปลี่ยนแปลงไว้นี่นะคะ
จะเก็บไว้ในแฟ้มข้อมูลหลัก
ซึ่งจะเป็นการเก็บเป็นแบบเรียงลำดับ
นะคะ
ไฟล์ที่มีการเรียง
ข้อมูลไว้เรียบร้อยแล้ว
นะคะ
ต่อมาจะเป็นยุคที่ 2
ตอนแรกก็เก็บข้อมูลเป็นเหมือนอาจจะเป็นคล้าย ๆ ไฟล์กระดาษ
พอยุคที่ 2 นี่เราจะเริ่มใช้เป็นพวก Disk หรนี่ยเก็บข้อมูล
ซึ่งการเก็บข้อมูลใน
Harddisk นี่มันจะไม่เป็นการเก็บข้อมูลแบบเรียงลำดับแล้ว
ซึ่งรายการเปลี่ยนแปลงที่เกิดขึ้นนี่จะหมายถึงทุก ๆ กิจกรรมที่ทำอยู่บน
ไฟล์ข้อมูลของเรา
น่าจะตอนเช้า 10:00 น. มีการเพิ่มข้อมูล
นะคะ
10:30 น. อาจจะเป็นการเปลี่ยนแปลงข้อมูลใด ๆ ก็ตามที่เกิดขึ้น
นะคะ
อันนี้จะเริ่มเป็นยุคที่ 2
ยุคที่ 3
นะคะ ซึ่งเป็นยุคปัจจุบันนี้ล่ะ
การเก็บข้อมูลนะคะ การเปลี่ยนแปลงทุกอย่างที่เกิดขึ้นในระบบจัดการฐานข้อมูล
นี่ จะอยู่ในรูปแบบของกลุ่มคำสั่ง
โดยใช้ภาษาที่ใช้จัดการฐานข้อมูล
ระดับตรรกะ
นะคะ
ที่อาจจะมีการยอมให้ละเมิดกฎความคงสภาพของข้อมูล
บางกฎได้
หรือกดที่ทำความถูกต้องของฐานข้อมูล
แต่จะต้องเป็นเกี่ยวข้องกับ
กฎของการดำเนินธุรกิจ
ต่าง ๆ
เราจะต้องใส่
ข้อบังคับไว้ว่าข้อมูลเหล่านี้
ถ้าสมมุติว่าคุณ
ใส่ข้อมูลผิดพลาดจะเป็น
อย่างไร ข้อมูลถูกต้องระบบจะแจ้งเตือน
อย่างไร ซึ่งกฎต่าง ๆ พรุ่งนี้เนี่ยที่อยู่ในฐานข้อมูล
ถูกบังคับใช้โดยระบบจัดการฐานข้อมูล
อันนี้ก็คือ
การเปลี่ยนแปลงข้อมูลในยุคปัจจุบันเราจะใช้
กลุ่มของคำสั่ง
ภาษาที่จัดการฐานข้อมูล
นะคะ ซึ่งในวิชานี้
เราจะเรียนเกี่ยวกับภาษา SQL เบื้องต้น
นะคะ
โดยเริ่มแรกนะคะ
การ...รายการการเปลี่ยนแปลงนี่ มันอาจจะเกิดขึ้นกับระบบที่
ใช้งานคนเดียว
นะคะ หรือเป็นระบบที่ใช้งานร่วมกันหลายคน
หรืออาจจะเป็นการทำงานที่
พร้อม ๆ กันไป
นะคะ ซึ่งการทำงานพร้อมกันนี่ ก็จะมีอยู่ 2 แบบ ก็คืออาจจะเป็นการทำงานที่
มีรายการระดับที่ 1 รายการระดับที่ 2
สลับกันทำงาน
ในเวลา
เดียวกัน
สลับกัน
กับ
อย่างที่ 2
ก็คือจะเป็นการทำงานพร้อม ๆ กัน อาจจะมีทั้ง 2 งาน 3 งาน 4 งานว่าไป
เป็นงานที่มากกว่า 1
ส่งข้อมูลเป็นรายงาน
ทุกอย่างจะประมวลผลพร้อม ๆ กัน
อันนี้คือการทำงานของรายการเปลี่ยนแปลงที่อาจจะเกิดขึ้นในฐานข้อมูล
อย่างเช่นว่าระบบ
อาจจะเป็นระบบ
ใบเรียกชื่อนักศึกษา
นะคะ อาจารย์ในมหาลัยมี 300 คน สามารถเข้าใช้ระบบนี้ได้พร้อมกัน
อาจจะมีการประมวลผล
รายชื่อนักศึกษาได้พร้อมกัน 300 คนก็ได้
นะคะ
การประมวลผลมากกว่า 1 คน
นะคะ ในเวลาเดียวกันนี่ อาจจะมีสัก 10 คนดูข้อมูลนักศึกษาชุดเดียวกันก็ได้
แต่ถามว่ามันจะทำงานได้ไหม วต้องทำงานได้
ซึ่ง
การทำงาน 1 คนเดียวกันทำงานหลายคน
มันจะมีแนวทางหรือข้อกำหนดประเภทของ
ฐานข้อมูลอีกแบบหนึ่ง
โดยที่จะ
กำหนดจำนวนของผู้ใช้งาน
ที่สามารถเข้าใช้งานพร้อมกันได้
ยังใช้ว่าบางระบบในระบบจัดการฐานข้อมูลเขาจะกำหนดไว้ว่า
ในเวลานั้น จะต้องมีผู้ใช้งานแค่คนเดียวที่ทำงานอยู่
หรือถ้าเป็นระบบจัดการฐานข้อมูล
โดยทั่วไปในโลกของความเป็นจริง ส่วนมาก
เขาจะให้ผู้ใช้งานนี่
สามารถเข้าใช้งานได้พร้อมกันหลาย ๆ คนในเวลาเดียวกัน
แต่จะมีการกำหนดสิทธิ์
ของผู้ใช้งานแต่ละคนไม่เท่ากัน
เข้าใช้งานพร้อมกันก็จริงค่ะ แต่บางคนอาจจะแค่ดูข้อมูล
บางคนอาจจะมาลบข้อมูล บางคนอาจจะมาแก้ไขบางส่วน
มาเพิ่มข้อมูลเข้าไป
ได้หลาย ๆ คนน่ะจะทำงานพร้อม ๆ กัน
สิทธิ์ในการแก้ไขหรือการเพิ่มเติมใด ๆ ก็ตามนี่
ไม่เท่ากัน
รายการเปลี่ยนแปลงนี่ มันจะเป็นเกี่ยวกับการประมวลผลของโปรแกรม
ที่ทำงานในเชิง
ก็คือเป็น
อาจจะคิดว่าข้อมูลนี้จริงหรือเท็จ
ข้อมูลนี้ถูกหรือผิด
โดย
รายการเปลี่ยนแปลงนี่ จะประกอบไปด้วยการปฏิบัติที่
ทั้งหน่วยประมวลผล ทั้งฐานข้อมูล
จะมีกระบวนการทำงานใด ๆ กระบวนการเกิดขึ้นพร้อมกัน
นะคะ
ซึ่งการทำงานของฐานข้อมูลนี่ จะเป็นการกระทำผ่านโปรแกรมประยุกต์
เดี๋ยวอีก 2 สัปดาห์เราจะได้เรียน
โดยใช้ภาษาระดับสูง
ภาษา SQL ที่เราจะเรียน เราถือว่าเป็นภาษาระดับสูงเพราะ
เป็นภาษาที่
มนุษย์อ่านแล้วเข้าใจ ใกล้เคียงกับภาษามนุษย์มากที่สุด
แต่นักศึกษาต้องเข้าใจอย่างหนึ่งว่าเราจะต้องใช้เป็นภาษาอังกฤษ
ฉเพราะฉะนั้น คุณพิมพ์คำสั่งเป็นภาษาไทยนี่ ระบบจะไม่ประมวลผลเลย
สำหรับ SQL เบื้องต้น
ดูรายการเปลี่ยนแปลงทุกรายการจะต้องมีจุดเริ่มต้นและจุดสิ้นสุดสิ้นสุด
นะคะ
เหมือนคุณไปกดเงินอยู่หน้ามหาวิทยาลัยจุดเริ่มต้นคืออะไร
วิธีการใส่บัตร ATM เข้าไป
ตอนนี้ไม่มีใคร
กดเงินโดยใช้บัตร ATM แล้วจุดเริ่มต้น คือ
เข้า Application
กดถอนเงินโดยไม่ใช้บัตร
ทุกอย่างจะเป็นขั้นตอน
ทำตามขั้นตอนไปเรื่อย ๆ
ถึงจุดสิ้นสุดคือ
คุณได้รับเงินออกจากเครื่อง ATM
ซึ่งทุกอย่างจะถูกเก็บไว้ว่า
คุณเริ่มกดรหัส
เมื่อเวลาเท่าไ
รนะคะ คุณยืนยันยอดเงินกี่โมง
เงินออกจากตู้กี่โมง ทุกอย่างจะถูกเก็บไว้
ถ้าหากว่า
ในการจัดการฐานข้อมูลนี่ มันจะมี
รายการเปลี่ยนแปลง
ที่อาจจะ
User ผู้ใช้งานทั่วไปอาจจะไม่จำเป็นต้องมีการเปลี่ยนแปลง หรือ
นะคะ
มีไว้อ่านเฉย ๆ
นะคะ ถ้าศัพท์ภาษาอังกฤษเรียกว่า
"Read Only" นะคะ
เอามาดูอย่างเดียว
อย่างเช่น
การเปลี่ยนแปลงที่ไม่ก่อให้เกิด
ผลกระทบกับฐานข้อมูล เช่นคุณแค่อยากดูยอดเงินปัจจุบันว่า
มีเงินเท่า
ไร เราแค่ดู ถามว่าคุณจะถอนเงินไหม ไม่
อยากรู้ว่าตอนนี้ฉันมีเงินกี่บาท
เราจะเรียกว่ารายการนั้นคือ หรือกระบวนการนั้นว่าเป็นการอ่านอย่างเดียว
ไม่มีการแก้ไข
นะคะ
โดยกระบวนการทำงานของ
ข้อมูลนะคะ
อย่างเริ่มต้นก็คือมันจะ
เรียกข้อมูลขึ้นมาดูก่อน
นะคะ
เรียกข้อมูลว่าสมมุติว่า
อยากดูว่าวันนี้เราจะถอนเงิน
แต่เราจำไม่ได้ว่าเรามีเงินกี่บาท
เราจะต้องทำการเรียกข้อมูลขึ้นมาดูก่อนว่าเงินในบัญชีมีเท่าไ
ร หน้าจอมันก็แสดงผลว่าเรามีเงินเท่าไ
ร หลังจากนั้น
จะเป็นการเขียน หรือการแก้ไข หรือการลบ
ซึ่ง
ขั้นตอนที่ 3 นี่
อยู่ที่ว่า
เราจะโอนเงิน
หรือเราจะถอนเงิน
นะคะ หรือเราจะไม่ทำอะไรเลยก็ได้
นะคะ แต่ทุกอย่างจะต้องมีจุดเริ่มต้น
อย่างตัวอย่างตัวนี้
ตัวอย่างของการเปลี่ยนแปลง
อย่างสมมติให้
T นี่ นะคะ
เป็นรายการเปลี่ยนแปลงที่เกิดขึ้น
เขาต้องการจะโอนเงินจากบัญชี
ของเอ
จำนวน 5,000 บาท
ไปยังบัญชี B
นะคะ
สิ่งที่เกิดขึ้นคืออะไร
สิ่งที่เกิดขึ้นคือตอนแรกเราจะต้องดูข้อมูลก่อนว่าในบัญชี
A ที่เขาบอกว่าเขาจะโอนเงินไปนี่
โอน 5,000
ขั้นตอนแรกคือดูก่อนสิว่า
ในบัญชี A มีเงินถึง 5000 ไหม
มีเกินหรือเปล่า
เช็กยอดเงินเสร็จปุ๊บ
เราก็จะมาหักบัญชี
เช่นสมมุติเขามี 5,000 บาท
100 บาท
งั้นแสดงว่ามีจะ
ยอดเงินพอที่จะโอนไปให้
จะทำการลบเงินออก
5,000
ลบไปแล้ว 5,000 ใช่ไหมคะ เพราะว่าเราจะโอน
อันสุดท้ายแล้วบัญชี A จะต้องเหลือเงิน 100 บาท
ใช่ไหม
เวลาเราโอนเงินแล้วถอนเงิน
เขาจะบอกยอดเงินปัจจุบันของเราด้วยอันนี้เป็นเรื่องปกติใช่ไหมคะ
หลังจากนั้น
เราก็จะมา
ดูว่าเขาจะโอนไปที่บัญชี B ใช่ไหมคะ
เราว่ายอดเงินบัญชี B ขึ้นมาดูซิว่ามีเท่าไหร่บัญชี
B จะมีอยู่ 1
,000 1,000
1000
พโอนมาอีก 5,000
เราก็ต้องอัปเดทหรือการปรับปรุงข้อมูลบัญชีบี
1000 ก็จะเพิ่มเป็น 6,000 บาท
อันนี้คือรายการเปลี่ยนแปลงของการโอนบัญชี
แต่ทุกลำดับขั้นตอนจะต้องมีวันที่เวลากำหนด
ไว้ ทุกการเปลี่ยนแปลงเป็นวินาทีเลยด้วยซ้ำ
พอไม่มี
การเปลี่ยนแปลงแล้วนี่
เราใช้งานไปเรื่อย ๆ
ระบบมันอาจจะมีปัญหา
มันจะต้องมีการสำรองข้อมูล
นะคะ
พอเราสำรองข้อมูลไว้ ทำไมเราต้องสำรองข้อมูล
ถ้ามีข้อมูลสำรองไว้ ถ้าระบบมีปัญหาเราสามารถกู้ข้อมูลกลับคืนมาได้
ทำไมเราถึงจำเป็นต้องกู้คืนข้อมูล เกิดเมื่อกี้นี้
เป็นคุณกำลังโอนเงิน
แล้วไฟดับ
แต่โอนไปแล้ว 5,000 บาท
แล้วไฟดับพอดี
เงินคุณออกไปแล้ว
แต่บัญชีที่คุณจะโอนให้เงินยังไม่ได้เพราะไฟดับพอดีทำยังไง
นะคะ ถือว่าระบบล่ม
มันจะต้องมีการแก้ปัญหา
ซึ่งเป็นหน้าที่ของระบบจัดการฐานข้อมูล
ระบบจัดการฐานข้อมูลจะต้องรับผิดชอบว่าทุก ๆ การทำงานที่เกิดขึ้นในรายการเปลี่ยนแปลง
ต้องทำเสร็จเรียบร้อย
มีการเปลี่ยนแปลงดังกล่าวจะถือว่าเป็นการเปลี่ยนแปลง
บันทึกข้อมูลถาวร
ถ้าโอนไปเงินออกจากบัญชีคุณ แต่ปลายทางยังไม่ได้รับ ถือว่าการทำรายการเปลี่ยนแปลงนั้นยังไม่สมบูรณ์
นะคะ โดยที่ระบบจัดการฐานข้อมูลจะไม่อนุญาตให้บางกระบวนการทำงานของรายการเปลี่ยนแปลง
นะคะ จะถูกส่งเข้าไปฐานข้อมูล
นะคะ เหมือน
จะเป็นไปได้ไหม ว่า
การจะโอนเงิน 5,000 บาท แล้วก็คงจะถอนอีก
3,000 ในเวลาเดียวกัน
เป็นไปไม่ได้
เพราะฉะนั้น กระบวนการทำงานจะต้อง
เป็นตาม
รายการที่จะทำอยู่รายการเดียวเท่านั้น
ทั้งถอนทั้งโอนไม่ได้ ต้องเลือกก่อนว่าสรุปคุณจะโอนก่อน
หรือคุณจะถอน
เพราะว่าถ้าบังเอิญว่าคุณปล่อยให้มีการกระทำมากกว่า 2
มากกว่า 1 การกระทำขึ้นมาพร้อมกัน
มันจะเอาไปมันจะสามารถไปเกิดปัญหา
ความไม่ถูกต้องแน่นอนของข้อมูล เช่น
เรามีเงิน 5,000
เราจะโอน 5,000 แล้วเราก็จะถอน 30
00 เป็นไปไม่ได้
บางคนมีแอปโทรศัพท์
แต่บัตร ATM อยู่กับแม่
โอนเงินให้เพื่อน 5,000 บาท
มั่นใจว่าจะมี 5,000
แม่กดไปแล้ว 300 แล้ว ก็ยังโอนมันโอนไม่ได้ค่ะ เพราะว่ายอดเงินไม่พอ
เพราะฉะนั้น
อันนี้ก็เป็นสิ่งที่ยอมไม่ได้ ของระบบจัดการฐานข้อมูลนะคะ
ซึ่งปัญหา
การที่ระบบล่ม
นะคะ มันจะมีอยู่ 3 ประเภท
แบบแรกคือรายการเปลี่ยนแปลง
ผิดพลาด กับข้อ 2 เป็นปัญหาที่ระบบ
ข้อ 3 จะเป็นปัญหาที่
สิ่งวัตถุที่มาใช้เก็บข้อมูล
นะคะ
โดยที่ปัญหาที่เกิดระหว่างการประมวลผล บางครั้งอาจจะเกิดก
ับคอมพิวเตอร์พัง
นะคะ หรืออาจจะเป็นปัญหาของรายการเปลี่ยนแปลงมัน Error
ก็อาจจะเป็น
โค้ดโปรแกรมอาจจะมีปัญหา
นะคะ
การเรียกดูข้อมูลอาจจะถูกดัก
รายการเปลี่ยนแปลงที่มีความผิดปกติ เช่น
บอกว่ามีคนโอนเงินมาแต่จริง ๆ แล้วไม่พบรายการข้อมูลที่มีการเปลี่ยนแปลง
ที่โอนไปแล้ว
แต่ยอดเงินไม่ขึ้น
นะคะ รวมถึงกระบวนการควบคุมการประมวลผลพร้อมกันจะทำ
อย่างไรนะคะ
อาจจะมีเกี่ยวกับอุปกรณ์พัง Harddisk พัง
บางคนใช้งานนาน ๆ อากาศร้อน
คอมพิวเตอร์ก็พังได้เหมือนกันนะคะ เหมือนบางคน
เปิดคอมพิวเตอร์ไว้ไม่เคยปิดเลย พอช่วงฤดูร้อนมันร้อนมาก
ตัว
Mainboard มัความร้อนก็มีรวมถึงอาจจะเกี่ยวกับ
ไฟดับ
ไฟไหม้
อุทกภัยหรือภัยธรรมชาติต่าง ๆ
อาจเกิดขึ้นได้ถือว่าเป็นสาเหตุที่ทำให้การประมวลผลมีปัญหาเช่นเดียวกัน
หรือในการทำงานบางอย่าง
อาจทำไปสู่นำไปสู่การล่มของระบบ เช่น
คุณใส่ข้อมูลเยอะเกินไป
เหมือนเวลาเราเขียนโปรแกรมแล้วมันไม่รู้จบ
หรือการที่
เอา 0 มาหาร ซึ่งเวลาเรา 0 มาหารนี่มันจะหาค่าไม่ได้ตอนที่เราเขียนโปรแกรม
ระบบไล่ม
รวมถึงตรรกะของการเขียนโปรแกรมอาจจะผิด
อย่างไรดี
ถ้าคน
ผมสั้น
สมมุติจะกลับโปรแกรม
คนผมสั้นจะต้องเป็นผู้ชายเท่านั้นถามว่าจริงไหมไม่จริง
ผู้ชายผมยาวก็มีผู้หญิงผมสั้นก็มีอันนี้คือตรรกะผิดพลาด
เราจะมากำหนดอย่างนี้เลยไม่ได้
เหมือนเวลาสแกนใบหน้าอย่างนี้ แล้วบอกว่าผมสั้นมาต้องเป็น
ผู้ชายแน่นอน ซึ่งมันไม่จริง
หรือ User หรือผู้ใช้งานอาจเป็นการหยุดที่ไม่ถูกต้อง
ระหว่างประมวลผล
เช่น
กำลังดาวน์โหลดเอกสาร
หรือกำลังทำธุรกรรม
บางคนกำลังโอนเงินอยู่
แล้วไม่ได้ใช้เน็ตในโทรศัพท์ใช้เน็ต WiFi
มีคนถอดปลั๊กออก
การโอนเงินของตอนนั้นของคุณอาจจะมีปัญหาก็ได้
อันนี้คือ
การทำงานอาจจะมีการผิดพลาดหรือปัญหาเกิดขึ้น
อันนี้ก็อธิบายไปแล้วนะ
เปลี่ยนแปลง
ซึ่งสาเหตุเหล่านี้นี่ เราเลยจำเป็นจะต้องมีทั้งการกู้คืน แล้วก็การสำรองข้อมูล
โดยการกู้คืนฐานข้อมูลนี่ ก็คือกระบวนการที่
ทำให้ฐานข้อมูลของเรานี่
กลับสู่สภาวะเดิม
ที่สามารถใช้งานได้
นะคถ้า
ขนาดนั้นถ้าไม่มีความขัดข้องหรือข้อผิดพลาดระหว่างการประมวลผล
ซึ่ง
การฟื้นสภาพหรือการกู้คืนนี่
มันเป็นงานที่ระบบจัดการฐานข้อมูลเนี่ย
ย้อนกลับไป
ยังข้อมูล
ก่อนที่จะเกิดความเสียหาย
นะคะ
โดยที่ไหนก็เหมือนจะเกิดความขัดข้องและความเสียหายของระบบไม่ว่ากรณีใด ๆ
มันจะทำให้ข้อมูลนะเนี่ยไม่ถูกต้องแล้วก็เชื่อถือไม่ได้
เราจะต้องย้อนกลับไป
นะคะ พราะฉะนั้น
การกู้คืนฐานข้อมูลมันจะเป็นมีวิธีการในการเอาข้อมูลที่ถูกทำลาย
หรืออาจจะถูกเปลี่ยนแปลงให้กับคืนมา
อยู่ในสภาพที่ถูกต้องน่าเชื่อถือเหมือนเดิม
นะคะ ซึ่งอันนี้ก็คือเป็นหน้าที่ของระบบจัดการฐานข้อมูลเช่นเดียวกัน
นะคะ โดยการกู้คืนข้อมูลการฟื้นสภาพ เหมือนจะเป็นการทำให้เรามั่นใจว่ารายการที่ทำของเราเนี่
ถูกยกเลิกไปหรืออาจจะมีความผิดพลาดต่าง ๆ เช่น
น่าจะเกิดจากโปรแกรม
ระบบมันเสีย
Harddisk เสีย
ไฟดับ
ไฟตก
นะคะ สิ่งเหล่านี้จะไม่ก่อให้เกิดความเสียหายของฐานข้อมูล
หรือการทำงานอื่นที่ทำงานร่วมกันของข้อมูล
นั้น ๆ นะคะ
โดย
รูปแบบของ
ลักษณะของความ
ผิดพลาดนะคะ อันแรกระบบล่ม ซึ่งอันนี้เราก็น่าจะคุ้นเคยกันอยู่
ความขัดข้องจาก
อุปกรณ์บันทึกข้อมูล
นะคะ Harddisk เสีย
ssd เสีย
ความผิดพลาดของโปรแกรม
ภัยธรรมชาติ
อย่างเราเป็นเรียนทางคอมพิวเตอร์เราจะต้องไปดูแลคอมพิวเตอร์
แต่ถ้าคุณไม่ดูแลเอาใจใส่
ไม่ทำความสะอาด ไม่เช็ก ความพร้อมอุปกรณ์
ไม่เป็นไรหรอก
เปิดฝาหลังคอมพิวเตอร์มามีแต่ฝุ่น
ถามว่าฝุ่นมันสะสมมาก ๆ
สักวันมันจะช็อตแล้วคอมก็จะพัง
อันนี้คือความไม่ดูแลเอาใจใส่ หรือเอาของเข้ามากินในห้อง น้ำหกแต่คอมพิวเตอร์
ของคุณก็
พัง เพราะฉะนั้น เดี๋ยวถ้า
มีโอกาสที่คุณจะไปดูงานห้องคอมพิวเตอร์
เป็นคอมพิวเตอร์ที่สมบูรณ์แบบ
เขาจะห้าม
ของกินทุกชนิด
รองเท้าต้องสะอาดถุงเท้าต้องสะอาด
บางห้องต้องใส่หมวกคลุมผม
ไม่ให้ผมร่วงลงไป
เพราะบางทีถ้าพัดลมมันพัด
มันไปเกิด
ช็อตที่ใบพัดของ
ระบบทำความเย็น
คอมพิวเตอร์เสียหายได้ หรือรวมถึงการก่อวินาศกรรม
ถ้าเราดูหนังแต่เรื่อง
นะคะ
จะมีการวางระเบิดห้องคอมพิวเตอร์ไรนี่ อันนี้ก็เป็นสาเหตุเช่นเดียวกัน
นะคะ
ประเภทของ
ความขัดข้องก็มีอยู่ 3 ลักษณะหลัก ๆ นะคะ
อันแรกจะเป็นความขัดข้องของ
ระบบ
เช่น ความขัดข้องของระบบปฏิบัติการ
นะคะ
ทำให้ระบบไม่สามารถทำงานไม่ได้
การ
อาจจะต้องมีการปิด-เปิดเครื่องใหม่ Restart นะคะ
ซึ่ง
จะมีผลกับทุกรายการเปลี่ยนแปลงที่กำลังทำงานอยู่
อาจจะไม่ถึงขั้นทำลายข้อมูลในฐานข้อมูล
นะคะ เราจะเรียก
การขัดข้องแบบนี้ว่าเป็นการขัดข้องแบบ
อย่างเบาแล้วกัน
ข้อมูลไม่หาย
แต่ข้อมูลที่อยู่ใน Harddisk นี่
บางครั้งอาจจะ
ต่อไปครั้งแรกที่มีการเล่นการทำงานมันอาจจะช้า
นะคะ
เพราะว่าส่วนมากข้อมูลแล้วจะเก็บไว้ใน Harddisk ซึ่ง Harddisk ไม่มีไฟฟ้าก็สามารถเก็บข้อมูลได้
นะคะ
ความขัดข้องแบบที่ยังพอรับได้ ปิด-เปิดเครื่องใหม่
ก็หาย
แต่ถ้าเป็นความขัดข้องของรายการเปลี่ยนแปลง
นะคะ
ก็
จะมีอยู่ 2 ลักษณะ
บางครั้งมันจะเป็นความขัดข้องที่
อาจจะป้องกันได้จากโปรแกรมที่เรา
เขียนไว้
โปรแกรมที่เราใช้งาน
โดย
มีทั้งภายในภายนอกที่ไม่สามารถแก้ไขได้ อย่างสมมุติว่า
ความขัดข้องที่สามารถป้องกันได้จากภายในโปรแกรม
เช่น
ถ้าเราจะโอนเงิน
สมมุติว่าเราอยากโอน
50,000
นะคะ
จริง ๆ แล้วมีอยู่ 500
โปรแกรมก็จะเริ่มตรวจสอบความผิดพลาดแล้วว่า แล้วก็แสดงผลว่ายอดเงินของคุณไม่เพียงพอ
ยกเลิกรายการนี้
หรือ
กลับไปแก้ไขจำนวนเงินใหม่
อันนี้คือเราสามารถป้องกันความเสียหายได้
นะคะ
อันนี้ก็คือ
มันจะเป็นเกี่ยวกับตรรกะแนวคิด
แล้ว
เงินไม่พอจะโอนได้อย่างไร อันนี้เป็น
พื้นฐานง่าย ๆ เป็นต้น
หรือถ้าไม่สามารถป้องกันได้ เช่น
ข้อมูลมันเยอะเกินอย่างเช่นอยากจะเคยได้ยินข่าวว่า
มี Hacker พยายาม
เอาข้อมูลเหมือนพยายามโจมตี server server 1
นะคะ
อาจจะเป็นมหาวิทยาลัยเราก็ได้
สามารถทำงานได้พร้อมกันเต็มที่ 500 คน
Hacker ใช้ User เป็น 1 ล้าน
คนมาโจมตี
มันจะทำให้ระบบเรานี่ ไม่สามารถรับได้
ระบบอัตโนมัติ
เพราะเรารับได้เต็มที่ 500 แต่คนล้านคนพยายามเข้ามา หรือพยายามกรอกข้อมูลนี่
มันเป็นไปไม่ได้เลย
ระบบก็จะพัง
นะคะ อย่างนี้เป็นต้น อันนี้คือไม่สามารถ
ตรงกันในโปรแกรมเราได้เลย
กับอย่างนึง
กล้องของอุปกรณ์
อาจจะพังหัวอ่านสะเทือนกระทบกันนักศึกษาบางคนชอบ
ขายโน้ตบุ๊ก แล้วปิดพัดลม
ปิดเครื่อง
เครื่องก็ยังทำงานอยู่
เวลาคุณขี่มอเตอร์ไซค์
ตกหลุม
มันสะเทือน
อุปกรณ์ที่อยู่ในกระเป๋าเป้ เรามันยังทำงาน
ก็จะสะเทือนไปด้วย
มันก็อาจจะพัง
คอมคุณก็จะพัง เพราะบางทีหัวอ่าน Harddisk คุณมันทำงานอยู่
พอมันโดนกระแทก
หัวอ่านมันจะเป็นเข็มเล็ก ๆ
มันก็พัง
นะคะ อันนี้ก็ระวังด้วยอันนี้คือความ
เสียหายของอุปกรณ์ที่ถือว่าเป็นลักษณะที่ค่อนข้างรุนแรง เพราะถ้ามันพัง
แก้ไขไม่ได้
เหมือนมันหักไปแล้ว มันเสียไปแล้ว
ข้อมูลแล้วก็ไม่ได้สำรอง
อันนี้ก็คือ
ข้อผิดพลาดจากอุปกรณ์เก็บข้อมูล
ความจำเป็นของการกู้คืนข้อมูลก็แน่นอนค่ะ อยู่ที่ว่าเราจะสำรองข้อมูลกับอะไรใส่ Harddisk ไว้ไหมหรือใส่ USB ไว้
หรืออัปโหลดขึ้นบน
Google Drive หรือ Cloud ก็ว่าไป
ซึ่งประเภทของ
เก็บข้อมูลสำรองจะมีอยู่ 3 แบบ
3 แบบนี้ ถ้านับเป็นอุปกรณ์นะที่จับต้องได้
อันแรกเป็นอุปกรณ์ที่
เก็บข้อมูลได้ต่อเมื่อมีไฟฟ้า
ในกรณีที่ไม่มีไฟฟ้าข้อมูลพวกนี้ จะหายไป
สิ่งเหล่านี้ ก็คือ
Ram
เราเรียนประกอบคอมแล้ว RAM มันจะเป็นการ์ดแผ่นเล็ก ๆ
นะคะ
น่าจะเป็นพื้นที่สำหรับสำรองข้อมูล ตอนที่คอมพิวเตอร์ทำงานอยู่
ถ้าเราปิดปุ๊บข้อมูลในนั้นจะหายไป
นะคะ
กับอุปกรณ์ที่ไม่จำเป็นต้องใช้ไฟฟ้าก็คือ
Harddisk ซึ่งอุปกรณ์ประเภทนี้น่ะ
มักจะเกิดปัญหา ก็คือชนิดพัง
อ่านหัด
หรือตัว Disk เป็นรอย
นะคะ เพราะฉะนั้นก็ต้องระวังด้วย
กลับ
การต่อมาเป็น stable ก็คืออันนี้จะเป็นค่อนข้างโบราณ
ไม่ต้องอาศัยกระแสไฟฟ้า
ส่วนมากจะมาใช้ในการสำรองข้อมูลมากกว่าลักษณะเป็นเทปแม่เหล็ก
เพราะราคา
ค่อนข้างถูก
การเรียกดูข้อมูลมันจะช้า
นะคะ
แต่ว่า
ส่วนมากเขาเลยใช้เป็นที่เก็บข้อมูล
ไม่ได้มาประมวลผลทุกวันนะคะ
ก็ถามว่านิยมใช้ไหม ก็ไม่ค่ะ เพราะว่าตอนนี้เขาก็ใช้ Harddisk กันหมด
อย่างน้อย ๆ นะคะ
ต่อมาก็เป็นความผิดพลาดมีอยู่ 4 ประเภทนะคะ
อันแรกก็คือความผิดพลาด
นะคะ
ก็บางทีก็เกิดความผิดพลาดตั้งแต่ตอนเราที่เขียนโปรแกรมมัน
ผิด เช่น
ไม่ยอมทำงานเพราะว่า
บัตรประชาชนคุณกำหนดไว้เป็น 15 หลัก
ความจริงมีแค่ 13
พอกรอกไม่ครบระบบทำงานไม่ได้
ผู้ใช้งานกรอกถูกแล้ว 13 ตัว แต่ระบบบอกว่ามันต้องมันหายไป 2 ตัว
อันนี้คือ
มันผิด
โปรแกรม
มันผิด เราเขียนผิด
นะคะ ก็ไปถือว่าเป็นความผิดพลาดอย่างหนึ่ง หรือว่า
นามสกุล
บอกเป็นตัวเลขไม่ได้
คุณไม่ได้ปิดความผิดพลาดตรงนี้
มีคนมาปั่น
มาป่วนระบบ
คุณ เขาใช้นามสกุลเป็นตัวเลข
ระบบยอมให้ save หรือยอมให้บันทึกข้อมูล
สรุปคุณก็ได้ข้อมูลขยะเข้ามาทำให้เปลือง
การประมวลผลข้อมูลอีก
นะคะ
กับความผิดพลาดของระบบ
นะคะ เช่นปัญหาการจัดลำดับงานผิดพลาด
แล้วมันเลยเกิดปัญหา
ระบบหยุดการทำงาน
ของมันเอง
ล็อกไม่ให้คุณทำงาน
นะคะ แบบนี้ รวมถึงความผิดพลาดของอุปกรณ์จัดเก็บข้อมูล เช่น
เหมือนตึก
นี้ ไฟไม่สม่ำเสมอ
ไฟตกบ่อย
ข้อมูลหาย
อันนี้ก็เป็นปัญหา เพราะฉะนั้น ในห้องนี้
เมื่อก่อนเราเลยมีอุปกรณ์สำรองไฟ
อุปกรณ์สำรองไฟใช้ไปนาน ๆ ไฟตกบ่อยก็พัง
เหมือนกันนะคะ อันนี้ก็เป็นความผิดพลาดของระบบ
รวมถึงความผิดพลาดของระบบ
อุปกรณ์ที่เก็บข้อมูลน
ะคะ เช่นปัญหาบางที Harddisk ของเรานี่พอเราอย่างที่ท่านบอก
คุณไม่ปิดเครื่อง
นี่ มันทำงานตลอด
แล้วหัวเข็มมือที่มันสะเทือน
ไอ้ตัวหน้า
หน้าจานแม่เหล็กที่เก็บข้อมูลของเราเนี่มันเลยเป็นรอยขูดขีด
ลอย
เหมือนสมัยเด็ก ๆ ทุกคนดูแผ่น อ่ะค่ะ
แผ่นซีดีเป็นรอย
หนังในแผ่น CD เราเนี่ยก็จะดูแล้วมันก็จะกระตุก
อาจจะดูไม่ได้เลย
เพราะว่าเราเก็บรักษาไม่ดี
นี่ ก็เหมือนกัน
นะคะ เพราะฉะนั้นการใช้อุปกรณ์ใด ๆ ที่เป็นอุปกรณ์คอมพิวเตอร์นี่
มันค่อนข้างมีราคาแล้วก็มีความสำคัญอาจจะมีข้อมูลสำคัญอย่างนั้น
เราก็ต้องช่วยกันรักษาด้วย
นะคะ
การกู้ข้อมูลจากอุปกรณ์ที่ใช้ไฟฟ้า
นะคะ มีอยู่ 3 แบบ
แบบแรกก็เป็นการกู้ข้อมูลที่อาศัยข้อมูล ที่เก็บจาก
เขาจะเรียกว่า
รายการเปลี่ยนแปลงอย่างนี้
สมมุติว่าเวลาเรา
ไปเซ็นชื่อ
หรือ
การเก็บข้อมูลว่าวันนี้คุณมาเรียนกี่โมง กลับบ้านกี่โมง
มันก็มีการเก็บไว้
เป็นลำดับรายการ เป็นหมายเลขการ เปลี่ยนแปลงมีการกระทำอะไรบ้าง
ชื่อตารางมาจากไหนเปลี่ยนแปลงข้อมูลอะไร
ลักษณะของการเก็บข้อมูลเป็นตารางแบบนี้
เช่น
สมมุติ
10:12 น
. เริ่มทำงาน
ที่ต่อมามีการเปลี่ยนแปลงข้อมูล
ของพนักงาน
ลำดับที่เท่าไ
รนะคะ
ข้อมูลเดิม
ลำดับที่ 1 เปลี่ยนเป็นลำดับที่ 8
แบบนี้เป็นต้น
อันนี้คือเขาจะรู้เลยว่า
ทุก ๆ กี่นาทีมีข้อมูลอะไรเกิดขึ้นบ้าง
มีรายการเปลี่ยนแปลงใดบ้าง อย่างเช่นรายการเปลี่ยนแปลงที่ 1
เปลี่ยนแปลงที่ 2 แปลงที่ 3
เขียนว่า
ทุกการเปลี่ยนแปลงจะเริ่มต้นที่จุดสตาร์ท
มีการเริ่มทำงาน
อย่างเหมือน
รายการเปลี่ยนแปลง
ที่ 1
เห็นไหมคะ
เริ่มต้นเมื่อ 10:12 น
. สถานะ
COMMIT ก็คือยอมรับการเปลี่ยนแปลง
ตอน 10:18 น. ก็คือ
เราทำงานในการแก้ไขข้อมูลน ี่ใช้เวลา
6 นาที
มันจะเก็บทุกอย่างที่เกิดขึ้นใน 6 นาทีนั้น
อย่างเช่น start นะคะ เช็กสถานะก็คือ START ก็คือรายการจะเริ่มต้นทำงาน
นะคะ
COMMIT ก็คือทำงานเสร็จ
อัปเดต ก็คือ
รายการถูกบันทึกแล้วแล้วก็ให้เกิดการเปลี่ยนแปลงค่าสถานะหลัก ๆ จะมีอยู่ 3 สถานะ
นะคะ
การเก็บข้อมูลเป็นประเภท
ก็คือเป็นการเก็บ
การเปลี่ยนแปลงทั้งหมดที่เกิดขึ้นนั่นเอง
การกู้คืนใน... เกิดจากเหตุขัดข้องแบบ
ความผิดพลาดของระบบ เราจะมีจุดที่เป็นเหมือนจุดตรวจสอบ
นะคะ
ถ้าสมมุติว่าทำงานแล้วยังไม่ถึงจุดตรวจสอบ แล้วถ้าระบบล่ม
เราจะเริ่มต้นใหม่ทั้งหมด
แต่ถ้าการทำงานของเราเลยจุดตรวจสอบแล้ว
แล้วระบบจึงล่ม เราจะเริ่มการทำงานใหม่ที่จุดตรวจสอบนั้น
นะคะ ก็คือไม่ต้องเริ่มใหม่ทั้งหมดจะเริ่มตรงจุดที่เรา
Mark ไว้หรือเรา
ตั้งธงไว้ให้เองนะคะ
เดี๋ยววันนี้ค่อยอธิบายเพราะว่าเป็นตัวเลขเยอะนะ
แบบนี้ล่ะค่ะ
อย่างเช่น
อันนี้ค่ะ จุด
Check Point ถามว่าตัวกระบวนการทำงานที่ 1 ที่ 1
เริ่มต้นตรงนี้
ถึงตรงนี้
ถามว่ามันทำงานเสร็จไหมทำงานเสร็จเรียบร้อยนะคะ
T1 ไม่มีปัญหาอะไร
T 2
T2 ทำงานผ่านจุด
ตรวจสอบ 1 เสร็จเรียบร้อยก่อนถึงจุด
ที่ระบบจะล่ม
ถามว่า T2 ทำงานเสร็จไหม 02:00 ทำงานเสร็จนะคะ
3:00 น
. ทำเริ่มทำงานตรงนี้ผ่านจุดตรวจสอบ
ทำงานจนถึง
ผิดพลาดถามว่า T3 จะเริ่มทำงานที่ไหน
เริ่มตรงนี้นะคะ จะเริ่มตรงที่จุดตรวจสอบตรงนี้
T4 เริ่มทำงานตรงนี้เสร็จตรงนี้ไม่อยู่ในจุดตรวจสอบก็จริงแต่เราก็นับว่าเขาทำงานเสร็จเรียบร้อย
นะคะ
ส่วน T5
ทำงานหลังจากตรวจสอบ
แล้วทำไม่เสร็จ T5 จะทำอย่างไร 5 ต้องเริ่มใหม่ทั้งหมด
อันนี้คือการ
ทำงานของจุดตรวจสอบ
จะเห็นได้ว่าถ้าคุณทำงานผ่านจุดตรวจสอบก็จริงแต่ถ้าระบบมันทำงานเสร็จ
ก็ไม่มีปัญหาอะไร
แต่ถ้าการทำงานมีปัญหา
แล้วผ่านจุดตรวจสอบแล้ว
เราจะไม่เริ่มใหม่ทั้งหมด เราจะเริ่มต้นแค่ตรงที่จุดตรวจสอบ
นะคะ อันนี้เป็นแบบการกู้คืนข้อมูลแบบใช้จุดตรวจสอบ
กับการกู้คืนแบบ
ทำคล้าย ๆ กับว่าเป็นสำเนาข้อมูล
นะคะ ก็ส่วนมากตัวนี้การกู้คืนตัวนี้จะใช้
พื้นที่ในการเก็บข้อมูลเยอะพอสมควร
เพราะไม่ว่าจะมีการกระทำใด ๆ เกิดขึ้นในระบบของเรา
มันจะทำสำเนาซ้ำไว้ด้วยเสมอ
เหมือนกับเงา
นะคะ เขาเรียกว่าเหมือนเราเดินไปก็จะมีเงาติดตัวเราไปด้วย เราเดินซ้าย เงาก้ต้องไปทางซ้าย
เราเดินขวาก็เป็นเงาทางขวา
เพราะฉะนั้น
ไม่ว่าจะเกิดการกระทำใดขึ้นจะมีสำเนา
ไว้ด้วยเสมอ
นะคะ
อันนี้เป็นการ
ทำแบบ
Sนะคะ
เป็นการกู้ข้อมูลจาก
การสำรองข้อมูลที่ไม่ใช้ไฟฟ้า
ส่วนมากก็จะเป็นอุปกรณ์ที่เป็น
Harddisk หรือว่าเทปแม่เหล็ก
นะคะ
แต่แบบนี้นี่ เราจะไม่ทำสำเนาตลอดเวลา
เราจะมีการกำหนดช่วงเวลาในการสำรองข้อมูล
เช่นทุก ๆ 1 เดือน
2 เดือน 3 เดือนว่าไป
แต่ถ้าเป็นข้อมูลปริมาณมาก
นะคะ อย่างในธนาคารนี่ เขาจำเป็นต้องสำรองข้อมูล
แทบจะตลอดเวลาเลย
พอเขา
มันเป็นเรื่องเกี่ยวกับเงิน ๆ ทองทองมันจะพลาดไม่ได้
วันนี้จะทำงานได้พรุ่งนี้อาจจะไปไม่ห้องเก็บข้อมูลหรือเปล่าก็ไม่รู้
โดยการกู้คืนข้อมูลแบบนี้นี่ ถ้าเป็นองค์กรขนาดใหญ่
เขาจะต้องมีการซ้อมด้วย
ว่าถ้าเกิดวันนี้นี่
ระบบล่ม
8:00 น. พรุ่งนี้ต้องทำงาน
จะทำ
อย่างไร ถ้าใครที่ทำงานเกี่ยวข้องกับคอมพิวเตอร์ทั้งหมดจะต้องมาซ้อม
อาจจะเป็นธนาคารขนาดใหญ่
แห่งหนึ่ง
พรุ่งนี้ต้องทำงานเหมือนเดิม เงินต้องอยู่เหมือนเดิม
ต้องกู้คืนระบบให้ได้ภายใน 6 ชั่วโมง
จากข้อมูลทั้งหมด
นะคะ จะต้องมีการซ้อมด้วย เช่น สมมุติว่าคุณมีข้อมูลที่เก็บไว้มันจะเป็นHarddisk ประมาณ
เป็นพัน ๆ
Harddisk 1
คุณจะเรียกข้อมูลกลับคืนมาอย่างไร ให้ให้เสร็จภายในพรุ่งนี้เช้า
เขาต้องซ้อมนะคะ
บางทีถ้าเป็นคนที่ทำงานหน้าคอมพิวเตอร์และเฝ้า Server เดี๋ยวบางทีต้องมานอนเฝ้าห้องด้วยซ้ำ
เขาก็จะห้ามของกินห้ามสูบบุหรี่
ห้อง Server ก็จะหนาวมาก อาจจะต้องนอนในนั้น บางคนมีถุงนอนด้วยซ้ำ
เพื่อ
เฝ้า
อุปกรณ์เก็บข้อมูล
กู้ข้อมูลจะเป็นการโอนข้อมูลจาก
อุปกรณ์เก็บข้อมูลทั้งหมดกลับมา
แล้วก็จะเอา
รายการเปลี่ยนแปลงที่มีการเก็บ
lotf file ก็คือการเก็บเวลาการเปลี่ยนแปลงทุกอย่าง
ที่ทำงานสมบูรณ์
นะคะ
ก็จะมาบันทึกไว้ใน
ระบบที่เรากู้คืนมาใหม่ทั้งหมด
ก็คือเหมือนกับกาถ้ามันมีการเปลี่ยนแปลงเกิดขึ้นเราก็จะก๊อบฯ กันมาทั้งหมด
นะคะ
วันนี้ก็จะประมาณนี้ เพราะว่า
เราจะไม่เน้นว่าทุกคนจะต้อง
สำรองข้อมูลเองทั้งหมดนะ อันนี้ให้รู้ไว้
มันจะเป็นฐานข้อมูลขั้นสูง
จะเรียนในปี
ที่สูงกว่านี้นะคะ เป็นวิชาเฉพาะทาง
แต่ว่าภาษา SQL นี่
ทุกคนต้องได้เรียน
อาทิตย์หน้า
จะเป็นตัวอย่าง
คำสั่งภาษา SQL
ที่ทุกคนจะต้อง
จำแล้วก็ทำให้ได้
ว่าแต่ละคำสั่ง
มันมีความสำคัญอย่างไร กระบวนการทำงาน
เราจะเขียน
เขียนโปรแกรมอย่างไร ในการเรียกดูข้อมูล
ใครยังใช้โปรแกรมไม่เป็น เดี๋ยวอาทิตย์หน้าอาจารย์จะพาดู
ยัง ๆ ก่อน
ว่าแต่ละคำสั่งมันต้องทำงานยังไงถ้าเราจะเรียกดูข้อมูล เราจะต้องใช้คำสั่งอะไร
นะคะ
ถ้าจะเพิ่มข้อมูลใช้คำสั่งอะไร
แก้ไขข้อมูล
ลบข้อมูล
ต้องทำ
อย่างไร แต่ก็ต้องเข้าใจด้วยว่าเราจะใช้ภาษาอังกฤษเป็นหลัก
นะคะ
เพราะฉะนั้น
ขยันจำแล้วก็พิมพ์ให้ถูก
หรือแปลความหมายมันได้ยิ่งดีว่าคำศัพท์คำนี้ถ้าเป็นภาษาไทย
มันคืออะไร ทำไมเราถึงเลือกใช้คำนี้
นะคะ
เวลาสมมุติว่าต่อไปปี 3 ไปฝึกงาน
เขาถามว่ารู้จักฐานข้อมูลไหม
รู้จักคำสั่งนี้หรือเปล่า
นะคะ
เราจะได้ตอบเขาได้ว่าอย่างน้อยเรารู้ว่าคำสั่งนี้มันทำงาน
อย่างไรนะคะ
วันนี้ไม่มีการบ้าน
นะคะ เพราะว่าต้องขออนุญาตไปประชุมตอน 14:00 น. พอดี
วันนี้ก็ประมาณนี้ค่ะ แต่ว่าอาทิตย์หน้านะคะ เตรียม
มาดี ๆ ท่องศัพท์ภาษาอังกฤษกัน
นะคะ
วันนี้ก็ขอบคุณล่ามแล้ว ก็ขอบคุณถความด้วยนะคะ ขอบคุณมาก ๆ เลยค่ะ