Formation

Connaissance et prise en main des outils de traitement de données

SSP/DEMESIS

24/06/2025

0.1 Sommaire

Déroulement demi-journée :

  • Présentation Cerise
  • Bonnes pratiques
  • Droits/Habilitations
  • Assistance
  • Onyxia/SSP Cloud

0.2 Avant-propos


Ce diaporama de formation a été rédigé dans le but d’être le support visuel des formations dispensées au MASA.

Cette formation s’adresse à tous les nouveaux arrivants au SSM Agriculture qui seront amenés à manipuler des données sous Cerise ou sous Onyxia. Elle est dispensée en distanciel sur une demi-journée.

Ce support ne se substitue pas aux formations R dispensées par les formateurs du MASA.
Il permet aux nouveaux agents ayant déjà pratiqué R dans un autre contexte de découvrir les spécificités de Cerise et d’en faire un bon usage.

1 Présentation

1.1 C’est quoi Cerise ?

CERISE : Consolidation Et Restitution de l’Information StatistiquE

Cerise contient l’ensemble des données et des programmes R utilisés par le SSM Agriculture.

Cerise est une plateforme qui repose sur la solution “Posit Workbench” commercialisée par la société du même nom “Posit”. Elle offre une interface web pour utiliser RStudio dans un environnement multi-utilisateurs et sécurisé.

Cerise est accessible via votre navigateur via l’URL : https://rstudio.agriculture.rie.gouv.fr/

=> À faire figurer dans vos favoris !

1.2 Avantages de Cerise

Cerise présente plusieurs avantages :

  • Accès aux données du SSM Agriculture (enquêtes, nomenclatures, fichiers externes…)
  • Montée de versions régulière (Workbench / R / Packages)
  • Sécurité /conformité
  • Support Centre de Service et assistance BQIS garantis

1.3 Ressources Cerise

  • 160 Go RAM
  • 30 processeurs virtuels
  • Plus de 400 utilisateurs distincts
  • 80 sessions simultanées en moyenne

Des admins Cerise qui vous surveillent

1.4 Schéma d’architecture de Cerise

1.5 Mises à jour Cerise

  • R

    • Une montée de version annuelle de R_Base
      Le DéMéSIS met à disposition 2 versions de R_base :

      • Suppression de la version la plus ancienne présente l’année N-1 sur CERISE
      • Reconduction de la version la plus récente présente l’année N-1 sur CERISE
      • Ajout de la dernière version stable mise à disposition sur le CRAN
  • RStudio
    Dernière version stable mise à disposition par l’éditeur (au moment de la réalisation de septembre/octobre de l’année N-1)

  • Packages

    • La liste des packages R valides et compatibles à une date donnée sont mis à disposition dans le Data Center du MASA.
    • Une liste pré-établie de packages est préinstallée sur CERISE pour chacune des version R_Base

1.6 Cerise en 2025

Composant Version actuelle
RStudio 2024.09 « Cranberry Hibiscus »
R_Base_Core R 4.2.3 – 2023-03-15
R 4.4.1 – 2024-06-15
Packages R 4.2.3 – 2023-03-15
Nombre de packages disponibles : 18839
Nombre de packages installés : 805
R 4.4.1 – 2024-06-15
Nombre de packages disponibles : 20946
Nombre de packages installés : 13487

1.7 Organisation de Cerise (1/2)

Cerise est organisé en plusieurs répertoires :

  • 00-Espace-Personnel => espaces personnels des agents, accessible par l’agent uniquement

  • 01-Espace-de-Partage => lieu de partage général (programmes/formation/outils…) entre les différents acteurs

  • 02-Espace-de-Production => plateforme de stockage des données brutes collectées, ainsi que des fichiers de données et programmes issus des traitements statistiques réalisés par l’équipe projet (voir image plus loin)

  • 03-Espace-de-Diffusion => mise à disposition au sein du SSM des données issues des traitements statistiques réalisés en amont

=> Ces deux derniers espaces sont découpés par opérations statistiques

  • 04-Espace-Echanges => stockage des fichiers de données à transmettre aux autres applications du SI CASSIS (par exemple Agreste) ainsi qu’aux SI des partenaires extérieurs

1.8 Organisation de Cerise (2/2)

1.9 Focus sur l’espace de production (1/2)

  • 1er niveau par rubriques (19 rubriques existantes)
    • 2ème niveau par sources
      • 3ème niveau par sous-répertoires millésimés

Exemple :

