Я хочу генерувати деякі звіти на основі даних у BigTable. Для цього я хотів створити запит, який отримає останні дані з BigTable і передасть їх на звіт студії даних. Тепер проблема полягає в тому, що коли я створюю BigTable-з'єднання в BigQuery, я не можу виконати жодного запиту, навіть на порожній таблиці. Я створюю тип для BigQuery наступним чином:
bq mk \
--external_table_definition=gs://somebucket/big-table-definition.json \
datareportingdataset.datareportingtable
і команда виконується успішно. Моє big-table-definition.json
виглядає так:
{
"sourceFormat": "BIGTABLE",
"sourceUris": [
"https://googleapis.com/bigtable/projects/playground-2/instances/data-reporting/tables/data-reporting-table"
],
"bigtableOptions": {
"readRowkeyAsString": "true",
"columnFamilies" : [
{
"familyId": "cf1",
"onlyReadLatest": "true",
"columns": [
{
"qualifierString": "temp",
"type": "STRING"
},
{
//the rest of the columns
]
}
]
}
}
Помилка під час простого select *
запиту виглядає наступним чином:
Error while reading table: datareportingdataset.datareportingtable, error message: Error detected while parsing row starting at position: 2. Error: Data between close double quote (") and field separator.
Спочатку я підозрював деякі дані в BigTable, але коли я видалив усе звідти, помилка все-таки виникає. Я з'ясував, що це має бути щось із самим файлом json, як коли я переміщу "sourceFormats" вниз по декількох рядках, про які повідомляється положення про помилку. Що я тут роблю неправильно?