For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/ai-machine-learning/ai-cli-data.md.

CLI - Commandes principales pour les données

Voir en Markdown

Découvrez les principales commandes pour gérer vos données sur votre object storage avec la CLI ovhai

Objectif

Ce guide couvre les commandes de base nécessaires pour manipuler vos données sur l'object storage via la CLI ovhai.

Prérequis

En pratique

Cette documentation est divisée en plusieurs parties :

  • Lister les régions disponibles des data stores
  • Ajouter de nouveaux data stores
  • Lister les conteneurs et objets
  • Téléverser des données
  • Télécharger des données
  • Supprimer des données
  • Copier des données
  • Déplacer des données

Lister les régions disponibles des data stores

La commande suivante affiche tous les codes région des data stores disponibles :

ovhai datastore list

Ajouter de nouveaux data stores

Pour voir la liste des types de data stores disponibles, exécutez ovhai datastore add --help.

Sortie :

Add a data store

Usage: ovhai datastore add [OPTIONS] `<COMMAND>`

Commands:
    s3    Add an S3* compatible data store
    git   Add a Git data store
    help  Print this message or the help of the given subcommand(s)

Options:
        --token `<TOKEN>`  Authentication using Token rather than OAuth
        --no-color       Remove colors from output
    -h, --help           Print help

À l'heure actuelle, les data stores compatibles S3* et Git sont pris en charge. Pour en savoir plus sur l'Object Storage compatible S3, veuillez lire cette documentation.

Pour obtenir de l'aide sur l'ajout de votre conteneur compatible S3, utilisez ovhai datastore add s3 --help :

Usage: 
    ovhai datastore add s3 [OPTIONS] <ALIAS> <ENDPOINT_URL> <REGION> <ACCESS_KEY> <SECRET_KEY>

Arguments:
    <ALIAS>         Alias for the data store
    <ENDPOINT_URL>  Data store connection URL
    <REGION>        Data store region
    <ACCESS_KEY>    Connection access key
    <SECRET_KEY>    Connection secret key

Options:
        --store-credentials-locally  Whether or not to store the data store credentials locally when creating or updating a data store
        --token <TOKEN>              Authentication using Token rather than OAuth
        --no-color                   Remove colors from output
    -h, --help                       Print help
Info

Lorsque vous utilisez --store-credentials-locally, le data store n'est enregistré que dans la configuration locale de votre CLI ovhai, pour le contexte régional (ovhai config set <region>) que vous utilisiez au moment d'exécuter la commande. Il n'est pas partagé entre régions. Si vous souhaitez utiliser ce data store depuis des notebooks, jobs ou apps qui tournent dans une autre région, relancez la même commande ovhai datastore add après avoir basculé sur le contexte de cette région.

Lister les conteneurs et objets

Si vous avez besoin d'aide pour lister les conteneurs d'un data store distant, exécutez ovhai bucket list --help :

Usage:
    ovhai bucket list [OPTIONS] `<DATA_STORE>`

Arguments:
    `<DATA_STORE>`  Object storage data store alias

Options:
    -p, --prefix `<PREFIX>`  Only list containers beginning with `<PREFIX>`
        --token `<TOKEN>`    Authentication using Token rather than OAuth
    -o, --output `<OUTPUT>`  Command output format [possible values: json, yaml, table]
    -f, --fields `<FIELDS>`  Comma separated list of fields to display with "table" output [possible values: objects, size, name]
        --no-color         Remove colors from output
    -h, --help             Print help

Lister les conteneurs et objets - Exemple 1

Utilisez cette commande pour lister tous les conteneurs d'un data store distant, situé dans la région GRA :

ovhai bucket list GRA

Sortie :

DATE                       NAME
2023-05-09T08:56:12.000000 container-1
2023-05-03T09:56:20.000000 container-2
2023-04-17T15:01:02.000000 container-3
2022-06-08T09:26:25.000000 container-4

Lister les conteneurs et objets - Exemple 2

Utilisez cette commande pour lister tous les objets du conteneur container-1 dans la région GRA :

ovhai bucket object list container-1@GRA

Sortie :

DATE                       BYTES    NAME          DESCRIPTION ETAG
2023-05-09T08:56:12.000000 17.0 MiB seg-00/000000 Object      `<etag1>`                                                                                                               
2023-05-03T09:56:20.000000 8.5 MiB  seg-00/000001 Object      `<etag2>`
2023-04-17T15:01:02.000000 6.0 KiB  seg-01/000000 Object      `<etag3>`
2022-06-08T09:26:25.000000 8.5 MiB  seg-00/000001 Object      `<etag4>`

Lister les conteneurs et objets - Exemple 3

Utilisez cette commande pour lister uniquement les objets du conteneur container-1, région GRA, commençant par le préfixe seg-01 :

ovhai bucket object list container-1@GRA --prefix seg-01

Sortie :

DATE                       BYTES    NAME          DESCRIPTION ETAG
2023-04-17T15:01:02.000000 6.0 KiB  seg-01/000000 Object      <etag3>

Téléverser des données

Si vous avez besoin d'aide pour téléverser des données locales vers un conteneur, exécutez ovhai bucket object upload --help :

