HUAWEI CLOUD GAUSSDB → STACKIT · ARCHITECTUUR

GaussDB naar STACKIT: opties voor MySQL en openGauss

GaussDB is niet één product. GaussDB(for MySQL) scheidt compute van gedeelde opslag en spreekt MySQL; de op openGauss gebaseerde editie spreekt een aan PostgreSQL verwant dialect en kan gedistribueerd zijn. STACKIT heeft van geen van beide een managed tegenhanger, dus het assessment classificeert beide als REDESIGN met zekerheidsniveau LOW en stelt MariaDB en PostgreSQL Flex voor als plekken om te testen. Deze pagina zet de opties op een rij, laat zien wat de run wel en niet beslist en beschrijft hoe een architect kiest.

Twee GaussDB-instances, beoordeeld

Een kleine Huawei Cloud-omgeving, voor deze pagina geschreven en op 4 november 2026 door StackToIT beoordeeld. Links een GaussDB(for MySQL)-instance met twee read replicas en een gedistribueerde openGauss-instance, rechts de resultaten die ervoor zijn vastgelegd: fragmenten van assessment.json met de waarden zoals de run ze schreef.

Voorbeeldinvoermain.tf
resource "huaweicloud_gaussdb_mysql_instance" "orders" {
  name              = "orders-mysql"
  password          = var.db_password
  flavor            = "gaussdb.mysql.4xlarge.x86.4"
  vpc_id            = huaweicloud_vpc.main.id
  subnet_id         = huaweicloud_vpc_subnet.data.id
  security_group_id = huaweicloud_networking_secgroup.db.id
  read_replicas     = 2

  backup_strategy {
    start_time = "03:00-04:00"
    keep_days  = 7
  }
}

resource "huaweicloud_gaussdb_opengauss_instance" "ledger" {
  name              = "ledger-og"
  password          = var.db_password
  flavor            = "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in"
  vpc_id            = huaweicloud_vpc.main.id
  subnet_id         = huaweicloud_vpc_subnet.data.id
  security_group_id = huaweicloud_networking_secgroup.db.id
  availability_zone = "eu-west-101a,eu-west-101b,eu-west-101c"
  sharding_num      = 1
  coordinator_num   = 2

  ha {
    mode             = "enterprise"
    replication_mode = "sync"
    consistency      = "strong"
  }

  volume {
    type = "ULTRAHIGH"
    size = 40
  }
}
StackToIT-assessmentassessment.json
{
  "id": "huaweicloud_gaussdb_mysql_instance.orders",
  "result": {
    "class": "REDESIGN",
    "confidence": "LOW",
    "target": {
      "service": "STACKIT MariaDB",
      "resources": [
        "stackit_mariadb_instance",
        "stackit_mariadb_credential"
      ]
    },
    "reason": "GaussDB(for MySQL) separates compute from shared storage, which has no STACKIT counterpart. STACKIT offers MariaDB, not MySQL; test the workload there before cut-over."
  }
}

{
  "id": "huaweicloud_gaussdb_opengauss_instance.ledger",
  "result": {
    "class": "REDESIGN",
    "confidence": "LOW",
    "target": {
      "service": "STACKIT PostgreSQL Flex",
      "resources": [
        "stackit_postgresflex_instance",
        "stackit_postgresflex_database",
        "stackit_postgresflex_user"
      ]
    },
    "reason": "GaussDB is not PostgreSQL, although its SQL is related. Schema, procedures and clients need a conversion and a test on PostgreSQL Flex."
  }
}
  • REDESIGN, LOW

    Geen van beide engines is een directe vervanger. De run stelt MariaDB voor de MySQL-instance voor en PostgreSQL Flex voor de openGauss-instance, beide als kandidaat om te testen, en classificeert elk als REDESIGN met zekerheidsniveau LOW.

  • Negen en veertien instellingen benoemd

    De MySQL-instance laat negen instellingen aan u over, waaronder flavor, read_replicas en het back-upvenster. De openGauss-instance laat er veertien over, waaronder de HA-modus, de replicatiemodus, sharding_num en coordinator_num.

  • Een concept ter beoordeling

    StackToIT schrijft een STACKIT-Terraform-concept dat uw architecten beoordelen. De databases hebben, net als het netwerk eromheen, stappen met een eigenaar.

De opties per workload

Vier manieren om een GaussDB-workload op STACKIT te laten landen. De eerste twee worden door de run voorgesteld. De laatste twee zijn algemene praktijk die de run niet voorstelt.

OptieWat er voor u verandertKies dit als
MariaDB op STACKIT, voor GaussDB(for MySQL)Het ontwerp met gedeelde opslag wordt vervangen door de eigen replicatie en clustering van MariaDB. De run vraagt u de workload vóór de cutover op MariaDB te testen. Kies de lijn 10.11: per november 2026 staat de ontmanteling van 10.6 gepland op 1 juli 2027.De applicatie gebruikt gewone MySQL-functies en de data past in een MariaDB-plan.
PostgreSQL Flex, voor de op openGauss gebaseerde editieSchema, procedures en clients vereisen een conversie en een test. Een gedistribueerde opzet wordt een managed PostgreSQL-service; bevestig dat het datavolume en de doorvoer passen voordat u zich vastlegt.De workload gebruikt vooral standaard-SQL en het team kan een conversieproject dragen.
Dezelfde engine op een STACKIT-serverU behoudt de engine en beheert die zelf: back-ups, patching, failover en monitoring zijn van u. De run stelt dit niet voor.Een functie heeft geen tegenhanger op MariaDB of PostgreSQL en het verwijderen ervan kost meer dan het beheren van een database.
De workload splitsenVerplaats het deel dat gewone relationele data is naar het managed doel en houd het gespecialiseerde deel apart. Een ontwerptaak, geen mapping.Eén GaussDB-instance bedient zowel transacties als zware analyses.

Controleer de engineversies en plannen op STACKIT op de dag dat u beslist; ze veranderen.

Feiten die de beslissing bepalen

  • MySQL: opslag is ontkoppeld

    Huawei beschrijft GaussDB(for MySQL) als compute en opslag ontkoppeld, met nodes die de onderliggende opslag delen tot 128 TB. MariaDB op STACKIT wordt per plan gedimensioneerd, dus toets het datavolume eerst aan de plannen.

  • openGauss: verwant aan PostgreSQL, niet gelijk

    In de FAQ van Huawei over de relatie tussen GaussDB en PostgreSQL staat dat GaussDB is begonnen op de Postgres-XC-architectuur van PostgreSQL 9.2 en nu alleen standaard-API's en gangbare functies van PostgreSQL gebruikt. De FAQ noemt ook een threadpool, Ustore en gedistribueerde deployment als verschillen. De FAQ spreekt over GaussDB in het algemeen en noemt openGauss niet; wij passen die toe op de op openGauss gebaseerde editie, omdat de Huawei-provider die editie documenteert als GaussDB (GaussDB OpenGauss instance management).

  • Gedistribueerd is het lastige geval

    Huawei meldt dat PostgreSQL alleen gecentraliseerde deployment ondersteunt, terwijl GaussDB gecentraliseerd en gedistribueerd ondersteunt. De demo-instance vraagt om één shard en twee coordinators over drie zones; een managed PostgreSQL-service komt het dichtst in de buurt, maar is niet gelijk.

  • Doelversies hebben vaste datums

    Per november 2026: PostgreSQL Flex 14 bereikt op 12 november 2026 het einde van de ondersteuning en de release notes vereisen versie 15 of hoger; de versies 16 en 17 zijn aangekondigd als beschikbaar. De ontmanteling van MariaDB 10.6 staat gepland op 1 juli 2027.

Een derde GaussDB-type dat de run niet kan classificeren

Providerversie 1.100.0 documenteert nog een resource, huaweicloud_gaussdb_instance, beschreven als GaussDB OpenGauss instance management. De run kent dit type niet. De run classificeert het als MANUAL_REVIEW met zekerheidsniveau LOW en beoordeelt noch schrijft er iets voor.

Voorbeeldinvoermain.tf
resource "huaweicloud_gaussdb_instance" "reporting" {
  name              = "reporting-gauss"
  password          = var.db_password
  flavor            = "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in"
  vpc_id            = huaweicloud_vpc.main.id
  subnet_id         = huaweicloud_vpc_subnet.data.id
  security_group_id = huaweicloud_networking_secgroup.db.id
  availability_zone = "eu-west-101a,eu-west-101b,eu-west-101c"
  sharding_num      = 1
  coordinator_num   = 2

  ha {
    mode             = "enterprise"
    replication_mode = "sync"
    consistency      = "strong"
  }

  volume {
    type = "ULTRAHIGH"
    size = 40
  }
}
Architect reportengineering/architect-report.md
- **Source:** `huaweicloud_gaussdb_instance` — main.tf:67
- **Classification:** MANUAL_REVIEW · **Confidence:** LOW
- **Feasibility:** UNKNOWN — blocked by a point the scan could not establish
- **Why:** huaweicloud_gaussdb_instance is not in the knowledge base catalogue; an architect has to decide the target. Nothing of this resource is assessed or drafted (unknown source type).
- **Depends on:** `huaweicloud_networking_secgroup.db`, `huaweicloud_vpc.main`, `huaweicloud_vpc_subnet.data`
  • Controleer uw resourcetype

    Zoek in de Terraform naar de drie GaussDB-typenamen voordat u een resultaat leest. Een database die met het derde type is gedeclareerd, staat niet in de doelen van de run en vraagt om dezelfde beslissing van u.

  • Het staat niet als stateful vermeld

    Het dataverplaatsingsbestand noemt alleen de twee gecatalogiseerde instances. Een onbekend type komt daar niet in voor, dus beschouw die lijst niet als de inventaris van uw databases.

Wat de run u overlaat voor de twee gecatalogiseerde instances

Geselecteerde regels uit de uitvoermap. Links de kop van elke gecatalogiseerde eenheid in engineering/architect-report.md en de regel die de instellingen noemt die aan u zijn overgelaten (9 voor de MySQL-instance, 14 voor de openGauss-instance; het rapport noemt van elk de eerste vijf). Rechts de datavraag die de run vastlegt.

Instellingen die aan u zijn overgelatenengineering/architect-report.md
#### `huaweicloud_gaussdb_mysql_instance.orders`
  - unclassified (9; FAILED 9): `backup_strategy.keep_days`, `backup_strategy.start_time`, `flavor`, `name`, `password` and 4 more

#### `huaweicloud_gaussdb_opengauss_instance.ledger`
  - unclassified (14; FAILED 14): `availability_zone`, `coordinator_num`, `flavor`, `ha.consistency`, `ha.mode` and 9 more
Dataverplaatsingmigration/data-movement.md
| Unit | Source service | Target service | Application | Mechanism | State | Data class | RPO | Downtime tolerance |
|---|---|---|---|---|---|---|---|---|
| huaweicloud_gaussdb_mysql_instance.orders | huaweicloud_gaussdb_mysql_instance | STACKIT MariaDB |  | UNKNOWN | DECISION_REQUIRED | NOT_PROVIDED | NOT_PROVIDED | NOT_PROVIDED |
| huaweicloud_gaussdb_opengauss_instance.ledger | huaweicloud_gaussdb_opengauss_instance | STACKIT PostgreSQL Flex |  | UNKNOWN | DECISION_REQUIRED | NOT_PROVIDED | NOT_PROVIDED | NOT_PROVIDED |

Hoe u beslist, in vijf stappen

  1. 1. Benoem het product achter elke instance

    Resourcetype, flavorvoorvoegsel en engineversie vertellen u welke GaussDB u draait. Doe dit eerst, want het doel hangt ervan af.

  2. 2. Inventariseer wat de applicatie echt gebruikt

    Procedures, functies, extensies, compatibiliteitsinstellingen en driverversies. Deze, en niet de omvang van de instance, bepalen of MariaDB of PostgreSQL Flex werkt.

  3. 3. Converteer en test op een kopie

    Laad een kopie van het schema en een steekproef van de data in het kandidaatdoel en voer de eigen testsuite van de applicatie en de langzaamste queries uit.

  4. 4. Leg dimensionering en beschikbaarheid vast

    Read replicas en HA-modi van de bron worden niet overgenomen. Beslis over replica's, failover en back-up op het doel, uitgaande van het herstelpunt dat de business noemt.

  5. 5. Leg het datamechanisme vast

    De run legt het mechanisme UNKNOWN en de status DECISION_REQUIRED vast. Kies dump en restore of een replicatietool en schrijf de downtime op die u accepteert.

Vragen van architecten over GaussDB

Waarom stelt de run MariaDB voor en niet MySQL?

De run geeft aan dat STACKIT MariaDB aanbiedt en geen MySQL en dat de workload daar vóór de cutover moet worden getest. STACKIT positioneert MariaDB als route om vanuit MySQL te migreren.

Is GaussDB voor openGauss hetzelfde als PostgreSQL?

Nee. De SQL is verwant, maar in de FAQ van Huawei over GaussDB staat dat het alleen standaard-API's en gangbare functies van PostgreSQL gebruikt en een threadpoolmodel, Ustore en gedistribueerde deployment als verschillen noemt. De run zegt dat schema, procedures en clients een conversie en een test op PostgreSQL Flex nodig hebben.

Kan StackToIT het schema converteren?

Nee. Het classificeert en ordent; het schrijft geen databaseconversie. De conversie is het project dat u plant.

Wat als onze instance het derde GaussDB-resourcetype gebruikt?

De run legt het vast als MANUAL_REVIEW met zekerheidsniveau LOW en schrijft er niets van, dus de keuze van het doel is geheel aan u. Gebruik de twee gecatalogiseerde resultaten als vertrekpunt voor het gesprek, niet als resultaat voor die instance.

Bronnen

Uw volgende stap: STACKIT.

Vertel ons over uw omgeving, dan laten wij zien wat StackToIT daarvoor oplevert: doelarchitectuur, Terraform-artefacten en een gestructureerd migratieplan.

Laat uw gegevens achter, onze specialisten nemen contact met u op.

Liever zelf een e-mail sturen? connect@stacktoit.com

Wij gebruiken uw gegevens alleen om dit verzoek te beantwoorden en een mogelijke pilot te bespreken. Privacyverklaring