แนวคิดการ Backup ทั้งบน Cloud และที่บ้าน

จากที่ผมเขียน แนวทางการ Backup ข้อมูล และ มาทำ Backup ไฟล์สำคัญจากมือถือและโน๊ตบุ๊ก ไปไว้บน Cloud กันดีกว่า!!! (Online Sync) จนผมมักพูดว่า “Backup พันวัน เอาไว้ใช้วันสำคัญวันเดียว … วันที่ข้อมูลมีปัญหา!!!” ซึ่งมีใจโดยสรุปดังนี้

  1. เพื่อป้องกันทั้งการ “ลบ” หรือ “ทำข้อมูลสูญหาย” ทั้งที่ตั้งใจและไม่ตั้งใจ
  2. “กู้ข้อมูลเก่า” เนื่องจากแก้ไขข้อมูลปัจจุบันแล้วมีปัญหา หรือไฟล์ที่มีใช้งานไม่ได้ จึงต้องการกลับไปใช้ต้นฉบับก่อนหน้านี้
  3. ป้องกัน “สื่อเก็บข้อมูลเสียหาย” อันนี้สำคัญเก็บดีแค่ไหน ไอ้ตัวที่เก็บข้อมูลดันเสียเองก็จบกัน
  4. “โดนขโมย” อันนี้ปัจจัยควบคุมได้ยากสุดแต่เกิดขึ้นได้น้อยแต่ก็ต้องระวัง

ซึ่งเป็นการสรุปมา 4 ข้อ เจอกันบ่อยๆ คงจะเริ่มเห็นความสำคัญของการ Backup กันบ้างแล้ว ซึ่งแน่นอนว่า ก่อนทำการ Backup ต้องมีการแบ่ง และจัดระเบียบไฟล์ข้อมูลต่างๆ เพื่อจัดลำดับ ประเภท และความบ่อย ในการ Backup เป็นส่วนๆ เพื่อง่ายต่อการตั้งรูปแบบการ Backup ได้หลากหลาย รวดเร็ว และช่วยให้การ Restore ไฟล์กลับมานั้นรวดเร็วมากขึ้น

