ฐานข้อมูลกับโลกในยุคที่ข้อมูลมีค่ามากกว่าเงิน

Chaiyong Ragkhitwetsagul
IT Stuffs
Published in
2 min readJan 8, 2015

สวัสดีครับ กลับมาพบกันอีกครั้งนะครับ วันนี้ผมจะมาอธิบายหัวข้อทางด้านวิทยาการคอมพิวเตอร์อันหนึ่งที่มีความเกี่ยวข้องกับชีวิตประจำวันของทุกท่านเป็นอย่างมาก โดยที่ท่านก็อาจจะไม่ทราบว่ากำลังใช้งานมันอยู่ เจ้าสิ่งนี้เป็นหลักการพื้นฐานที่นักศึกษาด้านคอมพิวเตอร์จะต้องเรียนและฝึกฝนจนมีความเชี่ยวชาญ เนื่องจากมีความจำเป็นอย่างมากต่อการทำงานของพวกเขาที่จะเป็นนักพัฒนาซอฟท์แวร์นั่นเอง เราเรียกสิ่งนี้ว่า “ฐานข้อมูล (Database)” ครับ

ทุกท่านอาจจะเคยได้ยินคำว่าฐานข้อมูลกันมาบ้างแล้ว แต่อ่านมาถึงตรงนี้แล้วสงสัยว่า มันมาเกี่ยวข้องกับชีวิตประจำวันของท่านได้อย่างไรหล่ะ ผมบอกได้เลยว่าเกี่ยวข้องอย่างมากเลยครับ ถ้ายกตัวอย่างง่ายๆ ที่ใกล้ตัวเราทุกคนมากก็คือ เฟซบุ๊ค (Facebook) นั่นเอง ผมเชื่อว่าทุกคนจะต้องมีบัญชีเฟซบุ๊คส่วนตัวกันใช่ไหมครับ เมื่อเรามีบัญชีส่วนตัวแล้วเฟซบุ๊คก็จะมีช่องทางหลากหลายที่ให้เรานำข้อมูลของเราไปแบ่งปันให้เพื่อนๆ ได้เห็น เช่น การอัพเดตสถานะ การโพสต์รูปภาพ การอ่าน และการแสดงความเห็น (comment) กับสถานะหรือรูปภาพของเพื่อนๆ เรา สิ่งเหล่านี้เราใช้งานกันจนกลายเป็นเรื่องธรรมดาไปเสียแล้วในปัจจุบัน

อย่างไรก็ดี ท่านเคยคิดไหมครับว่า เอ… ข้อมูลทั้งหลายที่เราส่งเข้าไปให้เฟซบุ๊คนั้น มันถูกเก็บไว้ที่ไหนอย่างไร ทำไมเฟซบุ๊คจึงสามารถเก็บข้อมูลเรา (รวมถึงเพื่อนๆ) ได้อย่างมากมายมหาศาล นอกจากนี้ ยังสามารถแสดงข้อมูลของเราได้อย่างรวดเร็วแม้ว่าจะเป็นข้อมูลที่เก็บไว้นานแล้วก็ตาม เช่น ข้อมูลเมื่อ 2–3 ปีที่แล้ว เราก็ยังสามารถเรียกดูได้อยู่ แต่ละวันเฟซบุ๊คมีข้อมูลใหม่เป็นปริมาณมากมายมหาศาล ภาพด้านล่างเป็นภาพศูนย์ข้อมูลของเฟซบุ๊คที่ตั้งอยู่ในประเทศสวีเดน ลองจินตนาการดูนะครับว่าขนาดของข้อมูลที่เฟซบุ๊คจะต้องจัดการนั้นใหญ่โตขนาดไหน หากมีวิธีการจัดการที่ไม่ดีก็จะต้องลำบากแน่ๆ เลยใช่ไหมครับ คำตอบของปัญหานี้ก็คือการจัดการข้อมูลด้วย “ฐานข้อมูล (Database)” นั่นเองครับ

