Databricks vs Snowflake : le data scientist contre le business analyst

Databricks vs Snowflake : le data scientist contre le business analyst Nativement cloud, les deux modern data platforms ont révolutionné la façon d'entreposer et de traiter les données. Elles se distinguent toutefois par leur approche et la population visée.

Le concept de modern data platform aura donné un sérieux coup de vieux aux data warehouses et aux data lakes. Nativement cloud, ce type de plateforme offre la puissance de calcul et l'élasticité du nuage. Une modern data platform couvre tout le cycle de vie de la donnée, de la collecte à la valorisation en passant par l'organisation et la transformation. Snowflake et Databricks sont les deux principaux représentants de cette nouvelle génération. Par leur approche et leur positionnement, leurs offres répondent toutefois à des cas d'usage différents. Pour Arnaud Col, responsable de la practice data chez Ippon Technologies, le choix s'opérera en fonction de la culture data de l'entreprise.

Comparatif Snowflake vs Databricks
  Databricks Snowflake
Public de data scientists X  
Public de business analysts   X
Approche open source X  
Requêtage SQL X X
Facturation à l'usage X X
Compatible AWS, Microsoft Azure, Google Cloud X X
Références clients HSBC, H&M, Condé Nast, Electrolux, Publicis, Crédit Suisse, BP, Colas… Pepsico, Pizza Hut, Allianz, Capital One, Dropbox, Nielsen… 
Tarification 0,40 dollars par Databricks Unit (DBU) en version standard (calcul tout usage).  A la demande ou par capacité préachetée (24,5 dollars par To et par mois pour la zone AWS Francfort par exemple)

Pour Arnaud Col, une entreprise orientée data engineering et data science privilégiera Databricks. "Cette solution recourt à des notebooks interactifs qui utilisent les langages Python, Scala, R voire SQL. En tant que contributeur principal de Spark, Databricks propose un environnement de traitements complexes de type ETL (pour extract, transform and load, ndlr) hautement distribué. Il répond aussi à des cas d'utilisation dans l'IA et le traitement de flux de données en streaming notamment pour l'IoT", estime le consultant.

De son côté, Snowflake prend en charge le stockage et le calcul de données et s'appuie sur le langage SQL. "Les sociétés qui ont l'habitude de manipuler des requêtes SQL et disposent de gros volumes dans des systèmes de gestion de bases de données et des data warehouses s'orienteront naturellement vers cette solution", argue Arnaud Col. "Les data analysts sont habitués à interroger les données de cette manière. Ils peuvent immédiatement bénéficier de la puissance de Snowflake en branchant directement leurs outils d'analyse et de data visualisation sur la plateforme. Cette dernière va, par ailleurs, organiser automatiquement la répartition physique des données, sans intervention humaine."

Snowflake tient, en effet, la promesse de la modern data platform en séparant les nœuds de calcul et des nœuds de stockage. "A la différence d'un data warehouse traditionnel, cela permet d'augmenter l'espace de stockage sans accroître la puissance de calcul", poursuit Arnaud Col. "Les nœuds de calcul démarrent dès qu'ils sont sollicités par une requête SQL et s'arrêtent ensuite." Ce mode opératoire nécessite peu d'administration et répond, comme Databricks, au mode de facturation à l'usage.

Data scientist ou expert BI ?

Le facteur discriminant se porte donc sur l'utilisation du code ou du requêtage SQL. "Les data scientists aiment manipuler du Python plutôt que SQL. C'est l'inverse pour les business analysts. Databricks se prête aux cas d'usage dans le prédictif et le streaming, Snowflake au reporting et à la mise en qualité de données", résume Arnaud Col. Les organisations qui privilégient les traitements massifs exécuté sur Spark se tourneront vers la première solution et celles qui veulent faire de la business intelligence (BI) et des traitements SQL vers la seconde.

"Databricks présente l'avantage d'accueillir toutes les bonnes pratiques du développement logiciel"

Si cette ligne de partage est pertinente en 2021, les frontières ont néanmoins tendance à s'estomper avec l'enrichissement permanent des deux plateformes. "Databricks est de plus en plus performant pour répondre aux requêtes SQL. Et, inversement, Spark, Python et des capacités en data science arrivent sur Snowflake" observe Arnaud Col. Il est aussi possible de recourir aux deux solutions comme l'a fait Ippon Technologies pour une entreprisse travaillant dans la distribution de contenus numériques.

