Metadaten beibehalten

In diesem Dokument werden Metadaten beschrieben, die bei der Verwendung von Storage Transfer Service nutzen, um Daten zwischen verschiedenen Quellen und Zielen zu übertragen.

Übersicht

Storage Transfer Service behält die folgenden Metadaten bei:

  • Von Nutzern erstellte benutzerdefinierte Metadaten für von Cloud Storage, Amazon S3 oder anderen Microsoft Azure Blob Storage bleibt erhalten.

  • Bei Übertragungen zwischen Cloud Storage-Buckets können Objekt-ACLs, vom Kunden verwaltete Verschlüsselungsschlüssel, Speicherklasse, Objekt Erstellungszeit (als Wert eines customTime-Felds) und temporäre Holds.

  • Bei Übertragungen von einer beliebigen Quelle in einen Cloud Storage-Bucket im Ziel-Bucket auf eine beliebige unterstützte Klasse festgelegt werden: Teil der Übertragung ist.

  • Dateigröße und Zeitpunkt der letzten Änderung (mtime) werden beibehalten für Übertragungen von POSIX-Dateisystemen. mtime ist nicht für Ordner beibehalten werden.

  • Optional können Symlinks, numerische UID, numerische GID und numerischer MODUS für die Übertragung zu und von POSIX-Dateisystemen aufbewahrt.

  • Nur bei Übertragungen zwischen Dateisystemen, wenn UID, GID oder MODE beibehalten werden: dass die Metadaten auch für Ordner beibehalten werden. Cloud Storage-Neuerstellungen im Zieldateisystem an und stellt UID, GID und/oder MODE wieder her. Dazu gehören auch leere Ordner. mtime wird nicht beibehalten.

    Metadaten auf Ordnerebene werden nicht beibehalten, wenn die Übertragung Manifest herunter.

Metadatenfelder, die in diesem Dokument nicht explizit erwähnt werden, werden nicht beibehalten.

Verhalten bei der Metadatenaufbewahrung

In den folgenden Abschnitten werden Metadatenbeispiele aus verschiedenen Quellen aufgeführt Speichersysteme und wie Storage Transfer Service Metadaten der einzelnen Elemente. Eine vollständige Liste der Metadaten finden Sie in der Dokumentation des Quellspeichersystems.

Amazon S3- oder S3-kompatibler Speicher zu Cloud Storage

Beispiel für Metadaten Aufbewahrungsverhalten
Metadatenschlüsselfelder von Amazon S3 mit einem Schlüssel, wie Cache-Control, Content-Disposition und Content-Type. Wird als Metadaten mit festem Schlüssel beibehalten.
Benutzerdefinierte Amazon S3-Metadaten, formatiert als Schlüssel/Wert-Paare. Weitere Informationen finden Sie im Abschnitt Benutzerdefinierte Objektmetadaten von Objektschlüssel und Metadaten.

Wird als benutzerdefiniertes Metadatenfeld in Cloud Storage-Zielobjekten beibehalten, das Sie später bearbeiten oder entfernen können.

ETag Wird als benutzerdefiniertes Metadatenfeld mit dem Schlüssel x-goog-source-etag beibehalten, das Sie später bearbeiten oder entfernen können.
Objektgröße. Beibehalten als size.
Zugriffssteuerungslisten (ACLs) für Amazon S3. Eine vollständige Liste finden Sie im Abschnitt für Bedingungsschlüssel unter Access Control List (ACL) – Übersicht. Nicht beibehalten.
Amazon S3-Objekt-Tags, die Sie als Schlüssel/Wert-Paare definieren. Weitere Informationen finden Sie unter Objekt-Tags. Nicht beibehalten.
Vom System definierte Amazon S3-Metadaten, mit Ausnahme von ETag und Objektgröße. Eine vollständige Liste finden Sie im Abschnitt Systemdefinierte Objektmetadaten von Objektschlüssel und Metadaten.

Nicht beibehalten.

Zeitstempelmetadaten aus der Quelle werden nicht beibehalten. Die Erstellungszeit timeCreated gibt die Zeit an, zu der ein Objekt in Cloud Storage erstellt wurde. Entsprechend gibt updated die Zeit an, zu der Metadaten für ein Objekt in Cloud Storage geändert wurden.

Speicherklasse

Es gibt mehrere Möglichkeiten, die Speicherklasse während eines übertragen werden.

  • Legen Sie die Speicherklasse jedes Objekts auf die des Ziels fest Bucket. Das ist das Standardverhalten.
  • Legen Sie für alle zu übertragenden Objekte eine bestimmte Speicherklasse fest.

