jestem pobierania rekordów z Google dużym zapytania używając gem „google-API-klienta”, Kiedy pobrać rekordy z tabeliodpowiedź analizowaniem z Google dużym zapytania
client.execute(api_method: @compute_api.tabledata.list,
parameters: {projectId: project,
datasetId: dataset,
tableId: table,
maxResults: 10}).body
uzyskać odpowiedź jak,
{
"kind": "bigquery#tableDataList",
"etag": "\"iBDiwpngzDA0oFU52344ksWOrjA/-xEFKhLUueR63_XVaLG4z_mJt-8\"",
"totalRows": "2000113",
"pageToken": "BEIYURQ3J4AQAAAS23IIBAEAAUNAICAMCAGCBMFOCU======",
"rows": [
{
"f": [
{
"v": "11873943041"
},
{
"v": "[email protected]"
},
{
"v": "1.430438401E9"
},
{
"v": "1.430438402E9"
},
{
"v": "1.430438404E9"
},
{
"v": "1.430438862E9"
}]}]}
Który nie zawiera nazw kolumn, Czy ktoś ma pojęcie o tym, jak uzyskać nazwy kolumn wraz z danymi?
Obecnie potrzebuję wykonać inne żądanie API, aby pobrać schemat i uzyskać nazwy kolumn.
Nawet po użyciu jobs.getQueryResults, wygląda jak trzeba mapować te etykiety schematu z rzeczywistymi danymi. Narzędzie wiersza poleceń bq wydaje się być lepszym rozwiązaniem, które daje odpowiedni wynik, jak wspomniałem w powyższej odpowiedzi. –
Tak, nadal musisz wykonać mapowanie, ale musisz wykonać tylko jedno wywołanie API, aby uzyskać wszystkie informacje. Używanie bq jest dobre, jeśli działa dla ciebie (ponieważ robi to wszystko pod maską), ale nie ma też być API, więc formatowanie i dane wyjściowe mogą ulec zmianie. –