070_Production_lait/
070_Production_lait/7010_Conj_lait
070_Production_lait/7010_Conj_lait/EML_2018
070_Production_lait/7010_Conj_lait/EML_2019
070_Production_lait/7010_Conj_lait/EML_2020
070_Production_lait/7010_Conj_lait/EML_COLLECTE
070_Production_lait/7010_Conj_lait/EML_ESTIM
070_Production_lait/7010_Conj_lait/Programmes
...

1.10 Focus sur l’espace de production (2/2)

Les différents groupes d’habilitations disposent des droits suivants :

  • Utilisateur standard : aucun
  • Chargé d’études : lecture
  • Producteur de données : lecture/écriture
  • Administrateur : lecture/écriture

1.11 Accéder facilement à son espace personnel

L’accès à l’espace personnel de Cerise peut être difficile lorsque vous êtes “perdus” dans l’arborescence riche de Cerise. Voici ci-dessous comment faire pour y accéder rapidement.

Remarque : soyez économes dans l’utilisation de votre espace personnel. À ne réserver que pour des expérimentations. Pas de recopie de données…

1.12 Remarques et astuces sur Cerise

  • Pas d’explorateur de fichiers comme Windows sous Cerise. La navigation dans l’arborescence se fait via le menu “Fichiers” ou “Files” de RStudio.
  • Pour sélectionner une version R_Base, il faut la sélectionner en haut à droite dans la fenêtre RStudio


- Pour éviter le risque de perdre votre code R pendant une interruption Cerise, il est recommandé de cocher ces 2 cases accessibles dans le menu de RStudio > Outils > Options globales > Code > Onglet Sauvegarder.
Si vous consultez/testez le code d’un collègue, soyez vigilant avec cette option qui peut enregistrer des modifications par mégarde.

2 Bonnes pratiques

2.1 Cerise, un espace partagé

Comme tout espace partagé et mutualisé, il convient d’être économe en ressources sur Cerise.

Le DEMESIS a principalement 2 métriques en tête :

  • La consommation de mémoire vive (RAM) : utile pour stocker les données en cours de traitement dans les sessions R.
  • La consommation de CPU (processeur) : reflète l’intensité des calculs demandés par une session R.

2.2 Gestion des ressources par les utilisateurs (1/2)

Voici quelques conseils pour limiter la consommation de mémoire sous Cerise :

  • Désactiver la sauvegarde automatique des éléments de session

2.3 Gestion des ressources par les utilisateurs (2/2)

  • Nettoyer régulièrement sa mémoire vive

Utiliser la fonction gc() pour libérer la mémoire occupée inutilement par votre session.
Ou via l’interface de RStudio :

Voir cette page d’utilitr pour en savoir plus.

  • Pour les données volumineuses, privilégier le format de fichier Parquet (voir plus loin) Voir ici pour en savoir plus et/ou vous inscrire aux annonces de formation du BQIS.

2.4 Gestion des sessions (1/2)

  • Quand vous vous connectez sur Cerise via l’adresse fournie - si vous n’avez qu’une session d’ouverte - Cerise vous place directement dedans (vous arrivez donc dans l’interface RStudio).

  • A partir de 2 sessions ouvertes, lorsque vous vous connectez à Cerise, vous allez arriver sur l’écran de gestion des sessions :

2.5 Gestion des sessions (2/2)

  • Dans la colonne de gauche de l’écran des sessions, vous trouverez vos sessions ouvertes.
  • Dans la colonne de droite de l’écran des sessions, vous trouvez les différents projets que vous récemment utilisés.

Chaque session est indépendante des autres. Si vous avez lancé un long traitement dans une session, celle-ci est occupée et non-réactive le temps du traitement, mais vous pouvez continuer à travailler normalement dans les autres sessions.

À retenir !

Il est important de veiller à limiter votre nombre de sessions actives (maximum 5 !) au risque de ne plus pouvoir accéder à Cerise par la suite.

Au S2 2025, il est prévu de limiter le nombre de sessions en parallèle par utilisateur et de supprimer automatiquement les sessions inactives.

2.6 Chargement/Téléchargement de fichiers Cerise (1/2)

  • Pour charger vers Cerise des fichiers depuis votre poste en local :
    • Sur votre PC en local, faire un zip qui contient les fichiers à uploader (même si le fichier est unique). Cela permet d’affecter les “bons droits” sur ces fichiers (notamment qu’ils soient modifiables par d’autres agents).
    • Cliquer sur le bouton “upload/télécharger” dans l’onglet “Files/Fichiers”

  • Pour télécharger depuis Cerise vers votre poste en local :

Cliquer sur la roue crantée dans l’onglet “Files”