Weitere Informationen finden Sie in der Referenzdokumentation zu metadataOptions.

Microsoft Azure Storage zu Cloud Storage

Beispiel für Metadaten Aufbewahrungsverhalten
Feste Metadatenfelder von Microsoft Azure Storage, z. B. Cache-Control, Content-Disposition und Content-Type. Wird als Metadaten mit festem Schlüssel beibehalten.
Benutzerdefinierte Microsoft Azure Storage-Metadaten, formatiert als Schlüssel/Wert-Paare. Weitere Informationen finden Sie unter Einstellungen und Abrufen von Attributen und Metadaten für Blob-Dienstressourcen.

Wird als benutzerdefiniertes Metadatenfeld in Cloud Storage-Zielobjekten beibehalten, das Sie später bearbeiten oder entfernen können.

ETag Wird als benutzerdefiniertes Metadatenfeld mit dem Schlüssel x-goog-source-etag beibehalten, das Sie später bearbeiten oder entfernen können.
Objektgröße. Beibehalten als size.
POSIX-Dateisystemberechtigungen, die von Azure Data Lake Storage (ADLS) Gen 2 unterstützt werden. Nicht beibehalten.
Microsoft Azure Storage-Zugriffssteuerung, insbesondere x-ms-blob-public-access. Weitere Informationen finden Sie im Abschnitt Antwortheader von Container-ACL abrufen. Nicht beibehalten.
Microsoft Azure Storage-Index-Tags. Weitere Informationen finden Sie unter Azure-Blob-Daten mit Blob-Index-Tags verwalten und finden. Nicht beibehalten.
Microsoft Azure Storage-Zeitstempelmetadaten wie Last-Modified, x-ms-creation-time, x-ms-version, x-ms-request-server-encrypted und x-ms-encryption-scope. Weitere Informationen finden Sie unter Blob-Metadaten festlegen.

Nicht beibehalten.

Zeitstempelmetadaten aus der Quelle werden nicht beibehalten. Die Erstellungszeit timeCreated gibt die Zeit an, zu der ein Objekt in Cloud Storage erstellt wurde. Entsprechend gibt updated die Zeit an, zu der Metadaten für ein Objekt in Cloud Storage geändert wurden.

Speicherklasse

Es gibt mehrere Möglichkeiten, die Speicherklasse während eines übertragen werden.

  • Legen Sie die Speicherklasse jedes Objekts auf die des Ziels fest Bucket. Das ist das Standardverhalten.
  • Legen Sie für alle zu übertragenden Objekte eine bestimmte Speicherklasse fest.

Weitere Informationen finden Sie in der Referenzdokumentation zu metadataOptions.

Übertragungen zwischen Cloud Storage-Buckets

Beispiel für Metadaten Aufbewahrungsverhalten

Cloud Storage-Metadatenfelder mit festem Schlüssel, z. B. Cache-Control, Content-Disposition und Content-Type.

Weitere Informationen finden Sie unter Objektmetadaten.

Wird als Metadaten mit festem Schlüssel beibehalten.

Benutzerdefinierte Cloud Storage-Metadaten, die als Schlüssel/Wert-Paare formatiert sind. Weitere Informationen finden Sie unter Benutzerdefinierte Metadaten.

Wird als benutzerdefiniertes Metadatenfeld in Cloud Storage-Zielobjekten beibehalten, das Sie später bearbeiten oder entfernen können.

Objektgröße Beibehalten als size.
Objektgenerierung Wird als benutzerdefiniertes Metadatenfeld mit dem Schlüssel beibehalten x-goog-reserved-source-generation, die Sie später bearbeiten können oder entfernen.
Objekt-Holds

Terminbasierte Holds werden nicht beibehalten. Wenn im Ziel-Bucket standardmäßig ereignisbasiert Hold-Eigenschaft aktiviert ist, wird ein ereignisbasierter Hold angewendet auf übertragene Objekte.

Temporäre Holds werden standardmäßig beibehalten. So verwerfen Sie temporäre für die Übertragung fest, legen Sie das Feld temporaryHold die metadataOptions für TEMPORARY_HOLD_SKIP fest.

Zugriffssteuerungslisten (ACLs)

ACLs können optional beibehalten werden. Weitere Informationen finden Sie in der <ph type="x-smartling-placeholder"></ph> metadataOptions finden Sie weitere Informationen.

Achten Sie beim Beibehalten von ACLs darauf, zu vermeiden, nicht zugängliche Objekte zu erstellen.

Weitere Informationen finden Sie in der Cloud Storage- Zugriffssteuerungslisten Dokumentation.

Speicherklasse

