InfluxDB的當前版本在刪除時有點痛苦。您可以刪除整個度量值,特定系列或整個數據庫,或者刪除一個大於'x'(保留策略)的系列部分。比這更細的任何東西仍然是一個阿爾法。顯然,它在v 0.7中更加靈活,但該功能已消失。可能不是你所希望的答案,對不起。
在這裏看到:
https://docs.influxdata.com/influxdb/v0.9/query_language/database_management/
(無恥的自我推銷如下)
一組類似的問題被問here。注意:看起來有些答案取決於您使用的InfluxDB版本。
我的答案,這似乎是版本無關(到目前爲止):
因爲InfluxDB是有點痛苦關於刪除,我們使用了一個布爾字段名爲「ForUse」的模式,其
your_measurement,your_tag=foo ForUse=TRUE,value=123.5 1262304000000000000
可以覆蓋相同的測量,標記鍵,時間與任何領域鍵發送,因此我們通過設置執行「刪除」「:通過線路協議(V0.9)發佈時,看起來是這樣的ForUse「爲false,並讓保留策略保持數據庫大小的控制權。
由於覆蓋無縫發生,因此您也可以追溯添加架構。在降噪。
這樣做,您可以設置您的Grafana查詢以包含「WHERE ForUse = TRUE」。通過這種方式進行過濾,並更新「ForUse」字段,您可以複製「刪除」或「取消刪除」點的功能。
這是一個有點缺憾,但我已經習慣了缺憾 - 每次系列數據庫中,我曾經使用過,似乎有點尷尬與部分刪除,所以它必須有一些關於他們的本質。
如何爲現有數據添加「ForUse」字段? –
有一個「alter table add column ...」命令將會非常好,但我們不需要InfluxDB。相反,您會覆蓋現有記錄。因此,對於SELECT * FROM ...查詢的每一行,您將形成同一時間戳,標籤鍵,標籤值的寫入命令(很可能使用http api),並追加「ForUse」值。有點痛苦,但非常可以。 – Jason
哦!我發現自0.9以來事情已經發生了變化。現在添加點,你只需要複製標籤鍵和時間戳。字段不需要被複制。請參閱https://docs.influxdata.com/influxdb/v0。10/troubleshooting/frequently_encountered_issues /#writing-duplicate-points – Jason