État du service

Le service Object Storage Unit (OSU) est à présent en FIN DE SUPPORT ET MAINTENANCE. Pour en savoir plus, voir Politique de fin de vie.

Vous pouvez uploader plusieurs parties d'un objet volumineux dans un multipart upload.

Vous pouvez uploader une partie sur l'un des multipart uploads que vous avez créés ou sur un multipart upload créé par un autre utilisateur. Vous devez avoir les permission appropriées, à la fois pour le multipart upload et pour le bucket.

Il est recommandé d'utiliser le multipart upload pour les objets de 100 Mio ou plus. Vous pouvez uploader jusqu'à 10000 parties de 1 Mio à 4 Gio chacune dans un multipart upload pour compléter un objet.

Lorsque vous uploadez une partie, vous spécifiez une clé qui crée une sous-partie dans un multipart upload. Vous pouvez créer plusieurs sous-parties dans un multipart upload. Toutes les parties que vous uploadez avec la même clé sont regroupées dans la même sous-partie. Cette sous-partie a le même comportement qu'un multipart upload : vous pouvez la lister, la compléter ou l'annuler. Pour en savoir plus, voir Lister les parties d'un multipart upload, Compléter un multipart upload et Annuler un multipart upload.

Les parties que vous uploadez doivent toutes avoir la même taille, à l'exception de la dernière partie qui doit être égale ou inférieure aux autres.

Lorsque toutes les parties sont uploadées, vous devez spécifier si vous voulez compléter le multipart upload pour reconstituer l'objet à l'intérieur de votre bucket, ou si vous annulez le multipart upload et par conséquent supprimez toutes les parties que vous avez uploadées sur votre bucket.

Cette fonctionnalité n'est pas disponible depuis Cockpit. Cette documentation décrit uniquement la procédure à l'aide d'AWS CLI. 

Avant de commencer : Pour uploader une partie, vous devez d'abord créer un multipart upload. Pour en savoir plus, voir Créer un multipart upload.


  • Pour uploader une partie, utilisez la commande upload-part suivant cette syntaxe :

    Exemple de requête
    $ aws s3api upload-part \
        --profile YOUR_PROFILE \
        --bucket BUCKET \
        --key SUB_PART \
        --body usr/bin/YOUR_OBJECT \
        --part-number 1 \
        --upload-id 2~xrosnH8pbKTk3sjXijfGIUN1KAEM3Yc \
        --content-length 1048567 \
        --endpoint ENDPOINT 

    Cette commande contient les attributs suivants que vous devez spécifier :

    • (optionnel) profile : Le profil nommé que vous voulez utiliser, créé pendant la configuration d'AWS CLI. Pour en savoir plus, voir Utiliser et configurer AWS CLI.
    • bucket : Le bucket qui contient l'objet que vous voulez uploader dans le multipart.
    • key : Le nom que vous voulez donner à la sous-partie.
    • body : Le chemin d'accès vers l'objet sur votre machine.
    • part-number : Le numéro de la partie que vous uploadez. Ce nombre doit être un entier compris entre 1 et 10000.
    • upload-id : L'ID de l'upload que vous avez reçu en créant le multipart upload. Pour en savoir plus, voir Créer un multipart upload.
    • (optionnel) content-length : Si la taille ne peut pas être définie automatiquement, la taille de l'objet, en octets. Le minimum doit être de 1048567 (1 Mio), et le maximum est 4294967296 (4 Gio).
    • endpoint : Le endpoint correspondant au service (oos ou osu) et à la Région auxquels vous voulez envoyer la requête, selon le format suivant : https://<SERVICE>.<REGION>.outscale.com


    La commande upload-part renvoie l'élément suivant :

    • ETag : L'ETag de l'upload.


      Conservez précieusement cet élément, vous en aurez besoin dans d'autres commande pour le multipart upload.

      Si vous perdez cet élément, vous pouvez le retrouver. Pour en savoir plus, voir Lister les multipart uploads d'un bucket.

       

    Exemple de résultat
    {
        "ETag": "\"44c7af3f06fd63a36593826be3cb7684\""
    }
Tutoriel : Configurer un bucket avec des objets

Étape précédente :

Créer un multipart upload

Étape suivante :

(optionnel) Configurer l'ACL d'un objet


AWS™ et Amazon Web Services™ sont des marques de commerce d'Amazon Technologies, Inc. ou de ses affiliées aux États-Unis et/ou dans les autres pays.