By Arnon Puitrakul - 05 กรกฎาคม 2015
จาก EP. ที่แล้ว เราก็ได้รู้ว่า กว่าจะมาเป็น Database แบบที่เราใช้อยู่ทุกวันนี้ มันเริ่มมาจากอะไร และมีข้อดีข้อเสียอย่างไร
แต่วันนี้ เราจะไม่ย้อนเวลาแล้ว เราจะมองที่ปัจจุบัน มาดูกันว่า เวลาเราจะวาด ER Diagram ที่เขาวาด ๆ กันได้ยังไง แต่ก่อนหน้านั้น มันคืออะไร ?
ER Diagram เป็น แบบจำลองที่ใช้อธิบายโครงสร้างของฐานข้อมูลที่เราเขียนขึ้นมาในลักษณะของรูปภาพ เพื่ออธิบายความสัมพันธ์ของข้อมูล
การวาด ER Diagram เป็นขั้นตอนที่ค่อนข้างสำคัญมากในการออกแบบฐานข้อมูล นอกจากมันจะช่วย "กันหลง" ได้แล้ว มันยังทำให้ เราออกแบบฐานข้อมูลได้อย่างเป็นระบบ เพื่อป้องกันความผิดพลาดด้วย ถ้าเราทำงานกับฐานข้อมูลที่ใหญ่มาก ๆ ก็ควรที่จะเขียน ER Diagram มากเลย เพราะถ้าฐานข้อมูลใหญ่มาก ๆ ก็อาจทำให้เราเกิดความผิดพลาดในการทำงานได้ (ถ้ามันใหญ่จริง ๆ ใครมันจะไปจำโครงสร้างได้หมดล่ะ เนอะ ?)
สำหรับแผนภาพ ER Diagram เราจะนำเสนอข้อมูลในรูปแบบของแผนภาพได้อย่างชัดเจน โดยจะมี
ถัดมา เราก็ต้องมี Entity อีกตัวเพื่อเก็บข้อมูลของหนังสือพิมพ์ เช่น รหัสหนังสือพิมพ์ ชื่อหนังสือพิมพ์ และ ราคา สามารถเอามาเขียน ER Diagram ได้ตามแบบข้างล่างได้เลย
หลังจากที่เราได้ ทั้ง 2 Entities ไปแล้ว เราก็จะมาดูที่อีก Entity นึง แต่ Entity นี้ออกจะพิเศษไปสักหน่อย เพราะว่า ข้อมูลของมันเกิดจาก ความสัมพันธ์ของ 2 Entities นั่นคือ News Member ซึ่ง Entity นี้จะเก็บข้อมูลว่าสมาชิกของเรานั่น สมัครสมาชิก หนังสือพิมพ์อะไรไปบ้าง ดังนั้น Attribute เราก็ควรจะมี รหัสสมาชิก ที่มาจาก Entity Member และ รหัสของหนังสือพิมพ์ที่สมาชิก ได้สมัครไว้
และเราก็จับทั้งหมดมารวมกัน เราก็จะได้แบบด้านล่างเลย
แต่เราสังเกตจากตัวอย่างเมื่อกี้ ว่าสมาชิก 1 คนสามารถสมัครได้มากกว่า 1 หนังสือพิมพ์ ดังนั้นเรื่องของ ระดับของความสัมพันธ์ หรือ Relationship cardinality จึงถูกพูดขึ้นมา มันเป็นการอธิบายว่า ความสัมพันธ์อันนั้น ๆ มันมีความสัมพันธ์กันอย่างไร โดยเราจะมีอยู่ 3 รูปแบบด้วยกัน นั่นคือ
ใน Synology NAS มีความสามารถนึงที่น่าสนใจคือ การใช้ SSD เป็น Cache สำหรับระบบ ที่ทำให้ Performance ในการอ่านเขียน เร็วขึ้นกว่าเดิมมาก ๆ แน่นอนว่า เราลองละ วันนี้เราจะมาเล่าให้อ่านกันว่า หากใครคิดที่จะทำ มันเหมาะ หรือ ไม่เหมาะกับการใช้งานของเรา...
เรื่องราวเกิดจากการที่เราต้องย้าย Add-on Package ใน DSM และคิดว่าหลาย ๆ คนน่าจะต้องประสบเรื่องราวคล้าย ๆ กัน วันนี้เราจะมาเล่าวิธีการว่า เราทำยังไง เจอปัญหาอะไร และ แก้ปัญหาอย่างไรให้ได้อ่านกัน...
การใช้ Docker CLI ในการจัดการ Container เป็นท่าที่เราใช้งานกันทั่วไป มันมีความยุ่งยาก และผิดพลาดได้ง่ายยังไม่นับว่ามี Instance หลายตัว ทำให้เราต้องค่อย ๆ SSH เข้าไปทำทีละตัว มันจะดีกว่ามั้ย หากเรามี Centralised Container Managment ที่มี Web GUI ให้เราด้วย วันนี้เราจะพาไปทำความรู้จักกับ Portainer กัน...
ปกติหากเราต้องการจะเปิดเว็บสักเว็บ เราจำเป็นต้องมี Web Server ตั้งอยู่ที่ไหนสักที่หนึ่ง ต้องใช้ค่าใช้จ่าย พร้อมกับต้องจัดการเรื่องความปลอดภัยอีก วันนี้เราจะมาแนะนำวิธีการที่ง่ายแสนง่าย ปลอดภัย และฟรี กับ Cloudflare Tunnel ให้อ่านกัน...