Database พูดถึง Database ก็เป็นที่เก็บข้อมูล มี 2 ประเภท คือ แบบมีโครงสร้าง(Structure)กับแบบไม่มีโครงสร้าง(Non-Structure)
ลองอ่านรายละเอียดเกี่ยวกับ 2 ประเภทนี้เพิ่ม
การเลือกใช้ SQL กับ NoSQL
สิ่งที่แตกต่าง คือ แนวทางในการจัดเก็บข้อมูล
- Relational database ทำการจัดเก็บข้อมูลในรูปแบบของตาราง (Table)
ซึ่งใน table ประกอบไปด้วย row และ column และแต่ละ table มี relation กัน - Non-relational database นั้นไม่ได้จัดเก็บข้อมูลในรูปแบบของ table เพียงอย่างเดียว มี key กับ value ผูกกัน
ดังนั้นควรดู data ของเราก่อนว่าควรจะใช้รูปแบบไหน เช่น ถ้าเกี่ยวกับการเงิน ควรใช้ SQL หรือ ถ้ามี data เยอะๆควรเลือกใช้ NoSQL
ตัวช่วยในการเลือก Database
ทฤษฎี CAP Theorem ( Consistency Availability Partition Tolerance )
- [C]onsistency คือ ทุกๆ ครั้งที่อ่านข้อมูล ระบบจะต้องอัพเดตข้อมูลล่าสุดเสมอ
- [A]vailablity คือ ระบบจะต้องพร้อมใช้งานอยู่ตลอดเวลา
- [P]artition Tolerance คือ เมื่อ Node ใด Node หนึ่งในระบบเสียไป หรือไม่สามารถติดต่อกันได้อีก ระบบจะต้องสามารถทำงานได้อย่างถูกต้อง
Eric Brewer ผู้ซึ่งนำเสนอ CAP Theorem นี้ ได้มีส่วนเพิ่มเติมไว้ว่า คุณลักษณะทั้ง 3 ที่ว่ามานี้ …เราไม่สามารถได้มาทั้ง 3 อย่างหรอกนะ เราต้องบูชายัญอย่างใดอย่างหนึ่งซะ เพื่อยกระดับอีกสองอย่างขึ้นมา
สรุปจากการทำงานวันนี้
- ช่วงเช้าได้มาออกแบบ database และกำหนดชื่อ table พร้อมกับ field ใน table
- ช่วงบ่ายได้เขียน code connect database ใน go และสร้าง function read , create , edit , delete
จากการสังเกต…ได้รู้ว่าทักษะแต่ละคนในตอนนี้ยังไม่เท่ากัน เนื่องจากก่อนหน้าเราสนใจแต่งานจะต้องเสร็จทำให้คนในทีมได้ทักษะไม่เท่ากัน ในวันนี้ทีมค่อยๆทำไปพร้อมกัน ไม่เข้าใจตรงไหนรอกัน เจอปัญหาเข้าไปช่วยดูช่วยแก้ไข คิดว่าในวันข้างหน้าพวกเราจะทำงานกันเป็นทีมมากกว่านี้ขึ้นไปอีก :)