Une BigQuery table a un schéma qui peut être visualisé dans l'interface utilisateur Web, mise à jour , ou utilisé pour charger des données avec le bq
outil en tant que fichier JSON. Cependant, je ne trouve aucun moyen de vider ce schéma d'une table existante dans un fichier JSON (de préférence à partir de la ligne de commande). Est-ce possible?
un moyen de vider le schéma d'une table existante dans un fichier JSON (de préférence à partir de la ligne de commande). Est-ce possible?
essayez ci-dessous
bq show bigquery-public-data:samples.wikipedia
Vous pouvez utiliser l'indicateur –format pour épurer la sortie
--format: none | json | prettyjson | csv | sparse | pretty:
Format pour la sortie de la commande. Les options comprennent:
none: ...
pretty: formatted table output
sparse: simpler table output
prettyjson: easy-to-read JSON format
json: maximally compact JSON
csv: csv format with header
Les trois premiers sont destinés à être lisibles par l’homme et les trois derniers sont destinés au passage à un autre programme. Si aucun format n'est sélectionné, l'un d'entre eux sera choisi en fonction de la commande exécutée.
Réalisé j'ai fourni une réponse partielle: o)
Ci-dessous, ce que PO voulait
bq show --format=prettyjson bigquery-public-data:samples.wikipedia | jq '.schema.fields'
Vous pouvez ajouter le drapeau --schema
[1] pour éviter les informations de données de table.
bq show --schema --format=prettyjson [PROJECT_ID]:[DATASET].[TABLE] > [SCHEMA_FILE]
bq show --schema --format=prettyjson mydataset.mytable > /tmp/myschema.json
[1] https://cloud.google.com/bigquery/docs/managing-table-schemas