我所处的位置是,我们使用Azure数据仓库中的外部表从Azure数据湖中读取数据。
这使我们能够使用众所周知的SQL从数据湖中读取数据。
然而,另一种选择是使用数据湖分析,或HDInsight的一些变体。
在性能方面,我看不到太大的区别。我假设Data Warehouse正在后台运行某种形式的分布式查询,正在转换到U-SQL(?),那么为什么我们要将Data Lake Analytics与U-SQL的语法稍有不同呢?
发布于 2018-01-18 23:21:44
如果你的主要目的是查询存储在Azure data Warehouse (ADW)中的数据,那么使用Azure Data Lake Analytics (ADLA)并没有真正的好处。但是,一旦您有其他(非)结构化数据存储在ADW中,例如json文档或csv文件,ADLA的好处就变得显而易见,因为U-Sql允许您将存储在ADW中的关系数据与存储在ADLS中的(非)结构化/ nosql数据连接起来。
此外,它还允许您使用U-Sql来准备在ADW中直接导入的其他数据,因此Azure data Factory不再需要将数据放入您的数据仓库中。有关详细信息,请参阅this blogpost:
ADLS和SQL的一个常见用例如下。原始数据从各种来源摄取到ADLS中。然后使用ADL Analytics清理数据并将其处理为可加载的格式。从那里,高价值的数据可以通过PolyBase导入Azure SQL DW。
。。
您可以使用Create Table As Select (CTAS)语句通过外部表将以ORC语言、RC语言、Parquet或分隔文本文件格式存储的数据直接导入到SQL中。
发布于 2018-01-19 06:55:06
请注意,SQL数据仓库中的SQL语句当前未在后台生成U-SQL。此外,ADLA/U-SQL和SDW之间的用例也不同。
在上面的示例中,您似乎主要是在做第二部分。在这些外部表上添加“视图”,以便在SQL DW中执行转换,如果您对大数据(而不仅仅是100k行)进行操作,则很快就会遇到可伸缩性限制。
https://stackoverflow.com/questions/48320473
复制相似问题