Informationen zu den NAS-Datenanforderungen für den ONTAP S3-Clientzugriff
Es ist wichtig zu verstehen, dass es bei der Zuordnung von NAS-Dateien und -Verzeichnissen für den S3-Zugriff zu gewissen Inkompatibilitäten kommen kann. Es kann erforderlich sein, die NAS-Dateihierarchien anzupassen, bevor sie mit S3 NAS-Buckets bereitgestellt werden.
Ein S3 NAS-Bucket bietet S3-Zugriff auf ein NAS-Verzeichnis, indem dieses Verzeichnis mithilfe der S3-Bucket-Syntax abgebildet wird, und die Dateien im Verzeichnisbaum werden als Objekte betrachtet. Die Objektnamen sind die durch Schrägstriche getrennten Pfadnamen der Dateien relativ zu dem in der S3-Bucket-Konfiguration angegebenen Verzeichnis.
Diese Zuordnung bringt einige Anforderungen mit sich, wenn Dateien und Verzeichnisse über S3 NAS Buckets bereitgestellt werden:
-
S3-Namen sind auf 1024 Bytes begrenzt, daher sind Dateien mit längeren Pfadnamen über S3 nicht zugänglich.
-
Datei- und Verzeichnisnamen sind auf 255 Zeichen beschränkt, daher darf ein Objektname nicht mehr als 255 aufeinanderfolgende Nicht-Schrägstrich-Zeichen („/“) enthalten.
-
Ein SMB-Pfadname, der durch Backslash-Zeichen ('\') begrenzt ist, erscheint in s3 stattdessen als Objektname, der Forward-Slash-Zeichen ('/') enthält.
-
Manche Paare gültiger S3-Objektnamen können nicht gleichzeitig im zugeordneten NAS-Verzeichnisbaum existieren. Beispielsweise entsprechen die gültigen S3-Objektnamen „part1/part2“ und „part1/part2/part3“ Dateien, die nicht gleichzeitig im NAS-Verzeichnisbaum existieren können, da „part1/part2“ im ersten Namen eine Datei und im anderen ein Verzeichnis ist.
-
Wenn "part1/part2" eine vorhandene Datei ist, schlägt eine S3-Erstellung von "part1/part2/part3" fehl.
-
Falls "part1/part2/part3" eine vorhandene Datei ist, schlägt eine S3-Erstellung oder -Entfernung von "part1/part2" fehl.
-
Die Erstellung eines S3-Objekts, dessen Name mit dem eines bestehenden Objekts übereinstimmt, ersetzt dieses (in nicht versionierten Buckets); das gilt auch für NAS, erfordert jedoch eine exakte Übereinstimmung. Die obigen Beispiele führen nicht zur Entfernung des bestehenden Objekts, da die Namen zwar kollidieren, aber nicht übereinstimmen.
-
Ein Objektspeicher ist zwar darauf ausgelegt, eine sehr große Anzahl beliebiger Namen zu unterstützen, doch kann es bei einer NAS-Verzeichnisstruktur zu Leistungsproblemen kommen, wenn sehr viele Namen in einem Verzeichnis abgelegt werden. Insbesondere Namen ohne Schrägstrich (‘/’) werden alle im Stammverzeichnis des NAS-Mappings abgelegt. Anwendungen, die häufig Namen verwenden, die nicht „NAS-freundlich“ sind, wären besser in einem tatsächlichen Objektspeicher-Bucket als in einem NAS-Mapping aufgehoben.