À partir de la version V1.1, Hologres prend en charge une instance primaire associée à un maximum de 10 instances secondaires en lecture seule sur un stockage partagé. Cette architecture sépare le trafic de lecture et d'écriture, offrant une isolation des charges de travail et des pannes sans duplication des données. Le stockage n'est facturé qu'une seule fois.
Configuration des instances primaire et secondaire
Étape 1 : Acheter une instance secondaire en lecture seule
Accédez à la page d'achat de Hologres.
Définissez Instance Type sur Read-only Secondary Instance.
Pour Primary Instance ID of the Read-only Secondary Instance, sélectionnez l'ID de l'instance primaire.
Configurez les autres paramètres. Pour plus d'informations, consultez Acheter une instance Hologres.
L'instance secondaire en lecture seule doit se trouver dans la même région que l'instance primaire.
Étape 2 : Vérifier le rattachement de l'instance secondaire
Après l'achat, l'instance secondaire est automatiquement rattachée à l'instance primaire sélectionnée. Attendez que l'état de l'instance passe à Running as Expected.
Étape 3 : Se connecter au endpoint de l'instance secondaire
Chaque instance secondaire dispose de son propre endpoint. Acheminez le trafic de lecture vers différents endpoints secondaires pour isoler les charges de travail selon les scénarios métier.
Recommandations d'utilisation
Effectuez toutes les opérations d'écriture, les commandes DDL, les autorisations et les modifications de paramètres sur l'instance primaire. Les instances secondaires sont en lecture seule.
Les instances secondaires héritent de tous les objets (utilisateurs, tables, politiques d'accès) de l'instance primaire. Vous ne pouvez pas créer d'utilisateurs spécifiques à une instance secondaire.
Une fois la configuration terminée, acheminez le trafic de lecture de production vers les endpoints des instances secondaires.
Scénarios recommandés
|
Scénario |
Instance primaire |
Instances secondaires |
|
Séparation lecture/écriture |
Ingestion et transformation des données |
Analyse des données |
|
Isolation des services en ligne (stabilité P99 élevée) |
Toutes les écritures |
Réplica dédié aux requêtes en ligne, isolé des autres charges de travail |
|
Isolation des requêtes OLAP |
Toutes les écritures |
Réplica distinct axé sur l'analytique, séparé du réplica de service en ligne |
Fonctionnement
Récupération automatique sur instance unique
Chaque instance Hologres intègre une récupération automatique. Aucune intervention manuelle en matière d'exploitation et de maintenance n'est requise.
Les nœuds de calcul s'exécutent dans des conteneurs (Worker Nodes). Le Resource Manager vérifie périodiquement l'état de santé de chaque conteneur. Si un conteneur ne répond pas dans un délai d'une minute, en raison d'une erreur OOM, d'une défaillance matérielle ou de bugs logiciels, le Resource Manager lance un nœud de remplacement et migre les responsabilités des shards vers celui-ci.
Les données résident dans le système de stockage distribué Pangu, et non sur les nœuds de calcul. Comme les nœuds de calcul sont sans état, la récupération s'effectue sans migration de données, en environ une minute pour les versions V1.1 et ultérieures, soit 5 à 10 fois plus rapidement que les versions précédentes.
Les requêtes qui ciblent un nœud en cours de récupération échouent immédiatement pendant cette phase.

Architecture de stockage partagé multi-instances
La récupération sur instance unique entraîne tout de même une brève période d'indisponibilité. Pour les charges de travail nécessitant une disponibilité continue, les versions V1.1 et ultérieures prennent en charge le déploiement multi-instances avec stockage partagé.
|
Composant |
Fonctionnalités |
|
Instance primaire |
Opérations de lecture/écriture, gestion des autorisations, configuration des paramètres système |
|
Instances secondaires |
Lecture seule ; toutes les modifications (création de table, autorisation d'utilisateur, paramètres système) doivent être effectuées sur l'instance primaire |
Les instances partagent les données et les politiques d'accès, mais pas les ressources de calcul, ce qui assure une isolation des charges de travail et des pannes. Le stockage n'est facturé qu'une seule fois.

Synchronisation entre les instances
Les états mémoire se synchronisent en temps réel entre les instances, avec une latence de l'ordre de la milliseconde au sein d'une même région. Les écritures sur l'instance primaire sont automatiquement synchronisées avec toutes les instances secondaires.
Les instances secondaires consomment environ 1/8 du CPU et de la mémoire de l'instance primaire, même lorsqu'elles sont inactives. Évitez des spécifications trop différentes entre les instances primaires et secondaires.
Prérequis
Vérifiez les points suivants :
|
Exigence |
Détail |
|
Version de Hologres |
V1.1 ou ultérieure pour l'instance primaire. Pour les versions antérieures, consultez Erreurs courantes de préparation à la mise à niveau ou rejoignez le groupe d'utilisateurs Hologres pour demander une mise à niveau. Pour plus d'informations, consultez Obtenir un support en ligne pour Hologres |
|
Région |
Les instances primaire et secondaire doivent résider dans la même région |
|
Parité des versions |
Les instances primaire et secondaire doivent exécuter la même version de Hologres |
|
Autorisations RAM |
L'utilisateur RAM effectuant les opérations de rattachement/détachement doit disposer de la politique AliyunHologresFullAccess. Pour plus d'informations, consultez Accorder des autorisations aux utilisateurs RAM. |
Limites
|
Contrainte |
Détail |
|
Nombre maximal d'instances secondaires |
10 instances secondaires en lecture seule par instance primaire |
|
Nombre de shards |
Toutes les instances doivent avoir le même nombre de shards |
|
Spécifications |
Les configurations de ressources peuvent différer entre les instances, mais ne doivent pas varier de manière significative |
|
Réplicas non rattachés |
Une instance secondaire en lecture seule ne peut pas accepter de connexions tant qu'elle n'est pas rattachée à une instance primaire |
|
Durée du rattachement |
Le rattachement d'un réplica prend environ 3 à 5 minutes. Le réplica n'est pas disponible jusqu'à la fin du processus |
|
Disponibilité de l'instance primaire pendant le rattachement |
L'instance primaire reste entièrement opérationnelle pendant le rattachement d'un réplica |
|
Seuil de latence de synchronisation |
Dans les versions V1.3.27 et ultérieures, le seuil est de 60 minutes (auparavant 20 minutes). Si l'utilisation du réplica reste à 100 % pendant plus de 60 minutes, le réplica redémarre automatiquement. En cas d'utilisation élevée soutenue, optimisez les performances ou augmentez la capacité. |
|
Lecture directe MaxCompute |
Lorsque MaxCompute lit directement depuis la couche de stockage Hologres dans une architecture primaire-secondaire, l'URL de connexion doit pointer vers l'instance primaire, et non vers un réplica. Pour plus d'informations, consultez Activer la lecture directe depuis le stockage de table externe Hologres. |