Zasadniczo mój kod wygląda oficjalny przykład w https://cloud.google.com/bigquery/streaming-data-into-bigquerydane wstawić do tabeli BigQuery
mój kod:
TableRow data = new TableRow();
data.set("type", eventType);
data.set("timestamp", new Date());
TableDataInsertAllRequest.Rows row = new TableDataInsertAllRequest.Rows();
row.setInsertId(System.currentTimeMillis());
row.setJson(data);
request = new TableDataInsertAllRequest();
request.setRows(Arrays.asList(row));
TableDataInsertAllResponse response = bigquery.tabledata().insertAll(projectId, datasetId, tableId, request).execute();
for (TableDataInsertAllResponse.InsertErrors err: response.getInsertErrors()) {
for (ErrorProto ep: err.getErrors()) {
log.error(ep.getReason() + " : " + ep.getMessage() + " at " + ep.getLocation());
}
}
Ale otrzymuję błąd:
invalid : JSON map specified for non-record field at null
Wydaje się, że tęskniłem za coś , ale nie mam pojęcia, co jest nie tak z moim kodem. Mam dwa pola, String
i Date
, a komunikat o błędzie nie ma dla mnie żadnego sensu.
Jak wstawić dane do tabeli BigQuery?
Witam czy możesz odpowiedzieć na to pytanie http://stackoverflow.com/questions/40481371/io-exception-while-inserting-data-in-table-on-big-query –