Bagikan melalui


perintah

Ekspor atau hasilkan file skema GraphQL dan simpan ke disk. Dua mode didukung:

  • Mengambil skema yang ada dari instans runtime DAB sementara
  • Hasilkan skema dari Cosmos DB untuk data NoSQL menggunakan pengambilan sampel

Syntax

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

Penting

Memerlukan konfigurasi DAB yang valid. Jenis database dibaca dari file konfigurasi. Tidak ada bendera yang diterima.

Sekilas

Option Diperlukan Bawaan Berlaku
--graphql Tidak* false Harus diatur untuk ekspor skema
-o, --output <dir> Yes Direktori untuk skema output
-g, --graphql-schema-file <name> Tidak. schema.gql Nama file ditempatkan di dalam dir output
--generate Tidak. false Hasilkan skema dari data Cosmos DB
-m, --sampling-mode <mode> Tidak. TopNExtractor Salah satu dari: , ,
-n, --sampling-count <int> Tidak. Bergantung pada mode Jumlah rekaman per mode
--sampling-partition-key-path <path> Tidak. Hanya untuk
-d, --sampling-days <int> Tidak. Bergantung pada mode Membatasi rekaman yang lebih baru dari N hari
--sampling-group-count <int> Tidak. (TimePartitionedSampler) Hanya untuk
-c, --config <file> Tidak. Khusus env atau Jalur ke file konfigurasi
--help Tidak. Tampilkan layar bantuan
--version Tidak. Tampilkan informasi versi

tidak diperlukan pengurai, tetapi ekspor gagal kecuali Anda menyediakannya.

Perilaku

Pengaturan Description
Mengekspor skema yang ada Memulai runtime sementara, introspiksi skema GraphQL, menulis file
Hasilkan skema Sampel Azure Cosmos DB untuk dokumen NoSQL dan skema infer

Dalam mode ekspor (tanpa ), DAB pertama mencoba dan kembali ke .

Mode ekspor mencoba kembali pengambilan skema hingga lima kali. Mode hasilkan menggunakan satu upaya.

Skema kosong mengakibatkan kesalahan: "Skema GraphQL yang dihasilkan kosong. Pastikan data tersedia untuk menghasilkan skema."

Mode pengambilan sampel

TopNExtractor

  • Sampel N dokumen terbaru
  • Filter waktu opsional dengan

Gunakan untuk himpunan data yang lebih kecil dan seragam

EligibleDataSampler

  • Pengambilan sampel sadar partisi
  • Dokumen N per partisi
  • fakultatif

Gunakan saat partisi memiliki skema yang bervariasi

TimePartitionedSampler

  • Membagi min/maks ke dalam grup waktu
  • Dokumen N per grup
  • opsional (default )

Gunakan saat skema berevolusi dari waktu ke waktu

Nota

Lebih banyak sumber daya intensif karena beberapa kueri.

--graphql

Mengaktifkan ekspor skema. Tanpa itu, ekspor mencatat kesalahan dan tidak menghasilkan file skema.

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-out

-o, --output

Direktori untuk file skema. Dibuat jika hilang.

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-out

-g, --graphql-schema-file

Nama file output saja, default ke .

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./out \
  -g custom-schema.gql

--generate

  • false (default): Mulai runtime, skema introspek
  • true: Menghasilkan skema dari Azure Cosmos DB untuk data NoSQL

Penting

--generate hanya didukung dengan Azure Cosmos DB untuk konfigurasi NoSQL.

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-gen \
  --generate

-m, --sampling-mode

Opsi: , , Default:

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-gen \
  --generate \
  --sampling-mode TopNExtractor

-n, --sampling-count

  • TopNExtractor: total dokumen
  • EligibleDataSampler: per partisi
  • TimePartitionedSampler: per grup waktu

Defaultnya bergantung pada mode:

  • :
  • :
  • :

Example

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

--sampling-partition-key-path

Jalur kunci partisi untuk EligibleDataSampler

Example

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

-d, --sampling-days

Memfilter dokumen menurut resensi (hari)

Defaultnya bergantung pada mode:

  • : tidak ada batas waktu (default )
  • :
  • :

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-gen \
  --generate \
  --sampling-days 14

--sampling-group-count

Jumlah grup waktu untuk TimePartitionedSampler

Example

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

-c, --config

Jalur file konfigurasi. Jika dihilangkan:

  1. jika env var diatur
  2. Sebaliknya

Example

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-out \
  --config ./dab-config.json

--help

Tampilkan layar bantuan.

Example

  • Bash
  • Prompt Perintah
dab export --help

--version

Tampilkan informasi versi.

Example

  • Bash
  • Prompt Perintah
dab export --version

Mengembalikan kode

Kode Meaning
0 Ekspor berhasil
-1 Ekspor gagal

Examples

Mengekspor skema yang ada

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./schema-out

Hasilkan skema (TopNExtractor)

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

Pengambilan sampel sadar partisi

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

Pengambilan sampel berbasis waktu

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

Nama file output kustom

  • Bash
  • Prompt Perintah
dab export \
  --graphql \
  -o ./out \
  -g cosmos-schema.gql \
  --generate \
  --sampling-mode TopNExtractor \
  --sampling-count 15

Penggunaan file yang dihasilkan

Atur ke jalur file skema yang diekspor. Untuk informasi selengkapnya, lihat Konfigurasi sumber data.

Petunjuk / Saran

Terapkan skema yang dihasilkan setelah stabil. Jalankan kembali jika model data berubah.

Troubleshooting

Gejala Penyebab Perbaiki
Skema kosong Tidak ada atau tidak cukup data Menambahkan data perwakilan
Kesalahan konektivitas string koneksi buruk Memperbaiki kredensial atau jaringan
Bidang yang hilang Tidak dalam dokumen sampel Meningkatkan mode hitungan atau perubahan
Beberapa hasil partisi Kunci partisi salah Berikan jalur kunci yang benar
Pengambilan sampel waktu lambat Himpunan data besar Mengurangi grup atau hari

Praktik terbaik

  • Mulai dengan TopNExtractor
  • Gunakan kontrol versi untuk membedakan perubahan skema
  • Untuk koleksi penting, jalankan beberapa pass dengan parameter yang berbeda