มันคือ ฐานข้อมูลที่ไม่มีภาษา SQL ให้ใช้ จบข่าว
อ้าวจะบร้าเหรอ ตอบแค่นี้คนเลิกอ่านกันพอดี แต่มันก็จริงๆนี่นา
เอาให้ละเอียดมันต่างจาก MySQL Microsoft SQL Oracle ที่เราๆท่านๆคุ้นเคยตรงนี้ครับ
- อย่างแรกเลยมันไม่มีความสัมพันธ์ครับ เพราะมันไม่ใช่ Relational Database เพราะฉะนั้นลืมเรื่อง Join, WHERE ไปได้เลย
- เน้นใช้งานกับปริมาณข้อมูลที่มีจำนวนมากมายมหาศาล ใครนึกไม่ออกว่ามากขนาดไหน ลองนึกถึง www.facebook.com, www.twitter.com, www.google.com นั่นแหละครับ ให้มา่นั่ง SELECT FROM WHERE รับรองครับ สิบนาทีถึงจะได้ข้อมูล
- แต่เนื่องจากพวก NOSQL มันไม่มีโครงสร้างตายตัว มันเลยขายได้มากกว่า ในแบบขนาน (horizontal scaling) คือเพิ่มเครื่องได้ง่ายกว่านั่นแหละ
- ประสิทธิภาพสูงกว่า แต่ก็มากับการออกแบบที่ไม่แน่นอนไม่ตายตัวและยากกว่า RDB เป็นไหนๆ เพราะไม่ต้องคอยจัดการเรื่องความสัมพันธ์
- ตอนเรียนวิชาฐานข้อมูลมาเราเน้นการ Normalize แต่ที่นี่เราเน้นการ Denormalize ครับ เน้นให้มันเร็วที่สุดไม่ต้องไป join อะไรทั้ง หาเรคคอร์ดเดียวแล้วเอามาใช้งานได้เลย เช่นข้อมูล Contact ของ member เราก็เก็บทุกอย่างทุกคอลัมน์ลงไปเลยครับ ไม่ต้องไปแยกจังหวัด หรืออำเภออะไร เพื่อให้เกิดการ Compare เปรียบเทียบน้อยที่สุดครับ
- เวลาจะเชื่อมต่อต้องง่ายเข้าไว้ไม่ต้องมี overhead เยอะ มีแค่ IP กับ Port จบเลย
- ต้องสามารถทำ Replication ได้เพราะ ข้อมูลเป็นสิ่งสำคัญ และจะได้ไม่ทำให้เกิด Single Point of Failure หรือเกิดจุดตายในระบบ คือ พังไปซักเครื่อง ก็ยังทำงานได้ปกติ
- เน้นการทำงานแบบ Key/Value หรือ Key/Column แล้วแต่ยี่ห้อครับ
เดี๋ยววันหลังจะมาจำแนก และแนะนำว่า ประเภทไหนเหมาะกับ งานแบบไหนให้ดูกันนะครับ
ส่วนใครอยากได้ข้อมูลเพิ่มเติมเชิญได้ที่
สำหรับวันนี้สวัสดีครับ เลิกงานแล้วไปดีกว่า อิอิ
อธิบายได้ชัดเจนดีครับ
ตอบลบ- -" แต่ .... ไม่มาต่อแล้วเหรอ
ไม่ทำต่อแล้วเหรอครับ
ตอบลบแล้วสิ่งที่เรียนมา ที่อาจารย์ชอบพูดว่า นอมอไหลเซชั่น นั่นล่ะ
ตอบลบลืมไปได้เลยใช่มั๊ยค่ะ สูงสุดสู่สามัญแล้วทีนี้ - -'
ขอบคุณครับ
ตอบลบThk
ตอบลบ