資料操作

更新時間:
Copy as MD

通過命令列工具寫入、匯入、查詢時序表資料以及行政時間線。

前提條件

  • 已完成命令列工具的安裝和訪問憑證配置。具體操作,請參見命令列工具

  • 已建立時序表。具體操作,請參見時序表操作

執行資料操作前,先通過以下命令選定目標時序表。

use --ts -t <tableName>

寫入時序資料

向指定時間軸寫入一行時序資料。

putts --k '<timeseriesKey>' --field '<fields_json>' --time <timestamp>

參數

必填

說明

--k

時間軸標識,以 JSON 數組表示,格式為["measurement","dataSource",["tag1=value1","tag2=value2"]]。包括:

  • 第一個元素:度量名稱(measurement)。

  • 第二個元素:資料來源標識(dataSource)。

  • 第三個元素:標籤數組,每個標籤為 tagKey=tagValue 格式。

--field

資料列,以 JSON 數組表示。每個資料列包含如下欄位:

  • c(必選):列名。

  • v(必選):列值。支援字串、布爾值、整型和浮點數。

  • isint(可選):設定為 true 表示該列為整型。不設定或設定為 false 時,數實值型別預設為浮點數。

--time

該行時序資料對應的時間,格式為時間戳記,單位為微秒(us)。

樣本

插入一行時序資料。

putts --k '["cpu","localhost",["region=hangzhou","os=ubuntu"]]' --field '[{"c":"usage_user","v":58,"isint":true},{"c":"usage_idle","v":24,"isint":true}]' --time 1635162859000000

匯入時序資料

將本地檔案中的時序資料匯入到時序表。

Windows

import_timeseries --input D:\\localpath\\filename.txt

Linux 和 macOS

import_timeseries --input /localpath/filename.txt

參數

必填

說明

-i,--input

指定資料檔案路徑,從檔案匯入時序資料。

資料檔案中每行代表一行時序資料,格式為measurement_name,tags fields timestamp

欄位

必填

說明

measurement_name

度量名稱(measurement)。

tags

每個標籤格式為 tagKey=tagValue。第一個標籤的 tagValue 作為資料來源標識。

fields

資料列,格式為 columnKey=columnValue。數值結尾加 i 表示整型,否則表示浮點數。

timestamp

時間戳記,單位為納秒(ns)。匯入到時序表後自動轉換為微秒。

資料檔案樣本:

cpu,hostname=host_0,region=cn-hangzhou usage_user=58i,usage_system=2i,usage_idle=24i 1609459200000000000
cpu,hostname=host_1,region=cn-hangzhou usage_user=58i,usage_system=2i,usage_idle=24i 1609459200000000000

樣本

import_timeseries --input /tmp/import_timeseries.txt

查詢時序資料

查詢指定時間軸在指定時間範圍內的時序資料。

getts --k '<timeseriesKey>' --time_start <start> --time_end <end> --limit <n>

參數

必填

說明

--k

時間軸標識,格式與寫入時序資料中的 --k 參數相同。

--time_start

查詢的起始時間,格式為時間戳記,單位為微秒。

--time_end

查詢的結束時間,格式為時間戳記,單位為微秒。

--limit

最多返回的行數,取值範圍為 1~5000。

樣本

getts --k '["cpu","localhost",["region=hangzhou","os=ubuntu"]]' --time_start 0 --time_end 1667638230000000 --limit 100

掃描時間軸

擷取時序表中所有時間軸或指定個數的時間軸。命令可簡寫為qtm

query_ts_meta --limit <n>

參數

必填

說明

--limit

本次掃描返回的最大行數。不設定則掃描所有時間軸。

樣本

query_ts_meta --limit 10

更新時間軸

更新時間軸的屬性。如果目標時間軸不存在,則自動新增。命令可簡寫為utm

update_ts_meta --k '<timeseriesKey>' --attrs '<attributes>'

參數

必填

說明

--k

時間軸標識,格式與寫入時序資料中的 --k 參數相同。

--attrs

時間軸的屬性,以 JSON 數組表示。每個屬性為 key=value 格式。

樣本

更新指定時間軸的屬性。

update_ts_meta --k '["cpu","localhost",["region=hangzhou","os=ubuntu"]]' --attrs '["city=nanjing","region=jiangning"]'