
Créer un Delta Lake avec Apache Spark
Il existe différents formats de fichier pour stocker la donnée : parquet, avro, csv. Connaissez-vous le format Delta Lake ? Découvrons ensemble les fonctionnalités de ce format.
Progression
Nous allons créer un fichier translator.proto
dans le dossier proto
.
syntax = "proto3"; package proto;
Nous allons déclarer dans ce fichier un service gRPC. La méthode Translate
aura comme payload TranslateRequest
et retournera TranslateResponse
.
service Translator { rpc Translate(TranslateRequest) returns (TranslateResponse) {} }
Nous allons maintenant déclarer les messages TranslateRequest
et TranslateResponse
.
message TranslateRequest { string text = 1; Language language = 2; } message TranslateResponse { string text = 1; }
Petite subtilité ici, les chaînes de caractères ne sont pas compressées avec protobuf. Afin d'optimiser les traitements, on déclare pour language
que les valeurs possibles sont en
et fr
. Pour ce faire on déclare une enum
Language
.
enum Language { en = 0; fr = 1; }
Notre fichier Protobuf est terminé et devrait ressembler à ça :
syntax = "proto3"; package proto; enum Language { en = 0; fr = 1; } message TranslateRequest { string text = 1; Language language = 2; } message TranslateResponse { string text = 1; } service Translator { rpc Translate(TranslateRequest) returns (TranslateResponse) {} }
Nous allons commencer par générer le fichier de config de Prototool.
prototool init
Nous allons maintenant éditer la config pour qu'il génère notre service gRPC en Go.
gen: go_options: import_path: translator-service/ plugins: - name: go type: go flags: plugins=grpc output: .
Nous pouvons maintenant générer les fichiers Go.
prototool gen
Dans le dossier proto
, nous avons maintenant un fichier translator.pb.go
.
Auteur(s)
Quentin Neyrat
Back-end developer @ Eleven Labs
Vous souhaitez en savoir plus sur le sujet ?
Organisons un échange !
Notre équipe d'experts répond à toutes vos questions.
Nous contacterDécouvrez nos autres contenus dans le même thème
Il existe différents formats de fichier pour stocker la donnée : parquet, avro, csv. Connaissez-vous le format Delta Lake ? Découvrons ensemble les fonctionnalités de ce format.
Il arrive qu'une fonction ou action ne puisse pas être réalisée à un instant donné. Cela peut être dû à plusieurs facteurs qui ne sont pas maîtrisés. Il est alors possible d'effectuer une nouvelle tentative plus tard. Dans cet article, voyons comment le faire.
Le formatage du code est une source de querelle entre les membres d'une équipe. Résolvons-le une bonne fois pour toute avec le formateur de code Black.