ภาพศูนย์ข้อมูล (Data center) ของเฟซบุ๊คที่ประเทศสวีเดน โดย Tortap (Own work) [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons

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

การทำงานของฐานข้อมูล

ฐานข้อมูล นั้นจะทำงานได้จะต้องมีโปรแกรมที่ช่วยในการบริหารจัดการที่เรียกว่า ระบบจัดการฐานข้อมูล (Database Management Systems: DBMS) ซึ่งเจ้าระบบจัดการฐานข้อมูลนี้จะเก็บข้อมูลทั้งหมดไว้ในฐานข้อมูลในรูปแบบดิจิตอล ไม่ว่าจะเป็นข้อความที่เป็นตัวหนังสือ หรือแม้แต่รูปภาพก็ตาม

จุดเด่นที่ทำให้ระบบจัดการฐานข้อมูลสามารถเก็บและเรียกใช้ข้อมูลได้อย่างมีประสิทธิภาพก็คือการเก็บข้อมูลอย่างเป็นระบบระเบียบมีโครงสร้างนั่นเอง โดยเก็บข้อมูลในรูปแบบตารางซึ่งประกอบด้วยแถว (row) และสดมภ์ (column) หากท่านนึกไม่ออกให้ลองนึกถึงการเก็บข้อมูลในโปรแกรมไมโครซอฟท์เอ๊กเซล (Microsoft Excel) เป็นตัวอย่างก็ได้ครับ ซึ่งการเก็บข้อมูลในรูปแบบตารางนี้ทำให้สะดวกต่อการเรียกใช้งาน เนื่องจากเราได้แบ่งข้อมูลออกเป็นส่วนย่อยๆ หลายๆ ส่วน ที่สามารถบันทึกและเรียกดูแยกกันได้ ทำให้มีความรวดเร็วในการเข้าถึงข้อมูลมากกว่าการเก็บอย่างไม่มีโครงสร้าง หรือการเก็บในโครงสร้างอื่นๆ

จุดเด่นอีกอย่างหนึ่งที่สำคัญของระบบจัดการฐานข้อมูลก็คือ วิธีการบันทึกและเรียกดูข้อมูลนั่นเอง ระบบจัดการฐานข้อมูลมีวิธีการจัดการกับสิ่งเหล่านี้อย่างชาญฉลาด ลองนึกดูว่าถ้าเราเก็บชื่อเพื่อนๆ ของเราในไฟล์ Microsoft Word แล้วเราต้องการหารายชื่อของเพื่อนที่อยู่ในจังหวัดกรุงเทพมหานครฯ ทุกคน เราก็จะต้องไล่ดูไปทีละคนใช่ไหมครับ นั่นทำให้เสียเวลามาก ยิ่งเรามีเพื่อนเยอะเท่าไหร่ รายชื่อของเราก็จะยิ่งยาว แล้วเราก็จะยิ่งเสียเวลาในการไล่ดูจนครบทุกคน

แต่ว่าระบบจัดการฐานข้อมูลมีการเก็บข้อมูลอย่างมีโครงสร้างอยู่แล้ว ทำให้สามารถเรียกดูข้อมูลโดยการระบุไปได้อย่างเฉพาะเจาะจงว่า “ต้องการชื่อของเพื่อนทุกคน ที่อยู่ในจังหวัดกรุงเทพมหานครฯ” ซึ่งวิธีการระบุข้อมูลที่เราต้องการแบบนี้จะกระทำผ่านภาษาเฉพาะอันหนึ่งที่ระบบจัดการฐานข้อมูลเข้าใจได้ ที่เรียกว่า Structured Query Language (SQL) นั่นเองครับ แล้วระบบจัดการฐานข้อมูลก็จะคืนข้อมูลเฉพาะส่วนที่เราอยากได้มาให้ภายในเวลาอันรวดเร็วเพียงเสี้ยววินาทีเท่านั้น จากตัวอย่างข้อมูลในตารางด้านบน เราจะได้ผลลัพธ์แบบนี้ครับ

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

สุดท้ายนี้ ขออำนาจคุณพระศรีรัตนตรัยจงดลบันดาลให้ทุกท่านมีความสุข สุขภาพแข็งแรงในวันขึ้นปีใหม่ 2558 ที่จะถึงในเร็วๆ นี้ครับ แล้วพบกันใหม่ครับ

อ้างอิง: Carlos Coronel, Steven Morris, and Peter Rob, Database Systems: Design, Implementation, and Management, Ninth Edition, Course Technology, 9th Edition (2009) http://upload.wikimedia.org/wikipedia/commons/2/20/Facebook_Serverhall_2.jpg http://en.wikipedia.org/wiki/SQL

Originally published at www.vcharkarn.com.

--

--