Presto SQL, maintenant Trino, apporte la puissance des avantages des moteurs de requête Big Data Analytics aux lacs de données
Publié: 2021-05-27Le traitement des mégadonnées est l'un des aspects critiques de cette ère numérique. Les entreprises utilisent davantage l'intelligence artificielle, l'apprentissage automatique et l'analyse de données, qui produisent et collectent davantage de données. Par conséquent, il en résulte des quantités massives de données qui doivent être interrogées et analysées efficacement.
Voici où le cloud computing et Presto peuvent vous aider.
Qu'est-ce que Presto ?
Selon la définition d'Amazon AWS : Presto est un moteur de requête SQL distribué, créé pour effectuer des requêtes analytiques rapides sur des ensembles de données de toute taille. Il a été rebaptisé fin 2020 sous le nom de Trino pour séparer le projet de Prestodb.
Presto a l'avantage d'être open-source, ce qui signifie qu'il est mis à jour régulièrement et que les développeurs y contribuent souvent.
La plateforme Presto fonctionne avec des sources de données non relationnelles telles que :
- AmazonS3
- HadoopName
- HDFS
- MongoDB
- HBase
Et des bases de données relationnelles comme :
- Mon espace
- PostgreSQL et
- Serveur MS SQL
Avec Presto, vous pouvez interroger des données où qu'elles soient stockées. Cela signifie que vous n'avez pas besoin de transférer les données dans une base de données relationnelle ou un entrepôt de données. Presto a été créé pour SQL et prend en charge la sémantique SQL standard. Cela inclut les sous-requêtes, les requêtes complexes, les jointures externes, les décomptes distincts et les centiles approximatifs.
L'exécution des requêtes est également plus rapide, car elle s'exécute parallèlement à une architecture basée sur la mémoire. Par conséquent, vous n'avez plus à vous soucier du temps nécessaire pour interroger une base de données massive. Les résultats reviennent en quelques secondes.
Découvrez comment déployer Presto et son architecture sur leur documentation.
A lire également : Comment mettre à jour les pilotes de périphériques sous Windows 10 ? {Guide simplifié}
Concepts clés
Les concepts clés de SQL sont largement connus. Pour comprendre le fonctionnement de Presto, nous devons d'abord comprendre ses concepts de base.
Type de serveur
Presto utilise deux types de serveurs : le serveur coordinateur et le serveur travailleur . Les nœuds de travail traitent les requêtes, en récupérant les données des connecteurs. Le coordinateur récupère les résultats et les envoie au client. Les serveurs de coordination analysent également les instructions et gèrent les nœuds.
Il fonctionne de manière similaire aux systèmes de gestion de base de données Massive Parallel Processing.
Source de l'image : tutoriels
Presto utilise des connecteurs pour établir un lien entre le système distribué et la source, par exemple Amazon S3. Les nombreux connecteurs de Presto, vers des sources relationnelles et non relationnelles, rendent le système extensible à presque toutes les sources de données.

Lisez également : Comment mettre à jour les pilotes sous Windows 10,8,7 - Mettre à jour les pilotes de périphérique
Comment Presto traite les requêtes ?
Lorsque presto reçoit une requête, il l'exécute en la divisant en plusieurs étapes. Généralement, le système crée une étape racine et des étapes associées. Les étapes sont ensuite réparties en tâches sur les nœuds de travail.
Avantages d'utiliser Presto
Presto devient très populaire auprès des grandes entreprises comme Netflix, Facebook, Atlassian et Airbnb. Par exemple, Facebook utilise Presto pour traiter un pétaoctet de données chaque jour, exécutant plus de 30 000 requêtes.
Presto comprend deux projets open source distincts : PrestoSQL (maintenant appelé Trino) et PrestoDB. Il est très populaire pour un large éventail de cas d'utilisation, dans différents types de lacs de données et d'entrepôts de données. Examinons quelques-uns des avantages qui rendent Presto si populaire.
1. Intégration facile
L'un des principaux avantages de Presto est qu'il s'intègre à votre système de données existant sans nécessiter de modifications. Par conséquent, en ajoutant Presto, vous ajoutez des capacités d'analyse rapide sans avoir à modifier votre système existant.
2. Des performances plus rapides
L'une des raisons pour lesquelles Presto a été développé était que la ruche Apache existante ne fonctionnait pas bien avec les requêtes interactives. Presto est conçu pour gérer les requêtes BI interactives. En outre, il suit le modèle push, traitant une requête SQL en utilisant plusieurs étapes simultanément, ce qui signifie que toutes les étapes sont mises en pipeline sans attendre entre les étapes.
Presto dispose également d'un transfert de données de mémoire à mémoire, sans qu'il soit nécessaire d'écrire des données sur le disque, ce qui améliore les performances.
3. Conçu pour le cloud
Presto exécute le stockage et calcule séparément, ce qui le rend très adapté aux environnements cloud. Les entreprises utilisant PrestoSQL peuvent facilement évoluer vers le haut ou vers le bas en fonction de la charge sans entraîner de perte de données. Cela peut se produire car le cluster Presto ne stocke aucune donnée.
4. Interface SQL unifiée
SQL est le langage le plus populaire pour l'analyse de données. Les scientifiques des données, les analystes et les ingénieurs utilisent SQL pour traiter, analyser et tester les données, en les intégrant aux outils d'informatique décisionnelle.
Presto a la capacité non seulement d'interroger des données à partir de sources SQL, mais également à partir de bases de données NoSQL comme Elasticsearch et Cassandra. Il prend en charge la connectivité ANSI-SQL et Postgres. Cela donne à Presto une polyvalence que les autres systèmes distribués n'ont pas.
L'interface est idéale pour les données de taille moyenne car elle possède les mêmes fonctions de fenêtre que PostgreSQL.
Lisez également : Comment mettre à jour les pilotes graphiques dans Windows 10 {Guide simple}
Pourquoi pouvez-vous utiliser Presto ?
Presto est utilisé dans toutes les industries pour une grande variété de cas d'utilisation. Il est particulièrement adapté aux requêtes ad-hoc et interactives. Explorons quelques cas d'utilisation courants :
Analyse des lacs de données
Vous pouvez utiliser PrestoSQL pour interroger des données sur un lac de données sans avoir à transformer les données. Presto vous permet d'interroger les données là où elles se trouvent. Par conséquent, vous pouvez l'utiliser pour renforcer l'analyse de votre lac de données en interrogeant des données structurées et non structurées.
Interrogation ad hoc
Presto vous permet d'exécuter des requêtes à tout moment, quel que soit l'endroit où résident vos données. Mieux encore, avec les connecteurs Presto, vos équipes peuvent accéder à des ensembles de données dans un large éventail de sources de données, et comme les requêtes sont exécutées en quelques secondes au lieu d'heures, votre système fonctionne plus rapidement.
ETL par lots
Au lieu d'utiliser des systèmes de traitement par lots hérités, vous pouvez utiliser Presto pour exécuter des requêtes efficaces sur les ressources. Vous pouvez agréger les données de plusieurs sources de données et effectuer des requêtes à haut débit.
En résumé, Presto présente plusieurs avantages pour les entreprises qui doivent traiter de grandes quantités de données, effectuer des requêtes ad hoc et interactives et exécuter des analyses à partir de sources de données disparates.