Suite

QGIS DB Manager - charger en tant que nouvelle couche ne se charge pas


Après avoir exécuté avec succès une requête SQL sur deux tables et des résultats sur 3 colonnes, j'aimerais vraiment pouvoir l'afficher dans le canevas. Apparemment, cette fonction ne fait rien, pas même autant que de lancer une erreur pour savoir si quelque chose se passe.

Que devrais-je faire? Espérons que cette capture d'écran vous aidera.

*J'utilise le gestionnaire de bases de données car le plugin SPIT ne me permettait pas d'importer des fichiers de formes. *QGIS version 2.8.2 sur Windows


Après plusieurs tentatives, j'ai réussi à créer un tableau avec mes résultats, mais ce n'est pas mon objectif.

créer des résultats de table en tant que (SELECT bati_1948.objectid gid48,bati_1971.objectid gid71,ST_Area(ST_Intersection(bati_1948.geom,bati_1971.geom))/ST_Area(bati_1971.geom) ratio FROM bati_1948 RIGHT JOIN bati_1971 ON ST_1948.geom(bati19 .geom,5) O bati_1948.objectid EST NULL OU ST_Area(ST_Intersection(bati_1948.geom,bati_1971.geom))/ST_Area(bati_1971.geom)<>1) ;

Quelqu'un saurait-il comment puis-je transformer cela en un fichier de formes?


Vous devez avoir une sortie de colonne de géométrie dans votre requête. On dirait que non.


Sur ma version (2.16.3), si je décoche la case à côté de 'Colonne géométrique', je peux charger comme nouveau calque le résultat d'une requête sans aucun problème même s'il n'a pas de données géométriques…


Frontières en sciences de la Terre

Cet article fait partie du sujet de recherche

Big Earth Data pour la réduction des risques de catastrophe Voir les 6 articles

Édité par
Lei WANG

Institut de télédétection et de Terre numérique (CAS), Chine

Revu par
Yuchu Qin

Institut de recherche sur l'information aérospatiale, Académie chinoise des sciences, Chine

Weiguo Han

University Corporation for Atmospheric Research (UCAR), États-Unis

