InfluxDays 挑战演练
作者:Aidan Tai / 产品, 用例, 开发者
2021 年 7 月 19 日
导航至
今年夏天,我在 InfluxData 实习,很高兴能够学习、成长并为物联网社区做出贡献。作为一个一直对机器人技术和物联网着迷的人,InfluxDB 引起了我的注意,我认为它是最适合即将到来的物联网时代的软件。我相信开源鼓励学习并滋养社区,我非常赞赏 InfluxData 对此的承诺。InfluxData 团队热情、友好、热情好客,同时也充满激情,致力于实现公司的目标和愿望。公司秉持我认为对学习至关重要的核心价值观:团队合作、谦逊和拥抱失败。学习是一项我们永不停歇的宝贵技能,公司文化真正加强了从成功和失败中学习的意愿。
我相信 InfluxData 的力量来自于我们围绕 InfluxDB 和其他物联网技术建立的强大社区,帮助这个社区成长是一项非常有价值的工作。开源项目帮助社区创造新的令人惊叹的事物,为彼此的工作做出贡献,并相互学习,我无法想象有比这更好的方式来开发和改进 InfluxDB 软件。
为了启动我的实习,我首先必须了解 InfluxDB 的来龙去脉,我通过 有趣的挑战 完成了这一点,该挑战在 2021 年 InfluxDays EMEA 虚拟体验中推出,名为 InfluxDays 挑战。该挑战概述了 InfluxDB、Telegraf 和 Flux。首先,您需要某种数据来放入 InfluxDB。您可能遇到的一个挑战是弄清楚要使用什么数据,但 InfluxDB 文档在此处 提供了一些示例数据。您还可以选择使用 Telegraf 通过 Telegraf 插件 将数据写入 InfluxDB。您可以在 InfluxDB Cloud 平台中访问 Telegraf 插件列表。
使用带注释的 CSV 上传
作为一个示例,我们将使用 InfluxData 提供的一些 示例空气传感器数据。我发现将此数据添加到 InfluxDB 的最简单方法是通过 UI 使用带注释的 CSV,您可以将其拖放到此处
通过 Telegraf 上传
InfluxDB Cloud 提供了大量的 Telegraf 插件库,您可以从 UI 的“数据”部分进行设置。您可以滚动浏览列表并选择特定的插件,这将生成一个 Telegraf 配置文件,您可以使用 Telegraf 运行该文件。
选择 Telegraf 插件将生成一个 Telegraf 配置文件,您可以将其保存为 .conf 文件。将文本复制并粘贴到您选择的文本编辑器中,然后在终端中使用命令 telegraf –config ~/filepath 运行该文件。您需要指定某些变量,例如您的帐户地址、访问令牌和指定的存储桶。对于某些第三方插件,您还需要设置一个帐户/配置设置以使用其 API 检索数据。
在本例中,我们将使用 GitHub Telegraf 插件。
该模板默认为两个存储库 influxdata/telegraf 和 influxdata/influxdb。您将需要 GitHub API 的 访问令牌,您可以在设置中的个人资料中找到该令牌。运行 telegraf config 后,Telegraf 将使用数据填充您的 InfluxDB 存储桶。现在,您可以使用 Flux 查询该存储桶,或使用内置的数据浏览器可视化数据。
Flux 入门
学习 Flux 可能很困难,但 Cloud 2.0 提供了 UI 框架,使查询变得更容易。最好先试用数据浏览器 UI,然后再查看 Flux 代码是什么样的。
添加此数据后,您可以使用数据浏览器设置查询,并将该查询转换为 Flux。为此,请选择一个存储桶并选择过滤器以隔离该数据并在图表上可视化它。
如果您单击脚本编辑器,您将看到此查询的 Flux 代码。
from() 函数从“Air Sensor”存储桶中获取数据。变量 v.timeRangeStart
、v.timeRangeStop
等是仪表板变量,您可以在此处 了解更多信息。
过滤器函数将数据查询缩小到特定字段。在本例中,我们正在过滤数据以从 sensor_id
“TLM0100” 获取温度。此外,aggregateWindow
从给定的窗口期 (v.windowPeriod
) 获取数据,并对该数据进行平均 (fn: mean
) 以使可视化显示更清晰。它基本上是将数据分块为平均值块。Flux 函数的文档可以在此处 找到。
创建仪表板
设置仪表板非常简单。要向仪表板添加图形,您可以使用数据浏览器并使用相同的 UI 功能查询数据。完成查询数据并将其可视化后,您可以单击右上角的绿色复选标记,查询将添加到仪表板。
结论
InfluxDB 提供了许多简单易用的方法来上传、可视化和过滤数据。学习如何使用示例数据平台可以更轻松地规划未来的真实数据项目,并充分利用 InfluxDB 的潜力。希望这个挑战演练对您有所帮助!