Vertica, c'est quoi ?

Vertica est une plateforme de base de données MPP haute simultanéité qui donne la priorité aux workflows d'analyse avancée haute performance dans des sets de données massifs. Comme de nombreuses plateformes de données MPP autogérées, la plateforme Vertica est mature et son architecture est conçue pour s'intégrer à un stack de données d'entreprise. La compétence fondamentale de Vertica est son architecture unique qui garantit une haute performance et efficacité pour les sets de données massifs.

Vertica est parfaitement adapté aux workflows Data Science et d'analyse avancée, en raison de son intégration forte avec R et ses capacités de fédération des données avec Hadoop.

Choisir Vertica comme base de données

Rentable

Vertica est une solution flexible et rentable parce que, contrairement aux autres bases de données MPP autogérées, la solution Vertica peut être déployée et appliquée sur du matériel basique, ce qui garantit des frais relativement minimes pour créer de nouveaux nœuds et faire évoluer la base de donner.

Performance

Le stockage en colonne de Vertica est optimisé pour garantir vitesse et efficacité, limitant les frais I/O de disques et rendant obsolètes les index et les visualisations matérialisées.

Fonctions d'analyse avancée

Comme d'autres bases de données MPP autogérées, Vertica existe depuis longtemps, et possède  un dialecte SQL mûr et stable. Cependant, Vertica propose également un soutien natif pour l'analyse géospatiale, Distributed-R, l'apprentissage machine et pour d'autres outils avancés. Pour cette raison, elle est au-delà de la plupart des autres plateformes MPP en matière d'outils d'analyse avancée.

Dans quel cadre Vertica est-il idéal ?

Performance MPP dans un environnement en local

Vertica peut être déployé en local avec du matériel basique (comme Hadoop), ce qui permet aux organisations d'adapter le stockage et la performance de Vertica de façon prévisible et linéaire sans dépendre d'un logiciel propriétaire. Les fonctions de disponibilité de Vertica vous permettent également de charger et d'analyser les données continuellement, indépendamment des échecs de matériel.

Workflows  de Data Science/apprentissage machine

Les organisations qui dépendent beaucoup des workflows Data Science et d'apprentissage machine devraient considérer Vertica pour son moteur SQL capable de faire directement des requêtes HDFS (comme Presto, Hive, et Spark), et pour son intégration avec distributed-R, qui permettent aux analystes et aux scientifiques d'utiliser R pour effectuer des requêtes dans des sets de données massives.

Considérations de prix

Les licences Vertica sont déterminées par de nombreux facteurs, dont les termes de durée et la quantité de données brutes stockées sur la plateforme. Pour obtenir une estimation de tarif en fonction de vos demandes, nous vous conseillons de contacter directement l'équipe Micro Focus Vertica.

Vous pouvez également télécharger la version Vertica's Community Edition, gratuite jusqu'à 1To sur 3 nœuds.

Architecture Vertica

Vertica est conçu en gardant à l'esprit les 4 C : Stockage de colonne, compression, clustering et performance continue (disponibilité).

Stockage de colonnes

Vertica stocke les colonnes des tableaux dans des objets de bases de données appelés projections. Les Projections opèrent de façon semblable aux vues matérialisées, conçues pour accélérer l'exécution des requêtes. Cela signifie que les colonnes auxquelles on a souvent accès ensemble sont groupées en une projection. Cela peut même impliquer le pré-groupement de certaines colonnes dans des projets uniques qui augmentent dramatiquement la performance de requêtes pour les tableaux joints.

La fonction de groupement de colonnes fait partie de FlexStore™ de Vertica, « une combinaison de design physique, de stockage de base de données et de techniques d'exécution de requêtes » conçue pour optimiser la performance des requêtes. Un autre aspect important de FlexStore est de garantir que les données fréquemment utilisées peuvent être accédées plus rapidement en déplaçant ces données vers du matériel plus rapide et plus performant.

Compression

Le stockage de colonnes, du fait que les colonnes sont stockées en tant qu'objets,  peut plus efficacement compresser les données, car les données qui résident dans une colonne particulière seront beaucoup plus semblables que les données dans une ligne particulière.