Dans le projet en question, Databricks sert à l'extraction et à la préparation de données complexes issues de différentes sources. Un protocole de tests unitaires a été conçu pour mener des tests de non-régression en s'appuyant sur l'architecture Spark. "Databricks présente l'avantage d'accueillir toutes les bonnes pratiques du développement logiciel, à la différence de l'approche SQL", estime Arnaud Col. Une fois les datasets préparés, on peut les ingérer dans Snowflake via Snowpipe. "Snowflake prend le relais en tant qu'espace de partage et plateforme de référence des business units", complète le spécialiste. "Les experts métiers peuvent fusionner des données issues de différents silos et brancher des outils de dataviz, notamment Power BI. Ils créent des rapports, des tableaux de bord depuis Snowflake et peuvent partager leurs datasets avec clients, partenaires ou fournisseurs."

Exclusivement commercialisés en mode SaaS, Snowflake et Databricks sont tous deux hébergés à la fois sur les cloud d'Amazon, de Google et de Microsoft.

Snowflake, premier data warehouse cloud-natif

A l'origine de Snowflake, on trouve deux français. Anciens d'Oracle, Thierry Cruanes et Benoît Dageville ont compris dès 2012 que l'arrivée d'Hadoop et plus généralement l'approche big data allaient changer en profondeur la façon de construire les entrepôts de données. Snowflake est le premier éditeur à proposer un data warehouse nativement cloud. Il repose sur trois couches distinctes : un système de stockage, une infrastructure de traitement des requêtes et une galaxie de services (authentification, sécurité...).

Snowflake s'appuie sur une architecture hybride, mêlant disque partagé (ou shared-disk architecture) et architecture isolée (share nothing architecture). Ce qui permet d'effectuer des requêtes complexes sur un large volume de données. Si les experts en BI sont les premiers utilisateurs de la plateforme, les data scientists se voient proposer des connecteurs vers des solutions de machine learning et de data science telles qu'AWS SageMaker, Dataiku ou... Databricks.  

Jusqu'à son introduction en Bourse en septembre 2020, Snowflake avait levé 1,4 milliard de dollars. Cette IPO, l'une des plus importantes du secteur du logiciel, a valorisé la société californienne plus de 33 milliards de dollars. A l'issue de son deuxième trimestre fiscal 2021 clos le 31 juillet dernier, Snowflake enregistre un chiffre d'affaires de 272,2 millions de dollars, en hausse de 104% sur un an. La société revendique 4 990 clients, dont 212 figurent au Fortune 500.

Databricks porté par les pères de Spark

Fondée par les créateurs d'Apache Spark mais aussi des projet open source Delta Lake et MLflow, Databricks développe une plateforme fournissant une gestion de clusters autogérés et préconfigurés et des notebooks collaboratifs (Python, R, Scala, SQL). Baptisée Lakehouse, elle est conçue pour combiner le meilleur du data warehouse et du data lake en unifiant dans un même environnement les jeux de données, les outils d'analyse et des frameworks de machine learning tels que PyTorch, TensorFlow ou Scikit-Learn.

Databricks s'appuie sur le modèle MLflow (contraction de machine learning et workflow) pour faciliter la gestion et la réutilisation des modèles d'IA. L'acquisition de Redash en 2020 lui permet d'interroger et de visualiser plus facilement les données en utilisant SQL. En termes de tarification, la société de San Francisco a institué une unité baptisée DBU (Databricks Unit) qui correspond à une heure d'utilisation dans des conditions standards.

Databricks multiplie les levées de fonds. Après avoir récolté 1 milliard de dollars en février 2021, l'éditeur empochait 1,6 milliard de dollars fin août. Depuis sa création en 2013, l'éditeur a levé au total 3,5 milliards en huit tours de table. Gartner classe Databricks parmi leader de son quadrant magique des plateformes de data science et machine learning. Le cabinet d'études rappelle que cette solution cible un public d'experts en data science et n'est pas adaptés aux citizen developpers et autres adeptes du low/no-code.