รูปแบบการ Backup นั้นมีหลายแบบ ตั้งแต่ระดับคนทั่วไปใช้ จนระดับบริษัทขนาดใหญ่โตนับพันล้านใช้ แต่เอาเหอะ เอาระบบบ้านๆ คนทั่วไปใช้งานดีกว่า ซึ่งผมขอแบ่งง่ายๆ 4 แบบ ที่คุ้นเคยกัน

  1. Unstructured หรือ Full (พวก Data Sync ก็แนวๆ นี้เหมือนกัน) – เป็นแบบง่ายๆ ตรงไปตรงมาครับ อย่างที่ผมบอกไปตั้งแต่ต้น copy ไว้หลายๆ ชุด แต่ต้องระวังว่าไฟล์ไหนเป็นไฟล์ล่าสุด ต้องจัดระเบียบไม่ดี เดี่ยวไป merge/replace ทับไฟล์ล่าสุดจะงานเข้าซะ ปรกติคนทั่วไปที่ไม่มีความรู้ทางเทคนิคมาก จะชอบใช้กัน เพราะที่ง่ายสุด และไม่ต้องใช้ซอฟต์แวร์พิเศษใดๆ ให้ยุ่งยาก แค่รู้วิธีการ copy-paste เป็นก็ทำงานได้แล้ว
  2. Full and Incrementals – คล้ายๆ ข้อแรก แต่มีซอฟต์แวร์มาช่วยจัดการให้ โดยจะมีการทำ copy ข้อมูลไว้เป็นไฟล์ๆ (ตามรูปแบบของแต่ละซอฟต์แวร์จัดการ อาจจะเป็นไฟล์เดียวใหญ่ๆ หรือแบ่งเป็นหลายๆ ไฟล์ก็ได้) แล้วเมื่อมีการสำรองข้อมูลครั้งต่อไปก็จะตรวจสอบเฉพาะไฟล์ที่มีการเปลี่ยนแปลง หรือถูกลบออกไปจากการ Backup ครั้งที่แล้ว แล้วทำการ mark/update เพื่อ Backup ไว้เป็นวัน และเวลานั้นๆ ต่อไปเรื่อยๆ เป็นลูกโซ่ ซึ่งช่วยประหยัดพื้นที่ในการจัดเก็บได้มาก ถ้ามีการ Backup ทุกวัน ไฟล์ที่ได้จากการ Backup แบบนี้มันเพิ่มขึ้นมาเรื่อยๆ เวลาจัดเก็บไฟล์พวกนี้ต้องอยู่ครบทุกไฟล์ ต้องระวังให้ครั้งทำ Full-Incrementals ซ้ำไปซ้ำมาเป็นชุดๆ เพราะการเชื่อมไฟล์ Backup แบบนี้ ยิ่งเยอะจะยิ่งช้า และอ่านนานมาก ปรกติโดยส่วนตัวจะพยายามไม่ให้เกิน 14 ไฟล์ หรือขนาดไม่ใหญ่เกินไป (สัก 100GB – 150GB กำลังพอไหว) เพราะป้องกันไฟล์บางไฟล์เสียหาย หรือซอฟต์แวร์เปิดไฟล์ทั้งหมดไม่ได้ เพราะมีขนาดใหญ่เกินไป
  3. Full and Differential – อันนี้คล้ายกับตัวที่สอง ต่างกันเล็กน้อยตรงที่ เมื่อมีการสำรองข้อมูลครั้งต่อไปก็จะตรวจสอบเฉพาะไฟล์ที่มีการเปลี่ยนแปลง หรือถูกลบออกไปล่าสุดจากการ Backup ตัว Full แล้วทำการ mark/update เพื่อ Backup ไว้เป็นวัน และเวลานั้นๆ ไปเรื่อยๆ เวลากู้คืนกลับมาใช้ไฟล์ Full และตัวไฟล์ที่ Backup ตัวล่าสุด หรือวันที่ต้องการ แค่ 2 ส่วนก็กู้คืนได้แล้ว ซึ่งข้อดีคือ เร็วทั้งการอ่าน และเขียนไฟล์ รวมไปถึงลดความเสี่ยงต่อการสูญหายของไฟล์แต่ละส่วนก็น้อยกว่า แต่มีข้อเสียที่ เสียพื้นที่เยอะกว่าแบบข้อที่ 2 มาก
  4. Versioning with File System – อันนี้เป็นแบบที่ไม่ค่อยมีใครใช้กันสักเท่าไหร่ เพราะมันถูกจัดการด้วยตัว OS เองเป็นหลักเลย โดยผมขอยกตัวอย่างใน Windows 8 ชือ File History และใน Windows 7 ชื่อ Previous Versions โดยหลักการง่ายๆ คือระบบจะทำการสำรองข้อมูลของเราเป็น restore point หรือ snapshot  เมื่อเรา save ข้อมูลไว้อีกชุดนึงไว้ เวลาจะเรียกกลับมาก็แค่คลิ้กขวา restore กลับไปตามวันและเวลาที่มัน Backup ไว้ล่าสุด วิธีนี้ง่ายๆ แต่ผมนานๆ ใช้ที ดูแล้วมันทำงานบ้างไม่ทำงานบ้าง ยัง งงๆ อยู่ว่าทำไม อาจจะเพราะตั้งค่ามันเก็บข้อมูลให้ใช้พื้นที่น้อยไปหน่อยเลยมีค่าเฉลี่ยของ ครั้งที่สำรองข้อมูลของไฟล์บางชนิดน้อยลงไปเรื่อยๆ ส่วนใหญ่ผมจะใช้ตอนรีบเร่งจริงๆ เท่านั้น ออกแนวมีไว้อุ่นใจเป็นหลัก

จากข้อมูลสรุปๆ ผมก็เขียนเรื่องแนวๆ นี้ซึ่งก็มี แนวทางการ Backup ข้อมูล (ฉบับปรับใหม่) และ วิธีเก็บไฟล์รูปภาพให้อยู่กับเรานานๆ อีกด้วย

แน่นอนว่าในยุคที่เรามีการใช้ Cloud Storage กันอย่างกว้างขวาง ส่วนตัวแล้วไม่ได้ใช้ Cloud Storage  แค่ช่วยในการ Backup ข้อมูลเท่านั้น แต่ผมยังใช้ในการทำงานระหว่างเครื่องคอมพิวเตอร์ และมือถือที่ทุกๆ เครื่องสามารถเข้าถึงไฟล์ใน Cloud Storage ได้เหมือนๆ กันทุกเครื่อง ทำให้ไม่ต้องพก Flash Drive หรือ External Hard drive ไปๆ มาๆ ลดโอกาสสูญหาย และหลงลืมได้ ขอให้มี internet เพื่อเข้าถึง Cloud Storage ที่ใช้อยู่ได้ก็เพียงพอ

โดยปรกติตอนนี้ผมใช้ Cloud Storage อยู่หลักๆ 3 ตัวคือ SkyDrive เป็นตัวหลัก SkyDrive Pro เป็นที่เก็บไฟล์สำคัญบางอย่าง และ Dropbox เป็นส่วนสำหรับแชร์ทำงานกับลูกค้า โดยไม่ว่าจะมือถือหรือคอมพิวเตอร์ทุกเครื่องจะสามารถเข้าถึง Cloud Storage ทั้ง 3 ตัวนี้ได้ทั้งหมด แน่นอนว่าจะมีส่วนหนึ่งที่ใช้ Cloud Storage แบบเฉพาะ ที่ไว้จัดเก็บ Source code ซึ่งผมจะใช้ BitBucket.org ในการเป็น source code revision control (Git) ในการช่วยแบ่งเบาภาระของ SkyDrive, SkyDrive Pro และ Dropbox ไปอีกชั้นหนึ่ง

