web-dev-qa-db-ja.com

influxdbデータ/テーブルはcsvファイルとしてダウンロードされますか?

Influxdbは、データとその属性をテーブルに格納する時系列データベースであり、一般に測定値と呼ばれます。

Influxdbのデータベース内のテーブルをcsv形式でローカルシステムにフェッチできますか?

4
surya rahul

CLIでは、次のコマンドを使用してローカルシステムにテーブルをダウンロードできます。

influx -database 'database_name' -execute 'SELECT * FROM table_name' -format csv > test.csv
6
surya rahul

または、次のようにjqを使用してJSON出力をCSVに変換できます。これにより、RFC3339形式のタイムスタンプを取得することもできます。

jq -r "(.results[0].series[0].columns), (.results[0].series[0].values[]) | @csv"

これは出力を与えます

"time","ppm","T"
"2019-01-17T19:45:00Z",864.5,18.54
"2019-01-17T19:50:00Z",861.4,18.545
"2019-01-17T19:55:00Z",866.2,18.5
"2019-01-17T20:00:00Z",863.9,18.47

と動作する理由:

  • (.results[0].series[0].columns)列名を配列として取得します
  • ,出力を連結します
  • (.results[0].series[0].values[])データ値を配列として取得します
  • | @csv jqcsvフォーマッターを使用します
  • -rは生の出力を取得するために使用されます

その他のリソース:

1
Tim

CLIツールinfluxを使用して、結果のcsv出力形式を設定できます。

influx -Host your_Host -port 8086 -database 'your_db' -execute 'select * from your_metric' -format 'csv'

-Hostおよび-portオプションは、コマンドがローカルInfluxDBホストで実行される場合は省略できます。タイムスタンプの形式を設定するための便利な-precisionオプションもあります。

0
Yuri Lachin