Blogs

Accueil / Blogs / Améliorer les performances d'optimisation du pushdown dans Centerprise

Table des matières
L'automatisé, Pas de code Pile de données

Apprener comment Astera Data Stack peut simplifier et rationaliser la gestion des données de votre entreprise.

Améliorez les performances d'optimisation du refoulement dans Centerprise

Le 28 septembre 2023

L'adoption généralisée de bases de données cloud et de systèmes de rapports transactionnels dans le paysage commercial a conduit à une croissance exponentielle du volume et de la variété des données transitant par les organisations. En conséquence, les analystes qui étaient autrefois chargés d'effectuer des ETL ou ELT sur des milliers d'enregistrements doivent désormais faire face à des ensembles de données numérotés en millions, voire en milliards.

Dans cet environnement, la technologie responsable du traitement des données et de la fourniture de la veille stratégique aux décideurs concernés a été soumise à de nouvelles contraintes. Les outils ETL traditionnels sont chargés de gérer des opérations de données de plus en plus complexes et volumineuses, tandis que les serveurs de transformation sont poussés à leur limite.

optimisation du refoulement

Tandis que ELT peut considérablement réduire ce fardeau en déchargeant le traitement des données gourmandes en ressources vers un SGBDR évolutif basé sur le cloud, l'optimisation du refoulement ne peut pas remplacer complètement ETL. Tout flux de données contenant des sources et des destinations autres que la base de données, ou des transformations non prises en charge, nécessitera toujours une extraction vers un serveur intermédiaire. En outre, certaines opérations peuvent fonctionner plus efficacement lorsqu'elles sont poussées via un outil ETL spécialement conçu à cet effet.

Dans le dernière version de Centerprise, nous visons à fournir à nos utilisateurs la possibilité de personnaliser et de combiner les deux ETL et les processus ELT afin d’assurer des performances optimales même dans les flux de données les plus complexes. Nombre des améliorations observées dans cette version résultent directement des commentaires pratiques reçus de clients qui ont eu du mal à tirer pleinement parti de l'optimisation du refoulement dans leurs propres processus métier. Voici quelques-uns des principaux changements que nous avons apportés à Centerprise 8.0.

Limiter les tris en mémoire

En tant que transformation au niveau des blocs, les tris nécessitent que tous les ensembles de données d'entrée soient mis en cache en mémoire avant de pouvoir être classés selon les critères de l'utilisateur. Ces opérations ne sont pas seulement limitées à la transformation de tri, d'autres transformations telles que les agrégats et les jointures offrent également la possibilité de trier les données entrantes avant qu'elles ne soient traitées ultérieurement. En conséquence, un flux de données peut impliquer plusieurs instances de cette transformation coûteuse se produisant dans le flux de données, ce qui va bien sûr augmenter considérablement son exécution.

Pour cette raison, nous vous recommandons de trier les jeux de données en entrée à la source avant de les importer dans le répertoire. Centerprise serveur en exécutant cette transformation en mode d’optimisation pushdown. En outre, ce paramètre doit être désactivé pour toutes les transformations excluant la création d'une liste déroulante offrant des options de tri des données, afin de garantir une efficacité maximale dans le pipeline de flux de données.

Vérifier et corriger les expressions booléennes non valides

En mode d'optimisation pushdown, Centerprise convertira automatiquement les valeurs booléennes en nombres entiers (par exemple, 1 et 0 pour les sorties true ou false) afin d’améliorer la fonctionnalité des instructions SELECT de la base de données. Toutefois, cette fonctionnalité peut entraîner des problèmes lorsque des expressions booléennes sont utilisées dans le flux de données. Ces instructions WHERE nécessitent l’exécution correcte d’opérateurs supplémentaires, c’est-à-dire IIF (1 = 1, 1, 0). Mais en mode d'optimisation du pushdown, les expressions booléennes sont converties comme suit: IIF (1,1,0). Bien que cette instruction soit logiquement valide, elle entraînera des erreurs lorsque des expressions booléennes imbriquées sont utilisées.

Par exemple, lorsque la clause IIF interne est convertie dans l'expression suivante:

IIF (IIF (CHARINDEX ('Accrual', [DimClaim]. [ClaimSource])> 0, 1, 0), 'Accrual', [DimClaim]. [ClaimSource])

il produit une sortie de:

IIF (1, 'Accrual', [DimClaim]. [ClaimSource])

qui est une déclaration syntaxiquement invalide.

Dans ce cas, l'utilisateur devra corriger lui-même l'expression en ajoutant l'opérateur 1 = 1 manuellement dans le flux de données. L'exemple ci-dessus pourrait être remplacé par une instruction CONTAINS comme suit:

If (Contains ("Accrual", [DimClaim]. [ClaimSource])) = true, "Accrual", [DimClaim]. [ClaimSource])

In Centerprise 8, nous avons facilité le partage d'expressions entre les instructions SELECT et WHERE en ajoutant la prise en charge des variables (objets réutilisables) en mode d'optimisation du refoulement.

Exclure les objets de l'optimisation du refoulement lorsque cela est préférable

L’utilisateur peut également exempter les expressions du mode Pushdown en utilisant le nouveau “Exclure du Pushdown”Attribut. Cette fonctionnalité est également utile pour exécuter des objets qui ne peuvent pas être mappés efficacement vers la base de données source ou cible, ou ceux qui fonctionnent différemment dans la base de données.

Par exemple, lorsque les expressions donnent une sortie X = Y, où X et Y sont des valeurs nulles, Centerprise est capable d'évaluer les expressions comme vraies. Toutefois, si ces valeurs sont contenues dans une clause WHERE de la base de données, elles seront toujours considérées comme fausses. Dans ce cas, il serait préférable d'exécuter l'expression à l'aide de l'outil ETL plutôt que dans ELT.

Dans les cas précédents, nous avons été en mesure d’augmenter les temps d’exécution du flux de données client de quelques minutes 30 ou plus grâce à l’exclusion judicieuse d’objets et d’expressions en fonction de leur pertinence.

Vérifier les transformations d'optimisation Pushdown prises en charge

Certaines expressions if / else peuvent également être converties en transformations de commutateur qui sont maintenant prises en charge dans Centerprise. Dans la base de données, cette fonction fonctionne comme une instruction CASE et peut être utilisée pour simplifier des expressions complexes. Dernières versions de Centerprise comprend également la prise en charge des champs de présentation dépourvus de port d'entrée, ainsi que de nombreuses autres fonctions ETL pouvant désormais être répliquées de manière fiable dans les bases de données prises en charge.

Pour une liste complète des transformations actuellement prises en charge dans Astera Centerprise mode pushdown, reportez-vous à notre guide complet sur ce sujet.

Améliorez les performances du flux de données avec des astuces SQL manuelles

Si un utilisateur estime que l'optimiseur de base de données n'exécute pas son flux de données de manière optimale, il peut utiliser des indicateurs d'optimiseur pour modifier le plan d'exécution. Dans Centerprise, ces astuces peuvent être entrées dans l’onglet Planificateur pour le flux de données. En conséquence, les astuces seront appliquées à toutes les requêtes et sources du flux.

Dans un cas d'utilisation précédent, notre client était capable d'utiliser des astuces d'optimisation pour permettre des degrés supplémentaires de parallélisme à son flux de données, garantissant ainsi que les ressources du serveur étaient optimisées pour exécuter un processus ELT gourmand en ressources, dans lequel plusieurs sources de données différentes étaient rassemblées dans une requête unique.

L'optimiseur d'indicateurs de requête sera également utile pendant le processus de chargement de l'entrepôt de données lorsque des tables de dimension de différentes sources sont jointes à une table de faits dans le serveur de transfert. Dans ces cas, l'utilisateur peut utiliser des astuces SQL pour décider ce qui doit être mis en scène et comment obtenir des performances optimales.

Prenez le contrôle de votre traitement de données d'entreprise

Cette combinaison de fonctionnalités supplémentaires et d'optimisations devrait permettre à nos utilisateurs de contrôler l'efficacité et les performances globales de leurs opérations ETL et ELT à chaque étape de leur parcours de données. Qu'il s'agisse de la conception de nouveaux entrepôts de données d'entreprise ou de la migration de leurs enregistrements vers une infrastructure de base de données cloud, CenterpriseLes capacités de compression peuvent s'avérer essentielles.

Pour plus d'informations sur les avantages du mode d'optimisation du pushdown pour votre entreprise, consultez les autres blogs de cette série ou planifiez une consultation personnelle avec notre équipe de vente aujourd'hui.

Tu pourrais aussi aimer
Les 7 meilleurs outils d'agrégation de données en 2024
Cadre de gouvernance des données : qu’est-ce que c’est ? Importance, piliers et meilleures pratiques
Les meilleurs outils d'ingestion de données en 2024
Considérant Astera Pour vos besoins en gestion de données ?

Établissez une connectivité sans code avec vos applications d'entreprise, vos bases de données et vos applications cloud pour intégrer toutes vos données.

Connectons-nous maintenant !
connectons-nous