database

Database คืออะไร?

Database (ฐานข้อมูล) ก็คือส่วนที่ใช้เก็บข้อมูล เพื่อให้สามารถบริการการจัดเก็บ และการเข้าถึงข้อมูลส่วนกลางได้สะดวกรวดเร็ว ซึ่งข้อมูลจะถูกเก็บในรูปของ rows, columns และ tables โดยอาศัยดรรชนี (indexed) เพื่อให้สามารถค้นหาข้อมูลได้รวดเร็ว นอกจากนี้ยังสามารถทำการเพิ่ม (insert), ลด (delete) หรือ เปลี่ยนแปลง (update) ข้อมูลใหม่ได้อีกด้วย

ปัจจุบัน Computer database ถูกใช้ในการเก็บข้อมูลแทนในรูปแบบ files เช่น ยอดขาย, จำนวนผลิตภัณฑ์ และ คลังเก็บสินค้า รวมถึง ข้อมูลของลูกค้าเอง โดยระบบสามารถมีได้ตั้งแต่ระดับ mainframe ขนาดใหญ่ จนมาถึงแค่ PC/Labtop ตามต้องการของ user

database-icon

วิวัฒนาการของ database

Database ถูกพัฒนาขึ้นมาตั้งแต่ปี 1960 เริ่มต้นจาก hierarchical และ network databases จนมาถึงปี 1980 มีการนำเอา object-oriented-databases (OODBMS) มาใช้งาน ซึ่งเป็นพื่นฐานของระบบ relation database ที่ใช้กันอยู่ในปัจจุบันนี้

ในอีกมุมหนึง เราสามารถจัดแบ่งประเภทของ database ตามรูปแบบของชนิดข้อมูลได้ เช่น ตัวเลข,ตัวอักษร หรือ รูปภาพ บางครั้งก็อาจจะแบ่งตามความนิยมของ relational database เช่น distributed database, cloud database หรือ NoSQL database.

Relational database

Relational database ถูกคิดค้นขึ้นโดย E.F. Codd (IBM)ในปี 1970 เริ่มต้นสร้างขึ้นมาจากกลุ่มของ table ที่มีข้อมูลภายในโดยแบ่งออกเป็นตามประเภทที่ตั้งไว้ แต่ละ table จะมีอย่างน้อย 1 ชนิดของแต่ละ column และแต่ละ row จะมีข้อมูลตามที่ชนิดที่ colmuns ได้กำหนดไว้

Standard Query Language (SQL) เป็นมาตราฐานที่ผู้ใช้งาน และ ระบบอื่นๆ ไว้เชื่อมต่อกับ relational database ซึ่งง่ายต่อการเพิ่มข้อมูลเข้าไป โดยไม่กระทบต่อโปรแกรมอื่นที่ใช้งานร่วมกันอยู่

Distributed database

Distributed database เป็น ฐานข้อมูลที่ถูกเก็บกระจายออกไปหลายๆที่ โดยอาศัยกระบวนการแจกจ่าย และ สำรองข้อมูล ผ่านทางระบบ network ซึ่งมีอยู่ด้วยกัน 2 แบบคือ

homogeneous - ระบบทั้งหมดทุกที่ต้องเป็น OS และ database ชนิดเดียวกัน
heterogeneous - ระบบที่งหมดจะเหมือนหรือต่างกันก็ได้ในแต่ละที่

 

Cloud database

cloud database

Cloud database เป็นฐานข้อมูลแบบใหม่ ที่ถูกปรับปรุงและสร้างขึ้นบนระบบ virtualized แบบเดียวกับ hybrid cloud, public cloud หรือ private cloud โดยเราสามารถขยายขนาดเพิ่มขึ้น หรือ ปรับแต่ง resource ได้ตลอดเวลา ขึ้นอยู่กับความต้องการของผู้ใช้งาน

NoSQL database

nosql

NoSQL database ถูกใช้ในรูปแบบ ที่เป็นการกระจายของข้อมูล จึงมีประสิทธิ์ภาพสูงสำหรับข้อมูลขนาดใหญ่ (big data) เพราะ relational database ไม่ถูกออกมาให้รอบรับข้อมูลขยาดใหญ่ จึงนิยมใช้กับการวิเคราะห์ข้อมูลขนาดใหญ่ที่ไม่ค่อยมีรูปแบบตาายตัว

 

การ access database

มีด้วยกัน 2 แบบคือ

- Database management system (DBMS) เป็น software ที่ควบคุมและ
บริหารข้อมูลภายในฐานข้อมูล

- Relational database management system (RDBMS) ถูกพัฒนาขึ้นในปี 1970
เพื่อเข้าถึง ฐานข้อมูลแบบ relational และยังคงได้รับความนิยมจนถึงปัจจุบัน

 

ปัจจุบันมี production database ให้เราเลือกใช้อยู่มากมาย เช่น Microsoft SQL Server, Oracle Database, IBM DB2 และ MySQL ที่เป็นที่นิยมกันในระดับองกรค์

 

Author: Suphakit Annoppornchai

Credit: https://saixiii.com,http://searchsqlserver.techtarget.com

21 Thoughts to “ฐานข้อมูล หรือ database คืออะไร มันหมายถึง Relational database หรือเปล่า”

  1. […] ก่อนเราจะบอกว่า Oracle คืออะไร  เรามารู้จักเจ้าของคำนี้ก่อน ซึ่งก็คือ Oracle Corporation บริษัทที่มีชื่อเสียงทางด้าน product database ซึ่งโดยปกติถ้าพูดถึง Oracle แล้วทุกคนจะเข้าใจตรงกันว่าหมายถึง Oracle RDBMS (object-relational database management system) ซึ่งก็คือ database หรือ ฐานข้อมูลนั้นเอง […]

  2. […] ฐานข้อมูลบน memory ซึ่งต่างกับ database ปกติที่อาศัย disk storage […]

  3. […] database transactions ตามความหมายของ “database”  transactions จะหมายถึง ชุดกระบวนการทาง […]

  4. […] NoSQL หรือ “non SQL”, “non relational” ,”not only SQL” หมายถึงการที่ database ใช้วิธีการสร้างฐานข้อมูลและการดึงข้อมูล ที่แต่งตากจากรูปแบบปกติ ที่ออกมาในรูปแบบตารางเช่นเดียวกับ relational databases  ซึ่งตั้งแต่ช่วง 1960 ที่ database ได้ถือกำเนิดขึ้นแต่ NoSQL ก็ยังไม่เป็นที่นิยม จนกระทั้งช่วงปี 2000 NoSQL เริ่มถูกเพิ่มเข้ามาใน Web2.0 ทำให้หลายบริษัทชั้นนำเช่น Facebook, Google และ Amazon.com ได้เริ่มนำมาใช้ ส่วนมากถูกนำมาใช้งานเกี่ยวกับ big data และ real-time web applications […]

  5. […] ส่วนมากนิยมเขียนกันด้วย Java และ ในการอธิบายตัวอย่างใช้ Unix Solaris ที่ทำการต่อกับ database เพื่อเก็บข้อมูล […]

  6. […] โดยระบบฐานข้อมูลหรือ Database จะมีการจอง key word บางคำ หรือ […]

  7. […] SQL Create database statement โดยชื่อ database ในระบบจะต้องไม่ซ้ำกันภายใน RDBMS ที่ใช้งาน […]

Leave a Reply