mercredi, 24 avril 2024

Revue Dremio Cloud : Un lac de données rapide et flexible sur AWS

Les entrepôts de données et les lacs de données peuvent contenir de grandes quantités d’informations à analyser. Comme vous vous en souvenez peut-être, les entrepôts d’informations se composent de données organisées et structurées, ont un schéma prédéfini qui est utilisé lors de la composition des informations, font appel à de grandes quantités de CPU, de SSD et de RAM pour la vitesse, et sont prévu pour être utilisé par les analystes de l’entreprise. Les lacs de données contiennent beaucoup plus d’informations qui peuvent être non structurées ou structurées, d’abord enregistrées brutes et dans leur format natif, utilisent normalement des disques rotatifs peu coûteux, utilisent des schémas lors de la lecture des données, filtrent et transforment les informations brutes pour analyse, et sont destinés à utilisation par les ingénieurs de données et les chercheurs en information dans un premier temps, les analystes commerciaux pouvant utiliser les informations une fois qu’elles ont été réellement conservées.

Les lacs d’information, tels que le sujet de cette évaluation, Dremio, comblent le fossé entre installations de stockage de l’information et lacs d’information. Ils commencent par un lac de données et ajoutent SQL rapide, un format de stockage en colonnes plus efficace, un catalogue d’informations et des analyses.

Dremio décrit son produit comme une plate-forme de lac d’informations pour les équipes qui connaissent et apprécient SQL. Ses arguments de vente sont

  • SQL pour tous, de l’utilisateur de l’entreprise à l’ingénieur de données ;
  • Totalement géré, avec très peu de maintenance des applications logicielles et des données ;
  • Prise en charge de toute information, avec la possibilité de consommer des données dans la maison du lac ou une enquête en place ; et
  • Aucun verrouillage, avec la polyvalence d’utiliser n’importe quel moteur aujourd’hui et demain.

Selon Dremio, les installations de stockage de données dans le cloud telles que Snowflake, Azure Synapse, et Amazon Redshift créent un verrouillage en raison du fait que les informations se trouvent à l’intérieur de l’entrepôt. Je ne suis pas tout à fait d’accord avec cela, mais je conviens qu’il est vraiment difficile de déplacer de grandes quantités d’informations d’un système cloud à un autre.

Selon Dremio, les lacs d’informations cloud tels que Dremio et Glow offrent plus polyvalence car les données sont sauvegardées là où plusieurs moteurs peuvent les exploiter. Cela est vrai. Dremio déclare 3 avantages qui en découlent :

  1. Polyvalence permettant d’utiliser plusieurs moteurs de pointe sur exactement les mêmes données et cas d’utilisation ;
  2. Facilité d’adoption de moteurs supplémentaires aujourd’hui; et
  3. Facile à adopter de nouveaux moteurs à l’avenir, pointez-les simplement vers les informations.

Les rivaux de Dremio incluent la plate-forme Databricks Lakehouse, Ahana Presto, Trino (anciennement Presto SQL), Amazon Athena et Apache Glow open source. Des rivaux moins directs sont les installations de stockage de données qui prennent en charge les tables externes, telles que Snowflake et Azure Synapse.

Dremio a en fait décrit toutes les installations de stockage d’informations commerciales comme leurs rivaux, mais je rejette cela comme du marketing, sinon un véritable battage publicitaire . Après tout, les lacs d’informations et les installations de stockage de données répondent à divers cas d’utilisation et servent différents utilisateurs, bien que les data lakehouses couvrent au moins en partie les 2 catégories.

Présentation de Dremio Cloud

Le logiciel de serveur Dremio est une application Java Information Lakehouse pour Linux qui peut être déployée sur des clusters Kubernetes, AWS et Azure. Dremio Cloud est essentiellement l’application logicielle serveur Dremio fonctionnant en tant que service entièrement géré sur AWS.

Les fonctions de Dremio Cloud sont réparties entre les clouds privés virtuels (VPC), celui de Dremio et le vôtre, comme indiqué dans le schéma ci-dessous. Le VPC de Dremio fonctionne comme le plan de contrôle. Votre VPC fonctionne comme un plan d’exécution. Si vous utilisez plusieurs comptes cloud avec Dremio Cloud, chaque VPC agit comme un plan d’exécution.

Le plan d’exécution contient de nombreux clusters, appelés moteurs de calcul. Le plan de contrôle traite les requêtes SQL avec le moteur de requête Sonar et les envoie via un gestionnaire de moteur, qui les envoie à un moteur de calcul approprié en fonction de vos règles.

