Schemaless - InfluxDB 行协议
这个部分我们会介绍如何通过无服务 InfluxDB 行协议的 REST 接口往 TDengine Cloud 写入数据。
配置
在您的终端命令行运行下面的命令来设置 TDengine Cloud 的令牌和URL为环境变量:
- Bash
- CMD
- Powershell
export TDENGINE_CLOUD_TOKEN="<token>"
export TDENGINE_CLOUD_URL="<url>"
set TDENGINE_CLOUD_TOKEN="<token>"
set TDENGINE_CLOUD_URL="<url>"
$env:TDENGINE_CLOUD_TOKEN="<token>"
$env:TDENGINE_CLOUD_URL="<url>"
插入
您可以使用任何支持 HTTP 协议的客户端通过访问 RESTful 的接口地址 <cloud_url>/influxdb/v1/write
往 TDengine 里面写入兼容 InfluxDB 的数据。访问地址如下:
/influxdb/v1/write?db=<db_name>&token=<cloud_token>
支持 InfluxDB 查询参数如下:
db
指定 TDengine 使用的数据库名precision
TDengine 使用的时间精度- ns - 纳秒
- u - 微妙
- ms - 毫秒
- s - 秒
- m - 分
- h - 小时
写入样例
curl --request POST "$TDENGINE_CLOUD_URL/influxdb/v1/write?db=<db_name>&token=$TDENGINE_CLOUD_TOKEN&precision=ns" --data-binary "measurement,host=host1 field1=2i,field2=2.0 1577846800001000001"
使用 SQL 查询样例
measurement
是超级表名。- 您可以像这样通过标签过滤数据:
where host="host1"
。
curl -L -d "select * from <db_name>.measurement where host=\"host1\"" $TDENGINE_CLOUD_URL/rest/sql/test?token=$TDENGINE_CLOUD_TOKEN