mongoDB คืออะไร และตัวอย่าง mongoDB

mongoDB Logo

mongoDB คือชื่อของ Database แบบ NoSQL แบบหนึ่ง (อ่านต่อเรื่อง NoSQL กับ NoSQL คืออะไร) โดยเราไม่ต้องเตรียมสร้าง table , field เอาไว้รอก่อน เหมือนอย่าง Database ทั่วไป คิดอยากจะเก็บอะไรก็เก็บเข้าไปได้เลย

มันไม่ใช่ Relational database ดังนั้นไม่ต้องสร้างโครงสร้างก่อนใช้

หรือพูดง่ายๆคือ ไม่ต้องกำหนดโครงสร้างข้อมูลที่เราจะเก็บ แค่คิดอยากจะเก็บอะไรก็เก็บเข้าไปได้เลย อ่านต่อ… “mongoDB คืออะไร และตัวอย่าง mongoDB”

NoSQL คืออะไร คือ database ที่ทำงานได้เร็ว และ หลากหลาย

NoSQL database

ความแตกต่างหลักๆของ Relational database กับ NoSQL database ก็เป็นเรื่องของความเร็ว ที่เราได้ประโยชน์ และเรื่องการทำงานที่เป็นแบบไม่ต้องสร้างความสัมพันธ์ให้กับมัน รวมไปถึง feature พิเศษที่เกิดมาเพื่อเหมาะกับงานแต่ละแบบด้วย

ทำงานแบบไม่ต้องเขียน SQL อีกต่อไป

SQL ก็เป็นภาษาหลักที่เราต้องเขียนเพื่อจัดการกับข้อมูลที่เก็บใน Database แบบ relational เป็นหลัก แต่ว่า NoSQL ทำให้เราสามารถเขียนอ่านแก้ไขข้อมูลโดยไม่ต้องเขียน SQL command อีกต่อไป แต่ว่าจะต้องใช้คำสั่งเฉพาะ ของ NoSQL แต่ละตัวที่เราเอามาใช้งานเองเท่านั้น อ่านต่อ… “NoSQL คืออะไร คือ database ที่ทำงานได้เร็ว และ หลากหลาย”

redis คืออะไร คือ database ที่ทำงานได้เร็วมาก

Redis logo

ถ้าเอาให้ถูกต้องจริงๆ เค้านิยามว่า Redis เป็น in-memory data structure store หรือ ระบบเก็บข้อมูลแบบกึ่งมีโครงสร้าง ที่ทำงานบน Ram แต่อยากให้มองว่ามันเป็นเหมือน database ที่ทำงานบน Ram ก็ไม่ผิดเท่าไรหรอก แต่ว่าความสามารถของมันค่อนข้างพิเศษมาก เพราะว่ามันทำงานได้เร็วมากๆ จึงถูกนิยมเอามาทำเป็น Caching หรือเป็น temporary database เพื่อใช้ในการประมวลผลงานขนาดใหญ่ได้

ถ้าเปรียบเทียบกับตัวอื่นที่คุ้นหูก็จะเป็น memcached ที่ทำหน้าที่เป็น key-value data store system นั่นแหล่ะ แต่ Redis มีดีกว่านั้นอีกเยอะมาก เพราะว่า key-value มันทำได้เป็นพื้นฐานอยู่แล้ว แต่ว่ามีลูกเล่นอื่นๆ ให้เราเอามาใช้ได้เลย เช่น hashes ที่เปรียบเหมือนการเก็บเข้า key เดียว แต่ว่า value มี array อยู่ข้างในอีกด้วย และเราสามารถดึงเอา index ใด index หนึ่งออกมาใช้ได้ หรือเปลี่ยนค่าเฉพาะบาง index หรือแม้กระทั่งลบออกก็ทำได้ ถ้าเราเก็บเป็น memcached เราจะต้อง ดึงทุก index ออกมากระทำให้เป็นชุด array ที่สมบูรณ์ก่อนค่อยใส่กลับเข้าไป ซึ่งมันจะช้ากว่าอย่างเห็นได้ชัด อ่านต่อ… “redis คืออะไร คือ database ที่ทำงานได้เร็วมาก”