Es gibt mehrere Möglichkeiten, die Speicherklasse während eines übertragen werden.

  • Legen Sie die Speicherklasse jedes Objekts auf die des Ziels fest Bucket. Das ist das Standardverhalten.
  • Behalten Sie die Speicherklasse des Quellobjekts bei.
  • Legen Sie für alle zu übertragenden Objekte eine bestimmte Speicherklasse fest.

Weitere Informationen finden Sie in der Referenzdokumentation zu metadataOptions.

Vom Kunden verwalteter Verschlüsselungsschlüssel

Wenn ein vom Kunden verwalteter Verschlüsselungsschlüssel (CMEK) für ein Objekt verwendet wird, kann das Objekt optional denselben Schlüssel verwenden, wenn es in den Ziel-Bucket geschrieben wird.

Das Objekt wird standardmäßig in den Ziel-Bucket geschrieben. mit der Verschlüsselungsmethode des Buckets.

Beachten Sie Folgendes, wenn Sie den ursprünglichen CMEK beibehalten Einschränkungen:

Weitere Informationen finden Sie in der Referenzdokumentation zu metadataOptions.

Zeitstempelmetadaten

timeCreated kann optional beibehalten werden. Die beibehaltene Der Wert wird im Feld customTime der übertragenen Datei gespeichert. in Cloud Storage erstellen. Weitere Informationen finden Sie in der <ph type="x-smartling-placeholder"></ph> metadataOptions finden Sie weitere Informationen.

updated-Metadaten werden nicht beibehalten.

Andere nicht bearbeitbare Metadaten in Cloud Storage, z. B. etag und componentCount. Nicht beibehalten.

Eine Liste der Metadaten in Cloud Storage finden Sie unter Objekte.

URL-Listenübertragung an Cloud Storage

Weitere Informationen zu URL-Listen finden Sie unter URL-Liste erstellen.

Beispiel für Metadaten Aufbewahrungsverhalten
Felder für Metadaten mit festem Schlüssel wie Cache-Control, Content-Disposition und Content-Type. Als bearbeitbare Metadaten beibehalten.
Content-Length und MD5

Als nicht bearbeitbare Metadaten beibehalten.

Wenn die Quelle keinen MD5-Hashwert bereitstellt, behalten wir einen Wert nicht bei.

Dieses Aufbewahrungsverhalten gilt nur für Content-Length und MD5. Alle anderen nicht bearbeitbaren Metadaten, die nicht aufgeführt sind, bleiben nicht erhalten.

Zeitstempelmetadaten, z. B. Erstellungszeitpunkt, Änderungszeit und andere quellenspezifische Metadaten.

Nicht beibehalten.

Zeitstempelmetadaten aus der Quelle werden nicht beibehalten. Die Erstellungszeit timeCreated gibt die Zeit an, zu der ein Objekt in Cloud Storage erstellt wurde. Entsprechend gibt updated die Zeit an, zu der Metadaten für ein Objekt in Cloud Storage geändert wurden.

Speicherklasse

Es gibt mehrere Möglichkeiten, die Speicherklasse während eines übertragen werden.

  • Legen Sie die Speicherklasse jedes Objekts auf die des Ziels fest Bucket. Das ist das Standardverhalten.
  • Legen Sie für alle zu übertragenden Objekte eine bestimmte Speicherklasse fest.

Weitere Informationen finden Sie in der Referenzdokumentation zu metadataOptions.

POSIX-Dateisystemübertragungen

Wenn Sie Dateien aus POSIX-Dateisystemen übertragen, kann Storage Transfer Service optional bestimmte Attribute als benutzerdefinierte Metadaten beibehalten. Wenn diese Dateien später in ein Dateisystem zurückgeschrieben werden, kann Storage Transfer Service die beibehaltenen Metadaten zurück in POSIX-Attribute umwandeln.

Beispiel für Metadaten Aufbewahrungsverhalten
Zeitpunkt der Änderung (mtime)

Beibehalten.

mtime wird als benutzerdefinierte Metadaten mit dem Schlüssel beibehalten goog-reserved-file-mtime.

Dateigröße

Beibehalten.

Die Dateigröße wird als size beibehalten.

Numerische UID
Numerische GID
Numerischer MODUS
Symbolische Links

Optional.

Das Beibehaltungsverhalten wird mit den metadataOptions-Objekt. Weitere Informationen finden Sie unter Optionale POSIX-Metadaten beibehalten für Details.

Standardmäßig werden Metadaten nicht beibehalten.

