ค้นหาเว็บไซต์

จะเก็บถาวร SharePoint Online ได้อย่างไร


SharePoint Online เป็นเครื่องมือที่ยอดเยี่ยมในการจัดเก็บและแชร์ไฟล์ ทำงานร่วมกันในโครงการ และสื่อสารกับสมาชิกในทีม อย่างไรก็ตาม เมื่อปริมาณข้อมูลที่จัดเก็บไว้ใน SharePoint Online เพิ่มมากขึ้น คุณอาจมีพื้นที่เก็บข้อมูลไม่เพียงพอ

คุณสามารถซื้อที่เก็บข้อมูลเพิ่มเติมใน SharePoint Online ซึ่งอาจมีราคาค่อนข้างแพง อีกทางเลือกหนึ่งคือเก็บถาวรไซต์ SharePoint เก่า แต่คุณมีตัวเลือกอะไรบ้างสำหรับสิ่งนั้น

ในบทความนี้ เราจะดูตัวเลือกต่างๆ ในการเก็บถาวร SharePoint รวมถึงการถ่ายโอนข้อมูลไปยังโซลูชันการจัดเก็บข้อมูลในเครื่อง (เช่น NAS) ที่เก็บข้อมูล Azure blob และเราจะดูคุณสมบัติใหม่ที่กำลังจะมีขึ้นของ Microsoft Sentex

การเก็บถาวร SharePoint

แม้ว่า SharePoint online จะมาพร้อมกับพื้นที่เก็บข้อมูลจำนวนมาก แต่ในช่วงหลายปีที่ผ่านมา คุณจะเห็นว่าองค์กรส่วนใหญ่มีพื้นที่เก็บข้อมูลไม่เพียงพอเมื่อบริษัทเติบโตขึ้น เหตุผลหนึ่งก็คือการกำหนดเวอร์ชันที่ทำโดยค่าเริ่มต้นใน SharePoint Online SharePoint จะเก็บสำเนาของไฟล์ได้มากถึง 500 สำเนา (เวอร์ชัน) ขึ้นอยู่กับประเภทและขนาดของไฟล์ซึ่งอาจกินพื้นที่เก็บข้อมูลได้มาก

บันทึก

อ่านเพิ่มเติมเกี่ยวกับที่เก็บข้อมูล SharePoint Online ในบทความนี้

คุณสามารถซื้อพื้นที่เก็บข้อมูลเพิ่มเติมได้ แต่ด้วยราคา $0.20 ต่อ GB ต่อเดือน ค่าใช้จ่ายอาจสูงได้อย่างรวดเร็ว นั่นคือสาเหตุที่บริษัทจำนวนมากมองหาตัวเลือกในการเก็บถาวร SharePoint Online

Microsoft ได้เปิดตัว Microsoft 365 Archive แล้ว แต่ยังอยู่ใน Preview แต่คุณสามารถทดสอบได้แล้ว ตัวเลือกอื่นๆ ในการเก็บถาวรไซต์ SharePoint ของคุณคือ:

  • ดาวน์โหลดข้อมูลไปยังตัวเลือกที่จัดเก็บในตัวเครื่อง
  • ย้ายข้อมูลไปยัง Azure blob
  • ใช้โซลูชันการสำรองข้อมูลของบริษัทอื่น

มีสองตัวเลือกอื่นๆ ที่มักถูกตั้งชื่อเมื่อค้นหาโซลูชันการเก็บถาวรสำหรับ SharePoint การตั้งค่านโยบายการเก็บรักษาเป็นหนึ่งในนั้น แต่นั่นไม่ได้ถูกเก็บไว้ถาวรในความคิดของฉัน นโยบายการเก็บรักษาจะลบไฟล์ที่ไม่ได้ใช้งานเกินหนึ่งปี เป็นต้น

อีกทางเลือกหนึ่งคือการย้ายข้อมูลไปยังบัญชี OneDrive ของผู้ใช้เฉพาะ OneDrive ให้พื้นที่เก็บข้อมูล 5TB แก่คุณ ดังนั้นนั่นอาจเป็นตัวเลือกสำหรับบางคน แต่โปรดจำไว้ว่า OneDrive ไม่ได้ออกแบบมาให้ผู้ใช้จำนวนมากเข้าถึงได้ง่าย และอาจขัดต่อข้อตกลงการให้บริการของ Microsoft ด้วย

