我读到here,单个文件对AWS Databricks的存储限制为5TB,我们可以存储任意数量的文件 那么,相同的限制适用于Azure Databricks吗?或者,Azure Databricks是否有其他限制?
更新:
@CHEEKATLAPRADEEP,谢谢您的解释,但是,是否有人可以分享其背后的原因:“我们建议您将数据存储在已安装的对象存储中,而不是存储在DBFS根目录中”
我需要在Power BI中使用DirectQuery(由于数据量巨大),而ADLS到目前为止不支持该功能。
答案 0 :(得分:1)
摘自Azure Databricks最佳实践:Do not Store any Production Data in Default DBFS Folders
重要提示::即使DBFS根目录是可写的,我们还是建议您将数据存储在已安装的对象存储中,而不是存储在DBFS根目录中。
与将数据存储在存储帐户中相比,建议将数据存储在已安装的存储帐户中的原因位于ADB工作区中。
原因1:,当您通过Storage Explorer在外部使用相同的存储帐户时,您没有写权限。
原因2:您不能对另一个ADB工作区使用相同的存储帐户,也不能对Azure Data Factory或Azure突触工作区使用相同的存储帐户链接服务。
原因3::将来,您决定使用Azure Synapse工作区而不是ADB。
原因4::要删除现有工作区怎么办。
Databricks文件系统(DBFS)是安装在Azure Databricks工作区中的分布式文件系统,可在Azure Databricks群集上使用。 DBFS是可伸缩对象存储(即ADLS gen2)之上的抽象。
Azure Data Lake Storage Gen2中可以存储的数据量没有限制。
注意: Azure Data Lake Storage Gen2能够存储和提供许多EB的数据。
对于Azure Databricks文件系统(DBFS)-仅支持文件大小小于 2GB 的文件。
注意:如果您使用本地文件I / O API读取或写入大于2GB的文件,则可能会看到损坏的文件。而是使用DBFS CLI,dbutils.fs或Spark API或使用/ dbfs / ml文件夹访问大于2GB的文件。
对于Azure存储 –最大存储帐户容量为 5 PiB PB。
下表描述了Azure通用v1,v2,Blob存储和阻止Blob存储帐户的默认限制。入口限制是指发送到存储帐户的所有数据。出口限制是指从存储帐户收到的所有数据。
注意:单块Blob的限制为 4.75 TB 。
答案 1 :(得分:0)
Databricks文档状态:
仅支持小于2GB的文件。如果使用本地文件I / O 用于读取或写入大于2GB的文件的API可能会损坏 文件。而是使用DBFS CLI访问大于2GB的文件, dbutils
您可以在此处了解更多信息:https://docs.microsoft.com/en-us/azure/databricks/data/databricks-file-system