Sdílet prostřednictvím


export příkaz

Exportujte nebo vygenerujte soubor schématu GraphQL a uložte ho na disk. Podporují se dva režimy:

  • Načtení existujícího schématu z dočasné instance modulu runtime DAB
  • Generování schématu z dat Cosmos DB for NoSQL pomocí vzorkování

Syntaxe

dab export --graphql -o <output-directory> [options]

Důležité

Vyžaduje platnou konfiguraci DAB. Typ databáze se načte z konfiguračního souboru. Není přijat žádný --database-type příznak.

Rychlý přehled

Možnost Povinné Výchozí Aplikuje
--graphql Ano false Musí být nastavená pro export schématu.
-o, --output <dir> Ano Adresář pro výstupní schéma
-g, --graphql-schema-file <name> Ne schema.gql Název souboru umístěný uvnitř výstupního diru
--generate Ne false Generování schématu z dat Cosmos DB
-m, --sampling-mode <mode> Ne TopNExtractor Jedna z těchto možností: TopNExtractor, EligibleDataSamplerTimePartitionedSampler
-n, --sampling-count <int> Ne Závislý na režimu Počet záznamů na režim
--sampling-partition-key-path <path> Ne Pouze pro EligibleDataSampler
-d, --sampling-days <int> Ne Omezit na záznamy novější než N dny
--sampling-group-count <int> Ne Pouze pro TimePartitionedSampler
-c, --config <file> Ne Env-specific or dab-config.json Cesta ke konfiguračnímu souboru
--help Ne Zobrazení obrazovky nápovědy
--version Ne Zobrazení informací o verzi

Chování

Mode Description
Export existujícího schématu Spustí dočasný modul runtime, introspects schéma GraphQL, zapíše soubor.
Generování schématu Ukázky dokumentů Cosmos DB a odvození schématu

Výsledkem prázdného schématu je chyba: Vygenerované schéma GraphQL je prázdné. Ujistěte se, že jsou k dispozici data pro vygenerování schématu."

Režimy vzorkování

TopNExtractor

  • Ukázky N posledních dokumentů
  • Volitelný časový filtr s využitím --sampling-days

Slouží pro menší, jednotné datové sady.

EligibleDataSampler

  • Vzorkování s podporou oddílů
  • N dokumentů na oddíl
  • --sampling-partition-key-path volitelné

Použití v případech, kdy mají oddíly různá schémata

TimePartitionedSampler

  • Rozdělí minimální nebo maximální počet _ts do časových skupin.
  • N dokumentů na skupinu
  • --sampling-group-count požadovaný

Použití při vývoji schématu v průběhu času

Poznámka:

Náročnější na prostředky kvůli více dotazům.

--graphql

Povolí export schématu. Bez toho se nic nestane.

Example

dab export \
  --graphql \
  -o ./schema-out

-o, --output

Adresář pro soubor schématu. Vytvořeno, pokud chybí.

Example

dab export \
  --graphql \
  -o ./schema-out

-g, --graphql-schema-file

Pouze výstupní název souboru, výchozí hodnota schema.gqlje .

Example

dab export \
  --graphql \
  -o ./out \
  -g custom-schema.gql

--generate

  • false (výchozí): Spuštění modulu runtime, schéma introspekce
  • true: Generování schématu z dat Cosmos DB

Example

dab export \
  --graphql \
  -o ./schema-gen \
  --generate

-m, --sampling-mode

Možnosti: TopNExtractor, EligibleDataSampler, TimePartitionedSampler Výchozí: TopNExtractor

Example

dab export \
  --graphql \
  -o ./schema-gen \
  --generate \
  --sampling-mode TopNExtractor

-n, --sampling-count

  • TopNExtractor: celkový počet dokumentů
  • EligibleDataSampler: na oddíl
  • TimePartitionedSampler: podle časové skupiny

Example

dab export \
  --graphql \
  -o ./schema-gen \
  --generate \
  --sampling-mode TopNExtractor \
  --sampling-count 25

--sampling-partition-key-path

Cesta klíče oddílu pro EligibleDataSampler

Example

dab export \
  --graphql \
  -o ./schema-partitions \
  --generate \
  --sampling-mode EligibleDataSampler \
  --sampling-partition-key-path /customerId

-d, --sampling-days

Filtrování dokumentů podle recence (dny)

Example

dab export \
  --graphql \
  -o ./schema-gen \
  --generate \
  --sampling-days 14

--sampling-group-count

Počet časových skupin pro TimePartitionedSampler

Example

dab export \
  --graphql \
  -o ./schema-time \
  --generate \
  --sampling-mode TimePartitionedSampler \
  --sampling-group-count 8

-c, --config

Cesta ke konfiguračnímu souboru. Pokud tento parametr vynecháte:

  1. dab-config.<DAB_ENVIRONMENT>.json if env var is set
  2. Jinak dab-config.json

Example

dab export \
  --graphql \
  -o ./schema-out \
  --config ./dab-config.json

--help

Zobrazení obrazovky nápovědy

Example

dab export --help

--version

Zobrazí informace o verzi.

Example

dab export --version

Návratové kódy

Code Meaning
0 Export byl úspěšný.
Nenulový Export se nezdařil.

Examples

Export existujícího schématu

dab export \
  --graphql \
  -o ./schema-out

Generování schématu (TopNExtractor)

dab export \
  --graphql \
  -o ./schema-gen \
  --generate \
  --sampling-mode TopNExtractor \
  --sampling-count 25 \
  --sampling-days 14

Vzorkování s podporou oddílů

dab export \
  --graphql \
  -o ./schema-partitions \
  --generate \
  --sampling-mode EligibleDataSampler \
  --sampling-partition-key-path /customerId \
  --sampling-count 10

Vzorkování na základě času

dab export \
  --graphql \
  -o ./schema-time \
  --generate \
  --sampling-mode TimePartitionedSampler \
  --sampling-group-count 8 \
  --sampling-count 5 \
  --sampling-days 60

Vlastní výstupní název souboru

dab export \
  --graphql \
  -o ./out \
  -g cosmos-schema.graphql \
  --generate \
  --sampling-mode TopNExtractor \
  --sampling-count 15

Vygenerované využití souborů

Nastavte runtime.graphql.schema na exportovanou cestu k souboru schématu. Další informace najdete v tématu Konfigurace modulu runtime.

Návod

Potvrďte vygenerované schéma jednou stabilní. Znovu spusťte, pokud se datový model změní.

Řešení problémů

Příznaky Příčina Opravit
Prázdné schéma Žádná nebo nedostatečná data Přidání reprezentativních dat
Chyba připojení Chybný připojovací řetězec Oprava přihlašovacích údajů nebo sítě
Chybějící pole V ukázkových dokumentech ne Zvýšení počtu nebo režimu změn
Několik výsledků oddílů Nesprávný klíč oddílu Zadejte správnou cestu ke klíči.
Pomalé vzorkování Velká datová sada Omezení skupin nebo dnů

Osvědčené postupy

  • Začínáme s TopNExtractor
  • Použití správy verzí k rozdílu změn schématu
  • V případě kritických kolekcí spusťte více průchodů s různými parametry.