将数据导出到 Azure 数据资源管理器

Posted

技术标签:

【中文标题】将数据导出到 Azure 数据资源管理器【英文标题】:Export data into Azure data explorer 【发布时间】:2022-01-05 01:51:32 【问题描述】:

我正在尝试为以下场景构建一个简单的基础设施:

我们有一个远程边缘设备,它从 IoT 传感器收集数据并将数据保存为 JSON 有效负载(这将每 10 分钟发生一次)并生成一个 Web URL - 因此可以下载有效负载)。

因此,我希望将这些数据存储在 Azure 中以进行进一步分析,并且需要使用任何可视化工具(Grafana 是最受欢迎的工具)来可视化报告。

所以,我需要坚持使用 Grafana 作为可视化工具,我认为,我需要使用 Azure 数据资源管理器来收集数据,因为 Grafana 有仅适用于 Azure 数据资源管理器的插件。 p>

我们在 AWS 中有相同的设置。我们正在使用 Amazon Timestream 收集数据并使用 Grafana 作为数据可视化工具。 Grafana 有连接 Timestream 的插件。

1.有人对基础设施有什么建议吗?

    如果我必须使用 Azure 数据资源管理器本身 - 我需要先将数据存储到 Azure blob 存储,然后将数据从中提取到数据资源管理器(用于连续提取) 有没有人知道直接从网络 URL 获取数据到数据浏览器的其他方法?

    如果我必须使用 Azure blob 存储 - 有人知道如何将数据从 Web URL 自动推送到 blob 存储吗?

提前感谢您的所有建议!

【问题讨论】:

【参考方案1】:

Azure 数据资源管理器不支持从 URL 直接提取,这里有几个选项:

    如您所述,将数据写入 Azure 存储并设置 EventGrid 连接(您可以在 portal 或代码中进行设置) 创建一个 Azure 函数,该函数将使用其 SDK 之一(例如 .Net、Python 等)读取数据并将其写入 Azure 数据资源管理器 使用 Azure Data Factory copy data from HTTP activity,您可以从那里使用 Azure 数据资源管理器作为目标

【讨论】:

感谢 Anvera 的建议。我遵循选项 1。在这种情况下,您有什么建议可以在边缘设备创建新数据时每 10 分钟自动将 HTTP 端点数据复制到 Azure Blob 存储? 假设你有办法发现 URL,并且你不能让边缘服务直接写入 blob 存储(如下 Vladik 建议)我会使用基于计时器的函数 docs.microsoft.com/en-us/azure/azure-functions/… 【参考方案2】:

如果您的数据位于 Azure blob 中,您可以在 ADX 实例上设置一个事件网格数据连接,该连接将提取任何新创建的 blob。在此处阅读:Event Grid data connection。

要将数据推送到 Azure blob 存储,可以使用 FluentBit Azure blob output connector

【讨论】:

以上是关于将数据导出到 Azure 数据资源管理器的主要内容,如果未能解决你的问题,请参考以下文章

13.Azure流量管理器(上)

Azure Service Fabric - 外部状态管理器

Azure 流量管理器性能平衡与不同数据中心的嵌套配置文件

为啥 Azure 流量管理器将澳大利亚解析为美国服务器?

Azure 网站未检测到流量管理器更改

Microsoft Azure 存储资源管理器 - 如何查询包含 JSON 字符串的列