Azure Spark SQL vs U-SQL

Azure Spark SQL vs U-SQL

我有很多数据文件,最终会定期推送存储在Azure Storage/Data Lake上。我想提供对这些数据进行分析的能力,但后来我看到在 Azure 上有两种方法:

  1. U-SQL / Azure Data Lake 查询(可视化 ???)
  2. Spark SQL 在 Azure 和 Zeppelin 上使用 Spark

有人可以建议我何时使用这种方法中的哪一种吗?在我看来,两者都可以完成类似的工作。

您可以将 U-SQL 视为 Microsoft 版本的 Spark SQL,您可以在其中编写 SQL 服务器样式 SQL 并使用用户定义的函数进行扩展在 C# 中。使用 Spark 时,您可以使用 MySQL 样式的 SQL 编写并使用 Scala 或 Python.

对其进行扩展

如果您熟悉 Scala 或 Python,那么选择 HDI​​nsight 可能是最佳选择。 Spark 带有 GraphX 和 MLLib,目前在 Data Lake Analytics 中没有类似物。此外,如果您需要在 Azure 之外工作的东西,那么 SparkSQL 是您唯一的选择。

另一个需要考虑的重要方面是定价。 Data Lake Analytics 仅在您的查询执行时才收费,但只要集群 运行,HDInsight 就会收费。根据数据的大小和查询的复杂性,Data Lake Analytics 可能会更便宜,因为您在配置时无需付费。