我在研究使用BigQuery以時間序列存儲傳感器數據的可行性。目的是將數據存儲在BQ中,並將其處理成Pandas ......迄今爲止這麼好...... Pandas可以解釋TIMESTAMP字段索引並創建一個Series。任意標籤的BigQuery架構設計
另一個要求是數據支持任意標籤作爲鍵/值對(例如job_id = 1234,task_id = 5678)。 BigQuery的可記錄類型重複場很好地支持這一點:
{'fields':
[
{
"mode": "NULLABLE",
"name": "timestamp",
"type": "TIMESTAMP"
},
{
"mode": "REPEATED",
"name": "tag",
"type": "RECORD",
"fields":
[
{
"name":"name",
"type":"STRING"
},
{
"name":"value",
"type":"STRING"
},
{
"mode": "NULLABLE",
"name": "measurement_1",
"type": "FLOAT"
},
{
"mode": "NULLABLE",
"name": "measurement_2",
"type": "FLOAT"
},
{
"mode": "NULLABLE",
"name": "measurement_3",
"type": "FLOAT"
},
]
},
]
}
這對於存儲數據的偉大工程,甚至用於查詢的偉大工程,如果我只需要上的一個鍵/值組合篩選
SELECT measurement_1 FROM measurements
WHERE tag.name = 'job_id' AND tag.value = '1234'
但是,我也需要能夠在查詢表達式中結合標籤集,而且我似乎無法完成這項工作。例如,此查詢不會返回任何結果
SELECT measurement_1 FROM measurements
WHERE tag.name = 'job_id' AND tag.value = '1234'
AND tag.name = 'task_id' AND tag.value = '5678'
問題:是否可以使用此架構來制定查詢來執行我想要的操作?將這種類型的變量數據附加到Big Query中另外修復的模式的建議方法是什麼?
感謝您的任何幫助或建議!
注意:如果你認爲這看起來像InfluxDB的一個很好的修復,這是因爲這是我迄今爲止使用的。看似不可逾越的問題是我的數據集中的系列基數的數量,所以我正在尋找替代品。
爲什麼標記python,熊貓和時間序列? – Kartik
重要的是,您可以使用投票下方已發佈答案左側的勾號標記接受的答案。請參閱http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work#5235瞭解其重要性。答案投票也很重要。表決有用的答案。還有更多......當某人回答你的問題時,你可以查看該怎麼做 - http://stackoverflow.com/help/someone-answers。 –