Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Exporte ou gere um arquivo de esquema GraphQL e salve-o no disco. Dois modos são suportados:
- Buscar esquema existente de uma instância de tempo de execução temporária do DAB
- Gerar esquema a partir do Cosmos DB para dados NoSQL usando amostragem
Sintaxe
dab export --graphql -o <output-directory> [options]
Importante
Requer uma configuração DAB válida. O tipo de banco de dados é lido a partir do arquivo de configuração. Nenhuma --database-type bandeira é aceita.
Visão rápida
| Opção | Obrigatório | Default | Aplica-se |
|---|---|---|---|
--graphql |
Não* | false | Deve ser definido para exportação de esquema |
-o, --output <dir> |
Yes | – | Diretório para 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 a partir de dados do Cosmos DB |
-m, --sampling-mode <mode> |
Não | TopNExtractor |
Um dos seguintes: TopNExtractor, EligibleDataSampler, TimePartitionedSampler |
-n, --sampling-count <int> |
Não | Dependente do modo | Número de registos por modo |
--sampling-partition-key-path <path> |
Não | – | Por EligibleDataSampler apenas |
-d, --sampling-days <int> |
Não | Dependente do modo | Restringir a registos mais recentes do que N dias |
--sampling-group-count <int> |
Não |
10 (TimePartitionedSampler) |
Por TimePartitionedSampler apenas |
-c, --config <file> |
Não | Env-específico ou dab-config.json |
Caminho para o arquivo de configuração |
*
--graphql Não é obrigatório para parser, mas a exportação falha a menos que a forneças.
Comportamento
| Mode | Description |
|---|---|
| Exportar esquema existente | Inicia um tempo de execução temporário, analisa o esquema GraphQL e escreve ficheiros |
| Gerar esquema | Exemplos do Azure Cosmos DB para documentos NoSQL e inferem o esquema |
No modo de exportação (sem --generate), o DAB tenta https://localhost:5001 primeiro e volta a http://localhost:5000.
O modo de exportação tenta a recuperação do esquema até cinco vezes. O modo de geração usa uma única tentativa.
Esquema vazio resulta em erro: "O esquema GraphQL gerado está vazio. Garantir que os dados estão disponíveis para gerar o esquema."
Modos de amostragem
TopNExtractor
- Exemplos N documentos recentes
- Filtro de tempo opcional com
--sampling-days
Utilização para conjuntos de dados mais pequenos e uniformes
EligibleDataSampler
- Amostragem com reconhecimento de partição
- N documentos por partição
-
--sampling-partition-key-pathopcional
Utilização para partições com esquemas variados
TimePartitionedSampler
- Divide min/max
_tsem grupos de tempo - N documentos por grupo
-
--sampling-group-countopcional (por defeito10)
Use quando o esquema evolui ao longo do tempo
Observação
Mais intensivo em recursos devido a várias consultas.
--graphql
Permite a exportação de esquema. Sem isso, exportar regista um erro e não produz um ficheiro de esquema.
Example
dab export \
--graphql \
-o ./schema-out
-o, --output
Diretório para arquivo de esquema. Criado se faltar.
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 tempo de execução, esquema introspect
- true: Gerar esquema a partir do Azure Cosmos DB para dados NoSQL
Importante
--generate só é suportado com Azure Cosmos DB para configuração NoSQL.
Example
dab export \
--graphql \
-o ./schema-gen \
--generate
-m, --sampling-mode
Opções: TopNExtractor, EligibleDataSampler, TimePartitionedSampler 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 valores predefinidos 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 recenticidade (dias)
Os valores predefinidos dependem do modo:
-
TopNExtractor: sem limite de tempo (padrão0) -
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. Em caso de omissão:
-
dab-config.<DAB_ENVIRONMENT>.jsonse env var estiver definido - Caso contrário,
dab-config.json
Example
dab export \
--graphql \
-o ./schema-out \
--config ./dab-config.json
--help
Mostra o ecrã de ajuda.
Example
dab export --help
--version
Mostrar a informação da versão.
Example
dab export --version
Códigos de devolução
| Código | Meaning |
|---|---|
| 0 | Exportação bem sucedida |
| -1 | Falha na exportação |
Examples
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 com base no 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
Utilização de ficheiros gerados
Define data-source.options.schema para o caminho do ficheiro de esquema exportado. Para mais informações, veja Configuração da Fonte de Dados.
Sugestão
Confirme o esquema gerado uma vez estável. Repete se o modelo de dados mudar.
Solução de problemas
| Sintoma | Motivo | Corrigir |
|---|---|---|
| Esquema vazio | Dados inexistentes ou insuficientes | Adicionar dados representativos |
| Erro de conectividade | Má connection string | Corrigir credenciais ou rede |
| Campos em falta | Não em documentos de amostra | Aumentar a contagem ou alterar o modo |
| Poucos resultados de partição | Chave de partição errada | Forneça o caminho da chave correto |
| Amostragem lenta | Conjunto de dados grande | Reduzir grupos ou dias |
Melhores práticas
- Comece com o TopNExtractor
- Usar o controle de versão para comparar alterações de esquema
- Para coleções críticas, execute várias passagens com parâmetros diferentes