Google BigQuery - comment drop table avec bq de commande?
Google BigQuery - bq de commande vous permettent de créer, de charge, de la requête et de l'instruction alter table.
Je n'ai pas trouver toute la documentation concernant la chute de la table, seront heureux de savoir comment le faire.
J'ai trouvé le bq outil beaucoup plus facile à mettre en œuvre au lieu d'écrire python interface pour chaque commande.
Grâce.
Vous devez vous connecter pour publier un commentaire.
trouvé :
-t
pour la table,-f
de la force,-r
supprimer toutes les tables dans le nom du datasetexcellent outil.
-r. With -r, remove all tables in the named dataset
De bash, vous pouvez faire quelque chose comme:
Explication:
bq ls -n 9999 my_dataset
- liste jusqu'à 9999 tables dans mon dataset| grep keyword
- pipe les résultats de la commande précédente dans grep, recherche pour un mot clé que vos tables ont en commun| awk '{print $1}'
- pipe les résultats de la commande précédente dans awk et d'imprimer uniquement la première colonnedo bq rm -ft my_dataset.$i; done;
- supprimer chaque table à partir de votre jeu de donnéesJe vous recommande fortement de lancer la commande pour lister les tables que vous souhaitez supprimer avant d'ajouter le 'ne bq rm'. De cette façon vous pouvez vous assurer que vous êtes seulement de supprimer les tables que vous souhaitez supprimer.
Vous pouvez utiliser le code Python (sur Jupyter Portable) pour le même but:
si vous souhaitez supprimer les données complètes:
Si le jeu de données contient des tables ainsi. Et nous voulons supprimer le jeu de données, contenant des tables en une seule fois la commande est:
Si votre jeu de données est vide, alors vous pouvez utiliser la commande suivante ainsi:
Pour utiliser la commande suivante assurez-vous que vous avez supprimé toutes les tables dans ce dataset sinon, il va générer une erreur (jeu de données est toujours en cours d'utilisation).
J'ai utilisé la ligne de commande
for loop
pour supprimer un mois de données de la table, mais cela dépend de votre table de nommage:for %d in (01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31) DO bq rm -f -t dataset.tablename_201701%d