Compartilhar via


export comando

Exporte ou gere um arquivo de esquema GraphQL e salve-o em disco. Há suporte para dois modos:

  • Buscar o esquema existente de uma instância temporária de runtime do DAB
  • Gerar esquema do Cosmos DB para dados NoSQL usando amostragem

Sintaxe

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

Importante

Requer uma configuração de DAB válida. O tipo de banco de dados é lido do arquivo de configuração. Nenhum --database-type sinalizador é aceito.

Olhar rápido

Opção Obrigatório Padrão Aplica-se
--graphql Não* false Deve ser definido para exportação de esquema
-o, --output <dir> Yes Diretório para o esquema de saída
-g, --graphql-schema-file <name> Não schema.gql Nome do arquivo colocado dentro do dir de saída
--generate Não false Gerar esquema de dados do Cosmos DB
-m, --sampling-mode <mode> Não TopNExtractor Um de: TopNExtractor, , EligibleDataSamplerTimePartitionedSampler
-n, --sampling-count <int> Não Dependente do modo Número de registros por modo
--sampling-partition-key-path <path> Não Somente para EligibleDataSampler
-d, --sampling-days <int> Não Dependente do modo Restringir a registros mais recentes do que N dias
--sampling-group-count <int> Não 10 (TimePartitionedSampler) Somente para TimePartitionedSampler
-c, --config <file> Não Específico do env ou dab-config.json Caminho para o arquivo de configuração

* --graphql não é necessário para analisador, mas a exportação falha, a menos que você forneça.

Comportamento

Mode Description
Exportar esquema existente Inicia um runtime temporário, introspecta o esquema GraphQL e grava o arquivo
Gerar esquema Exemplos Azure Cosmos DB para NoSQL esquema de inferências e documentos

No modo de exportação (sem --generate), o DAB primeiro tenta https://localhost:5001 e volta para http://localhost:5000.

O modo de exportação repete a recuperação de esquema até cinco vezes. O modo de geração usa uma única tentativa.

O esquema vazio resulta em erro: "O esquema do GraphQL gerado está vazio. Verifique se os dados estão disponíveis para gerar o esquema."

Modos de amostragem

TopNExtractor

  • Exemplos de N documentos recentes
  • Filtro de tempo opcional com --sampling-days

Uso para conjuntos de dados menores e uniformes

EligibleDataSampler

  • Amostragem com reconhecimento de partição
  • N documentos por partição
  • Opcional --sampling-partition-key-path

Usar para partições com esquemas variados

TimePartitionedSampler

  • Divide min/max _ts em grupos de tempo
  • N documentos por grupo
  • --sampling-group-count opcional (padrão 10)

Usar quando o esquema evoluir ao longo do tempo

Observação

Mais uso intensivo de recursos devido a várias consultas.

--graphql

Habilita a exportação de esquema. Sem ele, exportar registra um erro e não produz um arquivo de esquema.

Example

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

-o, --output

Diretório do arquivo de esquema. Criado se ausente.

Example

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

-g, --graphql-schema-file

Somente nome de arquivo de saída, o padrão é schema.gql.

Example

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

--generate

  • false (padrão): iniciar o runtime, introspect schema
  • true: gerar esquema de Azure Cosmos DB para dados de NoSQL

Importante

--generate só tem suporte com Azure Cosmos DB para NoSQL configuração.

Example

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

-m, --sampling-mode

Opções: TopNExtractor, , EligibleDataSamplerTimePartitionedSampler Padrão:TopNExtractor

Example

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

-n, --sampling-count

  • TopNExtractor: total de documentos
  • EligibleDataSampler: por partição
  • TimePartitionedSampler: por grupo de tempo

Os padrões dependem do modo:

  • TopNExtractor: 10
  • EligibleDataSampler: 5
  • TimePartitionedSampler: 10

Example

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

--sampling-partition-key-path

Caminho da chave de partição para EligibleDataSampler

Example

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

-d, --sampling-days

Filtrar documentos por recência (dias)

Os padrões dependem do modo:

  • TopNExtractor: sem limite de tempo (padrão 0)
  • EligibleDataSampler: 30
  • TimePartitionedSampler: 10

Example

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

--sampling-group-count

Número de grupos de tempo para TimePartitionedSampler

Example

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

-c, --config

Caminho do arquivo de configuração. Se omitido:

  1. dab-config.<DAB_ENVIRONMENT>.json se env var estiver definido
  2. Caso contrário dab-config.json

Example

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

--help

Exiba a tela de ajuda.

Example

dab export --help

--version

Exibir informações de versão.

Example

dab export --version

Códigos de retorno

Code Meaning
0 Exportação bem-sucedida
-1 Falha na exportação

Exemplos

Exportar esquema existente

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

Gerar esquema (TopNExtractor)

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

Amostragem com reconhecimento de partição

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

Amostragem baseada em tempo

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

Nome do arquivo de saída personalizado

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

Uso de arquivo gerado

Defina data-source.options.schema como o caminho do arquivo de esquema exportado. Para obter mais informações, consulte a configuração da fonte de dados.

Dica

Confirme o esquema gerado uma vez estável. Execute novamente se o modelo de dados for alterado.

Resolução de problemas

Sintoma Motivo Corrigir
Esquema vazio Dados não ou insuficientes Adicionar dados representativos
Erro de conectividade Má connection string Corrigir credenciais ou rede
Campos ausentes Não em documentos de exemplo Aumentar a contagem ou o modo de alteração
Poucos resultados de partição Chave de partição errada Fornecer caminho de chave correto
Amostragem de tempo lento Conjunto de dados grande Reduzir grupos ou dias

Práticas recomendadas

  • Iniciar com TopNExtractor
  • Usar o controle de versão para diferenciar alterações de esquema
  • Para coleções críticas, execute várias passagens com parâmetros diferentes