Replication ใน SQL Server คือกระบวนการคัดลอกและกระจายข้อมูล
จากฐานข้อมูลหนึ่งไปยังอีกฐานข้อมูลหนึ่งแบบอัตโนมัติ
เพื่อให้ข้อมูลในหลาย Server เหมือนกัน
Replication มักถูกใช้ในระบบที่ต้องการ
- กระจายข้อมูลไปหลาย Server
- ลดภาระการอ่านข้อมูลจาก Database หลัก
- ทำระบบสำรองข้อมูล
- ทำระบบ Reporting Server
องค์ประกอบของ Replication
ใน SQL Server Replication จะมีองค์ประกอบหลัก 3 ส่วน
- Publisher – Server ที่เป็นต้นทางของข้อมูล
- Distributor – Server ที่จัดการการกระจายข้อมูล
- Subscriber – Server ปลายทางที่รับข้อมูล
ภาพโครงสร้าง Replication
+-------------+
| Publisher |
| (Database) |
+-------------+
|
|
+-------------+
| Distributor |
+-------------+
|
|
+-------------+
| Subscriber |
| (Database) |
+-------------+
ประเภทของ Replication
SQL Server มี Replication หลัก 3 รูปแบบ
1. Snapshot Replication
เป็นการคัดลอกข้อมูลทั้งหมดจาก Publisher ไปยัง Subscriber
ในช่วงเวลาที่กำหนด
ลักษณะการทำงาน
Publisher
|
| Snapshot
v
Subscriber
เหมาะสำหรับ
- ข้อมูลที่ไม่เปลี่ยนแปลงบ่อย
- ข้อมูลขนาดไม่ใหญ่มาก
2. Transactional Replication
เป็นการส่งข้อมูลที่มีการเปลี่ยนแปลง
เช่น INSERT, UPDATE, DELETE
จาก Publisher ไปยัง Subscriber แบบต่อเนื่อง
ลักษณะการทำงาน
Publisher
|
| Transaction Log
v
Distributor
|
v
Subscriber
เหมาะสำหรับ
- ระบบที่ต้องการข้อมูลใกล้เคียง Real-time
- ระบบ Reporting
3. Merge Replication
เป็น Replication ที่ทั้ง Publisher และ Subscriber
สามารถแก้ไขข้อมูลได้
และระบบจะทำการ Merge ข้อมูลเข้าด้วยกัน
ลักษณะการทำงาน
Publisher <------> Subscriber
(Sync ข้อมูลทั้งสองฝั่ง)
เหมาะสำหรับ
- ระบบที่มีหลายสาขา
- ระบบ Offline / Online
ขั้นตอนการตั้งค่า Replication ใน SQL Server
1. เปิด SQL Server Management Studio (SSMS)
เชื่อมต่อไปยัง SQL Server ที่ต้องการทำ Replication
2. Configure Distribution
คลิกขวาที่ Replication
Replication
→ Configure Distribution
ขั้นตอนนี้จะสร้าง Distributor
ภาพขั้นตอน
SQL Server
|
+-- Replication
|
+-- Configure Distribution
3. สร้าง Publication
Publication คือการกำหนดว่าตารางไหนจะถูกส่งไปยัง Subscriber
Replication
→ Local Publications
→ New Publication
เลือก
- Database
- Replication Type
- Table ที่ต้องการ replicate
4. สร้าง Subscription
Subscription คือการกำหนดว่า
Subscriber ตัวไหนจะรับข้อมูล
Replication
→ Local Publications
→ New Subscription
เลือก
- Subscriber Server
- Database ปลายทาง
ภาพโครงสร้างหลังตั้งค่า
Publisher Server
|
v
Distributor
|
v
Subscriber Server
ตัวอย่างการใช้งานจริง
ตัวอย่างเช่นระบบ E-Commerce
Main Database (Publisher)
|
|
v
Reporting Server (Subscriber)
Server หลักใช้สำหรับ
- Insert Order
- Update Product
ส่วน Reporting Server ใช้สำหรับ
- Dashboard
- Report
- Analytics
ทำให้ลดภาระ Database หลัก
ข้อดีของ Replication
- กระจายข้อมูลไปหลาย Server
- เพิ่มความเร็วในการอ่านข้อมูล
- รองรับระบบขนาดใหญ่
- ลดภาระ Database หลัก
ข้อจำกัดของ Replication
- การตั้งค่าค่อนข้างซับซ้อน
- ต้องมีการดูแลระบบ Replication
- ต้องมีพื้นที่จัดเก็บเพิ่ม
สรุป
Replication ใน SQL Server เป็นเทคนิคสำคัญในการกระจายข้อมูล
จากฐานข้อมูลต้นทางไปยังฐานข้อมูลปลายทาง
โดยมีองค์ประกอบหลักคือ Publisher, Distributor และ Subscriber
Replication มี 3 รูปแบบหลัก ได้แก่ Snapshot, Transactional และ Merge
ซึ่งแต่ละรูปแบบเหมาะกับการใช้งานที่แตกต่างกัน
และนิยมใช้ในระบบองค์กรหรือระบบที่มีข้อมูลจำนวนมาก