Les affiliations de l'éditeur et des réviseurs sont les dernières fournies sur leurs profils de recherche Loop et peuvent ne pas refléter leur situation au moment de la révision.


  • Télécharger l'article
    • Télécharger le PDF
    • LireCube
    • EPUB
    • XML (NLM)
    • Supplémentaire
      Matériel
    • Note de fin
    • Gestionnaire de référence
    • Fichier TEXTE simple
    • BibTex


    PARTAGER SUR

    Messages FlushCache constants du journal des erreurs SQL

    Un serveur faisant partie d'un groupe de disponibilité toujours actif (BAG) SQL 2017 J'ai remarqué une augmentation de ces messages. Je comprends que ce sont des messages qui apparaissent dans le journal en standard depuis 2012 (indicateur de trace avant 2012) mais au cours des 2 derniers jours, ils apparaissent toutes les quelques minutes, il n'y a pas de sauvegardes en cours d'exécution ou de travaux de maintenance à ces moments-là

    Le serveur agit en tant que partenaire de basculement secondaire non lisible et le serveur principal ne présente pas le même comportement.

    09/04/2020 10:52:24,spid82s,Inconnu,FlushCache : nettoyage de 2303 bufs avec 1881 écritures en 81090 ms (évitement 11 nouveaux bufs sales) pour db 7:0 09/04/2020 10:52:07, spid52s,Inconnu,dernière cible en attente : 2 avgWriteLatency 86 09/04/2020 10:52:07,spid52s,Inconnu,écritures moyennes par seconde : 17,70 écritures/s Débit moyen : 0,19 Mo/s Saturation des E/S : 13073 commutateurs de contexte 15434

    Il y a également un avertissement dans le journal des erreurs système concernant le problème du disque, quelques secondes après cela, le groupe de disponibilité a basculé depuis que les messages FlushCache ont augmenté.

    Quelqu'un a-t-il vécu quelque chose de similaire ou a-t-il des conseils, mon administrateur système examine également le domaine SAN et VMware.


    Premiers pas avec GeoMesa en utilisant Geodocker

    Dans un article précédent, j'ai montré comment utiliser docker pour exécuter une seule application (GeoServer) dans un conteneur et s'y connecter à partir de votre installation QGIS locale. Le post d'aujourd'hui concerne l'exécution de tout un tas de conteneurs qui interagissent les uns avec les autres. Plus précisément, j'utilise les images fournies par Geodocker. Le référentiel Geodocker fournit une configuration contenant Accumulo, GeoMesa et GeoServer. Si vous ne connaissez pas encore GeoMesa :

    GeoMesa est une base de données spatio-temporelle open source, distribuée, construite sur un certain nombre de systèmes de stockage de données cloud distribués. GeoMesa vise à fournir autant de requêtes spatiales et de manipulation de données à Accumulo que PostGIS le fait à Postgres.

    Les sections suivantes montrent comment charger des données dans GeoMesa, effectuer des requêtes de base via la ligne de commande et enfin publier des données sur GeoServer. Le contenu est largement basé sur deux didacticiels GeoMesa : Geodocker : Bootstrapping GeoMesa Accumulo et Spark sur AWS et Map-Reduce Ingest of GDELT, ainsi que sur le post de Diethard Steiner sur les bases d'Accumulo. La principale différence est que ce didacticiel est écrit pour être exécuté localement (plutôt que sur AWS ou une infrastructure similaire) et qu'il énonce tous les noms d'utilisateur et mots de passe préconfigurés dans Geodocker.

    Ce guide a été testé sur Ubuntu et suppose que Docker est déjà installé. Si vous ne l'avez pas encore fait, vous pouvez installer Docker comme décrit dans Installer à l'aide du référentiel.

    Pour configurer Geodocker, nous devons obtenir le code de Github et exécuter la commande docker-compose :

    Lorsque docker-compose est terminé, utilisez une deuxième console pour vérifier l'état de tous les conteneurs :

    Au moment de la rédaction de cet article, la version de Geomesa installée de cette manière est la 1.3.2 :

    Chargement des données

    Nous devons d'abord obtenir des données. Les tutoriels disponibles se réfèrent souvent à des données publiées par le projet GDELT. Téléchargez les données pendant trois jours, décompressez-les et copiez-les dans le conteneur geodockeraccumulogeomesa_accumulo-master_1 pour un traitement ultérieur :

    Le chargement ou l'importation de données s'appelle “ingesting” dans le jargon Geomesa. Le format des données GDELT étant déjà prédéfini (le mapping CSV est défini dans geomesa-tools/conf/sfts/gdelt/reference.conf), nous pouvons ingérer les données :

    Une fois les données ingérées, on peut consulter la table créée en demandant à GeoMesa de décrire le schéma créé :

    En arrière-plan, nos données sont stockées dans des tables Accumulo. Pour voir de plus près, ouvrez une borne interactive dans l'image maître Accumulo :

    et ouvrez le shell Accumulo :

    Lorsque nous stockons des données dans GeoMesa, il n'y a pas qu'une seule table mais plusieurs. Chaque table a un objectif spécifique : stocker des métadonnées, des enregistrements ou des index. Toutes les tables sont préfixées par le nom de la table du catalogue :

    Par défaut, GeoMesa crée trois index :
    Z2 : pour les requêtes avec une composante spatiale mais pas de composante temporelle.
    Z3 : pour les requêtes avec à la fois une composante spatiale et temporelle.
    Enregistrement : pour les requêtes par ID de fonctionnalité.

    Mais revenons à GeoMesa …

    Interrogation des données

    Nous sommes maintenant prêts à interroger les données. Exécutons d'abord une requête d'attribut simple. Assurez-vous que vous êtes bien dans la borne interactive dans l'image maître Accumulo :

    Cette requête filtre pour un certain identifiant d'événement :

    Si la requête d'attribut s'exécute avec succès, nous pouvons avancer vers une certaine qualité géographique … c'est pourquoi nous nous intéressons à GeoMesa après tout … et effectuer une requête spatiale :

    Les fonctions qui peuvent être utilisées dans les requêtes/filtres de commandes d'exportation sont pour la plupart des fonctions (E)CQL de geotools. Des requêtes plus sophistiquées nécessitent SparkSQL.

    Publication des tables GeoMesa avec GeoServer

    Pour afficher les données dans GeoServer, accédez à http://localhost:9090/geoserver/web. Connectez-vous avec admin:geoserver.

    Tout d'abord, nous créons un nouvel espace de travail appelé “geomesa”.

    Ensuite, nous pouvons créer un nouveau magasin de type Accumulo (GeoMesa) appelé “gdelt”. Utilisez les paramètres suivants :

    Ensuite, nous pouvons configurer une couche qui publie le contenu de notre nouveau magasin de données. Il est bon de vérifier les paramètres du système de référence de coordonnées et d'insérer les informations de la zone de délimitation :

    Pour prévisualiser le WMS, accédez à l'aperçu de GeoServer’s :

    Ce qui ressemblera à ceci :

    Données GeoMesa filtrées à l'aide de CQL dans l'aperçu de GeoServer

    Pour plus d'options d'affichage, consultez le didacticiel officiel de GeoMesa.

    Si vous regardez de plus près l'URL d'aperçu, vous remarquerez qu'elle spécifie une fenêtre de temps :

    C'est exactement là que QGIS TimeManager pourrait intervenir : Utilisation de TimeManager pour les couches WMS-T. L'interopérabilité pour gagner !


    L'équilibrage de charge

    Utilisation d'un équilibreur de charge logicielle pour la surveillance des applications, la sécurité et l'intelligence de l'utilisateur final

    • Les administrateurs peuvent avoir des informations exploitables sur les applications à portée de main
    • Réduisez le temps de dépannage de quelques jours à quelques minutes
    • Évite de pointer du doigt et permet une résolution collaborative des problèmes


    La déclaration de la section de configuration personnalisée ASP.NET interrompt l'éditeur de configuration du gestionnaire IIS

    J'ai un simple composant de configuration personnalisée .NET qui me permet de spécifier un groupe et une section de configuration personnalisés dans le fichier web.config de mon application Web ASP.NET 2.0 (le projet Web cible .NET Framework 3.5):

    Dans mon web.config j'ai les déclarations suivantes :

    Il y a quelques classes qui donnent accès à cette section de configuration personnalisée qui résident dans un projet de bibliothèque de classes appelé CustomSettingsLib :

    Le code pour lire la valeur MySetting ressemble à ( Default.aspx.cs ):

    Cela fonctionne très bien et mon application Web peut lire la valeur MySetting à partir de mon fichier web.config.

    Étant donné que ces paramètres seront utilisés dans de nombreuses applications Web sur Windows 2008 R2 + IIS7.5, j'ai ensuite créé une extension de schéma de configuration IIS pour permettre à ce paramètre d'être modifié dans la fonction Éditeur de configuration du gestionnaire IIS plutôt que d'avoir à modifier manuellement le fichier web.config .

    J'ai ajouté un fichier d'extension de schéma de configuration IIS à :

    J'ai ensuite ajouté la définition de section suivante au fichier applicationHost.config d'IIS dans l'élément <configSections> :

    Le problème que j'ai est que lorsque j'ouvre l'éditeur de configuration du gestionnaire IIS pour le site :

    Ensuite, sélectionnez SimpleConfigGroup dans la liste déroulante de la section, il signale l'erreur vague suivante :


    Système de gestion intelligent de l'information basé sur Hadoop

    Afin d'explorer la gestion de l'information, la technologie du cloud computing est appliquée au domaine du système d'information géographique, et un système de stockage et de gestion de données de télédétection basé sur Hadoop est étudié et réalisé. La fonction principale de ce système comprend que le module de stockage de données de télédétection fournit la fonction de téléchargement de données de télédétection pour l'administrateur de données, prend en charge le protocole HTTP et le téléchargement HTTP distribué multithread du protocole FTP. L'algorithme de construction parallèle de l'image de télédétection de Pyramid basé sur Map Reduce est réalisé par le module, et la découpe en couches et le stockage en bloc de données massives de télédétection sont effectués. La bibliothèque open source GDAL adaptée aux données raster à lecture rapide est utilisée et fournit des ressources de données pour la découpe parallèle des données de télédétection. De plus, le middleware de service de carte de tuiles open source Geo Web Cache est adopté et HBase est présenté comme support de stockage de tuiles, qui peut gérer un grand nombre de visites d'utilisateurs, y compris le chargement et le glissement de cartes. Le test du système est effectué pour vérifier l'efficacité et la praticabilité de la méthode proposée. Les résultats des tests peuvent montrer que le système de stockage et de gestion des données de télédétection basé sur Hadoop peut gérer efficacement les données de télédétection et améliorer l'expérience de l'utilisateur. Il est conclu que le système de gestion de l'information a une grande efficacité et une bonne praticabilité.

    Ceci est un aperçu du contenu de l'abonnement, accessible via votre institution.


    J'ai trouvé cet article de blog d'Alen Siljak qui décrit comment l'empêcher de démarrer lors de la connexion. Il existe deux méthodes différentes pour résoudre le problème. La première et la plus simple est une case à cocher dans le gestionnaire de serveur lui-même. La seconde consiste à modifier le registre, qui peut être utilisé pour automatiser et scripter le processus pour un grand nombre de serveurs.

    Méthode d'interface utilisateur - Dans le programme "Gestionnaire de serveur", il y a la section "Résumé du serveur -> Informations sur l'ordinateur". Au bas de la section, il y a une case à cocher "Ne pas me montrer cette console à la connexion". Cochez cette case et quittez le programme et à la prochaine connexion, vous ne verrez pas le gestionnaire de serveur.

    Méthode de registre - Allez dans l'éditeur de registre et HKLMSoftwareMicrosoftServerManager et définissez la variable DoNotOpenServerManagerAtLogon sur 1 . Ensuite, accédez à une autre entrée dans HKCUSoftwareMicrosoftServerManager et définissez le CheckedUnattendLaunchSetting sur 0 (notez que cela ne le définira que pour l'utilisateur actuel). Après vous être déconnecté et reconnecté, vous ne devriez plus voir le gestionnaire de serveur.


    Cette erreur se produit généralement si vous exécutez sqlplus en tant qu'utilisateur différent (autre que celui qui a installé le logiciel Oracle), en raison de problèmes d'autorisation

    Vérifiez la note Oracle : 356850.1

    J'ai pu résoudre ce problème en copiant le contenu du dossier SQLPLUS dans le dossier Instant_Client_12_1. Ensuite, SQLPlus a pu se lancer.

    Sinon, vérifiez si vous pouvez accéder au répertoire lib ci-dessus.

    Je viens de déployer Instant Client dans un répertoire et après avoir mis à jour LD_LIBRARY_PATH (y compris le répertoire lib d'Instant Client) et ORACLE_HOME, j'étais confronté au même problème. J'ai maintenant mis à jour PATH (y compris le répertoire bin pour Instant Client) et cela a résolu le problème.

    Et parfois, suivre la documentation Oracle résout pas mal de problèmes.

    Assurez-vous que Basic Instant Client est déployé avant d'exécuter le script d'installation ODBC.

    Décompressez le package ODBC Instant Client, puis exécutez le script odbc_update_ini.sh avec le répertoire d'installation de Driver Manager comme argument de ligne de commande. (Pour une syntaxe complète, veuillez exécuter "odbc_update_ini.sh" sans aucun argument de ligne de commande.) Par exemple, si Driver Manager est installé dans le répertoire /home/DriverManager

    Il ajoutera l'entrée DSN dans $HOME/.odbc.ini et /etc/odbcinst.ini avec le nom DSN comme OracleODBC-11g

    Après l'installation, l'environnement doit être configuré de la manière suivante. Ajoutez le répertoire à la variable d'environnement système LD_LIBRARY_PATH. Sinon, le gestionnaire ODBC ne pourra pas charger/trouver le pilote.

    Définissez la variable d'environnement TNS_ADMIN pour pointer le répertoire des fichiers .ora pour OCI.


    Annexe : Référence du produit

    Cette section décrit l'architecture et les capacités de reprise après sinistre des produits Google Cloud les plus couramment utilisées dans les applications client et qui peuvent être facilement exploitées pour répondre à vos exigences de reprise après sinistre.

    Thèmes communs

    De nombreux produits Google Cloud proposent des configurations régionales ou multirégionales. Les produits régionaux sont résilients aux pannes de zone, et les produits multirégionaux et mondiaux sont résilients aux pannes régionales. En général, cela signifie que lors d'une panne, votre application subit une interruption minimale. Google atteint ces résultats grâce à quelques approches architecturales courantes, qui reflètent les conseils architecturaux ci-dessus.

      Déploiement redondant: les backends d'application et le stockage de données sont déployés sur plusieurs zones au sein d'une région et plusieurs régions au sein d'un emplacement multirégional.

    Réplication de données: les produits utilisent une réplication synchrone ou asynchrone sur les emplacements redondants.

    Synchrone La réplication signifie que lorsque votre application effectue un appel d'API pour créer ou modifier des données stockées par le produit, elle ne reçoit une réponse positive qu'une fois que le produit a écrit les données dans plusieurs emplacements. La réplication synchrone garantit que vous ne perdez l'accès à aucune de vos données lors d'une panne de l'infrastructure Google Cloud, car toutes vos données sont disponibles dans l'un des emplacements principaux disponibles.

    Bien que cette technique offre une protection maximale des données, elle peut présenter des compromis en termes de latence et de performances. Les produits multirégionaux utilisant la réplication synchrone subissent ce compromis de manière très significative, généralement de l'ordre de 10 ou 100 millisecondes de latence supplémentaire.

    Asynchrone La réplication signifie que lorsque votre application effectue un appel API pour créer ou modifier des données stockées par le produit, elle reçoit une réponse positive une fois que le produit a écrit les données dans un emplacement unique. Suite à votre demande d'écriture, le produit réplique vos données vers des emplacements supplémentaires.

    Cette technique offre une latence plus faible et un débit plus élevé au niveau de l'API que la réplication synchrone, mais au détriment de la protection des données. Si l'emplacement dans lequel vous avez écrit les données subit une panne avant la fin de la réplication, vous perdez l'accès à ces données jusqu'à ce que la panne de l'emplacement soit résolue.

    Gestion des pannes avec équilibrage de charge : Google Cloud utilise l'équilibrage de charge logiciel pour acheminer les requêtes vers les backends d'application appropriés. Par rapport à d'autres approches telles que l'équilibrage de charge DNS, cette approche réduit le temps de réponse du système à une panne. Lorsqu'une panne d'emplacement Google Cloud se produit, l'équilibreur de charge détecte rapidement que le backend déployé à cet emplacement est devenu "non sain" et dirige toutes les requêtes vers un backend situé dans un autre emplacement. Cela permet au produit de continuer à répondre aux demandes de votre application pendant une panne d'emplacement. Lorsque la panne d'emplacement est résolue, l'équilibreur de charge détecte la disponibilité des backends de produit à cet emplacement et reprend l'envoi de trafic à cet emplacement.

    Moteur de calcul

    Compute Engine est l'infrastructure en tant que service de Google Cloud. Il utilise l'infrastructure mondiale de Google pour proposer des machines virtuelles (et des services associés) aux clients.

    Les instances Compute Engine sont des ressources zonales. Par conséquent, en cas de panne de zone, les instances ne sont pas disponibles par défaut. Compute Engine propose des groupes d'instances gérés (MIG) qui peuvent automatiquement faire évoluer des VM supplémentaires à partir de modèles d'instances préconfigurés, à la fois au sein d'une seule zone et sur plusieurs zones d'une région. Les MIG sont idéaux pour les applications qui nécessitent une résilience à la perte de zone et sont sans état, mais nécessitent une configuration et une planification des ressources. Plusieurs MIG régionaux peuvent être utilisés pour obtenir une résilience aux pannes régionales pour les applications sans état.

    Les applications qui ont des charges de travail avec état peuvent toujours utiliser des MIG avec état (bêta), mais une attention particulière doit être apportée à la planification de la capacité car elles ne s'adaptent pas horizontalement. Dans les deux cas, il est important de configurer et de tester correctement les modèles d'instance Compute Engine et les MIG à l'avance pour garantir le fonctionnement des capacités de basculement vers d'autres zones. Voir la section Modèles d'architecture ci-dessus pour plus d'informations.

    Dataproc

    Dataproc fournit des fonctionnalités de traitement de données en continu et par lots. Dataproc est conçu comme un plan de contrôle régional qui permet aux utilisateurs de gérer les clusters Dataproc. Le plan de contrôle ne dépend pas d'une zone individuelle dans une région donnée. Par conséquent, lors d'une panne zonale, vous conservez l'accès aux API Dataproc, y compris la possibilité de créer de nouveaux clusters.

    Les clusters sont exécutés dans Compute Engine. Étant donné que le cluster est une ressource zonale, une panne zonale rend le cluster indisponible ou détruit le cluster. Dataproc n'enregistre pas automatiquement l'état du cluster. Une panne de zone peut donc entraîner la perte des données en cours de traitement. Dataproc ne conserve pas les données utilisateur au sein du service. Les utilisateurs peuvent configurer leurs pipelines pour écrire les résultats dans de nombreux magasins de données. Vous devez prendre en compte l'architecture du magasin de données et choisir un produit qui offre la résilience aux sinistres requise.

    Si une zone subit une panne, vous pouvez choisir de recréer une nouvelle instance du cluster dans une autre zone, soit en sélectionnant une autre zone, soit en utilisant la fonctionnalité de placement automatique de Dataproc pour sélectionner automatiquement une zone disponible. Une fois le cluster disponible, le traitement des données peut reprendre. Vous pouvez également exécuter un cluster avec le mode haute disponibilité activé, ce qui réduit la probabilité qu'une panne de zone partielle ait un impact sur un nœud maître et, par conséquent, sur l'ensemble du cluster.

    Flux de données

    Dataflow est le service de traitement de données entièrement géré et sans serveur de Google Cloud pour les pipelines de streaming et de traitement par lots. Les tâches Dataflow sont de nature zonale et, dans la configuration par défaut, ne conservent pas les résultats de calcul intermédiaires lors d'une panne zonale. Une approche de récupération typique pour ces pipelines Dataflow par défaut consiste à redémarrer une tâche dans une autre zone ou région et à retraiter à nouveau les données d'entrée.

    Concevoir des pipelines Dataflow pour une haute disponibilité

    En cas de panne de zone ou de région, vous pouvez éviter la perte de données en réutilisant le même abonnement au sujet Pub/Sub. Dans le cadre de la garantie d'exactement unique de Dataflow, Dataflow n'accuse les messages dans Pub/Sub que s'ils ont été conservés dans la destination, ou si un message est passé par une opération de regroupement/fenêtrage et a été enregistré dans le pipeline durable de Dataflow Etat. S'il n'y a pas d'opérations de regroupement/fenêtrage, un basculement vers une autre tâche Dataflow dans une autre zone ou région en réutilisant l'abonnement n'entraîne aucune perte de données dans les données de sortie du pipeline.

    Si le pipeline utilise le regroupement ou la fenêtre temporelle, vous pouvez utiliser la fonctionnalité Seek de Pub/Sub ou la fonctionnalité Replay de Kafka après une panne zonale ou régionale pour retraiter les éléments de données afin d'obtenir les mêmes résultats de calcul. La perte de données des sorties du pipeline peut être minimisée jusqu'à 0 élément, si la logique métier utilisée par le pipeline ne repose pas sur les données avant la panne. Si la logique métier du pipeline repose sur des données qui ont été traitées avant la panne (par exemple, si de longues fenêtres glissantes sont utilisées, ou si une fenêtre temporelle globale stocke des compteurs toujours croissants), Dataflow propose une fonctionnalité de capture d'écran (actuellement en aperçu) qui fournit une sauvegarde instantanée de l'état d'un pipeline.

    BigQuery

    BigQuery est un entrepôt de données cloud sans serveur, hautement évolutif et économique conçu pour l'agilité de l'entreprise. BigQuery accepte deux options de configuration différentes liées à la disponibilité pour les ensembles de données utilisateur.

    Configuration à une seule région

    Dans une configuration à une seule région, les données sont stockées de manière redondante dans deux zones au sein d'une même région. Les données écrites dans BigQuery sont d'abord écrites dans la zone principale, puis répliquées de manière asynchrone dans une zone secondaire. Cela protège contre l'indisponibilité d'une seule zone dans la région. Les données qui ont été écrites dans la zone principale mais qui n'ont pas été répliquées dans la zone secondaire au moment d'une panne de zone ne sont pas disponibles jusqu'à ce que la panne soit résolue. Dans le cas improbable d'une zone détruite, ces données peuvent être définitivement perdues.

    Configuration multi-régions (US / UE)

    Semblable à la configuration à une seule région, dans la configuration multirégionale États-Unis/UE, les données sont stockées de manière redondante dans deux zones d'une même région. De plus, BigQuery conserve une copie de sauvegarde supplémentaire des données dans une seconde région. Si la région principale subit une panne, les données sont diffusées à partir de la région secondaire. Les données qui n'ont pas été répliquées ne sont pas disponibles tant que la région principale n'est pas restaurée.

    Moteur Google Kubernetes

    Google Kubernetes Engine (GKE) propose un service Kubernetes géré en rationalisant le déploiement d'applications conteneurisées sur Google Cloud. Vous pouvez choisir entre des topologies de cluster régionales ou zonales.

    • Lors de la création d'un cluster zonal, GKE provisionne une machine du plan de contrôle dans la zone choisie, ainsi que des machines de travail (nœuds) dans la même zone.
    • Pour clusters régionaux, GKE provisionne trois machines du plan de contrôle dans trois zones différentes de la région choisie. Par défaut, les nœuds sont également répartis sur trois zones, bien que vous puissiez choisir de créer un cluster régional avec des nœuds provisionnés uniquement dans une zone.
    • Clusters multizones sont similaires aux clusters zonaux car ils incluent une machine maître, mais offrent en outre la possibilité de répartir les nœuds sur plusieurs zones.

    Panne de zone : Pour éviter les pannes zonales, utilisez des clusters régionaux. Le plan de contrôle et les nœuds sont répartis sur trois zones différentes au sein d'une région. Une panne de zone n'a pas d'impact sur le plan de contrôle et les nœuds de travail déployés dans les deux autres zones.

    Panne régionale : L'atténuation d'une panne régionale nécessite un déploiement dans plusieurs régions. Bien qu'elle ne soit actuellement pas proposée en tant que fonctionnalité de produit intégrée, la topologie multirégionale est aujourd'hui une approche adoptée par plusieurs clients GKE et peut être implémentée manuellement. Vous pouvez créer plusieurs clusters régionaux pour répliquer vos charges de travail dans plusieurs régions et contrôler le trafic vers ces clusters à l'aide d'une entrée multi-cluster.

    Service de gestion de clés cloud

    Cloud Key Management Service (Cloud KMS) fournit une gestion des ressources de clés cryptographiques évolutive et hautement durable. Cloud KMS stocke toutes ses données et métadonnées dans des bases de données Cloud Spanner qui offrent une durabilité et une disponibilité élevées des données avec une réplication synchrone.

    Les ressources Cloud KMS peuvent être créées dans une seule région, plusieurs régions ou dans le monde.

    En cas de panne zonale, Cloud KMS continue de traiter les demandes d'une autre zone de la même région ou d'une région différente sans interruption. Étant donné que les données sont répliquées de manière synchrone, il n'y a pas de perte ou de corruption de données. Lorsque la panne de zone est résolue, la redondance complète est restaurée.

    En cas de panne régionale, les ressources régionales de cette région sont hors ligne jusqu'à ce que la région redevienne disponible. Notez que même au sein d'une région, au moins 3 réplicas sont conservés dans des zones distinctes. Lorsqu'une disponibilité plus élevée est requise, les ressources doivent être stockées dans une configuration multirégionale ou globale. Les configurations multirégionales et mondiales sont conçues pour rester disponibles pendant une panne régionale en stockant et en servant des données de manière géo-redondant dans plusieurs régions.

    Identité Cloud

    Les services Cloud Identity sont répartis dans plusieurs régions et utilisent l'équilibrage de charge dynamique. Cloud Identity ne permet pas aux utilisateurs de sélectionner une étendue de ressources. Si une zone ou une région particulière subit une panne, le trafic est automatiquement distribué vers d'autres zones ou régions.

    Les données persistantes sont mises en miroir dans plusieurs régions avec une réplication synchrone dans la plupart des cas. Pour des raisons de performances, quelques systèmes, tels que les caches ou les modifications affectant un grand nombre d'entités, sont répliqués de manière asynchrone entre les régions. Si la région principale dans laquelle les données les plus récentes sont stockées subit une panne, Cloud Identity sert les données obsolètes à partir d'un autre emplacement jusqu'à ce que la région principale soit disponible.

    Disque persistant

    Les disques persistants sont disponibles dans des configurations zonales et régionales.

    Les disques persistants zonaux sont hébergés dans une seule zone. Si la zone du disque n'est pas disponible, le disque persistant n'est pas disponible jusqu'à ce que la panne de la zone soit résolue.

    Les disques persistants régionaux fournissent une réplication synchrone des données entre deux zones d'une région. En cas de panne dans la zone de votre machine virtuelle, vous pouvez forcer l'attachement d'un disque persistant régional à une instance de machine virtuelle dans la zone secondaire du disque. Pour effectuer cette tâche, vous devez soit démarrer une autre instance de VM dans cette zone, soit maintenir une instance de VM de secours dans cette zone.

    Stockage en ligne

    Cloud Storage fournit un stockage d'objets unifié à l'échelle mondiale, évolutif et hautement durable. Les buckets Cloud Storage peuvent être créés dans une seule région, dans deux régions ou dans plusieurs régions d'un continent.

    Si une zone subit une panne, les données de la zone indisponible sont automatiquement et de manière transparente servies à partir d'ailleurs dans la région. Les données et les métadonnées sont stockées de manière redondante dans toutes les zones, en commençant par l'écriture initiale. Aucune écriture n'est perdue lorsqu'une zone devient indisponible.

    En cas de panne régionale, les compartiments régionaux de cette région sont hors ligne jusqu'à ce que la région redevienne disponible. Lorsqu'une disponibilité plus élevée est requise, vous devez envisager de stocker les données dans une configuration à deux ou plusieurs régions. Les régions doubles et multirégionales sont conçues pour rester disponibles pendant une panne régionale en stockant de manière géo-redondant les données dans plusieurs régions à l'aide d'une réplication asynchrone.

    Cloud Storage utilise Cloud Load Balancing pour diffuser des buckets birégionaux et multirégionaux à partir de plusieurs régions. En cas de panne régionale, le service n'est pas interrompu. Étant donné que la géo-redondance est réalisée de manière asynchrone, certaines données récemment écrites peuvent ne pas être accessibles pendant la panne et pourraient être perdues en cas de destruction physique des données dans la région touchée.

    Registre de conteneurs

    Container Registry fournit une implémentation évolutive de Docker Registry hébergée qui stocke de manière sécurisée et privée les images de conteneur Docker. Container Registry implémente l'API HTTP Docker Registry.

    Container Registry est un service mondial qui stocke de manière synchrone les métadonnées d'image de manière redondante dans plusieurs zones et régions par défaut. Les images de conteneurs sont stockées dans des buckets multirégionaux Cloud Storage. Avec cette stratégie de stockage, Container Registry fournit une résilience aux pannes zonales dans tous les cas, et une résilience aux pannes régionales pour toutes les données qui ont été répliquées de manière asynchrone dans plusieurs régions par Cloud Storage.

    Pub/Sub

    Pub/Sub est un service de messagerie pour l'intégration d'applications et l'analyse de flux. Les sujets Pub/Sub sont mondiaux, ce qui signifie qu'ils sont visibles et accessibles depuis n'importe quel emplacement Google Cloud. Cependant, tout message donné est stocké dans une seule région Google Cloud, la plus proche de l'éditeur et autorisée par la règle d'emplacement des ressources. Ainsi, un sujet peut contenir des messages stockés dans différentes régions de Google Cloud. La règle de stockage des messages Pub/Sub peut restreindre les régions dans lesquelles les messages sont stockés.

    Panne de zone : lorsqu'un message Pub/Sub est publié, il est écrit de manière synchrone sur le stockage dans au moins deux zones de la région. Par conséquent, si une seule zone devient indisponible, il n'y a pas d'impact visible par le client.

    Panne régionale: lors d'une panne de région, les messages stockés dans la région affectée sont inaccessibles. Les opérations administratives, telles que la création et la suppression de sujets et d'abonnements, sont multirégionales et résistantes à une panne d'une seule région Google Cloud. Les opérations de publication sont également résistantes aux pannes régionales, à condition qu'au moins une région autorisée par la stratégie de stockage des messages soit disponible et que votre application utilise le point de terminaison global ( pubsub.googleapis.com ) ou plusieurs points de terminaison régionaux. Par défaut, Pub/Sub ne restreint pas l'emplacement de stockage des messages.

    Si votre application repose sur l'ordre des messages, veuillez consulter les recommandations détaillées de l'équipe Pub/Sub. Les garanties de classement des messages sont fournies région par région et peuvent être perturbées si vous utilisez un point de terminaison global.

    Compositeur Cloud

    Cloud Composer est la mise en œuvre d'Apache Airflow gérée par Google Cloud. Cloud Composer est conçu comme un plan de contrôle régional qui permet aux utilisateurs de gérer les clusters Cloud Composer. Le plan de contrôle ne dépend pas d'une zone individuelle dans une région donnée. Par conséquent, lors d'une panne zonale, vous conservez l'accès aux API Cloud Composer, y compris la possibilité de créer de nouveaux clusters.

    Les clusters sont exécutés dans Google Kubernetes Engine. Étant donné que le cluster est une ressource zonale, une panne zonale rend le cluster indisponible ou détruit le cluster. Les workflows en cours d'exécution au moment de la panne peuvent être arrêtés avant la fin. Cela signifie que la panne entraîne une perte d'état des workflows partiellement exécutés, y compris toutes les actions externes que le workflow a été configuré par l'utilisateur pour accomplir. Selon le workflow, cela peut provoquer des incohérences en externe, par exemple si le workflow s'arrête au milieu d'une exécution en plusieurs étapes pour modifier les magasins de données externes. Par conséquent, vous devez prendre en compte le processus de récupération lors de la conception de votre flux de travail Airflow, notamment comment détecter les états de flux de travail partiellement non exécutés, réparer les modifications de données partielles, etc.

    Lors d'une panne de zone, vous pouvez choisir d'utiliser Cloud Composer pour démarrer une nouvelle instance du cluster dans une autre zone. Une fois le cluster disponible, le workflow peut reprendre. Depending on your preferences, you may wish to run an idle replica cluster in another zone and switch to that replica in the event of a zonal outage.

    Cloud SQL

    Cloud SQL is a fully managed relational database service for MySQL, PostgreSQL, and SQL Server. Cloud SQL uses managed Compute Engine virtual machines to run the database software. It offers a high availability configuration for regional redundancy, protecting the database from a zone outage. Cross-region replicas can be provisioned to protect the database from a region outage. Because the product également offers a zonal option, which is not resilient to a zone or region outage, you should be careful to select the high availability configuration, cross-region replicas, or both.

    Zone outage: le high availability option creates a primary and standby VM instance in two separate zones within one region. During normal operation, the primary VM instance serves all requests, writing database files to a Regional Persistent Disk, which is synchronously replicated to the primary and standby zones. If a zone outage affects the primary instance, Cloud SQL initiates a failover during which the Persistent Disk is attached to the standby VM and traffic is rerouted.

    During this process, the database must be initialized, which includes processing any transactions written to the transaction log but not applied to the database. The number and type of unprocessed transactions can increase the RTO time. High recent writes can lead to a backlog of unprocessed transactions. The RTO time is most heavily impacted by (a) high recent write activity and (b) recent changes to database schemas.

    Finally, when the zonal outage has been resolved, you can manually trigger a failback operation to resume serving in the primary zone.

    For more details on the high availability option, please see the Cloud SQL high availability documentation.

    Region outage: le cross-region replica option protects your database from regional outages by creating read replicas of your primary instance in other regions. The cross-region replication uses asynchronous replication, which allows the primary instance to commit transactions before they are committed on replicas. The time difference between when a transaction is committed on the primary instance and when it is committed on the replica is known as "replication lag" (which can be monitored). This metric reflects both transactions which have not been sent from the primary to replicas, as well as transactions that have been received but have not been processed by the replica. Transactions not sent to the replica would become unavailable during a regional outage. Transactions received but not processed by the replica impact the recovery time, as described below.

    Cloud SQL recommends testing your workload with a configuration that includes a replica to establish a "safe transactions per second (TPS)" limit, which is the highest sustained TPS that doesn't accumulate replication lag. If your workload exceeds the safe TPS limit, replication lag accumulates, negatively affecting RPO and RTO values. As general guidance, avoid using small instance configurations (<2 vCPU cores, <100GB disks, or PD-HDD), which are susceptible to replication lag.

    In the event of a regional outage, you must decide whether to manually promote a read replica. This is a manual operation because promotion can cause a split brain scenario in which the promoted replica accepts new transactions despite having lagged the primary instance at the time of the promotion. This can cause problems when the regional outage is resolved and you must reconcile the transactions that were never propagated from the primary to replica instances. If this is problematic for your needs, you may consider a cross-region synchronous replication database product like Cloud Spanner.

    Once triggered by the user, the promotion process follows steps similar to the activation of a standby instance in the high availability configuration: The read replica must process the transaction log and the load balancer must redirect traffic. Processing the transaction log drives the total recovery time.

    For more details on the cross-region replica option, please see the Cloud SQL cross-region replica documentation.

    Cloud Logging

    Cloud Logging consists of two main parts: the Logs Router and Cloud Logging storage.

    The Logs Router handles streaming log events and directs the logs to Cloud Storage, Pub/Sub, BigQuery, or Cloud Logging storage.

    Cloud Logging storage is a service for storing, querying, and managing compliance for logs. It supports many users and workflows including development, compliance, troubleshooting, and proactive alerting.

    Logs Router & incoming logs: During a zonal outage, the Cloud Logging API routes logs to other zones in the region. Normally, logs being routed by the Logs Router to Cloud Logging, BigQuery, or Pub/Sub are written to their end destination as soon as possible, while logs sent to Cloud Storage are buffered and written in batches hourly.

    Log Entries: In the event of a zonal or regional outage, log entries that have been buffered in the affected zone or region and not written to the export destination become inaccessible. Logs-based metrics are also calculated in the Logs Router and subject to the same constraints. Once delivered to the selected log export location, logs are replicated according to the destination service. Logs that are exported to Cloud Logging storage are synchronously replicated across two zones in a region. For the replication behavior of other destination types, see the relevant section in this article. Note that logs exported to Cloud Storage are batched and written every hour. Therefore we recommend using Cloud Logging storage, BigQuery, or Pub/Sub to minimize the amount of data impacted by an outage.

    Log Metadata: Metadata such as sink and exclusion configuration is stored globally but cached regionally so in the event of an outage, the regional Log Router instances would operate. Single region outages have no impact outside of the region.

    Cloud Spanner

    Cloud Spanner is a scalable, highly-available, multi-version, synchronously replicated, and strongly consistent database with relational semantics.

    Regional Cloud Spanner instances synchronously replicate data across three zones in a single region. A write to a regional Cloud Spanner instance is synchronously sent to all 3 replicas and acknowledged to the client after at least 2 replicas (majority quorum of 2 out of 3) have committed the write. This makes Cloud Spanner resilient to a zone failure by providing access to all the data, as the latest writes have been persisted and a majority quorum for writes can still be achieved with 2 replicas.

    Cloud Spanner multi-regional instances include a write-quorum that synchronously replicates data across 5 zones located in three regions (two read-write replicas each in the default-leader region and another region and one replica in the witness region). A write to a multi-regional Cloud Spanner instance is acknowledged after at least 3 replicas (majority quorum of 3 out of 5) have committed the write. In the event of a zone or region failure, Cloud Spanner has access to all the data (including latest writes) and serves read/write requests as the data is persisted in at least 3 zones across 2 regions at the time the write is acknowledged to the client.

    See the Cloud Spanner instance documentation for more information about these configurations, and the replication documentation for more information about how Cloud Spanner replication works.

    Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.


    Voir la vidéo: DB Manager in QGIS (Octobre 2021).