Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Collecte des déchets du dictionnaire Neptune

Mode de mise au point
Collecte des déchets du dictionnaire Neptune - Amazon Neptune

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.

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.

Neptune prend en charge la collecte des déchets par dictionnaire (GC), qui peut être activée via le neptune_lab_mode paramètre relatif aux données du graphe de propriétés. Il peut être activé pour les clusters contenant uniquement des données de graphes de propriétés lorsqu'il n'neptune_streamsest pas activé. La fonctionnalité est automatiquement désactivée si elle neptune_streams est activée ou s'il existe des neptune_streams données non expirées. La fonctionnalité nécessite le redémarrage d'une instance d'écriture pour être activée. Cette fonctionnalité est disponible à partir de la version 1.4.3.0 du moteur.

Lorsque cette option est activée, les entrées de dictionnaire inutilisées sont nettoyées par une tâche en arrière-plan. Il ne réduit pasVolumeBytesUsed, mais libère de l'espace dans l'index pour les nouvelles insertions. Le taux de croissance VolumeBytesUsed est susceptible d'être inférieur lorsque le dictionnaire GC est activé par rapport à lorsqu'il ne l'est pas.

La collecte des déchets du dictionnaire s'exécute en arrière-plan et analyse toutes les données des graphes et des dictionnaires pour trouver les termes qui ne sont pas utilisés. Une nouvelle exécution est déclenchée au démarrage dès qu'environ 6 % des données ont changé. Il est confronté à des fils de requête pour les ressources du nœud principal telles que le processeur, le cache tampon, la génération de journaux d'annulation et les opérations d'E/S d'écriture, qui peuvent avoir un impact négatif sur le débit des requêtes. Comme GC analyse les données qui ne sont pas activement touchées par les requêtes, cela peut avoir un impact sur le cache tampon du nœud d'écriture. Le cluster peut subir des opérations d'E/S d'écriture supplémentaires et avoir davantage de journaux d'annulation à purger lorsque le GC effectue de nouvelles suppressions, ce qui peut également entraîner des valeurs plus élevées pour la UndoLogListSize métrique.

GC peut être exécuté en deux modes, soft_delete etenabled. Lorsqu'elles sont exécutées dans ce soft_delete mode, les entrées de dictionnaire non utilisées sont marquées comme supprimées (soft_delete) mais ne sont pas supprimées explicitement. Ce mode peut également être utilisé pour comprendre les caractéristiques de performance une fois le fonctionnement en arrière-plan activé. Lorsque le mode activé est utilisé, les entrées sont explicitement supprimées (suppression « dure »). Il est recommandé d'exécuter GC en soft_delete mode pendant un certain temps avant de passer enabled en mode.

Dictionary GC prend en charge une simultanéité maximale de 16 (sur les machines dotées de 16 cœurs ou plus). Il s'exécute par défaut avec un seul thread, mais il peut être exécuté avec une plus grande simultanéité lorsqu'il est activé pour la première fois. Les threads GC du dictionnaire s'exécutent avec la même priorité que les fils de requête, et ils utilisent les ressources de l'auteur de la même manière.

Le dictionnaire GC peut être activé via le neptune_lab_mode paramètre en réglant la DictionaryGCMode clé. Il accepte trois valeurs possibles : disabled (par défaut)soft_delete, ouenabled. Par exemple, l'exemple de code suivant définirait la valeur DictionaryGCMode sur soft_delete :

neptune_lab_mode = 'DictionaryGCMode=soft_delete'

Le paramètre de simultanéité DictionaryGCConcurrency est facultatif et peut prendre une valeur comprise entre 1 et 16. S'il est défini sur une valeur supérieure au minimum de 16 et au nombre de cœurs, la simultanéité est plafonnée à cette valeur.

neptune_lab_mode = 'DictionaryGCMode=soft_delete,DictionaryGCConcurrency=2'

La tâche GC du dictionnaire est activée en arrière-plan après le démarrage du serveur, une fois que certaines données sont disponibles. L'état du moteur affiche l'état actuel du dictionnaire GC. L'exemple de sortie ci-dessous montre que le dictionnaire GC est en soft_delete mode et fonctionne avec une simultanéité de 2. Si la tâche en arrière-plan est en cours d'exécution, il peut s'agir de rechercher activement les entrées de dictionnaire inutilisées et de les supprimer, ou d'attendre une nouvelle série de suppressions pour déclencher un nouveau cycle de GC.

"labMode":{"DictionaryGC":"{Mode=soft_delete,Concurrency=2}"}

Le dictionnaire GC est suspendu lorsque l'une des conditions suivantes est remplie :

  • Chargement en vrac actif.

  • La mémoire disponible est inférieure à 15 Go.

  • UndoLogListSizeest supérieur à 1 000 000.

Rubrique précédente :

Stockage
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.