เก็บถาวร SharePoint ไปยังที่จัดเก็บในตัวเครื่อง (NAS)

การย้ายข้อมูลไปยังตัวเลือกที่จัดเก็บในเครื่อง ตัวอย่างเช่น NAS มักเป็นโซลูชันที่ดีและราคาไม่แพงในการเก็บถาวร SharePoint ข้อดีของการจัดเก็บข้อมูลในเครื่องคือต้องลงทุนเพียงครั้งเดียวทุก 5 ถึง 7 ปีและกำลังขยาย

แต่ก็มีข้อเสียซึ่งมักถูกลืมไปเช่นกัน หากคุณวาง NAS ไว้ในสำนักงานของคุณพร้อมกับข้อมูล SharePoint ที่เก็บถาวร ตรวจสอบให้แน่ใจว่าคุณมีข้อมูลสำรองของพื้นที่จัดเก็บข้อมูลนั้นด้วย คุณจะไม่ใช่คนแรกที่ NAS ขัดข้องและข้อมูลทั้งหมดสูญหาย

คำแนะนำ

โดยส่วนตัวแล้วฉันใช้ Synology RS822+ เป็น NAS หลัก และใช้ DS220+ ที่เล็กกว่าเป็นข้อมูลสำรองของ RS822+

ในไลบรารี SharePoint สมัยใหม่ คุณสามารถเลือกไฟล์ทั้งหมดในไลบรารีเอกสารแล้วกดปุ่มดาวน์โหลดเพื่อดาวน์โหลดไฟล์ทั้งหมด คุณจะต้องทำเช่นนี้ต่อไลบรารีเอกสาร แต่นี่เป็นวิธีที่ง่ายที่สุดในการเก็บถาวรไฟล์ไปยังโซลูชันการจัดเก็บข้อมูลอื่น

หากคุณต้องการเก็บถาวรไฟล์และไลบรารีเอกสารจำนวนมาก วิธีแก้ปัญหาที่ดีกว่าคือใช้สคริปต์ PowerShell สำหรับสิ่งนี้ ด้านล่างนี้จะดาวน์โหลดไลบรารีเอกสารทั้งหมดจากไซต์ SharePoint ที่ระบุและดาวน์โหลดไฟล์ไปยังเส้นทางที่กำหนด ขึ้นอยู่กับสคริปต์จาก SharePointDairy.com แต่ฉันได้ขยายสคริปต์ด้วยการยกเว้นและเพิ่มการบันทึกลงไป

รายการยกเว้นที่กำหนดไว้ในฟังก์ชัน Get-DocLibraries จะกรองหน้าไซต์ เนื้อหา ไลบรารีการเก็บรักษา และอื่นๆ ที่เราไม่ต้องการออก คุณสามารถรับสคริปต์เวอร์ชันล่าสุดได้ที่นี่จากที่เก็บ GitHub ของฉัน

บทความดำเนินต่อไปด้านล่างสคริปต์

<#
.Synopsis
  Download all libaries, folders and files from SPO.

.DESCRIPTION
  Script is based on https://www.sharepointdiary.com/2017/07/download-all-files-from-sharepoint-site.html from Salaudeen.

  Script copies all document libraries including all content from SharePoint Online (SPO) to a local folder. Logging is 
  done through a log file, path for log file can be set.

  You can re-run the script, it will check if local files exists. If the file on SPO is newer, then it will update the local file.

  Scripts counts the number of files copied and skipped.

.NOTES
  Name: Copy-SpSiteToNAS.ps1
  Author: R. Mens
          S. Rajack
  Version: 1.1
  DateCreated:  2022
  Purpose/Change: init

.LINK
  a-d.site

[CmdletBinding(DefaultParameterSetName="Default")]
param(
  [Parameter(
    Mandatory = $true,
    HelpMessage = "SharePoint Site Url"
    )]
  [string]$siteUrl,

  [Parameter(
    Mandatory = $true,
    HelpMessage = "Enter path where to download files to"
    )]
  [string]$downloadPath,

  [Parameter(
    Mandatory = $false,
    HelpMessage = "Enter path for log file location"
    )]
  [string]$logFilePath = "c:\temp\sp-archive.txt",

  [Parameter(
    Mandatory = $false,
    HelpMessage = "Set log level"
  )]
  [ValidateSet("error", "warn", "info", "full")]
  [string]$logLevel = "full"
)
# Init Log file
$Global:logFile = [string]""
$Global:filesCopied = [int] 0
$Global:filesSkipped = [int] 0