แน่นอนว่ามี Cloud Storage ในการจัดเก็บ แชร์ไฟล์งานระหว่างเครื่อง และกลุ่มการทำงานแล้ว ก็ต้องมีการ Backup ส่วนนี้ไว้เองที่บ้านด้วย (ต่อไปจะใช้คำว่า Local backup) ด้วยเช่นกัน เพราะต้องนึกถึงความเสี่ยงที่ระบบ Cloud Storage จะล่ม ซึ่งผมได้แบ่งกลุ่มไว้กว้างๆ อยู่ 3 กลุ่มคือ

1. กลุ่มสำคัญสูงสุด จะใช้  Cloud Storage และทำ Local backup ไปพร้อมๆ กัน โดยแยกไว้ 2 พวกย่อย คือ
– ไฟล์งานเอกสารที่หายไม่ได้ จะ backup ไว้ 2 ส่วน คือ ไว้บน Cloud Storage (SkyDrive/Dropbox ) และ HDD External ที่ตั้ง daily backup ทุกวัน (เปิดเครื่องทิ้งไว้ตอนกลางคืน ให้ Acronis True Image ทำการ Full and Incrementals backup)
– ไฟล์ source code และต้องทำ source code revision control จะ Backup ไว้ 2 ส่วน คือ ไว้บน BitBucket.org และ HDD External ที่ตั้ง daily backup ทุกวัน (เปิดเครื่องทิ้งไว้ตอนกลางคืน ให้ Acronis True Image ทำการ Full and Incrementals backup)

2. กลุ่มสำคัญมาก จะทำ Local backup เท่านั้น ได้แก่พวกไฟล์รูปภาพ หรือไฟล์ความทรงจำต่างๆ มักจะให้ความสำคัญสูงมาก หายไม่ได้ มีขนาดใหญ่ที่ไว้บน Cloud Storage ลำบาก ต้องมี 2 สำเนาเสมอบน HDD External โดยใช้ลักษณะการ Full data sync ต่าง HDD External ทุกครั้งที่มีข้อมูลใหม่ (ทำ Full data sync ผ่าน SyncToy)

3. กลุ่มสำคัญ จะทำ Local backup เท่านั้น ได้แก่พวกพวกไฟล์วิดีโอ (จำพวก เอ็มวีหายาก ไฟล์หนังหายากที่ rip จากแผ่นที่เก็บไว้ ป้องกันแผ่นเสีย), ไฟล์อีบุ๊ค, ซอฟต์แวร์ที่คัดลอกไว้เพื่อไว้สำหรับติดตั้งในอนาคต มีขนาดใหญ่ที่ไว้บน Cloud Storage ลำบาก ซึ่งส่วนใหญ่จะมี 2 สำเนาบน HDD External เสมอ และ Full data sync ต่าง HDD External เดือนละครั้ง (ทำ Full data sync ผ่าน SyncToy)

จากทั้งหมดที่กล่าวมา จะเห็นว่าผมพยายามปรับปรุงการ backup ให้รัดกุมที่สุด และถ้าได้ติดตามในตอนก่อนๆ จะเห็นว่ามีการปรับปรุงให้เรียบง่ายมากขึ้น ไม่ซับซ้อนเหมือนตอนก่อนๆ แน่นอนว่า หลายๆ คนคงให้เหตุผลว่าทำไมไม่ใช้ RAID ร่วมด้วย คือต้องอธิบายก่อนว่า RAID นั้นช่วยเรื่อง uptime เป็นหลัก ซึ่งเหมาะกับ Server และการให้บริการอย่างต่อเนื่อง การนำมาใช้ในการสำรองข้อมูลที่เน้นคงทน และสามารถกู้ข้อมูลกลับมาในวันก่อนๆ ได้นั้นยังคงเป็นจุดอ่อน รวมไปถึงมีจุดอ่อนในส่วนของ RAID Controller มีปัญหา หรือ File System เสียหายจนใช้งานไม่ได้ด้วย ซึ่ง RAID นั้นไม่ช่วยอะไรในกรณีนี้ ฉะนั้นการสำรองข้อมูลต่าง HDD แบบแยกออกเป็นอุปกรณ์ และทำ Full data sync จะดีกว่าสำหรับไฟล์แนวๆ ตัวอย่างที่ผมใช้ประจำคือ Server ที่ผมดูแลนั้นมีการใช้ RAID และยัง backup ข้อมูลต่างชุด HDD รวมไปถึงงานที่ซีเรียสมากๆ ผมจะ backup ต่างเครื่อง ด้วยซ้ำไป

สรุปผลจากทั้งหมดที่กล่าวมานี้ ช่วยชีวิตผมมาหลายต่อหลายครั้งแล้ว แม้ใช้งบเยอะหน่อย แต่ไฟล์งานสำคัญปลอดภัยผมถือว่าคุ้มค่าครับ

1 thought on “แนวคิดการ Backup ทั้งบน Cloud และที่บ้าน

Leave a Reply