Pourquoi le redimensionnement classique de mon cluster Amazon Redshift prend-il tant de temps à terminer ?

Date de la dernière mise à jour : 20/08/2020

J' ai initié un redimensionnement classique, mais je ne le vois pas progresser dans mon cluster Amazon Redshift ou cela prend trop de temps. Comment obtenir une meilleure estimation du temps d'arrêt pour effectuer un redimensionnement classique ?

Solution

Le temps nécessaire à votre cluster Amazon Redshift pour effectuer un redimensionnement classique peut varier (de plusieurs heures à plusieurs jours). Le redimensionnement classique de votre cluster peut prendre plus de temps pour les raisons suivantes :

  • La charge de travail de lecture sur le cluster source
  • Le nombre et la taille des tables transférées
  • La définition de la table et son asymétrie
  • Configuration des nœuds (nombre et type de nœuds) utilisée dans les clusters source et cible

Pour plus d'informations, consultez Détails du redimensionnement d'un cluster dans Redimensionnement des clusters dans Amazon Redshift.

Réduction des temps d'arrêt pour un redimensionnement classique

Pour réduire le temps nécessaire à un redimensionnement classique, considérez les approches suivantes :

  • Surveillez l'état de votre opération de redimensionnement à l'aide de la console Amazon Redshift. Cliquez sur l'onglet État de la page de détails du cluster. L'onglet Statut vous indique le taux moyen de transfert, le temps écoulé et le temps restant.
  • Réparez les tables asymétriques et sélectionnez une clé de distribution appropriée. Pour plus d'informations, consultez la section Amazon Redshift Engineering's Advanced Table Design Playbook: Distribution Styles and Distribution Keys (Playbook de conception de table avancée d'ingénierie Amazon Redshift : styles de distribution et clés de distribution).
  • Supprimez les tables non utilisées. Pour identifier les tables non utilisées, exécutez le script unscanned table summary.sql.
    Remarque : le résumé du tableau non scanné montre uniquement l'historique récent des derniers jours. Utilisez l'utilitaire SystemTablePersistence pour capturer des données d'utilisation sur une période plus longue.
  • Utilisez le redimensionnement Elastic. Le redimensionnement Elastic ajoute ou supprime des nœuds sur un cluster Amazon Redshift existant, redistribuant automatiquement les données vers les nouveaux nœuds. Étant donné que le redimensionnement Elastic ne crée pas de nouveau cluster, le temps d'arrêt est nettement inférieur au temps d'arrêt pour un redimensionnement classique. Pour plus d'informations sur le redimensionnement Elastic, consultezRedimensionnement des clusters.

Pour plus d'informations sur l'optimisation de vos performances de redimensionnement, consultez les 10 meilleures techniques de réglage des performances pour Amazon Redshift.

Dépannage du redimensionnement classique

  • Si le statut de votre cluster est « NONE » dans l'interface de ligne de commande AWS (AWS CLI), le cluster cible est encore en train d'être approvisionné. Attendez que votre cluster cible soit approvisionné. Après avoir été copié, le statut devient « IN_PROGRESS ».
  • Si vous recevez un message d'erreur concernant l'espace disque insuffisant, il indique que vos données ne rentrent pas dans le cluster cible. Redimensionnez votre cluster Amazon Redshift avec plus de nœuds, un style de distribution différent ou un type de nœud différent. Pour plus d'informations, consultez Redimensionnement des clusters dans Amazon Redshift.
  • Pour annuler une opération de redimensionnement avant qu'elle ne se termine, sélectionnez Cancel resize (annuler le redimensionnement) depuis la page de détails du clusters dans la console Amazon Redshift. Vous pouvez également utiliser la commande cancel-resize à partir de l'interface de ligne de commande AWS.
    Remarque : vous ne pourrez pas annuler l'opération de redimensionnement si elle est dans la phase finale.