Function Write-Log {
  <#
    .SYNOPSIS
    Save output in log file
  #>
  param(
      [Parameter(Mandatory = $true)][string] $message,
      [Parameter(Mandatory = $false)]
      [ValidateSet("FULL","INFO","WARN","ERROR")]
      [string] $level = "INFO"
  )
  
  # Create timestamp
  $timestamp = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")

  if ($logLevel -eq 'warn') {
    $allowedLevels = @(
      'warn',
      'error'
    )
  }elseif ($loglevel -eq 'info') {
    $allowedLevels = @(
      'info',
      'warn',
      'error'
    )
  }elseif ($loglevel -eq 'full') {
    $allowedLevels = @(
      'full',
      'info',
      'warn',
      'error'
    )
  }
  # Output errors also to console
  if ($allowedLevels -contains $level) {
    # Append content to log file
    Add-Content -Path $Global:logFile -Value "$timestamp [$level] - $message"
  }

  # Output errors also to console
  if ($level -eq 'ERROR') {
    Write-host $message -ForegroundColor red
  }
}

Function Get-DocLibraries {
  <#
    .SYNOPSIS
    Get all document libraries from the SharePoint site, except excluded ones
  #>

  #Excluded libraries
  $ExcludedLists = @(
    "FormServerTemplates", 
    "Images",
    "Pages", 
    "PreservationHoldlibrary",
    "SiteAssets", 
    "SitePages", 
    "Style_x0020_library"
  )

  Get-PnPList -Includes RootFolder | Where-Object {$_.BaseType -eq "Documentlibrary" -and $_.EntityTypeName -notin $ExcludedLists -and $_.Hidden -eq $False}
}

Function Get-SPOFiles {
  <#
  .SYNOPSIS
    List all folders and files from the given library
  #>
  param(
    [Parameter(Mandatory = $true)] $List
  )
  process{
    Try {
      # Get all Items from the library - with progress bar
      $global:itemCounter = 0

      Get-PnPListItem -List $List -PageSize 1000 -Fields ID -ScriptBlock { 
        Param($items) 
        $global:itemCounter += $items.Count;

        # Create progress bar
        $getItemsProgress = @{
          Activity         = "Get items from $($List.Title)"
          Status           = "Progress->"
          PercentComplete  = ($global:itemCounter/$list.itemCount) * 100
          CurrentOperation = "$($items.Count) of $($list.itemCount)"
        }
        Write-Progress @getItemsProgress
      } 
       
      Write-Progress -Activity "Completed gettings items from library $($List.Title)" -Completed
    }Catch{
      Write-Log -Message "Error Downloading library $($List.Title) : $($_.Exception.Message)" -level ERROR
    }
  }
}