Dremio déclare des temps d’action inférieurs à la seconde avec « réflexions,  » qui sont des matérialisations enrichies de données sources ou d’enquêtes, assimilables à des vues émergentes. Dremio revendique une vitesse brute 3 fois plus rapide que Trino (une implémentation du moteur Presto SQL) grâce à Apache Arrow, un format de mémoire standardisé orienté colonne. Dremio affirme également, sans définir de point de comparaison, que les ingénieurs de données peuvent ingérer, modifier et organiser des données en une fraction du temps grâce à SQL DML, dbt et à la couche sémantique de Dremio.

Dremio n’a pas l’intelligence d’entreprise, l’intelligence artificielle ou ses propres capacités de connaissance approfondie, mais il dispose de pilotes et de connecteurs qui prennent en charge les logiciels BI, ML et DL, tels que Tableau, Power BI et Jupyter Notebooks. Il peut également être lié à des sources d’informations dans des tables de stockage Lakehouse et dans des bases de données relationnelles externes.

IDG

Dremio Cloud est divisé en deux clouds personnels virtuels Amazon (VPC). Le VPC de Dremio héberge l’avion de contrôle, y compris le traitement SQL. Votre VPC héberge l’avion d’exécution, qui se compose des moteurs de calcul.

Résumé Dremio Arctic

Dremio Arctic est un métastore intelligent pour Apache Iceberg, un format de table ouvert pour des ensembles de données analytiques substantiels, propulsé par Nessie, une brochure native d’Apache Iceberg. Arctic offre une option cloud native contemporaine à Hive Metastore, et est fourni par Dremio en tant que service gratuit pour toujours. Arctic offre les fonctionnalités suivantes :

  • Gestion de l’information de type Git : apporte un contrôle de variation de type Git aux lacs d’informations, permettant aux ingénieurs de l’information de gérer le lac de données avec le mêmes meilleures pratiques Git permet le développement d’applications logicielles, y compris les dédicaces, les balises et les branches.
  • Optimisation des données (à venir) : préserve et optimise instantanément les données pour permettre un traitement plus rapide et moins l’effort manuel impliqué dans la manipulation d’un lac. Cela inclut de s’assurer que les données sont mises en colonnes, compressées, compressées (pour les fichiers plus volumineux) et partitionnées correctement lorsque les informations et les schémas sont mis à niveau.
  • Fonctionne avec tous les moteurs : Prend en charge tous Innovations compatibles avec Apache Iceberg, y compris les moteurs d’interrogation (Dremio Sonar, Presto, Trino, Hive), les moteurs de traitement (Glow) et les moteurs de streaming (Flink).

Formats de fichiers de données Dremio

Une grande partie de l’efficacité et des fonctionnalités de Dremio dépend des formats de soumission des informations de disque et de mémoire utilisés.

Apache Arrow

Apache Arrow, qui a été développé par Dremio et a contribué à open source, définit un format de mémoire en colonnes indépendant du langage pour les données plates et hiérarchiques, organisé pour des opérations analytiques efficaces sur du matériel moderne comme les CPU et les GPU. Le format de mémoire Arrow prend également en charge les lectures sans copie pour un accès ultra-rapide aux données sans surcharge de sérialisation.

Gandiva est un moteur d’exécution vectorisé basé sur LLVM pour Apache Arrow. Arrow Flight implémente RPC (appels de traitement à distance) sur Apache Arrow, et est développé sur gRPC. gRPC est un framework RPC moderne, open source et hautes performances de Google qui peut s’exécuter dans n’importe quel environnement. gRPC est normalement 7x à 10x plus rapide que la transmission de messages REST.

Apache Iceberg

Apache Iceberg est un format hautes performances pour les grandes tables analytiques. Iceberg apporte la fiabilité et la simplicité des tables SQL à des données volumineuses, tout en permettant à des moteurs tels que Sonar, Glow, Trino, Flink, Presto, Hive et Impala de traiter en toute sécurité les mêmes tables, en même temps. Iceberg prend en charge des commandes SQL flexibles pour combiner de nouvelles données, mettre à niveau des lignes existantes et effectuer des suppressions ciblées.

Apache Parquet

Apache Parquet est un format de fichier de données open source orienté colonne conçu pour un stockage et une récupération efficaces des données. Il fournit des schémas de compression et d’encodage d’informations efficaces avec une efficacité améliorée pour traiter la masse d’informations complexes.

Apache Iceberg contre Delta Lake

Selon Dremio, le format de fichier de données Apache Iceberg a été produit par Netflix, Apple et d’autres puissances technologiques, prend en charge INSERT/UPDATE/DELETE avec n’importe quel moteur et a une forte dynamique dans la communauté open-source. En revanche, toujours selon Dremio, le format de fichier d’informations Delta Lake a été développé par Databricks, prend en charge INSERT/UPDATE avec Glow et SELECT avec n’importe quel moteur d’interrogation SQL, et est principalement utilisé en conjonction avec Databricks.

