Pour garantir des performances in-memoryTechnique stockant les données directement dans la RAM pour un accès ultra-rapide, permettant des analyses massives et calculs complexes en temps réel sans les latences liées aux disques durs. optimales, vous devez architecturer votre flux autour des options de sortie du moteur CAS. L'utilisation stratégique du paramètre casOut couplé à des options avancées de compression permet de répartir efficacement la charge sur les nœuds de travail. Veillez également à optimiser les paramètres de vos tables en entrée via dataSourceOptions et à utiliser intelligemment les colonnes indexées pour limiter les goulets d'étranglement et préserver la bande passante de vos microservicesLes microservices sont une approche d'architecture logicielle où une application est décomposée en une collection de petits services indépendants, spécialisés et communicant entre eux via des APIs légères. Contrairement aux architectures "monolithiques" anciennes, chaque microservice remplit une fonction unique (ex: gestion du catalogue, authentification, moteur de calcul).
Dans SAS Viya 4, cette architecture est native. Elle permet à la plateforme de s'exécuter sur Kubernetes, offrant une flexibilité totale : chaque composant de SAS peut être mis à jour, redémarré ou mis à l'échelle (scaling) individuellement sans affecter le reste du système. lors de la redistribution des données.
Quels sont les paramètres indispensables pour assurer des performances maximales lors du traitement de milliards de lignes ?
Optimisation Massive In-Memory (MPP)
Exemples pour l'action deduplicate
Dédoublonnage basique par identifiant client
Cet exemple élimine les doublons sur la variable `id_client`. L'algorithme ne garde qu'une seule ligne par client dans `cmd_dedoublonnees`, sans que nous ayons forcé le tri.
Conservation intelligente de la commande la plus récente avec sauvegarde des rejets
L'approche la plus recommandée : nous utilisons `orderBy` en descendant sur la date pour garantir que la ligne conservée soit la commande la plus récente. Les anciennes commandes sont poussées dans une table d'archive via `duplicateOut`.
Filtrage inversé : ne garder que les clients ayant commandé plusieurs fois
Ici, on détourne l'action. Au lieu de dédoublonner, on veut repérer nos clients récurrents. En activant `noUniqueKeys`, on élimine les clients ponctuels (Martin).