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 ที่ทำงานได้เร็วมาก”