Vertica utilise la compression LZO dans des colonnes compressibles, ce qui est particulièrement optimisé pour une décompression extrêmement rapide. Vertica utilise également le packing d'entiers relatifs pour les valeurs d'entiers relatifs. Le packing d'entiers relatifs en tant qu'algorithme est démontré ici.

Clustering

Vertica est conçu sur une architecture distribuée sans partage, un classique pour les bases de données MPP analytiques. Cependant, contrairement à de nombreuses bases de données distribuées MPP, Vertica est conçu pour fonctionner sans nœud principal. Au lieu de cela, tous les nœuds au sein d'une grappe Vertica peuvent devenir un nœud initiateur, tout nœud au sein d'une grappe peut recevoir une connexion et formuler un plan d'exécution de requête.

Connecté à un répartisseur de charge, cette architecture offre non seulement un niveau élevé de simultanéité, mais aussi une meilleure disponibilité, car il n'y a pas de point d'échec unique au sein d'une grappe Vertica.

Performance continue

Vertica est conçu pour auto-charger/écouler continuellement les données dans la base de données par défaut. Contrairement à d'autres bases de données MPP qui dépendent des charges de données par batch à intervalles réguliers dans la base de données, Vertica charge continuellement les données avec un minimum de gestion, un processus qui minimise la latence.

Types de données

Vertica stocke les données sous format colonne. Il peut ingérer des données tabulaires et prendre en charge des données semi-structurées via des tableaux flex comme les données CEF (Common Event Format), les données délimitées, les données JSON et les paires chargées provenant d'expressions régulières.  La fonction SQL dans Hadoop de Vertica permet également d'effectuer des requêtes en formats texte, ORC ou Parquet.

Taille maximale de données recommandée

Vertica est une base de données au niveau petabyte, et peut s'adapter pour traiter des charges au niveau du pétaoctet. Cependant, il est important de noter que la complexité et le tarif sont également modifiés par la capacité de stockage et de calcul.

Utilisation de Vertica

Processus pour nouvelles données

Avant de charger des données dans votre base de données, il vous faudra créer des tableaux et spécifier le type de données pour chaque colonne dans chaque tableau. Il faudra ensuite considérer l'utilisation de ces tableaux afin de pouvoir créer des projections efficaces et grouper les colonnes de ces tableaux de façon efficace.

Maintenance/mise en œuvre nécessaire

Si le matériel Vertica peut être entièrement géré, ce n'est pas le cas pour l'architecture des tableaux et l'optimisation des requêtes. Pour obtenir une performance acceptable de Vertica, vous devez appliquer le codage, la partition, les index et les statistiques des colonnes. L'ajustement d'une base de donnees Teradata peut se faire à l'aide d'une stratégie d'ajustement MPP générale.

Distributed-R

Vertica active l'adaptation R aux sets de données massifs. Cela vous permet de créer des fonctions définies par l'utilisateur (UDF) dans R et de les charger dans la base de données Vertica. Cette publication blog offre un exemple montrant comment cela est fait.

SQL Vertica dans le moteur Hadoop

La plateforme Vertica est dotée d'un moteur SQL qui rivalise avec d'autres SQU dans les dialectes Hadoop comme Presto, Hive et Spark, Vous pouvez donc utiliser les capacités de requête SQL matures de Vertica avec les données Hadoop tout en optimisant la puissance de la grappe Hadoop. Vous pouvez tirer parti de la performance et des fonctions d'analyse de Vertica dans les environnements natifs Vertica et Hadoop à partir d'un point centralisé.

Informations supplémentaires concernant Vertica

Le créateur de Vertica, Michael Stonebraker, est un expert en matière de bases de données. En plus d'avoir créé Vertica, le gagnant du prix A.M. Turing est l'un des pionniers en matière de développement des bases de données Postgres et Ingres. Actuellement, il travaille chez MIT en tant qu'attaché temporaire d'enseignement et de recherche.

Prenez goût à l'analytique

Business intelligence, analyse de big data ou vue client à 360° :
quels que soient vos besoins, Looker peut vous aider. Parlez à nos experts en données.

Demander une démo