La documentation de Delta Lake sur GitHub demande à varier. Il existe un adaptateur qui permet à Trino d’extraire et de composer des fichiers Delta Lake, et une bibliothèque qui permet aux tâches basées sur Scala et Java (y compris Apache Flink, Apache Hive, Apache Beam et PrestoDB) d’extraire et d’écrire sur Delta Lake. .

Accélération des requêtes Dremio

En plus des performances des questions qui découlent des formats de fichiers utilisés, Dremio peut accélérer les questions en utilisant un cache cloud en colonnes et des réflexions d’informations.

Columnar Cloud Cache (C3)

Columnar Cloud Cache (C3) permet à Dremio d’atteindre une efficacité d’E/S de niveau NVMe sur Amazon S3, Azure Data Lake Storage et Google Cloud Storage en utilisant le NVMe /SSD construit dans des environnements de calcul cloud, tels qu’Amazon EC2 et Azure Virtual Machines. C3 met simplement en cache les informations nécessaires pour satisfaire vos charges de travail et peut même mettre en cache des microblocs spécifiques dans des ensembles de données. Si votre table contient 1 000 colonnes et que vous interrogez simplement un sous-ensemble de ces colonnes et filtrez les données dans un certain délai, alors C3 mettra en cache uniquement cette partie de votre table. En mettant sélectivement les informations en cache, C3 réduit également considérablement les coûts d’E/S de stockage dans le cloud, qui peuvent représenter 10 % à 15 % des coûts pour chaque requête que vous exécutez, selon Dremio.

IDG

Dremio’s Columnar Cloud Cache (C3) accélère les requêtes futures en utilisant les SSD NVMe dans les instances cloud pour mettre en cache les informations utilisées par les requêtes précédentes.

Réflexions de données

Les réflexions d’informations permettent une BI en moins d’une seconde demandes de renseignements et éliminez la nécessité de produire des cubes et des cumuls avant l’analyse. Les réflexions de données sont des structures d’informations qui précalculent intelligemment les agrégations et autres opérations sur les informations, vous n’avez donc pas besoin de faire des agrégations complexes et des explorations à la volée. Les réflexions sont entièrement transparentes pour les utilisateurs finaux. Au lieu de créer un lien vers une matérialisation particulière, les utilisateurs interrogent les tables et les vues souhaitées et l’optimiseur Dremio sélectionne les meilleures réflexions pour satisfaire et accélérer la requête.

Moteurs Dremio

Dremio inclut un multi -architecture de moteur, afin que vous puissiez créer plusieurs moteurs physiquement séparés de la bonne taille pour différents travaux dans votre entreprise. Vous pouvez facilement établir des directives de gestion du travail pour acheminer les demandes vers les moteurs que vous définissez, de sorte que vous n’aurez plus jamais à vous soucier d’un travail informatique complexe empêchant le panneau de contrôle d’un cadre de s’emballer. En plus d’éliminer les conflits de ressources, les moteurs peuvent rapidement se redimensionner pour s’attaquer au travail de n’importe quelle simultanéité et débit, et s’arrêter automatiquement lorsque vous ne posez pas de questions.

IDG

Les moteurs Dremio sont essentiellement des clusters évolutifs d’instances configurées en tant qu’administrateurs . Les directives aident à envoyer les demandes aux moteurs souhaités.

Commencer avec Dremio Cloud

Le guide de démarrage de Dremio Cloud couvre

  1. Ajouter un lac de données à un travail ;
  2. Produire un ensemble de données physiques à partir d’informations source ;
  3. Créer un ensemble de données virtuel ;
  4. Interroger un ensemble de données virtuel ; et
  5. Accélérer une enquête avec une réflexion.

Je ne vous dévoilerai pas toutes les actions du didacticiel, puisque vous pouvez le lire vous-même et le parcourir en votre propre compte gratuit.

2 points nécessaires sont les suivants :

  1. Un ensemble de données physiques (PDS) est une représentation sous forme de tableau des informations contenues dans votre source. Un PDS ne peut pas être modifié par Dremio Cloud. La façon de créer un ensemble de données physiques consiste à formater un fichier ou un dossier en tant que PDS.
  2. Un ensemble de données virtuel (VDS) est une vue issue d’ensembles de données physiques ou d’autres ensembles de données virtuels. Les ensembles de données virtuels ne sont pas des copies des informations, ils utilisent donc très peu de mémoire et affichent en permanence l’état actuel des ensembles de données mamans et papas dont ils sont dérivés.

.

Toute l’actualité en temps réel, est sur L’Entrepreneur

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici