View a markdown version of this page

Meilleures pratiques en matière de cluster élastique Amazon DocumentDB - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Meilleures pratiques en matière de cluster élastique Amazon DocumentDB

Découvrez les meilleures pratiques pour travailler avec les clusters élastiques Amazon DocumentDB. Toutes les bonnes pratiques relatives aux clusters Amazon DocumentDB basés sur des instances s'appliquent également aux clusters élastiques. Cette section est mise à jour en continu à mesure que de nouvelles bonnes pratiques sont identifiées.

Choisir les clés Shard

La liste suivante décrit les instructions relatives à la création de clés de partition.

  • Utilisez une clé de hachage uniformément distribuée pour répartir vos données sur tous les fragments de votre cluster (évitez les touches de raccourci).

  • Utilisez votre clé de partition dans toutes les requêtes read/update /delete pour éviter les requêtes de collecte par dispersion.

  • Évitez les clés de partition imbriquées lorsque vous effectuez des opérations read/update /delete.

  • Lorsque vous effectuez des opérations par lots, définissez ordered sur false pour que toutes les partitions puissent s'exécuter en parallèle et améliorer les latences.

Gestion des connexions

La liste suivante décrit les instructions relatives à la gestion de vos connexions à votre base de données.

  • Surveillez le nombre de connexions et la fréquence à laquelle de nouvelles connexions sont ouvertes et fermées.

  • Répartissez vos connexions sur tous les sous-réseaux de la configuration de votre application. Si votre cluster est configuré dans plusieurs sous-réseaux mais que vous n'utilisez qu'un sous-ensemble de ces sous-réseaux, il se peut que votre nombre maximum de connexions soit limité.

Collections inédites

Ce qui suit décrit une directive pour les collections non partitionnées.

  • Lorsque vous travaillez avec des collections non partitionnées, pour répartir la charge, essayez de conserver les collections non partitionnées les plus utilisées dans différentes bases de données. Les clusters élastiques Amazon DocumentDB placent les bases de données sur différentes partitions et co-localisent les collections non partitionnées de la même base de données sur la même partition.

Mise à l'échelle des clusters élastiques

La liste suivante décrit les instructions relatives à la mise à l'échelle de vos clusters élastiques.

  • Les opérations de dimensionnement peuvent provoquer une brève période d'erreurs intermittentes de base de données et de réseau. Dans la mesure du possible, évitez de monter à l'échelle pendant les heures de pointe. Essayez de procéder à une mise à l'échelle pendant les périodes de maintenance.

  • Il est préférable d'augmenter ou de diminuer la capacité des partitions (en modifiant le nombre de processeurs virtuels par partition) pour augmenter le calcul plutôt que d'augmenter ou de diminuer le nombre de partitions, car cela est plus rapide et réduit la durée des erreurs intermittentes de base de données et de réseau.

  • Lorsque vous anticipez une croissance, privilégiez l'augmentation du nombre de fragments plutôt que la capacité des fragments. Cela vous permet de faire évoluer votre cluster en augmentant la capacité des partitions pour les scénarios dans lesquels vous devez évoluer rapidement.

  • Surveillez vos politiques en matière de nouvelles tentatives côté client et réessayez avec un temps d'attente et une instabilité exponentiels pour éviter de surcharger votre base de données en cas d'erreur lors de la mise à l'échelle.

  • La modification du nombre de partitions peut prendre du temps car les données doivent être déplacées en toute sécurité d'une partition à l'autre. Pour minimiser les risques d'erreurs, n'arrêtez pas et n'apportez aucune autre modification à l'état du cluster pendant que la modification est en cours.

Surveillance des clusters élastiques

La liste suivante décrit les instructions relatives à la surveillance de vos clusters élastiques.

  • Suivez le ratio maximal/moyenne de vos indicateurs par fragment pour déterminer si vous conduisez un trafic irrégulier (ayez un point chaud). key/hot Les indicateurs clés permettant de suivre les ratios maximal/moyenne sont les suivants :

    • PrimaryInstanceCPUUtilization

      • Cela peut être surveillé au niveau de chaque fragment.

      • Au niveau du cluster, vous pouvez surveiller l'asymétrie moyenne à p99.

    • PrimaryInstanceFreeableMemory

      • Cela peut être surveillé au niveau de chaque fragment.

      • Au niveau du cluster, vous pouvez surveiller l'asymétrie moyenne à p99.

    • DatabaseCursorsMax

      • Cela doit être surveillé au niveau de chaque fragment pour déterminer l'asymétrie.

    • Documents-Inserted/Updated/Returned/Deleted

      • Cela doit être surveillé au niveau de chaque fragment pour déterminer l'asymétrie.