2017-01-23 1 views
0

Ich versuche bq Befehl innerhalb datalab zu verwenden, aber wenn ich versuche, es zu benutzen, erscheint eine Meldung und erfordern mir meine Zugangsdaten einrichten, wie unten gezeigt,Mit bq Befehl in datalab - Anmeldeinformationen benötigt

enter image description here

Allerdings kann ich den Bestätigungscode nicht in die Pop-Nachricht einfügen. Im Grunde steckte ich auf diesem Schritt fest.

  1. Ich habe meine gcloud-Konfigurationen in Datalab überprüft, es zeigt mir das richtige Projekt und Konto.
  2. Ich kann bq Befehle in meinem Terminal verwenden, was gut funktioniert, keine Notwendigkeit, jedes Mal zu autorisieren.

Irgendeine Idee, wie man das löst? Vielen Dank.

Antwort

2

Auf lange Sicht, denke ich, werden wir die Datalab-Anmeldeinformationen für BQ speichern. Nach der Anmeldung in Datalab verwendet! bq gespeicherte Anmeldeinformationen.

Als Workaround können Sie bq außerhalb Datalab mit interaktiver Eingabeaufforderung ausführen, den Token-Überprüfungsprozess durchlaufen und dann die Token-Datei in Datalab kopieren. Angenommen, Sie haben den Verifizierungsprozess auf dem Rechner ausgeführt, der Datalab hostet, können Sie die Kreditdatei in Datalab kopieren, indem Sie die folgende Zelle ausführen:

! Cp /content/.bigquery.v2.token ~/.bigquery. v2.token

Und Sie müssen es jedes Mal tun, wenn Sie Datalab neu starten.

+0

Hallo, Bradley, thx für die Antwort. Ich bin ein wenig verwirrt über den Verifizierungsprozess. Normalerweise verwende ich 'gcloud auth login', um mein Konto zu autorisieren. Aber ich habe keine Datei /content/.bigquery.v2.token bekommen. Außerdem habe ich mein Konto in den Docker-Images autorisiert, und im Befehlszeilentool kann ich den Befehl bq verwenden, aber zurück in Datalab, es funktioniert immer noch nicht. und dieses Mal gibt es mir keine Bestätigungsnachricht, sondern läuft weiter und es gibt keine Nachricht und kein Ergebnis. – HaipengSu

+0

Auf meiner Seite, wenn ich "bq show" das erste Mal ausführen, fragt es nach Überprüfung. Danach wird die Datei $ HOME/bigquery.v2.token erstellt. Welchen Unterbefehl haben Sie in Datalab ausgeführt? Beachten Sie, dass "bq show" ohne den Namen des Datasets lange braucht, um wiederzukommen. Wenn ich "bq show [MyDatasetName]" starte, kommt es sehr schnell zurück. –

+0

Hallo, @Bradley, 'bq show my_dataset' ist der Befehl, den ich zum Testen verwende. Ich habe es heute wieder versucht und es funktioniert. Ich vermute, sobald ich mein Konto im datelab docker Container verifiziert habe, muss ich den localhost oder datalab Container neu starten, damit es funktioniert. Da ich jedes Mal, wenn ich meinen Computer neu starte, den gleichen Container vom letzten Mal starte, ist mein Berechtigungsnachweis immer noch vorhanden. Allerdings kann ich bigquery.v2.token nirgends in den Containern finden, nur einige Konfigurationsdateien und Anmeldedateien unter /content/datalab/.config – HaipengSu

Verwandte Themen