Usage:
    ovhai bucket object upload [OPTIONS] <BUCKET> `<PATHS>`...

Arguments:
    <BUCKET>    container@data_store
    `<PATHS>`...  Name of file or directory to upload

Options:
    -a, --add-prefix <ADD_PREFIX>        Add prefix to uploaded objects
        --token <TOKEN>                  Authentication using Token rather than OAuth
    -r, --remove-prefix <REMOVE_PREFIX>  Remove prefix from uploaded objects
      --no-overwrite                     Do not overwrite objects
    -j, --json                           Output json progress
    -w, --workers <WORKERS>              Number of workers to use
      --delete                           Should also delete files in remote storage that are not present locally. !!WARNING!! we strongly advise to use `--dry-run` once before launching this command for real, also see the `--trash` option
      --trash <TRASH>                    Move files to this container and folder instead of deleting them, to be used with `--delete` (eg. `--trash trash_container/job1/`)
      --dry-run                          Doesn't execute anything but display what actions would be done if this flag was not set
      --tar <TAR>                        Compress all paths inside a tar archive before uploading it
      --no-color                         Remove colors from output
    -h, --help                           Print help

Une bonne pratique consiste à utiliser le paramètre --dry-run pour obtenir un aperçu des actions qui seraient effectuées par la commande saisie si ce flag n'était pas défini.

Téléverser des données - Exemple 1

Utilisez cette commande pour téléverser le fichier (ou répertoire) local /tmp/directory/file1 dans le conteneur my-container, région GRA, en conservant le chemin complet comme nom d'objet :

ovhai bucket object upload my-container@GRA tmp/directory/file1

Le fichier (ou répertoire) téléversé aura tmp/directory/file1 comme nom d'objet.

Téléverser des données - Exemple 2

Utilisez cette commande pour téléverser le fichier (ou répertoire) local /tmp/directory/file1 dans le conteneur my-container, région GRA, en ne conservant que le nom du fichier comme nom d'objet :

ovhai bucket object upload my-container@GRA tmp/directory/file1 --remove-prefix tmp/directory/

Le fichier (ou répertoire) téléversé aura file1 comme nom d'objet.

Téléverser des données - Exemple 3

Utilisez cette commande pour téléverser le fichier (ou répertoire) local /tmp/directory/file1 dans le conteneur my-container, région GRA, en ajoutant un préfixe au chemin complet comme nom d'objet :

ovhai bucket object upload my-container@GRA tmp/directory/file1 --add-prefix /root/

Le fichier (ou répertoire) téléversé aura /root/tmp/directory/file1 comme nom d'objet.

Télécharger des données

Si vous avez besoin d'aide pour télécharger des objets depuis un conteneur, exécutez ovhai bucket object download --help :

Usage:
    ovhai bucket object download [OPTIONS] `<BUCKET>` [OBJECTS]...

Arguments:
    `<BUCKET>`      container@data_store
    [OBJECTS]...  Names of objects to download

Options:
    -p, --prefix `<PREFIX>`                Only download items beginning with `<prefix>`
        --token `<TOKEN>`                  Authentication using Token rather than OAuth
    -o, --output `<OUTPUT>`                Add prefix to downloaded items
    -r, --remove-prefix `<REMOVE_PREFIX>`  Remove prefix from downloaded items
        --no-overwrite                   Do not overwrite files
        --create                         Create container if it does not exist
    -j, --json                           Output json progress
    -w, --workers `<WORKERS>`              Number of workers to use for downloading objects
        --delete                         Should also delete files locally if they are not present on remote. !!WARNING!! we strongly advise to use `--dry-run` once before launching this command for real, also see the `--trash` option
        --trash `<TRASH>`                  Move files to this folder instead of deleting them, to be used with `--delete`
        --dry-run                        Doesn't execute anything but display what actions would be done if this flag was not set
        --untar                          Uncompress given archive from object store
        --no-color                       Remove colors from output
    -h, --help                           Print help

Une bonne pratique consiste à utiliser le paramètre --dry-run pour obtenir un aperçu des actions qui seraient effectuées par la commande saisie si ce flag n'était pas défini.

Télécharger des données - Exemple 1

Utilisez cette commande pour télécharger l'intégralité du conteneur my-container, région GRA :

ovhai bucket object download my-container@GRA
Warning

Si les objets sont préfixés par un chemin de répertoire tel que /tmp/directory/ ou même /, ils seront téléchargés sur votre stockage local dans ce même répertoire. Si vous souhaitez tout télécharger dans votre répertoire courant, vous devez renseigner le paramètre --remove-prefix.

Exemple :

ovhai bucket object download my-container@GRA --remove-prefix tmp/directory/

Télécharger des données - Exemple 2

Utilisez cette commande pour télécharger tous les objets de my-container, région GRA, correspondant au préfixe tmp/directory/ :

ovhai bucket object download my-container@GRA --prefix tmp/directory/
Warning

Même avertissement que ci-dessus : si vous souhaitez télécharger les fichiers dans votre répertoire courant, vous devrez renseigner le paramètre --remove-prefix.

