MongoDB CRUD Operations — คู่มือจัดการข้อมูลฉบับสมบูรณ์

MongoDB CRUD Operations — คู่มือจัดการข้อมูลฉบับสมบูรณ์

การจัดการข้อมูลในฐานข้อมูลต้องอาศัยปฏิบัติการพื้นฐาน 4 อย่าง คือ Create (สร้าง) Read (อ่าน) Update (แก้ไข) และ Delete (ลบ) ซึ่งรวมเรียกว่า CRUD Operations ใน MongoDB การทำ CRUD จะใช้คำสั่ง mongosh หรือ Driver ของภาษาโปรแกรมต่าง ๆ โดยทำงานกับข้อมูลในรูปแบบ Document (BSON) แทนการใช้ SQL บทความนี้จะแนะ

MongoDB Collections และ Documents

MongoDB Collections และ Documents

MongoDB เก็บข้อมูลในรูปแบบ Document ซึ่งแตกต่างจากฐานข้อมูล Relational ที่ใช้ตาราง (Table) และแถว (Row) ใน MongoDB หน่วยเก็บข้อมูลพื้นฐานคือ Document ที่อยู่ภายใน Collection โครงสร้างนี้ให้ความยืดหยุ่นสูง เพราะแต่ละ Document ไม่จำเป็นต้องมีโครงสร้างเดียวกัน เหมาะกับข้อมูลที่มี Schema เปลี่ยนแปลงบ่อย

MongoDB Installation และ Setup บน Cloud VPS

MongoDB Installation และ Setup บน Cloud VPS

MongoDB เป็นฐานข้อมูลแบบ NoSQL ประเภท Document-oriented ที่ได้รับความนิยมสูงในการพัฒนาเว็บแอปพลิเคชันสมัยใหม่ จุดเด่นคือเก็บข้อมูลในรูปแบบ JSON-like Document (BSON) ซึ่งยืดหยุ่นกว่าตารางแบบ Relational Database ไม่ต้องกำหนด Schema ตายตัว เหมาะกับข้อมูลที่มีโครงสร้างเปลี่ยนแปลงบ่อยหรือมีลำดับชั้นซ้อนก

Redis Pub/Sub Messaging — ระบบส่งข้อความแบบ Real-time ด้วย Redis

Redis Pub/Sub Messaging — ระบบส่งข้อความแบบ Real-time ด้วย Redis

Redis Pub/Sub (Publish/Subscribe) เป็นระบบส่งข้อความแบบ Real-time ที่ฝังมากับ Redis โดยไม่ต้องติดตั้ง Message Broker เพิ่มเติม หลักการทำงานคือ Publisher ส่งข้อความเข้า Channel และ Subscriber ทุกตัวที่ฟัง Channel นั้นจะได้รับข้อความทันที รูปแบบนี้เหมาะกับงานที่ต้องการ Event-driven Communication เช่น

Redis Session Storage — ใช้ Redis เก็บ Session สำหรับ Web Application

Redis Session Storage — ใช้ Redis เก็บ Session สำหรับ Web Application

Session Management เป็นส่วนสำคัญของเว็บแอพพลิเคชันที่ต้องจดจำสถานะผู้ใช้ เช่น การล็อกอิน ตะกร้าสินค้า หรือค่า Preferences ต่าง ๆ การเก็บ Session ไว้ในฐานข้อมูลหรือไฟล์บนเซิร์ฟเวอร์อาจกลายเป็นคอขวดเมื่อมีผู้ใช้พร้อมกันจำนวนมาก Redis เป็นตัวเลือกยอดนิยมสำหรับ Session Storage เพราะอ่านเขียนข้อมูลได้เร็

Using Redis as Cache Layer — ใช้ Redis เป็น Cache Layer สำหรับแอปพลิเคชัน

Using Redis as Cache Layer — ใช้ Redis เป็น Cache Layer สำหรับแอปพลิเคชัน

