หลังจากที่ดูแนวโน้มของภาษาโปรแกรม ประจำเดือน สิงหาคม 2014 กันไปแล้ว
มาลองดูแนวโน้มในโลก NoSQL กันบ้างว่าเป็นอย่างไร
ซึ่งเคยอธิบายเกี่ยวกับ NoSQL แบบสั้นๆ ไว้แล้ว
มาดูกันว่าแนวโน้มการใช้งานและความต้องการพวก NoSQL เป็นอย่างไร
น่าจะทำให้เห็นว่า นักพัฒนาอย่างเราๆ ต้องศึกษาเพื่อเตรียมความพร้อมอย่างไร

เลือก NoSQL มาอย่างไร

  • ตัวที่ผมใช้งาน
  • ตัวที่ผมเคยได้ยินชื่อ
  • ตัวที่ได้รับความนิยม
  • เป็น Open source
  • ต้องครบทุกกลุ่มของ NoSQL
  • โดยรวมเอาความคิดของผมเป็นที่ตั้งนะครับ

ประกอบไปด้วย

  • Redis  => Key-value
  • MongoDB => Document
  • Cassandra => Column
  • Couchbase =>  Document
  • Riak => Key-value
  • HBase => Column
  • Neo4j => Graph

โดยข้อมูลจะนำมาจาก Google Trend และ Indeed

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

มาดูข้อมูลที่ Indeed กันก่อน

พบว่ามี NoSQL ที่ได้รับความนิยมมากๆ นั้นประกอบไปด้วย 4 ตัวคือ

  1. MongoDB
  2. Cassandra
  3. HBase
  4. Redis

ดังรูป
Screen Shot 2557-09-02 at 4.26.45 PM

ถ้าดูอัตราความต้องการแล้วจะพบว่า

  • Cassandra, HBase และ Redis มีอัตราที่สูงเพิ่มมากๆ คือ 8,000% ขึ้นไป
  • ส่วน MongoDB นั้นมีอัตราความต้องการที่ต่ำลงมา เนื่องด้วยมีความนิยมใช้งานในอัตราที่สูงอยู่แล้ว
  • ส่วน Riak ยังคงไม่สามารถขึ้นมาเทียบกับ Redis ได้
  • ส่วน Neo4j นั้นพบว่า ความนิยมนั้นคงที่ ไม่ได้เปลี่ยนแปลงอะไรมาก นั่นคือ การใช้งานยังอยู่ในวงจำกัด

ดังรูป
Screen Shot 2557-09-02 at 4.33.20 PM

สาเหตุที่ไม่ได้เอา Hadoop มาใส่

เนื่องจากมันคือ NoSQL ที่ได้รับความนิยมที่สุดนั่นเอง ดังภาพ

Screen Shot 2557-09-02 at 4.29.08 PM

ยิ่งดูอัตราความต้องการที่เพิ่มขึ้น ยิ่งไปไกลมากๆ
ผมจึงไม่นำมาใส่นั่นเอง

Screen Shot 2557-09-02 at 4.30.30 PM

มาดูที่ Google Trend กันบ้าง

พบว่าข้อมูลของ NoSQL ที่พบเจอมากๆ จะประกอบไปด้วย 5 ตัว คือ

  1. Cassandra
  2. MongoDB
  3. Redis
  4. Couchbase
  5. Riak

ดังรูป
Screen Shot 2557-09-02 at 4.42.13 PM

โดยสรุปแล้ว

ในโลกของ NoSQL นั้น ตัวที่ได้รับความนิยมสุดๆ คือ Hadoop นั่นแหละ
ส่วนตัวอื่นๆ ที่ได้รับความนิยม ก็คือ

  • MongoDB
  • Cassandra
  • Hbase
  • Redis

ทำให้เห็นว่าสิ่งที่ถูกนำมาใช้งาน เพื่อแก้ไขปัญหานั้นประกอบไปด้วยอะไรบ้าง

ส่วนตัวอื่นๆ เช่น Riak, CouchDB, Neo4j ล่ะ นั้นยังต้องพิสูจน์ตัวเองว่า
ยังเป็นวิธีการที่นำมาแก้ไขปัญหาได้

ในมุมมองของนักพัฒนา
ก็น่าจะเห็นได้ว่า ควรที่จะศึกษาอะไรในโลกของ NoSQL ที่มีอยู่อย่างมากมาย