InfluxDB常見疑問與解答 - 數據寫入時如何在表級別指定保留策略


網友Siguoei:
我想讓一個庫中不同的measurment能夠指定不同的保存策略。
而不是寫入時使用數據庫的默認保留策略。

Answer:
這個特性InfluxDB支持的,寫入時序數據時,在行協議前加上保留策略名,以influx命令行操作為例,insert語句的語法如下。

insert into <rp-name> <line-protocol>

 需要注意的是,因為寫入的時序數據記錄對應的保留策略,不是默認保留策略,在查詢相關時序數據記錄時,需要加上保留策略名,select語句的語法格式如下。

select * from <rp-name>.<measurement-name>


例0x00 在數據庫telegraf中,使用非默認保留策略rp-one-year向表devops-idc-sz中寫入時序數據記錄。
(InfluxDB版本:InfluxDB-1.7.8)

> create database telegraf
> use telegraf
Using database telegraf
> create retention policy "rp-one-year" on "telegraf" duration 365d replication 1
> show retention policies on telegraf
name        duration  shardGroupDuration replicaN default
----        --------  ------------------ -------- -------
autogen     0s        168h0m0s           1        true
rp-one-year 8760h0m0s 168h0m0s           1        false
> insert into "rp-one-year" devops-idc-sz,host=server01 cpu=23.1,mem=0.63
> select * from "devops-idc-sz"
>
> select * from "rp-one-year"."devops-idc-sz"
name: devops-idc-sz
time                cpu  host     mem
----                ---  ----     ---
1571296987607266011 23.1 server01 0.63
> select * from "telegraf"."rp-one-year"."devops-idc-sz"
name: devops-idc-sz
time                cpu  host     mem
----                ---  ----     ---
1571296987607266011 23.1 server01 0.63
>


后記
歡迎交流討論:
微信公眾號:influxdb-dev
InfluxDB技術交流群(QQ):663274123


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM