Connexion aux points de terminaison Amazon 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.

Connexion aux points de terminaison Amazon Neptune

Amazon Neptune utilise un cluster d'instances de base de données au lieu d'une seule instance. Chaque connexion Neptune est gérée par une instance de base de données spécifique. Lorsque vous vous connectez à un cluster Neptune, le nom d'hôte et le port que vous spécifiez pointent vers un gestionnaire intermédiaire appelé point de terminaison. Un point de terminaison est une URL qui contient une adresse hôte et un port. Les points de terminaison Neptune utilisent des connexions TLS/SSL (Transport Layer Security/Secure Sockets Layer).

Neptune utilise le mécanisme du point de terminaison pour abstraire ces connexions, de sorte que vous n'avez pas à coder en dur les noms d'hôtes, ni à écrire votre propre logique de réacheminement des connexions lorsque certaines instances de base de données ne sont pas disponibles.

Les points de terminaison permettent d'associer chaque connexion à l'instance ou au groupe d'instances approprié en fonction de votre cas d'utilisation. Les points de terminaison personnalisés vous permettent de vous connecter à des sous-ensembles d'instances de base de données. Un cluster de bases de données Neptune comprend les points de terminaison suivants :

Points de terminaison de cluster Neptune

Un point de terminaison de cluster est le point de terminaison d'un cluster de bases de données Neptune qui se connecte à l'instance principale de ce cluster. Chaque cluster de bases de données Neptune possède un point de terminaison de cluster et une instance de base de données principale.

Le point de terminaison de cluster assure la prise en charge du basculement pour les connexions en lecture/écriture au cluster de bases de données. Utilisez le point de terminaison de cluster pour toutes les opérations d'écriture sur le cluster DB, y compris les insertions, les mises à jour, les suppression et les modifications de langage de définition de données (DDL). Vous pouvez aussi utiliser le point de terminaison de cluster pour les opérations de lecture, par exemple les requêtes.

En cas de défaillance de l'instance de base de données principale actuelle d'un cluster de bases de données, Neptune bascule automatiquement vers une nouvelle instance de base de données principale. Pendant un basculement, le cluster DB continue à traiter les demandes de connexion adressées au point de terminaison de cluster par la nouvelle instance DB principale, avec une interruption de service minimale.

L'exemple suivant illustre le point de terminaison de cluster d'un cluster de bases de données Neptune.

mydbcluster.cluster-123456789012.us-east-1.neptune.amazonaws.com:8182

Points de terminaison de lecteur Neptune

Un point de terminaison de lecteur est le point de terminaison d'un cluster de bases de données qui se connecte à l'un des réplicas Neptune disponibles pour ce cluster. Chaque cluster de bases de données Neptune possède un point de terminaison de lecteur. S'il existe plusieurs réplicas, le point de terminaison de lecteur dirige chaque demande de connexion vers l'un des réplicas Neptune.

Le point de terminaison du lecteur assure le routage en tourniquet (round robin) pour les connexions en lecture seule au cluster DB. Utilisez le point de terminaison de lecteur pour les opérations de lecture, par exemple les requêtes .

Vous ne pouvez pas utiliser le point de terminaison du lecteur pour les opérations d'écriture sauf si vous disposez d'un cluster à instance unique (un cluster sans réplicas en lecture). Dans ce cas et dans ce cas seulement, le lecteur peut être utilisé pour les opérations d'écriture ainsi que pour les opérations de lecture.

Le routage en tourniquet du point de terminaison de lecteur modifie l'hôte vers lequel l'entrée DNS pointe. Chaque fois que vous résolvez l'entrée DNS, vous obtenez une autre adresse IP et les connexions sont ouvertes sur ces adresses IP. Une fois qu'une connexion est établie, toutes les demandes relatives à cette connexion sont envoyées au même hôte. Le client doit créer une connexion et résoudre l'enregistrement DNS à nouveau pour obtenir une connexion vers un réplica en lecture potentiellement différent.

Note

WebSockets les connexions sont souvent maintenues en vie pendant de longues périodes. Pour obtenir les différents réplicas en lecture, procédez comme suit :

  • Assurez-vous que votre client résout l'entrée DNS chaque fois qu'il se connecte.

  • Fermez la connexion et reconnectez-vous.

Plusieurs clients logiciels peuvent résoudre les entrées DNS de différentes façons. Par exemple, si votre client résout l'entrée DNS, puis utilise l'adresse IP pour chaque connexion, il dirigera toutes les demandes vers un seul hôte.

La mise en cache de l'entrée DNS pour les clients ou proxies sera à même de résoudre le nom DNS pour le même point de terminaison à partir du cache. Il s'agit d'un problème pour les scénarios de basculement et de routage en tourniquet (round-robin).

Note

Désactivez les paramètres de mise en cache DNS pour forcer systématiquement la résolution DNS.

Le cluster de bases de données répartit les demandes de connexion adressées au point de terminaison de lecteur entre les réplicas Neptune disponibles. Si le cluster de bases de données ne contient qu'une instance de base de données principale, le point de terminaison de lecteur traite les demandes de connexion de l'instance de base de données principale. Si un réplica Neptune est créé pour ce cluster de bases de données, le point de terminaison de lecteur continue à traiter les demandes de connexion qui lui sont adressées à partir du nouveau réplica Neptune avec une interruption de service minimale.

L'exemple suivant illustre le point de terminaison de lecteur d'un cluster de bases de données.

mydbcluster.cluster-ro-123456789012.us-east-1.neptune.amazonaws.com:8182

Points de terminaison d'instance Neptune

Un point de terminaison d'instance est le point de terminaison d'une instance de base de données d'un cluster de bases de données, qui se connecte à cette instance. Chaque instance de base de données d'un cluster de bases de données, quel que soit le type d'instance, a son propre point de terminaison d'instance unique. Par conséquent, il y a un point de terminaison d'instance pour l'instance de base de données principale actuelle du cluster DB. Il existe également un point de terminaison d'instance pour chacun des réplicas Neptune dans le cluster de bases de données.

Le point de terminaison d'instance exerce un contrôle direct sur les connexions au cluster de bases de données, pour les scénarios où l'utilisation du point de terminaison de cluster ou du point de terminaison de lecteur peut ne pas être appropriée. Par exemple, votre application client peut exiger un équilibrage de charge optimisé en fonction de la charge de travail. Dans ce cas, vous pouvez configurer plusieurs clients afin d'obtenir une connexion à différents réplicas Neptune dans un cluster de bases de données pour répartir les charges de travail de lecture.

L'exemple suivant illustre le point de terminaison d'instance de l'une des instances de base de données d'un cluster de bases de données.

mydbinstance.123456789012.us-east-1.neptune.amazonaws.com:8182

Points de terminaison personnalisés Neptune

Un point de terminaison personnalisé pour un cluster Neptune représente un ensemble d'instances de base de données que vous choisissez. Lorsque vous vous connectez à ce point de terminaison, Neptune choisit l'une des instances dans le groupe pour qu'elle gère la connexion. C'est vous qui définissez les instances auxquelles ce point de terminaison renvoie, ainsi que la fonction même de chaque point de terminaison.

Un cluster de bases de données Neptune ne possède aucun point de terminaison personnalisé tant que vous n'en créez pas un. Vous pouvez créer jusqu'à cinq points de terminaison personnalisés pour chaque cluster Neptune provisionné.

Le point de terminaison personnalisé assure des connexions de base de données à équilibrage de charge selon des critères autres que la capacité de lecture seule ou de lecture/écriture des instances de base de données. Comme la connexion peut exploiter n'importe quelle instance de base de données associée au point de terminaison, assurez-vous que toutes les instances de ce groupe partagent les mêmes caractéristiques de performances et de capacité de mémoire. Lorsque vous avez recours à des points de terminaison personnalisés, vous n'utilisez généralement pas le point de terminaison du lecteur pour ce cluster.

Cette fonctionnalité est destinée aux utilisateurs avancés dotés de types de charges de travail spécialisés où il n'est pas pratique que tous les réplicas Neptune du cluster soient identiques. Les points de terminaison personnalisés vous permettent d'ajuster la capacité des instances de base de données utilisées avec chaque connexion.

Par exemple, si vous définissez plusieurs points de terminaison personnalisés qui se connectent à des groupes d'instances dotés de différentes classes d'instances, vous pouvez diriger les utilisateurs ayant des besoins de performance différents vers les points de terminaison les mieux adaptés à leurs cas d'utilisation.

L'exemple suivant illustre le point de terminaison personnalisé de l'une des instances de base de données d'un cluster de bases de données Neptune.

myendpoint.cluster-custom-123456789012.us-east-1.neptune.amazonaws.com:8182

Pour plus d’informations, consultez Utilisation des points de terminaison personnalisés.

Considérations relatives aux points de terminaison Neptune

Prenez en compte les points suivants lorsque vous utilisez des points de terminaison Neptune :

  • Avant d'utiliser un point de terminaison d'instance pour vous connecter à une instance de base de données spécifique d'un cluster de bases de données, envisagez d'utiliser à la place le point de terminaison de cluster ou de lecteur du cluster de bases de données.

    Le point de terminaison du cluster et le point de terminaison du lecteur assurent la prise en charge des scénarios de haute disponibilité. En cas de défaillance de l'instance de base de données principale d'un cluster de bases de données, Neptune bascule automatiquement vers une nouvelle instance de base de données principale. Pour ce faire, il promeut un réplica Neptune existant en nouvelle instance de base de données principale ou il crée une autre instance de base de données principale. En cas de basculement, vous pouvez soit utiliser le point de terminaison de cluster pour vous reconnecter à l'instance de base de données principale qui vient d'être promue ou créée, soit utiliser le point de terminaison de lecteur pour vous reconnecter à l'un des autres réplicas Neptune du cluster de bases de données.

    Si vous n'adoptez pas cette approche, vous pouvez tout de même vous assurer que vous vous connectez à l'instance de base de données appropriée du cluster de bases de données pour l'opération prévue. Pour ce faire, vous pouvez détecter manuellement ou par programmation l'ensemble obtenu d'instances de base de données disponibles dans le cluster de bases de données et confirmer leurs types d'instance après le basculement, avant d'utiliser le point de terminaison d'instance d'une instance de base de données spécifique.

    Pour plus d'informations sur les basculements, consultez Tolérance aux pannes pour un cluster de bases de données Neptune.

     

  • Le point de terminaison de lecteur dirige uniquement les connexions vers les réplicas Neptune disponibles d'un cluster de bases de données Neptune. Il ne dirige pas les requêtes spécifiques.

    Important

    Neptune n'équilibre pas la charge.

    Si vous souhaitez équilibrer la charge des requêtes afin de répartir la charge de travail en lecture d'un cluster DB, vous devrez gérer cela dans votre application. Vous devez utiliser les points de terminaison d'instance pour vous connecter directement aux réplicas Neptune afin d'équilibrer la charge.

     

  • Le routage en tourniquet du point de terminaison de lecteur modifie l'hôte vers lequel l'entrée DNS pointe. Le client doit créer une connexion et résoudre l'enregistrement DNS à nouveau pour obtenir une connexion vers un potentiel nouveau réplica en lecture.

     

  • Pendant un basculement, le point de terminaison de lecteur peut brièvement diriger les connexions vers la nouvelle instance principale d'un cluster de bases de données, lorsqu'un réplica Neptune est promu en nouvelle instance de base de données principale.