在InfluxDB Cloud中使用ThingWorx
InfluxDB Cloud 是 PTC 云中 ThingWorx 的内置组件。因此,PTC 推荐在 PTC Cloud 上使用 ThingWorx。或者,请使用本指南配置自托管的 ThingWorx 以使用 InfluxDB Cloud 作为持久化提供者。
在ThingWorx中使用InfluxDB Cloud作为持久性提供者
设置与 ThingWorx 兼容的 InfluxDB Cloud 账户
注册一个云账户,并在注册时执行以下操作:
- 选择一个AWS或Google区域来存储您的数据。要在Azure区域部署,请参见 use PTC Cloud。
- 通过输入信用卡信息选择基于使用的计划。
创建一个桶,具有无限的保留期(选择 从不 作为 删除数据 的时间),然后复制新的桶 ID 并保存以备第 4 步使用。
提示: 我们建议将您的桶命名为“thingworx”。在 ThingWorx 中,此桶名成为 InfluxDB 持久化提供者配置中选择的数据库名称。
在 InfluxDB Cloud 中创建一个全访问令牌,并将令牌字符串保存到第 4 步。要在用户界面中访问此字符串,请双击新令牌名称,然后复制对话框顶部的字符串。
通过向
/api/v2/dbrps/InfluxDB API端点发送HTTPPOST请求,为您的存储桶创建DBRP映射。curl --request POST "${influxdb-cloud-url}/api/v2/dbrps" \ --header 'Content-Type: application/json' \ --header "Authorization: Token ${INFLUX_API_TOKEN}" \ --data-raw "{ \"bucketID\": \"${INFLUX_BUCKET_ID}\", \"orgID\": \"${INFLUX_ORG_ID}\", \"database\": \"${INFLUX_BUCKET}\", \"retention_policy\": \"${INFLUX_RETENTION_PERIOD}\", \"default\": true }"替换以下内容:
INFLUX_BUCKET_ID: 你的 InfluxDB bucket ID,在第2步中创建INFLUX_API_TOKEN: 你的 InfluxDB API token,在步骤3中创建INFLUX_ORG_ID: 您的 InfluxDB 组织 IDINFLUX_BUCKET: 您的 InfluxDB bucket 名称 (thingworx), 在第2步中创建INFLUX_RETENTION_PERIOD: 你的 InfluxDB 保留期限, 通常是autogen
(可选) 我们建议 创建一个新的读/写令牌,以便对您在步骤 2 中设置的存储桶进行读/写访问。读/写令牌对于非管理员用户访问 ThingWorx 中的配置设置非常有用。复制并保存新的令牌字符串以 设置 PTC ThingWorx。 (要做到这一点,在用户界面中双击令牌,然后复制对话框顶部的字符串。)
设置PTC ThingWorx
如果您还没有,请从使用 InfluxDB 作为持久性提供者的第 4 步开始。(第 1-3 步在设置与 ThingWorx 兼容的 InfluxDB Cloud 账户中介绍。)
对于持久性提供者配置设置,请输入以下值:
- 连接 URL: 你的 InfluxDB Cloud 区域 URL
- 数据库模式:在上述第4步中设置的DBRP映射中的数据库名称。
- 用户名: 您的 InfluxDB Cloud 账户的登录电子邮件地址。
- 密码: 令牌字符串—可以是步骤3中创建的全访问令牌或步骤5中创建的读/写令牌。
ThingWorx API 请求
ThingWorx使用InfluxDB 1.x兼容API来访问InfluxDB Cloud上的InfluxDB v2 API。ThingWorx包括您为PTC ThingWorx在API请求中设置的InfluxDB持久性提供程序配置设置。
删除数据: InfluxDB Cloud 中的 InfluxDB v1 API 支持一部分删除操作,即 DROP MEASUREMENT 和 DELETE 语句。在某些极端情况下,删除在 InfluxDB Cloud 的查询结果中出现的时间比 InfluxDB 开源版要长。要删除特定字段,请直接使用 InfluxDB v2 API 在 InfluxDB Cloud 中删除 ThingWorx 的数据。