Exemple :

ovhai bucket object download my-container@GRA --prefix tmp/directory/ --remove-prefix tmp/directory/

Supprimer des données

Si vous avez besoin d'aide pour supprimer un conteneur ou des objets, exécutez ovhai bucket delete --help :

Usage:
    ovhai bucket delete [OPTIONS] <DELETED_ITEMS|--prefix <PREFIX>|--all> <DATA_STORE>

Arguments:
    <DATA_STORE>        Object storage data store alias
    [DELETED_ITEMS]...  List of items to be deleted

Options:
    -p, --prefix <PREFIX>    Items beginning with <PREFIX>
        --token <TOKEN>      Authentication using Token rather than OAuth
    -a, --all                All items
    -y, --yes                Do not ask for confirmation
    -w, --workers <WORKERS>  Number of workers to use
        --no-color           Remove colors from output
    -h, --help               Print help

Supprimer des données - Exemple 1

Utilisez cette commande pour supprimer tout le contenu d'un conteneur nommé my-container, région GRA, sans supprimer le conteneur :

ovhai bucket object delete my-container@GRA --all

Supprimer des données - Exemple 2

Utilisez cette commande pour supprimer un seul objet nommé file1 à l'intérieur du conteneur my-container, région GRA :

ovhai bucket object delete my-container@GRA file1

Supprimer des données - Exemple 3

Une fois qu'un conteneur est vide, vous pouvez le supprimer en utilisant :

ovhai bucket delete GRA my-container

Copier des données

Lorsque vous utilisez des conteneurs, il peut être intéressant de copier un objet. Si vous avez besoin d'aide pour cela, exécutez ovhai bucket object copy --help :

Usage:
    ovhai bucket object copy [OPTIONS] <DESTINATION|--container `<CONTAINER>`> <BUCKET> `<SOURCE>`

Arguments:
    `<BUCKET>`       container@data_store
    `<SOURCE>`       Source
    [DESTINATION]  Destination

Options:
    -c, --container `<CONTAINER>`  Destination container in the same data store
        --token `<TOKEN>`          Authentication using Token rather than OAuth
    -p, --prefix                 Handle element by matching prefix instead of name
    -y, --yes                    Do not ask for confirmation
    -w, --workers `<WORKERS>`      Number of workers to use
        --no-color               Remove colors from output
    -h, --help                   Print help

Copier des données - Exemple 1

Utilisez cette commande pour copier un seul objet path/to/object dans un conteneur my-container, région GRA :

ovhai bucket object copy my-container@GRA path/to/object new/path/to/object

Copier des données - Exemple 2

Si vous gérez plusieurs conteneurs, vous pourriez vouloir copier un fichier d'un conteneur vers un autre. Cela peut se faire ainsi :

ovhai bucket object copy source-container@GRA --container dest-container path/to/object new/path/to/object

Copier des données - Exemple 3

Vous pouvez utiliser un préfixe pour copier tous les objets contenus à cet emplacement. Par exemple, copions tous les éléments contenus dans l'emplacement path/to/ vers un new/path/to/ d'un dest-container :

ovhai bucket object copy source-container@GRA --container dest-container --prefix path/to/ new/path/to/

Déplacer des données

Vous pouvez également déplacer un objet au sein d'un conteneur ou vers un autre. Si vous avez besoin d'aide, exécutez ovhai bucket object move --help :

Usage:
    ovhai bucket object move [OPTIONS] <DESTINATION|--container <CONTAINER>> <BUCKET> <SOURCE>

Arguments:
    <BUCKET>       container@data_store
    <SOURCE>       Source
    [DESTINATION]  Destination

Options:
    -c, --container <CONTAINER>  Destination container in the same data store
        --token <TOKEN>          Authentication using Token rather than OAuth
    -p, --prefix                 Handle element by matching prefix instead of name
    -y, --yes                    Do not ask for confirmation
    -w, --workers <WORKERS>      Number of workers to use
        --no-color               Remove colors from output
    -h, --help                   Print help

Déplacer des données - Exemple 1

Pour déplacer un objet au sein d'un conteneur, vous pouvez utiliser :

ovhai bucket object move my-container@GRA path/to/object new/path/to/object

Déplacer des données - Exemple 2

Lorsque vous gérez plusieurs conteneurs, il peut être intéressant de déplacer un fichier d'un conteneur vers un autre. Cela peut se faire en exécutant :

ovhai bucket object copy source-container@GRA --container dest-container path/to/object new/path/to/object

Déplacer des données - Exemple 3

Si vous souhaitez déplacer plusieurs objets, vous pouvez spécifier un préfixe et déplacer tous les objets situés à cet emplacement en utilisant :

ovhai bucket object move my-container@GRA --prefix path/to/ new/path/to/

Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.

Votre avis nous intéresse !

N’hésitez pas à nous faire part de vos questions, retours et suggestions pour améliorer le service :

*: S3 est une marque déposée d'Amazon Technologies, Inc. Le service d'OVHcloud n'est ni sponsorisé, ni approuvé, ni autrement affilié à Amazon Technologies, Inc.

Cette page vous a-t-elle aidé ?