在azure中创建hdinsights hadoop群集时,有两个存储选项。azure数据湖存储(adls)或azure blob存储。
这两个选项之间的真正区别是什么?它们如何影响性能?
我找到了这一页https://docs.microsoft.com/en-us/azure/data-lake-store/data-lake-store-comparison-with-blob-storage 但它不是很具体,只是使用了非常一般的术语,如“adls是优化的分析”。
这是否意味着存储hdinsights文件系统更好?如果adls确实更快,那么为什么不将其用于非分析数据呢?
3条答案
按热度按时间pbossiut1#
根据本文档,一个azure存储帐户最多可容纳4.75 tb,但单个Blob(或从hdinsight的Angular 来看的文件)最多只能容纳195 gb。azuredatalake存储可以动态增长以容纳数以万亿计的文件,其中单个文件的大小大于1 PB。有关更多信息,请参见了解blob和datalake存储。
另外,请查看azure存储的好处,并使用data lake store获取更多详细信息和比较。
希望这有帮助。
myzjeezk2#
除了其他答案之外,在使用datalake作为主存储的hdinsights集群上不可能使用spark数据工厂活动。此限制适用于adfv1和v2,如下所示:https://docs.microsoft.com/en-us/azure/data-factory/v1/data-factory-spark 以及https://docs.microsoft.com/en-us/azure/data-factory/transform-data-using-spark
nzkunb0c3#
除了ashok的答案之外:与azure存储相比,adls目前只在少数地区可用。因此,如果您需要在特定区域中使用hdinsight帐户,则应确保您的存储位于同一区域中。
adls over azure存储的另一个好处是其基于posix的文件/文件夹级安全模型,它使用aad安全主体而不是共享访问密钥。
您可能不想将ADL用于非分析数据的原因主要是成本。由于一些额外的功能,它目前有点贵。