InfluxDB—資料保留策略(Retention Policies)介紹
InfluxDB每秒可以處理成千上萬條資料,要將這些資料全部儲存下來會佔用大量的儲存空間,有時我們可能並不需要將所有歷史資料進行儲存並且InfluxDB本身不提供資料的刪除操作,因此,InfluxDB推出了資料保留策略RP(Retention Policies),用來讓我們自定義資料的保留時間。
建立RP
當執行create database時,會建立一個名叫autogen的retention policy,duration=0 表示它會永久保留資料。
> create database testdb
> use testdb
Using database testdb
> show retention policies
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 0s 168h0m0s 1 true
可以通過create retention policy的命令來建立一個新的retention policy
CREATE RETENTION POLICY "one_month" ON "testdb" DURATION 30d REPLICATION 1 DEFAULT
其中:
- one_month:策略名
- testdb:具體的資料庫名
- 30d:儲存 30 天,30 天之前的資料將被刪除,它具有各種時間引數,比如:h(小時),w(星期)
- REPLICATION 1:副本個數,這裡填 1 就可以了
- DEFAULT 設為預設的策略
- shardGroupDuration :表示一個shard檔案所存的資料的時間跨度
> show retention policies
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 0s 168h0m0s 1 false
one_month 720h0m0s 24h0m0s 1 true
PS : 如果切換資料庫的retention policy的話,已有的資料會被全部刪掉。
shardGroupDuration的取值:
更新RP
使用alter retention policy語句更新
> alter retention policy autogen on mydb duration 30d REPLICATION 1 SHARD DURATION 1d default
> show retention policies
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 720h0m0s 24h0m0s 1 true
刪除RP
DROP RETENTION POLICY "rp_name" ON "db_name"
retention policy使用建議
對於retention policy,最好的方式是在建立資料庫時就考慮清楚資料要保留多長時間。
比如,可以通過下面的方式建立一個保留30天的資料庫,並且,influxdb還會自動生成一個比較合理的shardGroupDuration,此時是1天。
> create database testdb2 with duration 30d
> show retention policies on testdb2
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 720h0m0s 24h0m0s 1 true
相關文章
- Using RMAN REPORT NEED BACKUP with Different Retention Policies
- MySQL資料切分策略介紹MySql
- Influxdb 介紹與使用UX
- influxdb 筆記: Retention Police - RPsUX筆記
- Oracle資料庫使用者安全策略功能介紹Oracle資料庫
- 時序資料庫InfluxDB之備份和恢復策略資料庫UX
- 時序資料庫 InfluxDB 之備份和恢復策略資料庫UX
- 資料庫介紹資料庫
- 備份保留策略
- TSM資料保留策略中的幾個難理解的概念
- MNIST資料集介紹
- Cora 資料集介紹
- IndexedDB資料庫介紹Index資料庫
- MongoDB資料模型介紹MongoDB模型
- json資料介紹JSON
- C++ 的關鍵字(保留字)完整介紹C++
- HSQL 資料庫介紹(1)--簡介SQL資料庫
- 資料庫介紹--初識資料庫資料庫
- 資料倉儲—資料庫—Oracle 介紹資料庫Oracle
- 銀行業資料長期保留的需求場景及策略分析行業
- MySQL資料庫鎖介紹MySql資料庫
- 【Redis】資料型別介紹Redis資料型別
- Rust 資料型別介紹Rust資料型別
- PostgreSQL資料rotate用法介紹SQL
- 大資料核心元件介紹大資料元件
- Oracle資料型別介紹Oracle資料型別
- postgresql資料庫鎖介紹SQL資料庫
- ORACLE常用資料字典介紹Oracle
- camunda相關資料介紹
- 時序資料庫influxdb資料庫UX
- Influxdb 資料寫入流程UX
- Bootstrap Blazor 元件介紹 Table (三)列資料格式功能介紹bootBlazor元件
- [效能測試+資料採集展示分析+告警策略]Jmeter+Collectd+Influxdb+GrafanaJMeterUXGrafana
- L10資料庫——資料庫介紹資料庫
- 資料倉儲—資料庫—SQL Server 介紹資料庫SQLServer
- 資料庫安全知識介紹資料庫
- 大資料崗位介紹-引子大資料
- 資料倉儲基礎介紹