Screen Shot 2557-06-18 at 1.24.49 AM

ในปัจจุบันคำว่า NoSQL นั้นถูกพูดและนำมาใช้กันอย่างแพร่หลาย
ทั้งในกลุ่มนักพัฒนา software รวมไปถึงระดับ architect และ manager ทั้งหลาย
ซึ่งมักจะเข้าใจกันผิดๆ หลายเรื่อง
ดังนั้นจึงขอสรุปความเข้าใจเกี่ยวกับ NoSQL มาดังต่อไปนี้

NoSQL คืออะไร

NoSQL ย่อมาจาก Not Only SQL
นั่นหมายความว่า ไม่ได้มีแต่ SQL เท่านั้นนะ ยังมีแนวทางอื่นๆ อีกเยอะ

NoSQL คือ แนวทางหนึ่งสำหรับจัดการข้อมูลและการออกแบบฐานข้อมูล
สำหรับข้อมูลขนาดใหญ่ ซึ่งอยู่อย่างกระจัดกระจาย หลากหลายรูปแบบ

นำ NoSQL ไปใช้ตรงไหน

จะถูกนำไปใช้งานกับข้อมูลที่มีขนาดใหญ่
ข้อมูลไม่มีโครงสร้างที่ชัดเจน
ระบบต้องการการทำงานแบบ realtime
หรือใช้สำหรับการวิเคราะห์ข้อมูลแบบ offline
เช่นระบบการวิเคราะห์ข้อมูลจาก Social network เป็นต้น

ข้อดีของ NoSQL 

สามารถขยายระบบได้ง่าย
รองรับข้อมูลขนาดใหญ่
รองรับรูปแบบข้อมูลที่หลากหลาย หรือมีความยืดหยุ่นสูงได้

ข้อเสียของ NoSQL

เป็นเทคโนโลยีใหม่ๆ ซึ่งยังไม่เสถียรสักเท่าไร
เรื่อง support ยังไม่ดี ส่วนใหญ่จะมีข้อมูลจากคนเฉพาะกลุ่ม
เรื่องของระบบ admin ที่ยังไม่ดี หรือไม่มีเลย
ขาดผู้มีความรู้และผู้เชี่ยวชาญ

การจัดหมวดหมู่ของ NoSQL ประกอบไปด้วย 4 หมวด

  1. Column
  2. Document
  3. Key-Value
  4. Graph

ในปัจจุบันมี NoSQL Database ใช้เลือกใช้มากกว่า 100 ตัว
โดยประกอบไปด้วย opensource และ commercial

คำถาม สามารถใช้ NoSQL database มากกว่า 1 ตัวใน 1 project ได้หรือไม่
คำตอบ ได้สิครับ

ในปัจจุบันมี NoSQL Database อะไรบ้างที่ได้รับความนิยม

  • Redis
  • MongoDB
  • Cassandra
  • Riak
  • CouchDB
  • HBase
  • HyperTable
  • ElasticSearch
  • Couchbase
  • Neo4j

ถ้าต้องการ VDO อธิบายเกี่ยวกับ NoSQL ผมแนะนำของคุณ Martin Folwer ได้เลยครับ

Reference Website
http://www.nosqlweekly.com/
http://nosql-database.org/
http://www.dzone.com/mz/nosql

Tags: