VRAMfarm-Logo VRAMfarm
DE
Registrieren

12. November 2026 · VRAMfarm-Team

Datensätze auf einen GPU-Server und zurück: Hugging Face, rclone, rsync, scp

Daten fließen aus einem Cloud-Bucket und von einem Laptop in einen GPU-Server, Ergebnisse fließen zurück: Datensätze auf einen GPU-Server übertragen

Einen Datensatz mit 80 GB von zu Hause über eine Leitung mit 40 Mbit/s hochzuladen, dauert etwa viereinhalb Stunden, und läuft schon ein GPU-Server, zahlen Sie jede davon. Dieselben 80 GB, die eine Maschine mit 1-Gbit/s-Anbindung von Hugging Face oder aus einem S3-Bucket holt, sind in 15–20 Minuten da. Die Regel ist also einfach: Daten sollten aus der Cloud zum Server wandern, nicht von Ihrem Laptop, und der langsame Upload, falls er nötig ist, sollte einmal stattfinden, ohne dass eine GPU wartet.

Den Weg danach wählen, wo die Daten jetzt liegen

Wo die Daten liegen Werkzeug Was die Geschwindigkeit begrenzt
Hugging Face (öffentlich, privat oder gated) hf download Die Anbindung der Maschine
S3, Cloudflare R2, Backblaze B2, Google Cloud Storage rclone copy Die Anbindung der Maschine, die Region des Buckets
Google Drive, Dropbox, OneDrive rclone copy Die eigenen Grenzen des Dienstes, oft niedriger
Ein direkter Link wget oder curl Der Quellserver
Ihr Computer, ein paar GB scp oder der Upload in Jupyter Ihre Upload-Geschwindigkeit zu Hause
Ihr Computer, viele GB oder viele Dateien rsync oder erst in einen Bucket hochladen Ihre Upload-Geschwindigkeit zu Hause

Download- und Upload-Geschwindigkeit stehen vor dem Start bei jeder Maschine, in Mbit/s, und der Katalog kann danach sortieren und filtern. Zum Schätzen teilen Sie: 100 GB sind 800 Gigabit, bei 1.000 Mbit/s also etwa 13 Minuten bei voller Geschwindigkeit und 15–25 Minuten in der Praxis. Mit einem Upload von 40 Mbit/s zu Hause dauern dieselben 100 GB fünfeinhalb Stunden.

Liegen Ihre Daten nur auf Ihrem Computer und brauchen Sie sie mehr als einmal, laden Sie sie einmal in einen privaten Datensatz auf Hugging Face oder in Ihren eigenen Bucket hoch, über Nacht und ohne laufende GPU. Danach holt jeder Server sie mit der Geschwindigkeit eines Rechenzentrums.

Hugging Face: Datensätze und Modelle

Der Befehl hf gehört zum Paket huggingface_hub:

pip install -U huggingface_hub
hf auth login                      # nur für private oder gated Repos; Lese-Token einfügen
hf download <user>/<dataset> --repo-type dataset --local-dir /workspace/data

Mit --include "train/*.parquet" holen Sie nur einen Teil eines Repos. Aktuelle Versionen von huggingface_hub laden Dateien aus dem Xet-Speicher von Hugging Face von selbst in vielen parallelen Teilen herunter, ein einzelnes hf download lastet eine schnelle Leitung also meist aus. Mit einem Token umgehen Sie außerdem die strengeren Limits für anonyme Anfragen.

Wo die Dateien landen, zählt für Ihre nächste Sitzung. Alles in /workspace lässt sich mit Speichern und stoppen behalten, alles in ~/.cache/huggingface ist nach dem Stopp weg. Soll der Hugging-Face-Cache im gespeicherten Ordner liegen, setzen Sie vor dem Download export HF_HOME=/workspace/hf. Wenn nicht (öffentliche Daten, die Sie in Minuten wieder holen), lassen Sie ihn außerhalb und zahlen keinen Speicher dafür.

Ergebnisse schickt dasselbe Werkzeug zurück:

hf upload <user>/<results-repo> /workspace/outputs --repo-type dataset --private

Nutzen Sie dafür einen Token mit Schreibzugriff und widerrufen Sie ihn, wenn das Projekt fertig ist.

rclone aus S3, R2 oder Google Drive

rclone spricht mit fast jedem Speicherdienst. Installieren Sie es auf dem Server (das Installationsskript braucht unzip, das in schlanken Images oft fehlt):

apt-get update && apt-get install -y unzip curl
curl https://rclone.org/install.sh | bash

Bei S3-kompatiblem Speicher können Sie auf die Konfigurationsdatei verzichten und die Einstellungen als Umgebungsvariablen übergeben; so bleiben Ihre Schlüssel aus /workspace heraus. Der Name des Remotes in den Variablen (hier S3) wird im Befehl zu s3::

export RCLONE_CONFIG_S3_TYPE=s3
export RCLONE_CONFIG_S3_PROVIDER=AWS
export RCLONE_CONFIG_S3_REGION=eu-central-1
export RCLONE_CONFIG_S3_ACCESS_KEY_ID=...
export RCLONE_CONFIG_S3_SECRET_ACCESS_KEY=...

rclone copy s3:my-bucket/dataset /workspace/data --transfers 16 --progress

Für Cloudflare R2 oder Backblaze B2 setzen Sie PROVIDER auf Cloudflare oder Other und ergänzen RCLONE_CONFIG_S3_ENDPOINT mit dem Endpunkt aus Ihrem Konto. --transfers 16 kopiert 16 Dateien gleichzeitig, was bei vielen mittelgroßen Dateien viel bringt. Ergebnisse gehen auf demselben Weg zurück:

rclone copy /workspace/outputs s3:my-bucket/runs/2026-11-12 --progress

Google Drive braucht eine Anmeldung im Browser, und der Server hat keinen Browser. Führen Sie rclone config aus, fügen Sie ein Remote vom Typ drive hinzu, wählen Sie den Lesezugriff (read-only scope), wenn Sie nur herunterladen, und antworten Sie auf die Frage nach auto config mit n. rclone gibt dann einen Befehl rclone authorize "drive" ... aus. Führen Sie ihn auf Ihrem eigenen Computer aus (dort muss rclone installiert sein), melden Sie sich an und fügen Sie den ausgegebenen Token auf dem Server ein. Drive ist langsamer als ein Bucket und hat tägliche Download-Kontingente; für große oder wiederholte Übertragungen ist ein Bucket der bessere Ort.

Geben Sie dem Server den engsten Schlüssel, der funktioniert: nur Lesezugriff, ein Bucket, nach dem Projekt gelöscht. Die Gründe stehen in Sind meine Daten auf einer gemieteten GPU sicher?

Von Ihrem Computer: scp, rsync und der Upload in Jupyter

scp kopiert Dateien mit demselben SSH-Schlüssel, mit dem Sie sich anmelden. Den Port finden Sie unter Meine Server:

scp -P 31001 data.tar root@vramfarm.com:/workspace/
scp -P 31001 root@vramfarm.com:/workspace/outputs.tar .

rsync ist für alles Große besser: Es zeigt den Fortschritt, überspringt Dateien, die schon da sind, und wenn die Verbindung abbricht, macht derselbe Befehl dort weiter, wo er aufgehört hat. Die Server-Images enthalten es nicht immer, installieren Sie es also zuerst dort:

# auf dem Server
apt-get update && apt-get install -y rsync

# auf Ihrem Computer (Mac, Linux oder WSL)
rsync -avP -e "ssh -p 31001" ./data/ root@vramfarm.com:/workspace/data/
rsync -avP -e "ssh -p 31001" root@vramfarm.com:/workspace/outputs/ ./outputs/

Unter Windows funktioniert scp in PowerShell, und rsync läuft in WSL; die Anleitung zu SSH unter Windows behandelt beides, dazu WinSCP, falls Sie lieber mit einem Fenster arbeiten.

Der Upload in Jupyter (Dateien in den Dateibrowser ziehen) ist am einfachsten und gut für Skripte, Notebooks, eine LoRA oder ein paar Hundert Megabyte Bilder. Bei mehreren Gigabyte wird es wackelig: Der Browser-Tab muss offen bleiben, ein unterbrochener Upload beginnt von vorn, und 10.000 Dateien auf einmal hineinzuziehen ist langsam. Herunterladen geht per Rechtsklick → Download, eine Datei nach der anderen; packen Sie einen Ordner also vorher in ein Archiv.

Packen, und nur komprimieren, was kleiner wird

Viele kleine Dateien sind das Langsamste, was Sie übertragen können. Eine Million Bilder zu je 100 KB kopieren sich weit langsamer als ein Archiv mit 100 GB, weil jede Datei einen Hin-und-Rückweg kostet. Packen Sie sie vorher oder legen Sie den Datensatz gleich in Shards ab (tar, Parquet, WebDataset):

tar cf images.tar images/           # ohne Kompression: JPEGs werden nicht kleiner
tar czf logs.tgz logs/              # Text, CSV und JSON schrumpfen auf ein Drittel bis ein Zehntel

Bilder, Video, Audio, Modellgewichte und Parquet sind bereits komprimiert, gzip kostet da nur CPU-Zeit. Text lässt sich gut komprimieren. Ist zstd installiert (apt-get install -y zstd), packt und entpackt tar --zstd -cf data.tar.zst data/ mehrfach schneller als gzip, bei ähnlicher Größe.

Entpacken Sie beim Herunterladen, wenn das Archiv hinter einer URL liegt; so belegt es nie doppelt Platz:

curl -L "https://example.com/dataset.tar.gz" | tar xz -C /workspace/data

Prüfen Sie die Festplatte, bevor Sie anfangen. Die Größe der Festplatte wählen Sie beim Start, und ein Archiv samt entpackter Kopie braucht eine Zeit lang den doppelten Platz. Wenn „No space left on device“ erscheint:

df -h /workspace                        # wie voll die Festplatte ist
du -sh /workspace/* | sort -h           # was den Platz belegt
rm -rf ~/.local/share/Trash/*           # in Jupyter gelöschte Dateien landen zuerst hier

Die letzte Zeile erwischt viele: Dateien, die Sie im Dateibrowser von Jupyter löschen, wandern in einen Papierkorb und belegen weiter Platz, bis Sie ihn leeren. Je nach Setup kann der Papierkorb auch ein versteckter Ordner .Trash-0 ganz oben in /workspace sein; ls -a /workspace zeigt ihn, und er würde in einen gespeicherten Ordner mit aufgenommen, leeren Sie ihn also ebenfalls.

Was es kostet und wo die Daten liegen sollten

Traffic wird pro GB in beide Richtungen zum eigenen Tarif der Maschine abgerechnet, den der Katalog vor dem Start anzeigt. Die meisten Maschinen verlangen etwa einen Cent pro GB oder weniger, manche nichts, und manche Maschinen mit B200 und H200 mehr. Ein Datensatz mit 100 GB hinein und 5 GB Ergebnisse hinaus kommen bei einem Cent pro GB auf etwa 1,05 €.

Der größere Kostenpunkt ist meist die wartende GPU. Zwanzig Minuten Download auf einer H100 kosten 1,30 €, dieselben zwanzig Minuten auf einer RTX 4090 0,20 €. Starten Sie den Download also als Erstes und nutzen Sie die Wartezeit, um Ihre Skripte hochzuladen oder die Konfiguration zu prüfen.

Soll der Datensatz im gespeicherten Ordner liegen? Der Speicher kostet 0,03 € pro GB und Monat, 100 GB also 100 × 0,03 € im Monat. Das Wiederherstellen des Ordners auf einem neuen Server zählt ebenfalls als Traffic und ist nicht immer schneller als Hugging Face oder ein Bucket in einer guten Region. In der Praxis:

Daten Wo sie hingehören
Öffentliche Datensätze und Modellgewichte Nirgendwohin; jedes Mal neu herunterladen
Ihr eigener Datensatz, jede Woche genutzt Ihr Bucket oder ein privates Repo auf Hugging Face, bei kleinen Datensätzen auch der gespeicherte Ordner
Daten, die nur auf Ihrem Laptop liegen Einmal in einen Bucket oder zu Hugging Face hochladen, dann herunterladen
Checkpoints, LoRAs, Ergebnisse Der gespeicherte Ordner und eine Kopie zu Hause oder in Ihrem Bucket

Die vollständige Rechnung, ob Behalten oder neu Herunterladen günstiger ist, mit Zahlen, steht in was mit Ihren Dateien passiert, wenn Sie eine GPU stoppen.

Bevor Sie stoppen, lassen Sie ein letztes rsync oder rclone copy Ihrer Ergebnisse laufen oder klicken Sie auf Speichern und stoppen. Die Serverfestplatte wird mit dem Server gelöscht, und einen Datensatz, den Sie in 15 Minuten neu herunterladen, ersetzen Sie leicht. Eine Woche voller Ergebnisse nicht.

Fragen zum Thema

Kann ich meinen S3-Bucket oder mein Google Drive als Ordner auf dem Server einbinden?

Planen Sie besser mit Kopieren. Einbinden mit rclone mount braucht FUSE, das Container meist nicht erlauben, und direkt von einem Netzlaufwerk zu trainieren ist ohnehin langsam. Kopieren Sie die Daten mit rclone copy auf die Serverfestplatte, trainieren Sie und kopieren Sie die Ergebnisse zurück.

Kann ich die Festplatte nach dem Start vergrößern?

Wählen Sie die Größe beim Start, mit Platz für das Archiv, die entpackten Daten und Ihre Ergebnisse. Wird der Platz knapp, klicken Sie auf „Speichern und stoppen“ und starten einen neuen Server mit größerer Festplatte: Ihr gespeicherter Ordner ist dort wieder da.

Wird das Hochladen von meinem Computer auch als Traffic berechnet?

Ja. Traffic wird in beide Richtungen zum Tarif der Maschine gezählt. Er wird vor dem Start angezeigt und liegt meist bei etwa einem Cent pro GB oder darunter.

Warum ist mein Download von Hugging Face langsam?

Meist liegt es an der Anbindung der Maschine oder an einem fehlenden Token. Prüfen Sie vor dem Start die angezeigte Download-Geschwindigkeit der Maschine (es gibt einen Filter dafür), melden Sie sich mit einem Token an und nutzen Sie eine aktuelle Version von huggingface_hub, die viele Dateiteile parallel herunterlädt.

Finden Sie die GPU, auf die Ihr Modell passt

Wählen Sie ein Modell und sehen Sie die günstigste Karte mit genug VRAM, minutengenau in Euro abgerechnet.