日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

HDFS快照(Snapshots)介紹

HDFS快照(Snapshots)是文件系統在某一時刻的只讀副本。快照可以在文件系統的一個分支或者整個文件系統上生成。快照常用來備份數據,防止錯誤性的操作。本文為您介紹HDFS快照的目錄、路徑以及相關的快照操作。

背景信息

HDFS快照的特征如下:

  • 快照的創建是瞬時的:時間復雜度為O(1),不包括INode查找時間。

  • 僅當修改快照相關的數據時才會使用額外的內存:內存使用復雜度為O(M),其中M是修改的文件或目錄的數量。

  • DataNode中的數據塊不會被復制:快照文件僅記錄塊列表和文件大小,不涉及數據復制。

  • 快照不會對常規的HDFS操作造成不利影響:修改操作按照時間倒序記錄,以便可以直接訪問當前最新的數據。快照數據是通過當前數據減去修改的部分計算得到的。

快照目錄

當目錄被設置為允許快照時才會生成快照。一個快照目錄可以同時容納65536個快照。快照目錄的數量是沒有限制的。管理員可以將任何目錄設置為快照。如果一個目錄中有快照,則在刪除所有快照之前,既不能刪除也不能重命名該目錄。

不允許級聯的快照目錄。如果一個目錄的父目錄或者子目錄是快照目錄,則不能將該目錄設置為快照。

快照路徑

對于一個快照目錄,訪問時需要添加/.snapshot后綴。例如,如果/foo是一個快照目錄,/foo/bar/foo下的文件或者目錄,/foo有一個快照s0,則/foo/.snapshot/s0/bar/foo/bar的快照副本。常用的API和CLI可以通過在.snapshot目錄下完成,操作快照的命令示例如下:

  • 列出快照目錄下的所有快照

    hdfs dfs -ls /foo/.snapshot
  • 列出快照s0中的所有文件

    hdfs dfs -ls /foo/.snapshot/s0
  • 從快照s0中復制文件

    hdfs dfs -cp -ptopax /foo/.snapshot/s0/bar /tmp
    說明

    該示例使用-ptopax參數來保留時間戳、所有權、權限、ACL和XAttrs。

快照操作

  • 管理員操作

    說明

    以下管理員操作需要超級用戶權限。

    • 允許快照

      允許創建目錄的快照。如果操作成功完成,該目錄將變為可快照目錄。

      hdfs dfsadmin -allowSnapshot <path>
    • 禁止快照

      禁止創建目錄的快照。在禁止快照之前,必須刪除該目錄的所有快照。

      hdfs dfsadmin -disallowSnapshot <path>
  • 用戶操作

    說明

    HDFS超級用戶可以執行以下所有操作。

    • 創建快照

      創建目錄的快照。該操作需要快照目錄的所有者權限。

      hdfs dfs -createSnapshot <path> [snapshotName]
      說明

      本文代碼示例中的[snapshotName]表示快照名稱,是一個可選參數。當其省略時,默認的名稱是使用時間戳syyyyMMdd-HHmmss.SSSS的格式表示,例如,s20130412-151029.033。

    • 刪除快照

      從快照目錄中刪除快照。該操作需要快照目錄的所有者權限。

      hdfs dfs -deleteSnapshot <path> <snapshotName>
    • 重命名快照

      重命名一個快照。該操作需要快照目錄的所有者權限。

      hdfs dfs -renameSnapshot <path> <oldName> <newName>
      說明

      本文代碼示例中的<oldName>表示原快照名稱,<newName>表示新快照名稱。

    • 獲取快照目錄列表

      獲取當前用戶擁有快照權限的所有快照目錄。

      hdfs lsSnapshottableDir
    • 獲取快照區別報告

      獲取兩個快照之間的區別。該操作需要快照內所有文件或目錄的讀權限。

      hdfs snapshotDiff <path> <fromSnapshot> <toSnapshot>
      說明

      本文代碼示例中的<fromSnapshot>表示原快照,<toSnapshot>表示待對比的快照。