2.7 Chargement/Téléchargement de fichiers Cerise (2/2)

  • Si vous souhaitez charger plusieurs fichiers en même temps sous Cerise, faire un fichier ZIP.
    Son contenu sera ensuite automatiquement dézippé sous Cerise.

Pour information

Les administrateurs de Cerise n’ont pas la possibilité de mettre en place un filtre sur le type de fichiers qui sont chargés sur Cerise => veillez à ne pas télécharger n’importe quel type de fichier (exécutables par exemple).


  • Si vous souhaitez télécharger plusieurs fichiers depuis Cerise, RStudio Server va automatiquement les joindre dans un fichier ZIP sur votre poste en local.

2.8 Restauration des fichiers

  • Offre de sauvegarde du centre de service (CDS)

    • Sauvegarde complète le vendredi soir
    • Sauvegarde différentielle les autres jours (Lun./Mar./Mer./Jeu. soir)
  • Les sauvegardes différentielles ne sont conservées que 15 jours calendaires

  • Des demandes de restauration délicates voire impossibles :

    • Délais de remontée du besoin métier
    • Délais de prise en charge du centre de service

2.9 Versionner votre code

Une bonne pratique pour limiter les demandes de restauration de fichiers est de versionner avec Git vos scripts et programmes R.

Git permet :

  • D’obtenir de la traçabilité
  • De travailler collectivement
  • De faire des revues de code
  • De revenir en arrière dans le temps…

Un module de formation est disponible à cette adresse, n’hésitez pas à vous y inscrire !

Pour ceux d’entre vous déjà formés et qui souhaitent configurer Cerise avec Gitlab, suivre ce tutoriel.

2.10 Utilisation du mode projet

Il est recommandé d’utiliser le mode projet le plus souvent possible.
Plusieurs avantages :

  • Organisation claire
  • Gestion des chemins d’accès portable
  • Reproductibilité
  • Isolation des environnements (avec {renv})
  • Intégration avec Git …

2.11 Comparatif des formats de fichier de données

Format Taille du fichier Utilisation mémoire Vitesse écriture Vitesse lecture
Parquet ✅ Faible (colonnes compressées, binaire) ✅ Faible (lecture par lot, colonnes ciblées) ⚠️ Écriture plus lente (compression + formatage) 🚀 Très rapide
RDS ✅ Moyenne à faible (compressé, un seul objet) ⚠️ Modérée (lecture directe d’un objet) ✅ Rapide (compresse par défaut) ✅ Rapide (pour un seul objet)
RData ⚠️ Moyenne à faible (compressé, contient plusieurs objets) ❌ Moyenne à élevée (charge tous les objets en mémoire) ✅ Relativement rapide ⚠️ Lecture rapide mais tout est chargé (peu flexible)
CSV ❌ Très grande (non compressé, texte brut) ❌ Élevée (tout doit être parsé, conversion de type) ✅ Rapide à écrire, peu coûteux 🐢 Lent, très coûteux en ressources

Format intermédiaire d’application (le plus rapide) : {fst}

2.12 Résumé des propriétés des différents formats

  • CSV
    Très facile à manipuler manuellement, mais inefficace pour les gros volumes.
    Pas de support natif pour les types de données (dates, facteurs).
    Import/Export très lents en R pour de grands volumes.
  • Parquet
    Requiert le package {arrow} en R.
    Lecture partielle possible (par colonne ou ligne).
    Excellent pour la mutualisation, le cloud, ou les flux inter-langages (Python, Spark…).
  • RData
    Sauvegarde plusieurs objets, utile pour des environnements complexes.
    Inadapté pour charger sélectivement un seul objet dans un gros fichier.
  • RDS
    Format natif optimisé pour un seul objet R.
    Très bon compromis pour la persistance simple et performante en R pur.

2.13 Recommandations selon le contexte

Cas d’usage Format conseillé
Volume important, usage mutualisé, scalable Parquet
Persistance R native, mono-objet RDS
Sauvegarde complète d’environnement RData
Échange simple, manuel, petit volume CSV

Archive à long terme : CSV avec son dictionnaire des données

2.14 Mise à disposition d’applications Shiny

Pour certains cas métiers spécifiques et sous certaines contraintes (sécurité/performance/maintenabilité…), il est possible de déployer sur internet des applications web (R/Shiny) sur shinyapps.io.

Des précautions s’imposent et doivent être prises en compte en amont des développements par les bureaux métiers et/ou les SRISE (pré-étude de sécurité obligatoire).

Nous invitons les équipes concernés de se rapprocher du BQIS pour plus d’informations.

