Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Exportieren oder generieren Sie eine GraphQL-Schemadatei, und speichern Sie sie auf dem Datenträger. Zwei Modi werden unterstützt:
- Abrufen eines vorhandenen Schemas aus einer temporären DAB-Laufzeitinstanz
- Generieren eines Schemas aus Cosmos DB für NoSQL Daten mithilfe des Samplings
Syntax
dab export --graphql -o <output-directory> [options]
Von Bedeutung
Erfordert eine gültige DAB-Konfiguration. Der Datenbanktyp wird aus der Konfigurationsdatei gelesen. Es wird keine --database-type Kennzeichnung akzeptiert.
Schnellblick
| Option | Erforderlich | Standard | Trifft zu |
|---|---|---|---|
--graphql |
Nein* | Falsch | Muss für den Schemaexport festgelegt sein |
-o, --output <dir> |
Yes | – | Verzeichnis für Ausgabeschema |
-g, --graphql-schema-file <name> |
Nein | schema.gql |
Dateiname, der in ausgabedirig platziert wurde |
--generate |
Nein | Falsch | Generieren eines Schemas aus Cosmos DB-Daten |
-m, --sampling-mode <mode> |
Nein | TopNExtractor |
Eine von: TopNExtractor, EligibleDataSamplerTimePartitionedSampler |
-n, --sampling-count <int> |
Nein | Modusabhängig | Anzahl der Datensätze pro Modus |
--sampling-partition-key-path <path> |
Nein | – | Nur für EligibleDataSampler |
-d, --sampling-days <int> |
Nein | Modusabhängig | Einschränken auf Datensätze, die neuer als N Tage sind |
--sampling-group-count <int> |
Nein |
10 (TimePartitionedSampler) |
Nur für TimePartitionedSampler |
-c, --config <file> |
Nein | Env-spezifisch oder dab-config.json |
Pfad zur Konfigurationsdatei |
*
--graphql ist nicht parser erforderlich, aber der Export schlägt fehl, es sei denn, Sie geben sie an.
Verhalten
| Modus | Description |
|---|---|
| Vorhandenes Schema exportieren | Startet eine temporäre Laufzeit, introspektsiert das GraphQL-Schema und schreibt eine Datei. |
| Schema generieren | Beispiele Azure Cosmos DB für NoSQL Dokumente und Ableitungsschemas |
Im Exportmodus (ohne --generate), versucht DAB zuerst und https://localhost:5001 greift auf http://localhost:5000.
Der Exportmodus wiederholt den Schemaabruf bis zu fünf Mal. Der Generierungsmodus verwendet einen einzigen Versuch.
Leeres Schema führt zu einem Fehler: "Generiertes GraphQL-Schema ist leer. Stellen Sie sicher, dass Daten verfügbar sind, um das Schema zu generieren."
Samplingmodi
TopNExtractor
- Beispiele für N zuletzt verwendete Dokumente
- Optionaler Zeitfilter mit
--sampling-days
Wird für kleinere, einheitliche Datasets verwendet
EligibleDataSampler
- Partitionsfähiges Sampling
- N-Dokumente pro Partition
-
--sampling-partition-key-pathwahlfrei
Verwendung für Partitionen mit unterschiedlichen Schemas
TimePartitionedSampler
- Teilt Min/Max
_tsin Zeitgruppen auf. - N-Dokumente pro Gruppe
-
--sampling-group-countoptional (Standard10)
Verwenden, wenn sich das Schema im Laufe der Zeit weiterentwickelt
Hinweis
Mehr Ressourcenintensiver aufgrund mehrerer Abfragen.
--graphql
Aktiviert den Schemaexport. Ohne den Fehler wird ein Fehler exportiert und keine Schemadatei erzeugt.
Example
dab export \
--graphql \
-o ./schema-out
-o, --output
Verzeichnis für Die Schemadatei. Wird erstellt, wenn dies fehlt.
Example
dab export \
--graphql \
-o ./schema-out
-g, --graphql-schema-file
Nur Ausgabedateiname, Standardwert : schema.gql.
Example
dab export \
--graphql \
-o ./out \
-g custom-schema.gql
--generate
- false (Standard): Startlaufzeit, Introspect-Schema
- true: Generieren eines Schemas aus Azure Cosmos DB für NoSQL Daten
Von Bedeutung
--generate wird nur mit Azure Cosmos DB für NoSQL Konfiguration unterstützt.
Example
dab export \
--graphql \
-o ./schema-gen \
--generate
-m, --sampling-mode
Optionen: , , TopNExtractorEligibleDataSamplerStandard: TimePartitionedSamplerTopNExtractor
Example
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-mode TopNExtractor
-n, --sampling-count
- TopNExtractor: Gesamtdokumente
- EligibleDataSampler: pro Partition
- TimePartitionedSampler: pro Zeitgruppe
Standardwerte sind vom Modus abhängig:
-
TopNExtractor:10 -
EligibleDataSampler:5 -
TimePartitionedSampler:10
Example
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-mode TopNExtractor \
--sampling-count 25
--sampling-partition-key-path
Partitionsschlüsselpfad für EligibleDataSampler
Example
dab export \
--graphql \
-o ./schema-partitions \
--generate \
--sampling-mode EligibleDataSampler \
--sampling-partition-key-path /customerId
-d, --sampling-days
Filtern von Dokumenten nach Reency (Tage)
Standardwerte sind vom Modus abhängig:
-
TopNExtractor: kein Zeitlimit (Standard0) -
EligibleDataSampler:30 -
TimePartitionedSampler:10
Example
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-days 14
--sampling-group-count
Anzahl der Zeitgruppen für TimePartitionedSampler
Example
dab export \
--graphql \
-o ./schema-time \
--generate \
--sampling-mode TimePartitionedSampler \
--sampling-group-count 8
-c, --config
Konfigurationsdateipfad. Wenn nicht angegeben:
-
dab-config.<DAB_ENVIRONMENT>.jsonwenn env var festgelegt ist - Sonst
dab-config.json
Example
dab export \
--graphql \
-o ./schema-out \
--config ./dab-config.json
--help
Zeigen Sie den Hilfebildschirm an.
Example
dab export --help
--version
Versionsinformationen anzeigen.
Example
dab export --version
Rückgabecodes
| Code | Bedeutung |
|---|---|
| 0 | Export erfolgreich |
| -1 | Exportfehler |
Examples
Vorhandenes Schema exportieren
dab export \
--graphql \
-o ./schema-out
Schema generieren (TopNExtractor)
dab export \
--graphql \
-o ./schema-gen \
--generate \
--sampling-mode TopNExtractor \
--sampling-count 25 \
--sampling-days 14
Partitionsfähiges Sampling
dab export \
--graphql \
-o ./schema-partitions \
--generate \
--sampling-mode EligibleDataSampler \
--sampling-partition-key-path /customerId \
--sampling-count 10
Zeitbasiertes Sampling
dab export \
--graphql \
-o ./schema-time \
--generate \
--sampling-mode TimePartitionedSampler \
--sampling-group-count 8 \
--sampling-count 5 \
--sampling-days 60
Benutzerdefinierter Ausgabedateiname
dab export \
--graphql \
-o ./out \
-g cosmos-schema.gql \
--generate \
--sampling-mode TopNExtractor \
--sampling-count 15
Generierte Dateiverwendung
Legen Sie data-source.options.schema den exportierten Schemadateipfad fest. Weitere Informationen finden Sie unter "Datenquellenkonfiguration".
Tipp
Commit des generierten Schemas einmal stabil. Führen Sie erneut aus, wenn sich das Datenmodell ändert.
Problembehandlung
| Symptom | Ursache | Reparatur |
|---|---|---|
| Leeres Schema | Keine oder unzureichende Daten | Hinzufügen von repräsentativen Daten |
| Konnektivitätsfehler | Ungültige connection string | Korrigieren von Anmeldeinformationen oder Netzwerk |
| Fehlende Felder | Nicht in beispielierten Dokumenten | Erhöhen der Anzahl oder des Änderungsmodus |
| Wenige Partitionsergebnisse | Falscher Partitionsschlüssel | Angeben des richtigen Schlüsselpfads |
| Langsames Zeitsampling | Großes Dataset | Reduzieren von Gruppen oder Tagen |
Bewährte Methoden
- Mit TopNExtractor beginnen
- Verwenden des Versionssteuerelements zum Diffieren von Schemaänderungen
- Führen Sie für kritische Auflistungen mehrere Durchläufe mit unterschiedlichen Parametern aus.