我正在尝试建立一个Azure数据工厂管道,该管道从Azure数据湖中获取数据并进行转换。
我想将转换后的数据存储在Azure SQL数据仓库中(作为事实和维度)。
我最终提出了两种解决方案,以使数据在仓库中可用:
.csv
文件中引用位于Lake中的转换数据; .csv
文件从湖中复制到仓库中; 问题
对我来说,折衷方案并不明显。一方面,在我看来,第一种选择是避免将副本复制到仓库中(是吗?)。但是第二个选项将提供更多选项,例如索引。
与CTAS相比,CREATE EXTERNAL TABLE的优缺点是什么?
答案 0 :(得分:2)
将数据放入DW(使用CTAS)的主要好处是,针对该数据的后续查询将明显更快。您将获得跨节点和分布的数据的完整分布。任何过滤或联接表的查询都将更快。
正如您所指出的,不利之处在于您现在正在存储数据的另一份副本...假设一旦将其提取,就不会从数据湖中删除该文件。
将“创建外部表”视为仅提供外部文件到SQL数据结构的映射。