การใช้ Cache เป็นหนึ่งในวิธีที่มีประสิทธิภาพมากที่สุดในการเพิ่มความเร็วของแอปพลิเคชัน โดยเก็บข้อมูลที่เข้าถึงบ่อยไว้ใน Memory แทนที่จะต้องดึงจากฐานข้อมูลหรือ API ทุกครั้ง Redis เป็นตัวเลือกยอดนิยมสำหรับ Cache Layer เพราะอ่านเขียนข้อมูลได้เร็วมากในระดับ Microsecond พร้อมรองรับโครงสร้างข้อมูลหลายรูปแบ

Redis Data Types และ Commands: คู่มือโครงสร้างข้อมูลและคำสั่งครบทุกประเภท

Redis Data Types และ Commands: คู่มือโครงสร้างข้อมูลและคำสั่งครบทุกประเภท

Redis รองรับโครงสร้างข้อมูลหลายประเภทที่ออกแบบมาเพื่อตอบโจทย์การใช้งานที่แตกต่างกัน ตั้งแต่การเก็บค่าง่าย ๆ ด้วย String ไปจนถึงการจัดอันดับด้วย Sorted Set ความเข้าใจโครงสร้างข้อมูลเหล่านี้เป็นกุญแจสำคัญในการใช้ Redis ได้อย่างมีประสิทธิภาพ บทความนี้จะอธิบายโครงสร้างข้อมูลทุกประเภทของ Redis พร้อมคำสั่

Redis Installation และ Setup บน Cloud VPS: คู่มือติดตั้งและตั้งค่าครบจบ

Redis Installation และ Setup บน Cloud VPS: คู่มือติดตั้งและตั้งค่าครบจบ

Redis เป็นระบบจัดเก็บข้อมูลแบบ In-Memory ที่ทำงานเร็วมากเพราะเก็บข้อมูลไว้ใน RAM โดยรองรับโครงสร้างข้อมูลหลากหลายทั้ง String, Hash, List, Set และ Sorted Set ทำให้เหมาะกับการใช้งานหลายรูปแบบตั้งแต่ Caching, Session Store, Message Queue ไปจนถึง Real-time Analytics บทความนี้จะแนะนำวิธีติดตั้ง Redis บน

Connection Pooling ด้วย PgBouncer: คู่มือตั้งค่าและปรับแต่งสำหรับ PostgreSQL

Connection Pooling ด้วย PgBouncer: คู่มือตั้งค่าและปรับแต่งสำหรับ PostgreSQL

PostgreSQL สร้าง Process ใหม่ทุกครั้งที่มีการเชื่อมต่อเข้ามา ซึ่งใช้ทรัพยากรทั้ง Memory และ CPU ในการ Fork Process เมื่อแอปพลิเคชันมีผู้ใช้จำนวนมากและเปิดปิดการเชื่อมต่อบ่อย ๆ เซิร์ฟเวอร์จะรับภาระหนักจนทำให้ประสิทธิภาพลดลง Connection Pooling เป็นเทคนิคที่แก้ปัญหานี้โดยสร้างกลุ่มการเชื่อมต่อสำเร็จรูป

Vacuum และ Analyze ใน PostgreSQL: คู่มือดูแล Dead Tuples และ Autovacuum

Vacuum และ Analyze ใน PostgreSQL: คู่มือดูแล Dead Tuples และ Autovacuum

PostgreSQL ใช้ระบบ MVCC (Multiversion Concurrency Control) ในการจัดการ Transaction ซึ่งหมายความว่าเมื่อ UPDATE หรือ DELETE ข้อมูล แถวเก่าจะไม่ถูกลบทันทีแต่จะถูกทำเครื่องหมายว่าไม่ใช้แล้ว แถวเหล่านี้เรียกว่า Dead Tuples และจะสะสมมากขึ้นเรื่อย ๆ จนทำให้ตารางใหญ่ขึ้นโดยไม่จำเป็น Query ช้าลง และดิสก์ถูก

LINE CHAT