Zum Inhalt

Überblick

Coscine bietet eine Vielzahl verschiedener Speichersysteme für Ressourcen an. Objektspeicher-basierte Systeme wie der S3-Speicher speichern alle Daten in sogenannten Buckets. Zur eindeutigen Identifikation von Daten sind der Bucketname, der Objektschlüssel (Bezeichnung des Objekts) sowie der Endpunkt des Webservices nötig.

Zugriffsrechte

Der Zugriff auf Daten in einem S3-Bucket ist an Zugriffsrechte gebunden. Um auf Buckets im S3-Speicher zugreifen zu können, müssen sogenannte Access Keys verwendet werden, welche entweder mit Lese- oder Schreibrechten verknüpft sein können. Sie befinden sich auf der jeweiligen Ressourcenseite: Rufen Sie dafür die gewünschte S3-Ressource auf und klicken Sie auf die graue Schaltfläche mit dem Listensymbol. Sie befindet sich neben dem Ressourcennamen. Die Access Keys sehen nur Projektmitglieder mit den Rollen Owner oder Member, da sie über Schreibzugriff verfügen. Guests, die nur Lesezugriff haben, sehen sie nicht.

Interaktionswege mit S3-Ressourcen

Sowohl durch die Nutzung der Weboberfläche, als auch über Requests durch die REST-API kann mit S3-Ressourcen interagiert werden. Auf beide Arten können Buckets und Objekte erstellt oder gelöscht werden.

Sind Access-Keys und Bucket-ID bekannt, so können S3-Libraries wie boto3 oder die im Nachfolgenden vorgestellten S3-Anwendungen zur direkten Interaktion mit den Daten benutzt werden.

Gründe für die Wahl von S3-Ressourcen

Die Nutzung von S3-Ressourcen empfiehlt sich, wenn große Datenvolumen vorliegen oder erwartet werden, oder wenn die Dokumentation der Daten, eine Trennung von Daten und Metadaten vorsieht. Anders als bei der Web-Ressource werden die Metadaten aber nicht pro Datei in der Weboberfläche eingegeben, sondern können auch in externen Files gesammelt vorliegen.

Speicherplatz für S3-Ressourcen erhalten

Da Coscine sich an den FAIR Prinzipien orientiert, muss gewährleistet werden, dass Daten durch eine adequate Dokumentation mit Metadaten beschrieben werden. Da mit den S3-Buckets ohne Interaktion mit Coscine kommuniziert werden kann, muss bevor S3-Speicherplatz zur Verfügung gestellt werden kann, in Speicherplatzanträge das Forschungsdatenmangement beschrieben werden. Dazu gehören u.A. die Angabe von verwendeten Metadatenprofilen und die Auskunft wie die Metadaten erhalten und abgespeichert werden. Weitere Informationen gibt es in der Coscine Doku unter dem Stichwort Speicherplatz.

Verwendung von S3-Clients

S3-Clients ermöglichen eine direkte Verbindung zum S3-Speicher. Sie agieren völlig unabhängig von Coscine und bieten daher selbst bei Ausfall der Coscine-Weboberfläche Zugang zu Ihren Daten. Über S3-Clients können Dateien hoch- oder heruntergeladen, aber auch bearbeitet werden. Da die S3-Clients direkt mit dem zugrundeliegenden Speichersystem "kommunizieren", ist in der Regel ein schnelleres Hoch- und Herunterladen von (größeren) Dateien möglich. Bei kleineren Dateien ( < 5Gb ) fällt dieser Unterschied jedoch kaum ins Gewicht.

In der nachfolgenden Dokumentation stellen wir Ihnen die S3-Anwendungen Cyberduck, MinIO und WinSCP näher vor, mit denen eine unkomplizierte Anbindung an den Coscine-S3-Speicher möglich ist.

Wie sieht ein Beispiel für die Interaktion mit dem S3-Speicher mittels Python aus?

Ein Beispiel für die Interaktion mit dem S3-Speicher mit Python ist im folgenden GitLab Repository zusammengefasst und kann als Inspiration zur Erstellung von eigenen S3-Clients genutzt werden.

S3 Sample Script

Performanz

Die Performanz von Uploads und Downloads ist primär abhängig von ihrem Endgerät, der Netzwerkleistung, dem S3-Clienten und dem Datastorage auf der anderen Seite des Transfers. Tests mit verschiedenen Clients ergaben für den Datastorage.nrw, dass mehrere hundert MB pro Sekunde an Übertragung möglich sind. In der Praxis werden diese Werte jedoch oft wegen der schwächeren Leistung von Heimnetzwerken nicht erreicht.

Die Ursachenforschung sollte mit dem eigenen Gerät und Netzwerk beginnen, dazu empfiehlt sich, sogenannte "Speedtests" als Messung von Up- und Download-Geschwindigkeit durchzuführen. Messungen werden von verschiedenen Anbietern im Internet angeboten, z. B. die Breitbandmessung der Bundesnetzagentur.

Sind die gemessenen Werte und die Übertragungsraten im S3-Client stark abweichend, ist eventuell der S3-Client die Engstelle. Insbesondere Aspekte wie die Anzahl von parallelen Verbindungen oder Verschlüsselung können die Geschwindigkeit beeinflussen. Schauen sie bitte auch auf den Supportseiten der Hersteller oder in den Communities nach Optimierungsmöglichkeiten oder bekannten Fehlern.

Hinweis zu Dateien und Transfergeschwindigkeit: Die Dateigröße kann die Geschwindigkeit beeinflussen. Führen sie Transfers mit großen Dateien von mehreren hundert MB durch, steigt die Geschwindigkeit nach Beginn des Transfers üblicherweise an. Auch die Anzahl an Dateien kann einen Einfluss haben, wenn parallele Verbindungen im S3-Client als Option aktiviert sind.

S3 Policies

Für erfahrene Nutzer listen wir hier zukünftig Informationen zu gegebenen Policies auf, die Ihnen erlauben Informationen über Backup-Dauer oder Version des Buckets zu erhalten.

Basierend auf Community Feedback, können sich die Policies ändern. Der Prozess sieht vor, dass erhaltenes Feedback evaluiert wird und Vorschläge gesammelt werden, die dem Coscine Steering-Board vorgelegt werden, dass über Änderungen entscheidet. Aktuell läuft dieser Prozess zum ersten Mal, sobald Entscheidungen getroffen wurden, listen wir alle Änderungen an verfügbaren Policies an dieser Stelle auf.