Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Exporteer of genereer een GraphQL-schemabestand en sla het op schijf op. Er worden twee modi ondersteund:
- Bestaand schema ophalen uit een tijdelijk DAB Runtime-exemplaar
- Schema genereren op basis van Cosmos DB for NoSQL-gegevens met behulp van steekproeven
Syntaxis
dab export --graphql -o <output-directory> [options]
Belangrijk
Vereist een geldige DAB-configuratie. Het databasetype wordt gelezen uit het configuratiebestand. Er wordt geen --database-type vlag geaccepteerd.
Snelle blik
| Optie | Verplicht | Verstek | Geldt |
|---|---|---|---|
--graphql |
Yes | false | Moet worden ingesteld voor schema-export |
-o, --output <dir> |
Yes | – | Map voor uitvoerschema |
-g, --graphql-schema-file <name> |
Nee. | schema.gql |
Bestandsnaam in uitvoermap geplaatst |
--generate |
Nee. | false | Schema genereren op gegevens van Cosmos DB |
-m, --sampling-mode <mode> |
Nee. | TopNExtractor |
Een van: TopNExtractor, EligibleDataSamplerTimePartitionedSampler |
-n, --sampling-count <int> |
Nee. | Modusafhankelijk | Aantal records per modus |
--sampling-partition-key-path <path> |
Nee. | – | Alleen voor EligibleDataSampler |
-d, --sampling-days <int> |
Nee. | – | Beperken tot records die nieuwer zijn dan N dagen |
--sampling-group-count <int> |
Nee. | – | Alleen voor TimePartitionedSampler |
-c, --config <file> |
Nee. | Env-specifiek of dab-config.json |
Pad naar configuratiebestand |
--help |
Nee. | – | Het Help-scherm weergeven |
--version |
Nee. | – | Versie-informatie weergeven |
Gedrag
| Wijze | Description |
|---|---|
| Bestaand schema exporteren | Hiermee start u een tijdelijke runtime, inleiding tot het GraphQL-schema, schrijft u het bestand |
| Schema genereren | Voorbeelden van Cosmos DB-documenten en het schema afleiden |
Leeg schema resulteert in fout: 'Gegenereerd GraphQL-schema is leeg. Zorg ervoor dat er gegevens beschikbaar zijn om het schema te genereren.
Samplingmodi
TopNExtractor
- Voorbeelden N recente documenten
- Optioneel tijdfilter met
--sampling-days
Gebruiken voor kleinere, uniforme gegevenssets
EligibleDataSampler
- Partitiebewuste steekproeven
- N documenten per partitie
-
--sampling-partition-key-pathoptioneel
Gebruiken wanneer partities een gevarieerd schema hebben
TimePartitionedSampler
- Splitst min/max
_tsin tijdgroepen - N documenten per groep
-
--sampling-group-countVereist
Gebruik wanneer het schema zich in de loop van de tijd ontwikkelt
Opmerking
Meer resource-intensief vanwege meerdere query's.
--graphql
Hiermee schakelt u schema-export in. Zonder dat gebeurt er niets.
Example
dab export \
--graphql \
-o ./schema-out
-o, --output
Map voor schemabestand. Gemaakt als deze ontbreekt.
Example
dab export \
--graphql \
-o ./schema-out
-g, --graphql-schema-file
Alleen uitvoerbestand, standaard ingesteld op schema.gql.
Example
dab export \
--graphql \
-o ./out \
-g custom-schema.gql
--generate
- false (standaard): Runtime starten, introspect-schema
- true: Schema genereren op gegevens van Cosmos DB
Example
dab export \
--graphql \
-o ./schema-gen \
--generate
-m, --sampling-mode
Opties: TopNExtractor, EligibleDataSamplerstandaard TimePartitionedSampler : TopNExtractor
Example
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-mode TopNExtractor
-n, --sampling-count
- TopNExtractor: totaal aantal documenten
- EligibleDataSampler: per partitie
- TimePartitionedSampler: per tijdgroep
Example
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-mode TopNExtractor \
--sampling-count 25
--sampling-partition-key-path
Partitiesleutelpad voor EligibleDataSampler
Example
dab export \
--graphql \
-o ./schema-partitions \
--generate \
--sampling-mode EligibleDataSampler \
--sampling-partition-key-path /customerId
-d, --sampling-days
Documenten filteren op recency (dagen)
Example
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-days 14
--sampling-group-count
Aantal tijdgroepen voor TimePartitionedSampler
Example
dab export \
--graphql \
-o ./schema-time \
--generate \
--sampling-mode TimePartitionedSampler \
--sampling-group-count 8
-c, --config
Configuratiebestandspad. Als u dit weglaat:
-
dab-config.<DAB_ENVIRONMENT>.jsonals env var is ingesteld - Anders
dab-config.json
Example
dab export \
--graphql \
-o ./schema-out \
--config ./dab-config.json
--help
Het Help-scherm weergeven.
Example
dab export --help
--version
Versie-informatie weergeven.
Example
dab export --version
Retourcodes
| Code | Meaning |
|---|---|
| 0 | Exporteren voltooid |
| Niet-nul | Exporteren is mislukt |
Voorbeelden
Bestaand schema exporteren
dab export \
--graphql \
-o ./schema-out
Schema genereren (TopNExtractor)
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-mode TopNExtractor \
--sampling-count 25 \
--sampling-days 14
Partitiebewuste steekproeven
dab export \
--graphql \
-o ./schema-partitions \
--generate \
--sampling-mode EligibleDataSampler \
--sampling-partition-key-path /customerId \
--sampling-count 10
Op tijd gebaseerde steekproeven
dab export \
--graphql \
-o ./schema-time \
--generate \
--sampling-mode TimePartitionedSampler \
--sampling-group-count 8 \
--sampling-count 5 \
--sampling-days 60
Bestandsnaam van aangepaste uitvoer
dab export \
--graphql \
-o ./out \
-g cosmos-schema.graphql \
--generate \
--sampling-mode TopNExtractor \
--sampling-count 15
Gegenereerd bestandsgebruik
Ingesteld runtime.graphql.schema op het geëxporteerde pad naar het schemabestand. Zie Runtime-configuratie voor meer informatie.
Aanbeveling
Voer het gegenereerde schema eenmaal stabiel door. Voer opnieuw uit als het gegevensmodel wordt gewijzigd.
Probleemoplossingsproces
| Symptoom | Oorzaak | Repareren |
|---|---|---|
| Leeg schema | Geen of onvoldoende gegevens | Representatieve gegevens toevoegen |
| Connectiviteitsfout | Ongeldige verbindingsreeks | Referenties of netwerk herstellen |
| Velden ontbreken | Niet in voorbeelddocumenten | Aantal- of wijzigingsmodus verhogen |
| Weinig partitieresultaten | Verkeerde partitiesleutel | Geef het juiste sleutelpad op |
| Trage steekproeven | Grote gegevensset | Groepen of dagen verminderen |
Beste praktijken
- Beginnen met TopNExtractor
- Versiebeheer gebruiken om schemawijzigingen te wijzigen
- Voor kritieke verzamelingen voert u meerdere passen uit met verschillende parameters