Skip to content

Perfug #61 : Génération de code, moteur Catalyst… Démystifions Apache Spark !

Photo of PerfUG
Hosted By
PerfUG
Perfug #61 : Génération de code, moteur Catalyst… Démystifions Apache Spark !

Details

Apache Spark est un framework de calcul distribué écrit en Scala qui s’est largement démocratisé ces dernières années. Au cours des dernières versions, Apache Spark s’est doté d’un moteur SQL avec génération de code à la volée, qui lui permet de profiter des diverses optimisations existantes dans le domaine.

Afin de comprendre en détail le fonctionnement de ce moteur SQL, nous allons réécrire une version simplifiée mais fonctionnelle du moteur qui s’appuie sur le même principe que le moteur Catalyst utilisé par Spark : étape par étape, nous allons parser une requête SQL, calculer les plans logique et physique et comprendre en quoi la génération de code à la volée permet d’améliorer les performances lors de l'exécution.

Nous nous attarderons également sur certains aspects plus théoriques qui sont aujourd’hui exploités par la plupart des moteurs SQL, tel que le Volcano Model, les optimisations, etc.

Adrien Besnard
Développeur Java de longue date, Adrien travaille aujourd'hui majoritairement en Scala et s'est spécialisé dans l'utilisation framework Apache Spark

Marc Alonso
Développeur Scala depuis plusieurs années, Marc travaille chez Octo Technology sur des problématiques liées au traitement et au stockage de la donnée, notamment en tant qu'expert Spark.

Photo of PerfUG - Performance User Group group
PerfUG - Performance User Group
See more events
OCTO Technology
34 avenue de l'Opéra · Paris