Par Alexandre Lepage, Directeur principal, Entreprise numérique
Au printemps 2018, nouvelle économie oblige, Larochelle proposait un renforcement de son expertise en mettant l’accent sur trois thèmes : agilité, données et infonuagique. Au printemps 2020, en pleine crise de la COVID-19, les mesures de confinement et de distanciation que nous vivons et continuerons à vivre, pour la plupart pendant un bon moment encore, ne font que confirmer la pertinence de nos choix corporatifs.
Parmi ceux-ci, en continuité à notre longue expérience en valorisation des données, mentionnons en particulier nos efforts significatifs dans l’appropriation d’une spécialité en migration d’entrepôts de données dans l’infonuagique et en développement de solutions analytiques sur des plateformes modernes telles Snowflake.
Pourquoi les entrepôts de données et les solutions analytiques ?
Qu’elles soient nommées entrepôt, comptoir, voûte ou lac, concevoir, développer et mettre en place des solutions analytiques sont dans l’ADN de Larochelle depuis les tous débuts de l’entreprise en 2006. Aider les organisations à collecter, stocker, enrichir et harmoniser leurs données pour les exposer de manière efficace par des rapports, tableaux de bord, visualisations dynamiques ou analyses plus sophistiquées demeurent un mantra pour nous. En effet, que ce soit pour optimiser leurs processus, supporter la prise de décisions, se donner un avantage compétitif ou simplement survivre, nous croyons plus que jamais que les organisations gagnent à tirer profit de leurs données. Et l’immense crise sanitaire que nous traversons actuellement, ainsi que les terribles crises financière et sociale qui suivront, n’y changeront rien, bien au contraire.
Pourquoi l’infonuagique ?
Les motivations pour une organisation d’externaliser une partie ou la totalité de son parc informatique vers l’infonuagique peuvent être multiples. Oui, bénéficier d’expertises ou de capacités parfois absentes, optimiser la qualité des services et réduire les risques, réallouer des ressources humaines et matérielles ou encore convertir des dépenses en capital en coûts d’exploitation sont des raisons louables de le faire mais, dans un contexte de solutions analytiques, quelques caractéristiques de l’infonuagique se démarquent :
- extensibilité (« scalability ») : qu’elle soit verticale ou horizontale, manuelle ou automatique, l’extensibilité est la capacité de l’infrastructure d’un système à pouvoir s’ajuster efficacement en prévision à de nouvelles charges de travail, par exemple par l’ajout de ressources de stockage ou computationnelles;
- élasticité : l’élasticité, quant à elle, est cette capacité d’un système d’ajuster dynamiquement ses ressources en fonction de charges de travail qui changent en hausse ou en baisse dans le temps.
Extensibilité et élasticité ne sont pas exclusives à l’infonuagique mais force est de reconnaître que cette dernière les élève à un niveau supérieur. Et si, de plus, on ne paie que pour les ressources informatiques effectivement consommées lorsque consommées, on commence à mieux comprendre l’engouement de plusieurs pour l’infonuagique.
Un entrepôt de données sur site n’est pas un problème en soi et peut demeurer un choix tout à fait viable. Mais quand on sait qu’un tel choix se fait régulièrement au prix d’investissements initiaux et récurrents significatifs (ex. serveurs, disques, licences) généralement en prévision de périodes de pointe très souvent ponctuelles et prévisibles (ex. rafraîchissement ETL quelques heures chaque nuit, génération de rapports prédéfinis au début de chaque mois, quelques requêtes ad hoc exécutées ici et là : malgré ce que plusieurs commentateurs peuvent laisser croire, ce scénario est encore d’actualité en 2020), on peut se demander si on en a toujours pour son argent. Dans un contexte de crise bientôt financière, lorsque les organisations devront mesurer plus prudemment leurs dépenses, une solution analytique dans l’infonuagique peut s’avérer une option économiquement sensée.
Pourquoi Snowflake ?
L‘offre pour la prise en charge d’entrepôts de données ou autres solutions analytiques dans l’infonuagique est nombreuse et variée : elle va du déploiement d’une solution existante dans un modèle IaaS (« Infrastructure as a Service ») selon une approche « lift & shift » à l’hébergement chez un parti tiers quelconque en mode service-géré en passant par le développement de nouvelles applications à l’aide de diverses ressources disponibles en mode PaaS (« Platform as a service ») chez divers fournisseurs (ex. Azure Data Warehouse, maintenant Synapse, chez Microsoft, Redshift chez Amazon, BigQuery chez Google). Toutefois, aucune de ces propositions n’a attiré notre attention autant que celle de Snowflake.
Depuis maintenant cinq ans, Snowflake offre en disponibilité générale une solution entièrement infonuagique pour entrepôts de données selon un modèle SaaS (« Solution as a Service »), ou DWaaS (« Data Warehouse as a Service ») pour citer Snowflake, dans lequel un maximum des responsabilités typiques sont déléguées au fournisseur (infrastructure, stockage, ressources computationnelles, mises à jour logicielle) et sont facturées suivant une formule par abonnement.
A priori, Snowflake est d’abord et avant tout un engin propriétaire de bases de données relationnelles pouvant être interrogées à l’aide d’une syntaxe SQL conforme ANSI. Mais s’arrêter ici serait plutôt réducteur. Snowflake est surtout un engin de base de données relationnelles conçu pour l’infonuagique et non pas adapté à l’infonuagique, comme peuvent l’être certaines solutions compétitrices.
Parmi les avantages que présente Snowflake, notons bien sûr l’élasticité mentionnée plus tôt mais également certaines fonctionnalités particulièrement pertinentes dans un contexte de solutions analytiques modernes :
- séparation nette entre ressources de stockage et computationnelles;
- optimisation automatisée (ex. indexation, partitionnement);
- accès convivial à des versions antérieures des données (« time travel »);
- clones sans duplication de données;
- partage.
Snowflake n’est pas une solution ETL comme telle, mais on peut y charger des données à l’aide d’à peu près n’importe quelle technologie qui supporte un connecteur JDBC ou ODBC. De même, Snowflake n’est pas un outil de visualisation ou d’analyse mais on peut y interroger les données à l’aide de la plupart des outils communs supportant les mêmes connecteurs.
Notons également que la plateforme est disponible sur AWS, Azure et depuis peu sur GCP.
Attention : ce billet ne se veut pas une infopub pour Snowflake. La proposition est riche en fonctionnalités mais présente également quelques limites qui seront les sujets d’autres billets à venir. Pour le moment, contentons-nous d’affirmer que, selon notre expérience du produit, si une qualité résume bien Snowflake, c’est son excellent rapport qualité-prix. Dans le contexte actuel, ce n’est pas rien !
Et ce n’est pas un hasard si Larochelle annonçait dernièrement qu’elle investissait dans la certification de nombreux talents et dans le développement continu d’une expertise dans la migration ou la réalisation d’entrepôts de données et autres solutions analytiques sur Snowflake. Nous croyons que c’est le bon produit, au bon moment !