【发布时间】:2021-01-24 16:26:11
【问题描述】:
解决方案背景:我们有设备每隔一分钟将遥测数据发送到事件中心,并在其中存储为 AVRO 文件。对于冷路径,我们计划将数据(存储 3 年数据所需的总存储空间为 80 TB)存储到 Azure Data Lake Gen2。我们需要从这个数据存储中查询数据集,从我们的 Web API 运行带有过滤器、时间跨度等的查询,这些查询将数据提供给 Azure 中的 Angular Web 应用程序。
当数据以 JSON 格式存储在 Azure Data Lake 中时,我们可以使用 C# 和 SQL 语法在我们的 Web API 项目中使用 Azure Data Lake 的query acceleration 功能查询数据。但是,为了最小化存储大小并获得更好的查询性能,建议在将数据存储到 Azure Data Lake 时使用 Parquet 文件格式。
Q1:挑战在于,相同的 .NET SDK (Azure.Storage.Files.DataLake) 在查询数据时不支持 Parquet 文件格式,还是支持?
我还检查了“.NET for Apache Spark”在 .NET 中的大数据处理,但它运行需要安装 JRE 和其他组件,我能找到的唯一示例是控制台应用程序。不是将在 Azure 中部署的 Web API。
Q2:有人对此有任何想法吗?
Q3:有点主观,但有没有其他方法可以在 Azure Data Lake 的 .NET Web API 中使用熟悉的 SQL 来存储和获取大数据?
【问题讨论】:
标签: azure apache-spark azure-data-lake azure-api-apps azure-data-lake-gen2