ช่วงนี้กระแส High Scalability Database Performance มาแรงมาก ทั้ง facebook, Digg, Twitter, Amazon, Linkedin ต่างละทิ้ง MySQL หันมาใช้งาน NoSQL (Not Only SQL) เลยมาทำความเข้าใจและทำความรู้จักนิดหน่อย (นิดหน่อยจริงๆ แต่อยากทำความรู้จักกับเธอเยอะๆนะ ขอเวลานิดนึง :P)
NoSQL เป็น Concept หนึ่งที่ออกแบบโดยพนักงานของ Rackspace ชื่อ Eric Evans เป็นการทำลาย Concept Relational Database อันมีมายาวนาน ส่วนหนึ่งเชื่อว่า Linux Command มีประสิทธิภาพดีกว่า SQL (เช่น grep, awk)
(เอ่อ เริ่มไปไม่ถูกแล้วแฮะ -*- ข้อมูลเยอะเกิน ค่อยๆไปทีละอย่าง)
4 Model หลักของ NoSQL
Key-Value Stores
- สาย : Amazon’s Dynamo และ Distributes Hash Table
- ตัวอย่าง : Voldemort, Dynomite, Tokyo Cabinet
BigTable Clones
- สาย : Google’s BigTable
- ตัวอย่าง : HBase, Hypertable, Cassandra
Document Databases
Graph Databases
- สาย : ภาพจาก Euler และ ทฤษฎีกราฟ
- ตัวอย่าง : AllegroGraph, InfoGrid, Neo4j
Digg หันมาใช้งาน Cassandra เมื่อกันยายน 2009
หลังจาก Normalize Database อย่างเต็มที่ เราลองหันมามอง Non-Relational Database เช่น HBase, Hypertable, Cassandra, Tokyo Cabinet/Tyrant, Voldemort, Dynomite แต่ที่เลือกใช้ Cassandra เพราะ column-oriented data storage
ถ้าเป็น Relational Database Model กรณี Join Table และแต่ละ Table มี 1,000,000 Record จะทำให้ใช้เวลาในการ Query เยอะมาก
แต่ถ้าเป็น Non-relational Database ซึ่งไม่มี Schema ทำให้ยืดหยุ่นมาก ทำให้มี Performance ดูจาก Benmarking Presentation ที่อ้างกัน
MySQL > 50 GB Data
- Writes Average : ~300 MS
- Reads Average : ~350 MS
Cassandra > 50 GB Data
- Writes Average : 0.12 MS
- Reads Average : 15 MS
ข้อมูลยังน้อยอยู่ แต่จบแค่นี้ก่อน พรุ่งนี้ค่อยมาเล่น Cassandra โดยลองจาก up and running with cassandra คาดว่าจะเข้าใจมากยิ่งขึ้น แล้วจะสรุปใหม่อีกรอบ

Sat, 03/13/2010 - 00:02
รอติดตามอ่านสาระดีๆนะ (n_n) ปล.ให้ที่คอมเมนท์ให้บวกเลขอ่ะ = = ไม่เคยบวกถูกก่อนเลยสักครั้ง 555555
»
Post new comment