用于分析 xml 数据的 azure 解决方案
azure solutions for analysing xml data
我们正在考虑在 Azure 中开发一个 BI 解决方案来分析客户对我们系统的航空公司搜索请求。请求存储为 xml,每天生成大约 5000 万个请求。您会推荐哪些天蓝色的解决方案来将这些加载到云中,分析这些数据...跨时间的趋势(因此保留历史数据),实时系统 performance/errors..数据包含在 xml 中?
我想我们还需要像快速路由这样的东西来将数据传输到云端
Azure Data Lake's U-SQL 的官方文档说:
Parse unstructured data such as Web pages and emails, or
semi-unstructured data such as XML/JSON.
然后您可以combine that with Azure Stream Analytics创建警报或连接到其他 Azure 服务,如 EventHub 等。
昂贵但相当可靠的解决方案也将被纳入 Logic App with some connector 以创建类似工作流程的体验。
您可以使用 Azure Blob Storage 将该数据上传到 Azure。如果 XML 数据分析起来很复杂,您可能需要将其转换为更简单的格式,例如 CSV 格式。
您可以在 Azure 数据工厂上使用 Azure Data Factory to transform XML files to CSV files, then you can load all generated CSV files into corresponding tables in Azure SQL Data Warehouse via Polybase 和开发的存储过程 activity。
如果您想要在 BLOB 存储中为 XML 个文件创建一个文件夹,为 XML 个文件处理另一个文件夹,并为 CSV 文件创建另一个文件夹,并且您希望 Azure 数据工厂在整个过程中将文件从一个文件夹移动到另一个文件夹,然后您需要使用 HDInsight 并为此目的创建一个 map reduce activity。
PolyBase 允许使用 T-SQL 语句访问存储在 Hadoop 或 Azure Blob 存储中的数据并以临时方式查询它。它还可以让您查询半结构化数据并将结果与存储在 SQL 数据仓库中的关系数据集连接起来。您应该能够使用 PolyBase 创建指向 Blob 存储中数据的外部 table。然后使用一个简单的存储过程就可以select外部table中的所有数据,并将它们加载到SQL数据仓库中相应的table中。
一旦所有转换后的数据都加载到相应的 tables 中,您就可以编写存储过程来生成聚合数据 tables,然后您可以使用这些数据来提供 PowerBI dashboards.
希望这对您有所帮助。
目前 (2020-06),XML 仍不受 Azure Synapse (Azure DW) 支持。
一种可行的方法是使用 Azure Functions 来解析 XML,或将其转换为 JSON(然后使用 SQL json_query/value)。第二种方法确实意味着失去 Xquery 功能。
经典 Azure SQL 服务器(或其超大规模版本)确实支持常规 XML 查询。
我们正在考虑在 Azure 中开发一个 BI 解决方案来分析客户对我们系统的航空公司搜索请求。请求存储为 xml,每天生成大约 5000 万个请求。您会推荐哪些天蓝色的解决方案来将这些加载到云中,分析这些数据...跨时间的趋势(因此保留历史数据),实时系统 performance/errors..数据包含在 xml 中?
我想我们还需要像快速路由这样的东西来将数据传输到云端
Azure Data Lake's U-SQL 的官方文档说:
Parse unstructured data such as Web pages and emails, or semi-unstructured data such as XML/JSON.
然后您可以combine that with Azure Stream Analytics创建警报或连接到其他 Azure 服务,如 EventHub 等。
昂贵但相当可靠的解决方案也将被纳入 Logic App with some connector 以创建类似工作流程的体验。
您可以使用 Azure Blob Storage 将该数据上传到 Azure。如果 XML 数据分析起来很复杂,您可能需要将其转换为更简单的格式,例如 CSV 格式。
您可以在 Azure 数据工厂上使用 Azure Data Factory to transform XML files to CSV files, then you can load all generated CSV files into corresponding tables in Azure SQL Data Warehouse via Polybase 和开发的存储过程 activity。
如果您想要在 BLOB 存储中为 XML 个文件创建一个文件夹,为 XML 个文件处理另一个文件夹,并为 CSV 文件创建另一个文件夹,并且您希望 Azure 数据工厂在整个过程中将文件从一个文件夹移动到另一个文件夹,然后您需要使用 HDInsight 并为此目的创建一个 map reduce activity。
PolyBase 允许使用 T-SQL 语句访问存储在 Hadoop 或 Azure Blob 存储中的数据并以临时方式查询它。它还可以让您查询半结构化数据并将结果与存储在 SQL 数据仓库中的关系数据集连接起来。您应该能够使用 PolyBase 创建指向 Blob 存储中数据的外部 table。然后使用一个简单的存储过程就可以select外部table中的所有数据,并将它们加载到SQL数据仓库中相应的table中。
一旦所有转换后的数据都加载到相应的 tables 中,您就可以编写存储过程来生成聚合数据 tables,然后您可以使用这些数据来提供 PowerBI dashboards.
希望这对您有所帮助。
目前 (2020-06),XML 仍不受 Azure Synapse (Azure DW) 支持。
一种可行的方法是使用 Azure Functions 来解析 XML,或将其转换为 JSON(然后使用 SQL json_query/value)。第二种方法确实意味着失去 Xquery 功能。
经典 Azure SQL 服务器(或其超大规模版本)确实支持常规 XML 查询。