Ordnermetadaten Metadaten auf Ordnerebene werden nur für Übertragungen zwischen Dateien beibehalten. Systeme. Die UID-, GID- und MODE-Beibehaltungseinstellungen der Übertragung gelten für diese Übertragungen in Dateien und Ordner.

mtime wird für Ordner nicht beibehalten. mtime ist auf die Erstellungszeit des Ordners im Zieldateisystem festgelegt.

Ordnermetadaten werden nicht beibehalten für Manifestübertragungen.

Speicherklasse

Es gibt mehrere Möglichkeiten, die Speicherklasse während eines übertragen werden.

  • Legen Sie die Speicherklasse jedes Objekts auf die des Ziels fest Bucket. Das ist das Standardverhalten.
  • Legen Sie für alle zu übertragenden Objekte eine bestimmte Speicherklasse fest.

Weitere Informationen finden Sie in der Referenzdokumentation zu metadataOptions.

Optionale POSIX-Metadaten beibehalten

Wenn Sie eine oder mehrere numerische UID, numerische GID, numerischen MODE und symbolische Links beibehalten möchten, geben Sie ein metadataOptions-Objekt im Text Ihres Übertragungsjobs an.

Diese Optionen gelten sowohl für POSIX-zu-Cloud Storage-Übertragungen als auch Cloud Storage-zu-POSIX-Übertragungen. Für Letzteres müssen die Metadaten beibehalten wurden, als die Dateien zum ersten Mal in Cloud Storage übertragen wurden.

{
  "description": "metadata-example",
  "projectId": "example-project-id"
  "transferSpec": {
    ...
    "transferOptions": {
      "metadataOptions": {
        "gid":     "GID_NUMBER",       # Default is "GID_SKIP"
        "uid":     "UID_NUMBER",       # Default is "UID_SKIP"
        "mode":    "MODE_PRESERVE",    # Default is "MODE_SKIP"
        "symlink": "SYMLINK_PRESERVE"  # Default is "SYMLINK_SKIP"
      }
    }
  }
}

POSIX zu Cloud Storage

Beibehaltene Metadaten werden als benutzerdefinierte Metadaten in Cloud Storage gespeichert Schlüssel/Wert-Paare.

  • Numerische GID wird als goog-reserved-posix-gid gespeichert.
  • Numerische UID wird als goog-reserved-posix-uid gespeichert.
  • Numerischer MODE wird als goog-reserved-posix-mode gespeichert.

Bei symbolischen Links behält Storage Transfer Service den Ziellink als Objekt in Cloud Storage mit den folgenden Eigenschaften:

  • Der Objektschlüssel besteht aus dem Zielpräfix und dem Pfad zum Symlink. relativ zu root_directory.
  • Objektmetadaten:
    • Alle Symlink-Metadaten werden als Cloud Storage-Objektmetadaten beibehalten.
    • Ein benutzerdefinierter Metadateneintrag wird erstellt: goog-reserved-file-is-symlink:true.
  • Der Objektinhalt ist das Ziel des Symlinks. Beispiel: Für einen Symlink sym-> dir1/target lautet der Inhalt des Objekts „dir1/target“.

Storage Transfer Service validiert den Link nicht und kopiert nicht die Zieldatei.

Cloud Storage zu POSIX

Wenn Metadaten bei der Übertragung von Dateien in Cloud Storage beibehalten werden, können diese Metadaten bei der Übertragung zurück in ein POSIX-Dateisystem zurück in die Dateien geschrieben werden.

Wenn eine Metadatenoption zum Beibehalten eingestellt wurde, führt Storage Transfer Service die folgenden Aktionen aus:

  • Symbolische Links: Storage Transfer Service erstellt eine Symlink-Datei, die auf den Ziellink verweist. Wenn die Zieldatei nicht vorhanden ist, ist der Symlink fehlerhaft.
  • GID, UID und MODE: die in Cloud Storage-Metadaten gespeicherten Werte werden in die Datei zurückgeschrieben.

POSIX nach POSIX

Bei Übertragungen zwischen Dateisystemen können GID, UID und MODE optional für Dateien und Ordner.

Der Zeitpunkt der letzten Änderung wird für Dateien gespeichert, nicht aber für Ordner. mtime ist auf die Erstellungszeit des Ordners im Zieldateisystem festgelegt.

Storage Transfer Service speichert Ordnermetadaten, indem 0-Byte-Ordnerobjekte in in den Zwischen-Bucket. Kopieren Sie diese Metadaten dann zurück in den Ordner auf dem Zieldateisystem. Aus diesem Grund ist die Anzahl der in der Der Zwischen-Bucket ist möglicherweise größer als die Anzahl der Dateien, die gerade verarbeitet werden übertragen werden.