[英]Azure Databricks with Storage Account as data layer
我剛剛開始進行需要使用 Azure Databricks 分析大量數據的數據分析。 在計划使用 Databricks 筆記本進行分析時,我遇到了不同的存儲選項來加載數據 a) DBFS - Databricks 的默認文件系統 b) Azure Data Lake (ADLS) 和 c) Azure Blob Storage 。 看起來項目 (b) 和 (c) 可以安裝到工作區中以檢索數據以供我們分析。
有了以上的了解,請問我以下問題可以澄清嗎?
DBFS 只是可擴展 object 存儲(如 AWS 上的 S3、Azure 上的 ADLS、GCP 上的 Google 存儲)之上的抽象。
默認情況下,當您創建工作空間時,您會獲得一個 DBFS 實例——所謂的DBFS Root 。 另外,您可以在/mnt
文件夾下掛載其他存儲帳戶。 寫入掛載點路徑 ( /mnt
) 的數據存儲在 DBFS 根目錄之外。 即使 DBFS 根是可寫的,建議您將數據存儲在掛載的 object 存儲中,而不是存儲在 DBFS 根中。 DBFS 根不適用於生產客戶數據,因為存在一些限制,例如缺乏訪問控制,您無法訪問作為 DBFS 根安裝在工作區之外的存儲帳戶等。
存儲服務(如名稱節點等)的實際實現確實被忽略了——您使用與 HDFS 兼容的 API,但在底層實現會因雲和存儲風格而異。 對於 Azure,您可以在此博客文章中找到有關其實現的一些詳細信息。
關於第二個問題 - 是的,您仍然應該將文件拆分為塊等。Blob 存儲和數據湖存儲之間存在差異,特別是對於具有更好安全性 model 並且可能更好地針對大數據工作負載進行優化的 ADLS Gen 2。 這篇博文描述了它們之間的差異。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.