数据湖Blob存储

时间:2020-07-02 21:08:46

标签: azure azure-storage-blobs data-warehouse azure-data-lake

我有点了解之后,我什么都没有坚持,但是我想了解一些更好的东西。

为什么在加载数据仓库时总是建议我们先将数据加载到Blob存储或数据湖中?我知道从那里提取数据非常快,但是根据我的经验,有两个陷阱。首先是有文件大小限制,如果您将太多数据加载到一个文件中(如我所见),则会导致加载错误,此时必须将加载切换为增量加载。这使我想到了第二个问题,我一直认为加载到Blob存储中的重点是将所有数据都存储在其中,以便将来在不给前端系统施加压力的情况下进行访问,如果由于以下原因而无法这样做:文件限制,那么即使使用Blob存储也有什么意义,我们不妨直接将数据加载到登台表中。过去,我在不涉及这部分的情况下运行数据仓库时,这对我来说似乎是不必要的步骤,对我而言,它们工作得更好。

无论如何,我对这部分的理解并不如我所希望的那样好,并且我试图找到可以回答这些特定问题的文章,但没有一个能真正正确地向我解释这个概念。我会读到的任何帮助或与优秀文章的链接都将不胜感激。

1 个答案:

答案 0 :(得分:0)

将数据放在blob或数据湖中的一个原因是,可以同时对数据使用多个并行读取器。目的是在合理的时间内读取数据。并非所有的数据源都支持这种类型的读取操作。考虑到文件的大小,单个阅读器将花费很长时间。

一个这样的例子可以是SFTP。并非所有SFTP服务器都支持偏移读取。有些可能对并发连接有进一步的限制。首先将数据移至Azure服务提供了一组已知的功能/限制。

就您而言,我认为您需要的是对文件进行分区,就像HDFS可能做的那样。如果我知道您使用的是什么数据源,那么我可能会有进一步的建议。