2013-03-13 10 views
5

Ich habe eine breite, flache Tabelle, gespeichert in Google BigQuery im Folowing ähnliches Format:Wie erstellt man eine verschachtelte JSON-Format-Tabelle aus einer flachen Tabelle in BigQuery?

log_date: integer, Sitzungs: integer, Computer: string, ip: string, event_id: integer, Menge: float

ich bin versucht, diese Tabelle in hierarchisch verschachteltem Format zu erstellen, mit 2 verschachtelten Ebenen, wie folgend:

[ 
    { 
    "name": "log_date", 
    "type": "integer" 
    }, 
    { 
    "name": "session", 
    "type": "record", 
    "mode": "repeated", 
    "fields": [     
    { 
     "name": "sessionid", 
     "type": "integer" 
     }, 
    { 
     "name": "computer", 
     "type": "string" 
     }, 
     { 
     "name": "ip", 
     "type": "string" 
     }, 
     { 
    "name": "event", 
    "type": "record", 
    "mode": "repeated", 
    "fields": [ 
    { 
     "name": "event_id", 
     "type": "integer" 
    }, 
    { 
     "name": "amount", 
     "type": "float" 
    }]] } ] 

Was ist der beste Weg, um die json formatierte Datendatei von BigQuery Tabelle zu generieren? Gibt es einen anderen und schnelleren Ansatz als 1.en Download können die Tabelle in externe csv 2. baut der json Rekord, und schreiben Sie es in externe Datei 3. lädt die externe JSON-Datei in neue BigQuery Tabelle

wir Haben Sie einen direkten Prozess, der json aus vorhandenen Tabellen generiert?

Danke, H

Antwort

1

ist Es ist nicht ein Weg, um die Daten zu einem verschachtelten Format, um automatisch zu transformieren. Wenn Sie die Daten lieber im JSON-Format als im CSV-Format ausgeben möchten, können Sie den Export-Commend mit dem Flag --destination_format auf NEWLINE_DELIMITED_JSON setzen. z.B.

bq extract \ 
    --destination_format=NEWLINE_DELIMITED_JSON \ 
    yourdataset.table \ 
    gs://your_bucket/result*.json 
+0

Danke, aber ich denke, dass das Extrahieren im JSON-Format den verschachtelten Datensatz nicht unterstützt, den ich versuche zu erstellen, irgendwelche anderen Lösungen in Bezug darauf, wie man eine hierarchische Tabelle basierend auf flacher Tabelle in bq generiert? – user2135521

Verwandte Themen