Actualiser docs/Services/pole-scientifique/Onyxia/docs/stockage.md

This commit is contained in:
Alexis GUYOT 2024-01-25 14:41:48 +01:00
parent 34912df7d0
commit bdf8d2e95b

View File

@ -47,22 +47,17 @@ L'accès au stockage MinIO est possible via un token (jeton d'accès) personnel,
### Configuration
::: {.panel-tabset}
=== "R"
En R, l'interaction avec un système de fichiers compatible S3 est rendu possible par la librairie `aws.s3`.
```r
library(aws.s3)
```
=== "Python"
En Python, l'interaction avec un système de fichiers compatible S3 est rendu possible par deux librairies :
* <a href="https://boto3.amazonaws.com/v1/documentation/api/latest/index.html" target="_blank">Boto3</a>, une librairie créée et maintenue par Amazon ;* <a href="https://s3fs.readthedocs.io/en/latest/" target="_blank">S3Fs</a>, une librairie qui permet d'interagir avec les fichiers stockés à l'instar d'un _filesystem_ classique.
-<a href="https://boto3.amazonaws.com/v1/documentation/api/latest/index.html" target="_blank">Boto3</a>, une librairie créée et maintenue par Amazon
-<a href="https://s3fs.readthedocs.io/en/latest/" target="_blank">S3Fs</a>, une librairie qui permet d'interagir avec les fichiers stockés à l'instar d'un _filesystem_ classique.
Pour cette raison et parce que S3Fs est utilisée par défaut par la librairie <a href="https://pandas.pydata.org" target="_blank">pandas</a> pour gérer les connections S3, nous allons présenter la gestion du stockage sur MinIO via Python à travers cette librairie.
```python
@ -80,65 +75,27 @@ L'accès au stockage MinIO est possible via un token (jeton d'accès) personnel,
Le client MinIO propose les commandes UNIX de base, telles que ls, cat, cp, etc. La liste complète est disponible dans la <a href="https://docs.min.io/docs/minio-client-complete-guide.html" target="_blank">documentation du client</a>.
#### R
En R, l'interaction avec un système de fichiers compatible S3 est rendu possible par la librairie `aws.s3`.
```r
library(aws.s3)
```
#### Python (avec Jupyter ou VSCode)
En Python, l'interaction avec un système de fichiers compatible S3 est rendu possible par deux librairies :
* <a href="https://boto3.amazonaws.com/v1/documentation/api/latest/index.html" target="_blank">Boto3</a>, une librairie créée et maintenue par Amazon ;
* <a href="https://s3fs.readthedocs.io/en/latest/" target="_blank">S3Fs</a>, une librairie qui permet d'interagir avec les fichiers stockés à l'instar d'un _filesystem_ classique.
Pour cette raison et parce que S3Fs est utilisée par défaut par la librairie <a href="https://pandas.pydata.org" target="_blank">pandas</a> pour gérer les connections S3, nous allons présenter la gestion du stockage sur MinIO via Python à travers cette librairie.
```python
import os
import s3fs
# Create filesystem object
S3_ENDPOINT_URL = "https://" + os.environ["AWS_S3_ENDPOINT"]
fs = s3fs.S3FileSystem(client_kwargs={'endpoint_url': S3_ENDPOINT_URL})
```
#### mc
MinIO propose un client en ligne de commande (`ùc`) qui permet dinteragir avec le système de stockage à la manière d'un _filesystem_ UNIX classique. Ce client est installé par défaut et accessible via un terminal dans les différents services du Datalab.
Le client MinIO propose les commandes UNIX de base, telles que ls, cat, cp, etc. La liste complète est disponible dans la <a href="https://docs.min.io/docs/minio-client-complete-guide.html" target="_blank">documentation du client</a>.
:::
### Lister les fichiers d'un *bucket*
::: {.panel-tabset}
#### R
=== "R"
```r
aws.s3::get_bucket("donnees-insee", region = "")
```
```r
aws.s3::get_bucket("donnees-insee", region = "")
```
=== "Python
#### Python
```python
fs.ls("donnees-insee")
```
```python
fs.ls("donnees-insee")
```
=== "mc"
Le stockage du Datalab est accessible via l'alias `s3`. Par exemple, pour lister les fichiers du bucket `donnees-insee` :
#### mc
```bash
mc ls s3/donnees-insee
```
Le stockage du Datalab est accessible via l'alias `s3`. Par exemple, pour lister les fichiers du bucket `donnees-insee` :
```bash
mc ls s3/donnees-insee
```
:::
### Importer des données