2.15 Gestion des chemins

  • Il est possible d’accéder à la racine de Cerise avec (au choix) :
    • Le lien symbolique ~/CERISE
    • Le lien symbolique /root_cerise/
    • Le chemin physique var/data/nfs/CERISE/
    • L’instruction fs::path_home("CERISE")
  • Éviter les setwd()
  • Construire les chemins avec here::here() ou fs::path_home() par exemple

2.16 Recommandations générales

  • Éviter les rm(list = ls())
  • Privilégier l’écosystème Tidyverse avec ses packages et l’utlisation du |>
  • Utiliser le guide de style du Tidyverse pour favoriser la lisibilité/cohérence/maintenabilité de votre code R. En particulier, pensez à :
    • Indenter le code
    • Aérer le code
    • Utiliser la convention snake_case (date_naissance) …

3 Droits Cerise

3.1 Habilitations

La majorité des espaces présents sous Cerise sont soumis à des régimes d’habilitations.

Pour les nouveaux arrivants, ce sont les responsables hiérarchiques qui demandent les habilitations sur l’ensemble des outils.

La procédure à suivre est disponible sous Pistache sur cette page.

Pour toutes les autres habilitations supplémentaires au fil de l’eau qui concernent Cerise, vous pouvez faire une demande à la BAL d’assistance :

3.2 Matrice des habilitations

3.3 Rendre un dossier (ou un fichier) modifiable par vos collègues

Des ACL (Access Control List) sont appliqués dans Cerise.
Il s’agit d’un mécanisme de gestion des droits qui permet de définir qui peut accéder à quelles ressources et avec quels niveaux de permissions.

Côté utilisateurs, cela implique quelques règles d’usage à suivre — pour éviter notamment la non-modification d’un dossier/fichier par vos collègues.

Règle générale :

Ne pas faire “Déplacer…” des dossiers/fichiers depuis son espace personnel vers un espace de partage mais faire un “Copier vers …”

4 Assistance

4.1 À qui demander de l’aide sur Cerise/R ?

Les demandes d’assistances et les remontée de bugs sont à adresser à : .

  • Directement par mail;
  • Via cette page en cliquant sur le bouton :


4.2 Comment demander de l’aide sur R ?

Essayez autant que possible de suivre les conseils contenus dans cette page ou celle-ci avant de poser votre question. Celle-ci doit contenir les éléments suivants :

  • Une description en une phrase du problème que vous rencontrez
  • Le code de l’exemple minimal reproductible
  • Ce que vous obtenez (données, messages d’erreur éventuels dans les logs)
  • Ce que vous aimeriez obtenir.

Votre demande sera d’autant plus vite traitée que celle-ci sera facilement reproductible par l’équipe d’assistance.

  • Lien vers le canal Tchap R inter-ministériel
  • Lien vers le forum R du SSP

4.3 Mise à disposition plateforme de test

Cerise PPRD : https://rstudio-pprd.agriculture.rie.gouv.fr

Objectif :
- Test des programmes sur la nouvelle version de R à venir
- Montée de version des packages et mise à jour des programmes le cas échéant

Contexte de test :
- Habilitations : Iso-production
- Système de fichiers / arborescence irrégulièrement synchronisé avec Cerise de PROD
- Tests ouverts à tous les utilisateurs Cerise

Alimentation des données d’enquêtes Capibara activées à la demande par le BQIS.

5 Onyxia

5.1 Onyxia - SSP Cloud

  • Onyxia : une solution logicielle open source de traitement de données moderne développée par l’Insee

  • SSP Cloud : une instance d’Onyxia déployée, maintenue et opérée par le SSP (Service Statistique Public)

5.2 Avantages d’Onyxia

Un Datalab dimensionné pour les usages innovants

5.3 Remarques

  • Le Datalab est une plateforme mutualisée : les ressources utilisées par les services sont partagées entre les différents utilisateurs.

  • Pas de sauvegarde “classique” du code informatique dans le Datalab => l’utilisation du contrôle de version avec Git est obligatoire.

  • Même chose pour le stockage des données : la solution de stockage de fichiers associée au Datalab est MinIO, un système de stockage d’objets basé sur le cloud, compatible avec l’API S3 d’Amazon.

5.4 Aperçu du catalogue de services

5.5 Un espace dédié à l’expérimentation

  • Travail uniquement sur des données ouvertes et non sensibles
  • Hébergement d’hackatons
  • Déploiement de dataviz’
    …

5.6 Bibliographie

  • La documentation du SSP Cloud est accessible sur cette page.