Function Copy-SPOFiles(){
  <#
  .SYNOPSIS
    Download all folders and files from the given library
  #>
  param(
    [Parameter(Mandatory = $true)] $ListItems,
    [Parameter(Mandatory = $true)] $List,
    [Parameter(Mandatory = $true)] $localFolder
  )
  process{
    Try {
      # Create a Local Folder for the Document library, if it doesn't exist
      $libraryFolder = $localFolder +"\" +$List.RootFolder.Name

      If (!(Test-Path -Path $libraryFolder)) {
        New-Item -ItemType Directory -Path $libraryFolder | Out-Null
      }

      # Get all Subfolders of the library
      $SubFolders = $ListItems | Where {$_.FileSystemObjectType -eq "Folder" -and $_.FieldValues.FileLeafRef -ne "Forms"}
      $SubFolders | ForEach-Object {
          # Create local path for the sub folder
          $LocalFolderPath = $localFolder + ($_.FieldValues.FileRef.Substring($Web.ServerRelativeUrl.Length)) -replace "/","\"
          
          # Create Local Folder, if it doesn't exist
          If (!(Test-Path -Path $LocalFolderPath)) {
                  New-Item -ItemType Directory -Path $LocalFolderPath | Out-Null
          }
          Write-Log -Message "Created subfolder $LocalFolderPath" -level FULL
      }

      # Get all Files from the folder
      $FilesColl =  $ListItems | Where {$_.FileSystemObjectType -eq "File"}
      $FileCounter = 0

      # Iterate through each file and download
      $FilesColl | ForEach-Object {

          # Frame the Parameters to download file
          $FileDownloadPath = ($localFolder + ($_.FieldValues.FileRef.Substring($Web.ServerRelativeUrl.Length)) -replace "/","\").Replace($_.FieldValues.FileLeafRef,'')
          
          $FileName = $_.FieldValues.FileLeafRef
          $SourceURL = $_.FieldValues.FileRef
          $FileModifiedDate = $_.FieldValues.Modified

          # Creating progressbar
          $FileCounter += 1;

          $downloadItemsProgress = @{
            Activity         = "Downloading items from $($List.Title)"
            Status           = "Progress->"
            PercentComplete  = ($FileCounter/$FilesColl.Count) * 100
            CurrentOperation = $FileName
          }
          Write-Progress @downloadItemsProgress

          #Check File Exists
          $FilePath = Join-Path -Path $FileDownloadPath -ChildPath $_.FieldValues.FileLeafRef

          If (-not(Test-Path -Path $FilePath -PathType Leaf)) {
            # Download the File
            Get-PnPFile -ServerRelativeUrl $SourceURL -Path $FileDownloadPath -FileName $FileName -AsFile -force
            Write-Log -Message "Downloaded $FileName from $SourceUrl " -level FULL
            $Global:filesCopied++
          }else{
            # Compare local and SPO file date
            if ($FileModifiedDate -gt ( Get-ChildItem -Path $FilePath | Select -ExpandProperty LastWriteTime)) {
              # SPO file is newer than local file, overwrite local file
              Get-PnPFile -ServerRelativeUrl $SourceURL -Path $FileDownloadPath -FileName $FileName -AsFile -force
              Write-Log -Message "Downloaded newer version of $FileName from $SourceUrl " -level FULL
              $Global:filesCopied++
            }else{
              Write-Log -Message "Skipped $FileName from $SourceUrl - Already exists" -level FULL
              $Global:filesSkipped++
            }
          }
      }
      Write-Progress -CurrentOperation "downloadItems" -Activity "Completed downloading items from library $($List.Title)" -Completed
    }
    Catch {
      Write-Log -Message "Error Downloading library $($List.Title) : $($_.Exception.Message)" -level ERROR
    }
  }
}

Function Get-NrOfDownloadedFiles() {
  <#
  .SYNOPSIS
    Download all folders and files from the given library
  #>
  param(
    [Parameter(Mandatory = $true)] $localFolder,
    [Parameter(Mandatory = $true)] $List
  )
  Process {
    $libraryFolder = $localFolder +"\" +$List.RootFolder.Name

    If (Test-Path -Path $libraryFolder) {
      (Get-ChildItem -Path $libraryFolder -File -Recurse).count
    }
  }
}

Function New-SPSiteArchiveFolder() {
  <#
  .SYNOPSIS
    Download all folders and files from the given library
  #>
  param(
    [Parameter(Mandatory = $true)] $title,
    [Parameter(Mandatory = $true)] $downloadPath
  )
  process {
    If (!(Test-Path -Path ($downloadPath +"\" +$title))) {
      New-Item -Path $downloadPath -Name $title -ItemType 'directory'
    }Else{
      $downloadPath +"\" +$title
    }
  }
}

# Connect to SharePoint Online
Connect-PnPOnline $SiteURL -Interactive
$Web = Get-PnPWeb
 
# Create Log file
$Global:logFile = $logFilePath + "\" + $Web.title + ".txt"
New-Item -Path $Global:logFile -Force | Out-Null

# Create folder for SharePoint site in Archive folder
$localFolder = New-SPSiteArchiveFolder -DownloadPath $downloadPath -title $web.title

# Get all the libraries
$documentLibraries = Get-DocLibraries
Write-Log -Message  "$(($documentLibraries).count) Document Libraries found" -level INFO

# Download all the files from each library if they contain items
ForEach($library in $documentLibraries)
{
  if ($library.itemCount -ne 0) {
    Write-Log -Message "Process document library : $($library.title)" -level INFO
    
    # Count nr of files in the doc library
    $SPOItems = Get-SPOFiles -List $library
    Write-Log -Message "$($SPOItems.count) files and folders found in $($library.title)" -level INFO
    
    # Download the files
    Copy-SPOFiles -List $library -ListItems $SPOItems -localFolder $localFolder

    # Count files in the local folder
    $CountLocalItems = Get-NrOfDownloadedFiles -List $library -localFolder $localFolder
    Write-Log -Message "$CountLocalItems files downloaded to the local folder" -level INFO
  }else{
    Write-Log -Message "Skipping document library : $($library.title) - No files found" -level WARN
  }
}

Write-Log -Message "---------------------------------------------" -level INFO
Write-Log -Message "Download completed" -level INFO
Write-Log -Message "---------------------------------------------" -level INFO
Write-Log -Message "Number of files copied $($Global:filesCopied)" -level INFO
Write-Log -Message "Number of files skipped $($Global:filesSkipped)" -level INFO
Write-Log -Message "---------------------------------------------" -level INFO

เก็บถาวร SharePoint ไปยัง Azure Blob

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

มีสี่ระดับให้เลือกเมื่อสร้างบัญชี Azure Storage ใหม่ ระดับพรีเมี่ยมค่อนข้างเหมือนกับ SharePoint Online เพียงแต่มีราคาน้อยกว่าที่เก็บข้อมูล SharePoint เพียงไม่กี่เซ็นต์ ($0.15 ต่อ Gb) ดังนั้นสำหรับการเก็บถาวร เรามีสามระดับให้เลือก:

Hot tierCool tierArchive tier
Availability99.9%99%Offline
Recommended data
retention period
None30 Days180 days
Access LatencyMillisecondsMillisecondsHours
Usage chargesHigher storage costs, but lower access and transaction costsLower storage costs, but higher access and transaction costsLowest storage costs, but highest access, and transaction costs
Price per Gb
(first 50TB)
$0.018 per GB$0.01 per GB$0.00099 per GB

ฉันคิดว่า Hot Tier และ Cool Tier เป็นตัวเลือกที่ดีที่สุดสำหรับการเก็บถาวร ระดับของไฟล์เก็บถาวรดูเหมาะสมกับฉันมากกว่าสำหรับวัตถุประสงค์ในการสำรองข้อมูล

การตั้งค่าบัญชี Azure Storage

ขั้นตอนแรกคือการตั้งค่าบัญชี Azure Storage คุณสามารถลงทะเบียนเพื่อรับบัญชีฟรีก่อน ซึ่งจะมอบทรัพยากร Azure มูลค่าสูงสุดถึง 200 ดอลลาร์ให้กับคุณ หลังจากนั้นคุณสามารถตัดสินใจได้ตลอดเวลาว่าต้องการดำเนินการต่อหรือไม่

  1. เปิดพอร์ทัล Azure แล้วคลิกหรือค้นหาบัญชีที่เก็บข้อมูล
  2. สร้างบัญชีที่เก็บข้อมูลใหม่
  3. เลือก การสมัครสมาชิก ที่คุณต้องการใช้
  4. สร้างกลุ่มทรัพยากรใหม่ ตั้งชื่อเป็นเอกสารเก่า
  5. ป้อนชื่อบัญชีการจัดเก็บที่ไม่ซ้ำกัน (ต้องไม่ซ้ำกันใน Azure!)
  6. เลือกภูมิภาค ที่จะจัดเก็บข้อมูล
  7. คลิก ถัดไป : ขั้นสูง

บนเพจขั้นสูง คุณสามารถเลือกระดับการเข้าถึงที่คุณต้องการใช้ คุณจะต้องเลื่อนลงไปที่พื้นที่เก็บข้อมูล Blob เล็กน้อย ตามค่าเริ่มต้น ระดับยอดนิยมจะถูกเลือก:

เป็นความคิดที่ดีที่จะตรวจสอบแท็บการปกป้องข้อมูล ที่นี่คุณสามารถกำหนดค่าระยะเวลาที่คุณต้องการเก็บไฟล์และคอนเทนเนอร์ใน Azure หลังจากถูกลบแล้ว

เมื่อเสร็จแล้ว คลิกแท็บ ตรวจสอบ หากไม่มีข้อผิดพลาด คลิก สร้าง

สร้างการแชร์ไฟล์

เราจะต้องสามารถเข้าถึงไฟล์จากภายในสคริปต์ PowerShell ของเราได้ ในการทำเช่นนี้ เราจะสร้างการแชร์ไฟล์ใหม่ สิ่งนี้ช่วยให้เราสามารถเปิดและติดตั้งที่เก็บข้อมูล Azure blob ใน explorer ของเรา และใช้เป็นเส้นทางการดาวน์โหลดสำหรับสคริปต์ของเรา

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

การเชื่อมต่อการแชร์ไฟล์ใน Windows

หลังจากที่คุณสร้างการแชร์ไฟล์แล้ว ให้เปิดแล้วคลิก เชื่อมต่อ ที่นี่เราสามารถเลือกอักษรระบุไดรฟ์ที่เราต้องการใช้และวิธีการตรวจสอบสิทธิ์ ตามค่าเริ่มต้น บัญชีที่เก็บข้อมูลจะถูกใช้

หลังจากที่คุณเลือกอักษรระบุไดรฟ์แล้วให้คลิกที่แสดงสคริปต์ สิ่งนี้จะให้สคริปต์ PowerShell แก่คุณที่คุณสามารถเรียกใช้เพื่อเมานต์การแชร์ไฟล์ Azure ใน Explorer ของคุณ:

การเก็บถาวร SharePoint ไปยัง Azure Blob

เมื่อสร้างและติดตั้งที่เก็บข้อมูล Azure Blob แล้ว ตอนนี้เราสามารถใช้สคริปต์ PowerShell จากจุดเริ่มต้นของบทความนี้ เพื่อย้ายไฟล์จาก SharePoint ไปยัง Azure โปรดทราบว่าวิธีนี้จะดาวน์โหลดและอัปโหลดไฟล์ทั้งหมดผ่านการเชื่อมต่ออินเทอร์เน็ตของคุณ

.\Copy-SpSiteToNAS.ps1 -siteUrl https://lazydev.sharepoint.com/sites/lab28 -downloadPath a:\

สคริปต์ใช้เวลาพอสมควร แต่ในที่สุดไฟล์ทั้งหมดก็จะถูกอัปโหลดไปยังที่เก็บข้อมูล Azure Blob หลังจากที่คุณได้ตรวจสอบแล้วว่าไฟล์ทั้งหมดถูกคัดลอกแล้ว คุณสามารถลบข้อมูลจาก SharePoint ได้

บันทึก

ฉันคิดว่ามันควรจะเป็นไปได้ที่จะเรียกใช้สคริปต์ PowerShell ภายใน Azure Runbook แต่นั่นคือสิ่งที่ฉันจะออกกำลังกายในภายหลัง

โซลูชันการสำรองข้อมูลของบุคคลที่สาม

การใช้โซลูชันการสำรองข้อมูลของบริษัทอื่นเป็นวิธีหนึ่งในการเก็บถาวร SharePoint ผู้ให้บริการสำรองข้อมูลจำนวนมากมาพร้อมกับการเก็บรักษาแบบไม่จำกัดและบางรายยังมีพื้นที่เก็บข้อมูลไม่จำกัดอีกด้วย ดังนั้นบางครั้งอาจเป็นวิธีแก้ปัญหาที่ได้ผล ทั้งนี้ขึ้นอยู่กับปริมาณข้อมูลและจำนวนผู้ใช้

การใช้โซลูชันการสำรองข้อมูลของบริษัทอื่นสำหรับการเก็บถาวรมาพร้อมกับข้อได้เปรียบอีกประการหนึ่ง คุณยังมีโซลูชันการสำรองข้อมูลที่ใช้งานได้สำหรับข้อมูล Microsoft 365 ของคุณอีกด้วย SharePoint จะเก็บข้อมูลของคุณไว้เพียง 93 วัน หลังจากนั้นคุณจะไม่สามารถกู้คืนได้อีกต่อไป

แต่ก็มีข้อเสียเช่นกัน หากคุณลบข้อมูลออกจาก SharePoint ซึ่งมีจุดประสงค์ในการจัดเก็บถาวร การเปลี่ยนจากผู้ให้บริการสำรองข้อมูลจะเป็นงานที่น่ากลัว หมายความว่าคุณจะต้องกู้คืนข้อมูลที่เก็บไว้ทั้งหมดจากผู้ให้บริการสำรองข้อมูล จากนั้นจึงเก็บถาวร/สำรองข้อมูลอีกครั้งไปยังผู้ให้บริการรายอื่น

นี่คือสิ่งที่คุณต้องจำไว้จริงๆ ตอนนี้คุณอาจคิดว่าคุณจะไม่เปลี่ยนในเร็วๆ นี้ แต่ถ้าผู้ให้บริการขึ้นราคา โซลูชันอาจมีราคาแพงกว่าการซื้อที่เก็บข้อมูล SharePoint เพิ่มเติม

ไมโครซอฟต์ ซินเท็กซ์

ในระหว่างงาน Microsoft Ignite ในเดือนตุลาคม 2022 Microsoft ประกาศว่าจะเปิดตัวการเก็บถาวร Syntex สำหรับ SharePoint และ Microsoft Teams Syntex Archiving จะเพิ่มพื้นที่จัดเก็บข้อมูลแบบแบ่งชั้นให้กับ SharePoint และช่วยให้เราย้ายเนื้อหาที่มีความสำคัญน้อยกว่า (หรือเนื้อหาเก่า) ไปยังพื้นที่จัดเก็บข้อมูลที่มีต้นทุนต่ำกว่า

บันทึก

Microsoft ได้เปิดตัว Microsoft 365 Archive ซึ่งเป็นส่วนหนึ่งของ Syntex คุณสามารถอ่านเพิ่มเติมเกี่ยวกับฟีเจอร์ใหม่นี้ได้ในบทความนี้

Microsoft Syntex ไม่เพียงนำเสนอคุณสมบัติการเก็บถาวรเท่านั้น แต่ยังช่วยให้คุณปรับปรุงเนื้อหา ทำความเข้าใจและจัดโครงสร้างข้อมูลของคุณ และลดความซับซ้อนของขั้นตอนการทำงาน คุณสามารถอ่านเพิ่มเติมเกี่ยวกับ Syntex ได้ในบทความนี้จาก Microsoft

ในขณะนี้ Syntex มีค่าใช้จ่าย 5 ดอลลาร์ต่อผู้ใช้ต่อเดือน ฉันไม่คิดว่าราคานี้รวมพื้นที่เก็บข้อมูลแล้ว ดังนั้นนั่นอาจเป็นค่าใช้จ่ายเพิ่มเติมเช่นกัน ซึ่งคล้ายกับระดับ Azure Storage

ตอนนี้ $5 ต่อผู้ใช้อาจดูแพงสักหน่อย แต่ถ้าคุณได้อ่านบทความนี้แล้ว คุณจะเห็นว่ามาพร้อมกับฟีเจอร์การสำรองและกู้คืนในปลายปีนี้ ซึ่งหมายความว่าคุณไม่จำเป็นต้องใช้โซลูชันการสำรองข้อมูลของบุคคลที่สามอีกต่อไป

ห่อขึ้น

การเก็บถาวร SharePoint เป็นสิ่งที่เราทุกคนต้องทำไม่ช้าก็เร็ว เมื่อข้อมูลของเราเติบโตขึ้น การจัดการก็จะยากขึ้นและต้นทุนการจัดเก็บก็จะเพิ่มขึ้นเท่านั้น ฉันชอบเก็บถาวร SharePoint ไปยัง Azure Blob เพราะด้วยวิธีนี้ คุณจะยังคงมีข้อมูลทั้งหมดของคุณอยู่ในระบบคลาวด์ และไม่เป็นภาระในการปกป้องข้อมูลที่จัดเก็บไว้ในเครื่อง

Microsoft Syntex อาจกลายเป็นตัวเลือกที่น่าสนใจมากสำหรับการเก็บถาวรและสำรองข้อมูล ตรวจสอบให้แน่ใจว่าคุณสมัครรับจดหมายข่าวด้านล่างเพื่อรับทราบข้อมูลล่าสุด

ฉันหวังว่าบทความนี้จะช่วยคุณในการเก็บถาวร SharePoint หากคุณมีคำถามใด ๆ เพียงแค่แสดงความคิดเห็นด้านล่าง

บทความที่เกี่ยวข้อง