ควบคุมที่เก็บข้อมูล SharePoint ด้วยขีดจำกัดประวัติเวอร์ชัน
ปัญหาทั่วไปเกี่ยวกับที่เก็บข้อมูล SharePoint คือพื้นที่เก็บข้อมูลของคุณหมดอย่างรวดเร็ว คุณสามารถซื้อพื้นที่เก็บข้อมูลเพิ่มเติมได้ แต่อย่างที่ทราบกันดีว่าราคาค่อนข้างแพง ขณะนี้สาเหตุหลักของการใช้พื้นที่เก็บข้อมูลมากเกินไปคือการกำหนดเวอร์ชันของไฟล์ใน SharePoint
การกำหนดเวอร์ชันของไฟล์เป็นคุณสมบัติที่ยอดเยี่ยม แต่ปัญหาจะเกิดขึ้นเมื่อคุณจัดเก็บไฟล์ขนาดใหญ่ เพราะแต่ละเวอร์ชันเป็นสำเนาของไฟล์เต็ม และสามารถเพิ่มได้เร็วมาก เพื่อบรรเทาปัญหานี้ Microsoft ได้เปิดตัวฟีเจอร์ใหม่ การจำกัดประวัติเวอร์ชัน ซึ่งช่วยให้คุณควบคุมจำนวนเวอร์ชันที่ยังคงอยู่ได้มากขึ้น
ในบทความนี้ เราจะดูว่าขีดจำกัดประวัติเวอร์ชันใหม่เปรียบเทียบกับการตั้งค่าเวอร์ชันที่มีอยู่ใน SharePoint อย่างไร และวิธีการเปิดใช้งานสำหรับผู้เช่าของคุณ
ขีดจำกัดประวัติเวอร์ชันเทียบกับการกำหนดเวอร์ชันของ SharePoint
การกำหนดเวอร์ชันไฟล์จะเปิดใช้งานตามค่าเริ่มต้นสำหรับไซต์ SharePoint และ OneDrive ทั้งหมด ด้วยการตั้งค่าเริ่มต้น SharePoint และ OneDrive จะเก็บแต่ละไฟล์ไว้ 500 เวอร์ชัน สิ่งนี้สมบูรณ์แบบเมื่อเราพูดถึงไฟล์ Word ที่มีขนาดเพียง 100kb
แต่จะกลายเป็นปัญหาเมื่อเราจัดเก็บไฟล์ขนาดใหญ่ เช่น PDF ไฟล์กราฟิก ภาพวาด หรือรูปแบบไฟล์ขนาดใหญ่ ลองดูภาพหน้าจอด้านล่าง ผมมีไฟล์ PSD (PhotoShop) ขนาดเพียง 36Mb แต่ OneDrive เก็บไว้ถึง 245 เวอร์ชันแล้ว ดังนั้นไฟล์เดียวนี้กินพื้นที่ 8.5GB!
ตอนนี้เรามีตัวเลือกในการควบคุมจำนวนเวอร์ชันที่จะเก็บไว้ใน SharePoint และ OneDrive ผ่านการตั้งค่าไลบรารีเอกสารแล้ว ที่นี่เราสามารถลดจำนวนเวอร์ชันที่จะเก็บไว้ให้เหลืออย่างน้อย 100 ซึ่งจริงๆ แล้วยังมีค่อนข้างมาก
ปัญหาของวิธีนี้คือเราต้องกำหนดค่านี้ให้กับไลบรารีไซต์แต่ละแห่ง แน่นอนว่าเราสามารถใช้ PowerShell สำหรับสิ่งนี้ได้ แต่ยังคงต้องมีการกำหนดค่าไซต์ใหม่ทั้งหมดเช่นกัน และจำนวนเวอร์ชันขั้นต่ำคือ 100 ตามตัวอย่างจากด้านบน ยังคงมีมากกว่า 3GB สำหรับหนึ่งไฟล์
ขีดจำกัดประวัติเวอร์ชัน
ฟีเจอร์ใหม่ การจำกัดประวัติเวอร์ชัน ช่วยให้คุณสามารถกำหนดค่าจำนวนเวอร์ชันเพื่อเก็บไว้สำหรับไลบรารีเอกสาร SharePoint ใหม่และบัญชี OneDrive ได้อย่างง่ายดาย มันไม่ได้เขียนทับไซต์หรือบัญชี OneDrive ที่มีอยู่ แต่เรามีวิธีแก้ปัญหาเช่นกัน
นอกจากการตั้งค่าจำนวนเวอร์ชันหลักที่เราต้องการเก็บไว้แล้ว เรายังสามารถกำหนดอายุสูงสุดสำหรับเวอร์ชันได้อีกด้วย เช่น เราสามารถกำหนดค่าให้ลบเวอร์ชันหลังจากผ่านไป 3 เดือนหรือ 1 ปีได้
จุดแข็งที่แท้จริงของคุณสมบัติใหม่นี้คือการตั้งค่าอัตโนมัติ เมื่อเปิดใช้งาน อัลกอริธึมอัจฉริยะจะจัดเก็บเวอร์ชันตามวันที่สร้าง เมื่อเวอร์ชันมีอายุมากขึ้น เวอร์ชันเก่าๆ จะถูกจัดเก็บน้อยลง โดยคงเวอร์ชันที่จำเป็นมากที่สุดไว้บางส่วน
เวอร์ชันเก่าที่บางลงนี้ส่งผลให้เกิดสคีมาการเก็บรักษาต่อไปนี้:
- 30 วันแรก - ทุกเวอร์ชันภายในขีดจำกัด 500 นับจะถูกเก็บไว้
- 30 ถึง 60 วัน - เวอร์ชันรายชั่วโมงจะถูกจัดเก็บ
- 60 ถึง 180 วัน - เวอร์ชันรายวันจะถูกจัดเก็บ
- หลังจาก 180 วัน - เวอร์ชันรายสัปดาห์จนถึงขีดจำกัด 500 ตัว
หากเราเปรียบเทียบทั้งสามวิธี จำนวนเวอร์ชันสูงสุด (ขีดจำกัดการนับ) ขีดจำกัดอายุ (หมดอายุ) และขีดจำกัดอัตโนมัติ เราจะเห็นว่าจำนวนเวอร์ชันที่จัดเก็บจะค่อยๆ เลื่อนลงมาพร้อมกับขีดจำกัดอัตโนมัติ เมื่อเทียบกับตัวเลือกอื่นๆ : :
โปรดทราบว่าเมื่อคุณตั้งค่าขีดจำกัดเวลา (หมดอายุ) สำหรับเวอร์ชันต่างๆ คุณจะพบว่าไฟล์มีเวอร์ชันเดียวเท่านั้นหลังจากช่วงเวลาที่กำหนด ตัวอย่างเช่น คุณกำหนดค่าอายุสูงสุด 6 เดือนสำหรับเวอร์ชันไฟล์ ไฟล์ใหม่ถูกสร้างขึ้นและแก้ไขในเดือนแรกเท่านั้น หลังจากผ่านไป 7 เดือน (นับจากการสร้างไฟล์ครั้งแรก) เหลือเพียงเวอร์ชันสุดท้ายเท่านั้น
หากคุณไม่มีการสำรองข้อมูล SharePoint อื่นๆ ของคุณ สิ่งนี้อาจส่งผลต่อความยืดหยุ่นของข้อมูล เนื่องจากคุณไม่สามารถกู้คืนหรือแปลงกลับเป็นเวอร์ชันก่อนหน้าได้เมื่อมีสิ่งเกิดขึ้นกับไฟล์นั้น
วิธีเปิดใช้งานการกำหนดเวอร์ชันอัตโนมัติ
ขีดจำกัดประวัติเวอร์ชันอยู่ในการแสดงตัวอย่างมาระยะหนึ่งแล้ว แต่ควรนำไปใช้กับผู้เช่าทั้งหมดในตอนนี้ หากคุณไม่เห็นตัวเลือกหลังจากทำตามขั้นตอนด้านล่าง โปรดอ่านต่อ ฉันจะแสดงวิธีเปิดใช้งานด้วย PowerShell หลังจากนั้น
- เปิดศูนย์การจัดการ SharePoint
- ไปที่การตั้งค่า
- เปิดขีดจำกัดประวัติเวอร์ชัน
- ตั้งค่าเป็น อัตโนมัติ
หากคุณไม่ต้องการใช้ตัวเลือกอัตโนมัติ คุณสามารถปล่อยไว้ได้ด้วยตนเอง และกำหนดค่าจำนวนเวอร์ชันหลักสูงสุดที่คุณต้องการเก็บไว้
การใช้ PowerShell เพื่อเปิดใช้งานการจำกัดประวัติเวอร์ชันอัตโนมัติ
นอกจากนี้เรายังสามารถใช้ PowerShell เพื่อเปิดใช้งานการจำกัดประวัติเวอร์ชันอัตโนมัติ ตัวเลือกนี้ยังสามารถใช้ได้เมื่อคุณไม่เห็นฟีเจอร์นี้ใน SharePoint Admin Center
ในการเปิดใช้งานคุณลักษณะนี้ด้วย PowerShell เราจำเป็นต้องมี SharePoint Online Management หรือโมดูล PnP PowerShell ตรวจสอบให้แน่ใจว่าโมดูลได้รับการอัปเดตเป็นเวอร์ชันล่าสุดก่อนที่จะดำเนินการต่อ
# Option import the SPO module for PowerShell 7
Import-Module Microsoft.Online.SharePoint.PowerShell -UseWindowsPowerShell
# Connect to SharePoint Online
Connect-SPOService -url 'https://lazydev-admin.sharepoint.com/'
# Enable Version History Limits
Set-SPOTenant -EnableVersionExpirationSetting $trueหากคุณต้องการใช้โมดูล PnP PowerShell ให้ใช้คำสั่งต่อไปนี้เพื่อเปิดใช้งานการตั้งค่า:
# Connect to PnP Online
Connect-PnPOnline -Url 'https://lazydev-admin.sharepoint.com/' -Interactive
# Enable Version History Limits
Set-PnPTenant -EnableVersionExpirationSetting $trueนอกจากนี้เรายังสามารถใช้ PowerShell เพื่อกำหนดการตั้งค่าขีดจำกัดประวัติเวอร์ชันได้ หากต้องการตั้งค่าประวัติเวอร์ชันเป็นอัตโนมัติ คุณต้องเปิดใช้งานการตั้งค่าต่อไปนี้:
# SPO Module:
Set-SPOTenant -EnableAutoExpirationVersionTrim $true
# PnP MOdule:
Set-PnPTenant -EnableAutoExpirationVersionTrim $trueหากคุณต้องการการตั้งค่าด้วยตนเอง คุณสามารถใช้ตัวเลือกต่อไปนี้เพื่อกำหนดค่าได้:
# Don't expire, and 100 file version max
Set-SPOTenant -ExpireVersionsAfterDays 0 -MajorVersionLimit 100
# Expire versions after 180 days, and 500 file version max
Set-SPOTenant -ExpireVersionsAfterDays 180 -MajorVersionLimit 500การล้างข้อมูลไลบรารีที่มีอยู่
การตั้งค่าขีดจำกัดประวัติเวอร์ชันจะใช้กับไลบรารีเอกสารใหม่เท่านั้น แต่คุณอาจต้องการล้างไลบรารีที่มีอยู่ด้วย เมื่อต้องการทำเช่นนี้ เราสามารถใช้ cmdlet New-SPOSiteFileVersionBatchDeleteJob ใหม่
cmdlet นี้ช่วยให้คุณสร้างงานการล้างข้อมูลแบบแบตช์สำหรับไลบรารีเอกสารที่มีอยู่ เราสามารถระบุได้ว่าเราต้องการใช้วิธีการตัดแต่งอัตโนมัติหรือกำหนดค่าตัวเลือกแบบแมนนวลสำหรับไลบรารี
บันทึก
เวอร์ชันไฟล์ที่ถูกลบโดย Batch Delete Job จะสามารถกู้คืนได้! พวกเขาจะไม่ไปที่ถังรีไซเคิลของคุณ ดังนั้นจึงไม่สามารถกู้คืนได้ หากมีข้อสงสัย ให้เรียกใช้การวิเคราะห์แบบ What-If ก่อน!
สามารถสร้างงานการล้างข้อมูลสำหรับไซต์ SharePoint ที่สมบูรณ์ หรือคุณสามารถสร้างงานสำหรับไลบรารีเฉพาะได้:
# Apply automatic logic to trim existing versions from a Site
New-SPOSiteFileVersionBatchDeleteJob -Identity $siteUrl -Automatic
# Config count limits (Major versions) for a library
New-SPOListFileVersionBatchDeleteJob -Site $siteUrl -list $libName -MajorVersionLimit 100เมื่อใช้ PowerShell แน่นอนว่าคุณไม่จำเป็นต้องสร้างงานพื้นหลังใหม่สำหรับแต่ละไซต์ด้วยตนเอง คุณสามารถใช้สคริปต์ด้านล่างเพื่อเปิดใช้งานขีดจำกัดประวัติเวอร์ชันสำหรับแต่ละไซต์ และตัดเวอร์ชันตามตรรกะอัตโนมัติ:
# Check if script is running in PowerShell 7
if ($psversionTable.PSVersion.major -eq 7) {
Import-Module Microsoft.Online.SharePoint.PowerShell -UseWindowsPowerShell
}
# Connect to SharePoint Online
$spAdminUrl = "https://<your-tenant>-admin.sharepoint.com"
Connect-SPOService -Url $spAdminUrl
# Get all SharePoint Sites
$spoSites = Get-SPOSite -Limit All
# Process each site
$spoSites | ForEach-Object{
$site = $_
Write-Host "Creating cleanup job for site: $($site.Url)"
# Check if Version History Limits is enabled for each site
if ($null -eq (Get-SPOSite -Identity $site.Url).EnableAutoExpirationVersionTrim)
{
# Enable Version History Limits
Set-SPOSite -Identity $site.Url -EnableAutoExpirationVersionTrim:$true -Confirm:$false
# Create a batch to trim versions based on the automatic logic
try {
New-SPOSiteFileVersionBatchDeleteJob -Identity $site.Url -Automatic -Confirm:$false
Write-Host "Batch trim job created for site: $($site.Url)" -ForegroundColor Green
} catch {
Write-Host "Unable to create job for site: $($site.Url)"
Write-Host $_.Exception.Message
}
}else{
Write-Host "Version History Limits already enabled for site: $($site.Url)" -ForegroundColor Cyan
}
}
# Disconnect from SharePoint Online
Disconnect-SPOServiceห่อขึ้น
ขีดจำกัดประวัติเวอร์ชันทำให้การกำหนดค่าจำนวนเวอร์ชันไฟล์สูงสุดสำหรับไซต์ SharePoint ของคุณง่ายขึ้นมาก แต่ส่วนที่ดีที่สุดของฟีเจอร์ใหม่นี้คือตัวเลือกการตัดแต่งอัตโนมัติ
เป็นวิธีที่ยอดเยี่ยมในการเรียกคืนพื้นที่เก็บข้อมูล SharePoint จำนวนมากของคุณ ในขณะเดียวกันก็ตรวจสอบให้แน่ใจว่ามีไฟล์ในเวอร์ชันที่เพียงพอ
หากคุณชอบบทความนี้ ตรวจสอบให้แน่ใจว่าคุณสมัครรับจดหมายข่าวหรือติดตามฉันบนแพลตฟอร์มโซเชียลมีเดียแห่งใดแห่งหนึ่ง และหากคุณมีคำถามใด ๆ เพียงแสดงความคิดเห็นด้านล่าง



