Database

วิธีตั่งค่า Server MongoDB ให้ปลอดภัยและการทำ Remote Access

คำแนะนำก่อนอ่าน ขณะที่กำลังหากคุณใช้ MongoDB แนะนำให้ไป Backup ฐานข้อมูลก่อนอ่านบทความนี้ต่อ เมื่ออ่านจบก็ให้แน่ใจว่าได้ Backup ข้อมูลแล้วจริงๆ เรื่องมีอยู่ว่า หลายวันมานี้เราคงได้เห็นตามหน้า Facebook ที่จะมีคนโพสอะไรประมาณนี้ 0704341626asdf group ransom note (via Victor Gerves) สำหรับใครยังไม่ทราบแนะนำให้ลองอ่านข่าวจากลิ้งพวกนี้ดู Link1 Link2 ซึ่งตอนนี้ฐานข้อมูล [...]

Everything Jingle Bell แบบครอบจักวาล MongoDB [ตอนที่ 3: การออกแบบ Schema]

หลังจากตอนที่ 2.2 link เรื่องการจัดการข้อมูลที่เป็นแบบ Array ตอนนี้เราจะมาดูกันต่อในเรื่องการออกแบบโครงสร้างของฐานข้อมูล (Schema) ซึ่งถ้าใครเคยทำ MySQL หรือฐานข้อมูลแบบ Relational มาแล้วก็จะมีความรู้เรื่องการออกแบบฐานข้อมูลมาพอสมควร แต่สำหรับคนที่ยังไม่เป็นเลย หรือยังไม่คล่องผมก็แนะนำว่าคุณก็สามารถอ่านได้เหมือนกันเพราะหลักการมันไม่ได้หนีห่างกันไปไหนครับ Schema การออกแบบ Schema ก็คือการระบุว่าในแต่ละ Collection( Table if MySQL) จะมีฟิลด์อะไรบ้าง [...]

Everything Jingle Bell แบบครอบจักวาล MongoDB [ตอนที่ 2.2: Array และลูป]

ต่อจากตอนที่ 2.1 link ตอนนี้เราจะมาเรียนรู้วิธีการใช้งานเรื่อง Array ให้มันแอดวานซ์ขึ้นไปอีก เพราะนอกในตอนที่แล้วผมพูดถึงเรื่องคำสั่งในการอัพเดทข้อมูลและคำสั่งที่ใช้กับการจัดการข้อมูลแบบ Array บทความนี้เราจะมาต่อเรื่องการจัดการกับ Array อีกสั่กหน่อยแต่บทความนี้จะมาพูดถึงเรื่องการใช้คำสั่งอื่นๆ ได้แก่ การวนลูป การตัดสมาชิกในอาเรย์ การเรียงข้อมูลและการหาตำแหน่งของสมาชิก Name Description $each เป็นคำสั่งที่ใช้งานร่วมกับ $push และ $addToSet สำหรับต้องการทำงานแบบ [...]

Everything Jingle Bell แบบครอบจักวาล MongoDB [ตอนที่ 2.1: Array และเจาะลึกการ Update ข้อมูล]

ต่อจากตอนที่ 1 link ซึ่งในตอนที่ 2 นี้เราจะมาพูดถึงการทำงานของ MongoDB ซึ่งผมชอบที่สุดคือมันทำงานกับข้อมูลที่เป็น Array ได้ง่ายมาก ผมคิดว่านี้ก็เป็นจุดขายที่น่าสนใจอย่างนึงเลยครับ และนอกจากนี้ผมจะมาอธิบายคำสั่งต่างๆ ที่ไว้ทำการ Update ข้อมูลซึ่งทำให้การทำงานมีความยึดหยุ่นมากครับ เพราะเราสามารถสร้างเงือนไขที่ซับซ้อนได้ในการอัพเดทฐานข้อมูลของเรา เดียวผมจะแนะนำคำสั่งทั่งหมดก่อนตามนี้ครับ Update Operators คำสั่งที่ใช้งานกับ Fields Name Description $inc [...]

Everything Jingle Bell แบบครอบจักวาล MongoDB [ตอนที่ 1: CRUD ]

บทความนี้ผมจะมาอธิบาย  MongoDB และเปรียบเทียบให้เห็นการทำงานระหว่าง SQL ที่ทุกคนรู้จักกันดีผมเชื่อว่าทุกคนทำงานมาต้องผ่านมาแล้วไม่มากก็น้อย ตอนแรกผมคิดว่าจะเขียนรวดเดียวจบเลย แต่คิดว่าคงไม่ไหว เพราะเนื้อเรื่องที่ผมจะเขียนมีดังต่อไปนี้ เปรียบเทียบการทำงาน (บทความนี้) การทำงานกับ Array และข้อมูลรูปแบบต่างๆ เจาะลึกการ Update ข้อมูล การออกแบบ Schema ของระบบ การทำ Index ใน MongoDB การทำคิวรี่ขั่นสูงด้วย [...]

Normalization: Normal Form ตอนที่ 3

สวัสดีครับ ณ ตอนนี้ก็มาถึงตอนจบของการทำ Normalization ในกระบวนการสุดท้ายซึ่งก็คือ Normal Form(NF) แล้วครับ ซึ่งผมจะพูดถึงเพียงแค่ NF 1 , 2 , 3 เท่านั้นซึ่งหากใครยังไม่ได้อ่านตอนที่ 1 และ 2 ให้ย้อนกลับไป ดูที่นี่  เพื่อทำเข้าความใจก่อนลงมือประฏิบัติจริง  เอาละผมขอเริ่มเลยละกันโดยเริ่มจากการยกตัวอย่างและอธิบายไปทีละขั่นเลย [...]

Normalization ฟังก์ชันการขึ้นต่อกัน(Function Dependency) ตอนที่ 2

สวัสดีครับหลังจากทีผมเขียนบทความตอนที่ 1 หลักการและจุดประสงค์ ไปแล้ววันนี้ก็ตามสัญญาผมก็จะมาอธิบายเรื่องของฟังก์ชันการขึ้นต่อกัน หรือ Function Dependency ซึ่งหลักใหญ่ก๋คือการระบุความสัมพันธ์ของแอตทิบิวต์ใน Field  ซึ่งแอตทิบิวต์ที่สามารถระบุค่าในแอตทิบิวต์อื่นๆ ได้เราจะเรียกมันว่า determimant และถ้าแอตทิบิวต์ที่ถูกระบุค่าได้จาก determinant เราจะเรียกมันว่า dependent ซึ่งในทางทฤษฏีเราจะใช้สัญญาลักษณ์ —–> เพื่อเป็นการบอกถึงการขึ้นต่อกัน [...]

Normalization หลักการและจุดประสงค์ ตอนที่ 1

ก่อนอื่นเลยเรามีดูกันก่อนว่าความหมายของการทำนอร์มัลไลเซชัน หรือที่หลายๆ คนเรียกันว่า นอร์มัลไลเนี่ยมันคืออะไร ผมจะอธิบายสั่นๆ แบบนี้ว่ามันคือการแตกรีเลชั่นต่างๆ ให้อยู่ในรูปแบบที่เรียกว่า Normal Form(NF)  [...]