New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initialisation (1er jet) pour la fiche sur Parquet #475
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merci @ddotta ! Super boulot !
Quelques propositions de modifications et une question.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
relecture et suggestions pour la première partie de la fiche, merci @damiendotta !
Merci @ddotta c'est super comme projet de fiche. Je t'ai fait des suggestions sur la première partie, pas encore eu le temps d'aller voir la suite |
Merci @RLesur et @linogaliana pour vos premières relectures ! |
Une question supplémentaire : je la pose mais n'ai pas réellement d'avis, faut peut-être qu'on en discute Faut-il parler des dates au moment de la création d'un fichier parquet ? On sait que c'est un des plus gros pièges qui nous attend et que si nous ne prenons pas garde, on peut avoir de gros problèmes avec ça à terme. Faut-il dès maintenant inclure la recommandation qu'avait fait Pengfei ? cf. https://github.com/pengfei99/ParquetPyArrow#252-timestamp |
Ah oui je n'avais pas du tout en tête cette question des dates 🧐 c'est très intéressant en tout cas, merci pour le partage Romain ! Cela peut poser des problèmes que je n'avais pas en tête... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merci @ddotta pour cette proposition! Voici une première série de remarques. Je continuerai un peu plus tard.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suite (mais pas fin!) de mes commentaires
Le package `arrow` présente une fonctionnalité supplémentaire qui consiste à créer et lire un fichier **Parquet partitionné**. Partitionner un fichier revient à le "découper" selon une clé de partitionnement (qui peut prendre la forme par exemple d'une ou de plusieurs variables). Cela permet de pouvoir exécuter du code sur une table volumineuse qui dépasse la mémoire de son espace de travail dans la mesure où les requêtes seront alors exécutées selon **un plan d'exécution optimal**. | ||
|
||
::: {.callout-conseil .icon} | ||
- Prendre le temps d'identifier les variables de partitionnement d'un fichier **Parquet** n'est pas du temps perdu dans la mesure où il permet par la suite des gains d'efficacité sur les traitements et facilite la maintenance du fichier sur le long terme. | ||
::: | ||
|
||
Pour créer des fichiers **Parquet** partitionnés, il existe la fonction [`write_dataset()`](https://arrow.apache.org/docs/r/reference/write_dataset.html). Voici ce que ça donne sur le fichier de la BPE : | ||
|
||
```{r, eval = FALSE} | ||
write_dataset( | ||
dataset = read_parquet("Data/BPE_ENS.parquet"), | ||
path = "Data/", | ||
partitioning = c("REG"), # la variable de partitionnement | ||
format="parquet" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je pense qu'il faudrait déplacer plus haut l'explication sur la création des fichiers partitionnés (dans la partie écrire des fichiers parquet).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok je te laisse faire
@oliviermeslin c'est bon pour toutes tes remarques sauf le fait de remonter le paragraphe sur les fichiers partitionnés |
Salut @oliviermeslin, @linogaliana et @py-b !
Comme promis, une modeste proposition et un 1er jet pour la fiche sur Parquet.
Je l'ai intitulée "Importer des fichiers au format Parquet" mais elle couvre davantage de choses que l'import.
Je vous laisse regarder et bien sûr compléter/corriger/réorganiser les paragraphes au besoin.
Peut-être voir aussi si on la laisse dans le bloc de fiches
Importer des données avec R
?C'est pas évident de choisir les thèmes qui peuvent être abordés dans une telle fiche parce que le sujet est vaste... 😮💨