Я собираю данные (полученные из файлов cookie, установленных на некоторых веб-сайтах) в BigQuery, используя потоковый подход с кодом Python в App Engine.
Функция, которую я использую для сохранения данных, следующая:
def stream_data(data):
PROJECT_ID = "project_id"
DATASET_ID = "dataset_id"
_SCOPE = 'https://www.googleapis.com/auth/bigquery'
credentials = appengine.AppAssertionCredentials(scope=_SCOPE)
http = credentials.authorize(httplib2.Http())
table = "table_name"
body = {
"ignoreUnknownValues": True,
"kind": "bigquery#tableDataInsertAllRequest",
"rows": [
{
"json": data,
},
]
}
bigquery = discovery.build('bigquery', 'v2', http=http)
bigquery.tabledata().insertAll(projectId=PROJECT_ID, datasetId=DATASET_ID, tableId=table, body=body).execute()
Я развернул решение на двух разных экземплярах App Engine и получил разные результаты. Мой вопрос: как это возможно?
С другой стороны, сравнивая результаты с метриками Google Analytics, я также заметил, что не все данные хранятся в BigQuery. Есть ли у вас какие-либо идеи по поводу этой проблемы?