英文:
When should you use a mount point in Azure Synapse Analytics?
问题
两种方法的区别在于数据访问方式和管理:
-
直接读取文件使用 ADLS 存储路径:这种方法允许您直接使用 Azure Data Lake Storage Gen2 (ADLS Gen2) 中的路径来读取文件。您可以使用类似
spark.read.format("csv").load(adls_path)
的代码来加载数据。这是一种简单的方式,适用于临时性的数据读取任务。 -
创建挂载点并使用 synfs 路径读取文件:这种方法涉及创建一个挂载点,然后使用 synfs 路径来读取文件。首先,您使用
mssparkutils.fs.mount
函数创建挂载点,然后使用类似spark.read.format("csv").load(synfs_path)
的代码来加载数据。这种方法更适用于需要频繁访问相同存储路径的情况,因为它可以提高数据访问效率。挂载点还可以用于在 Synapse Analytics 中共享数据,因为多个作业可以共享相同的挂载点配置。
因此,要选择使用哪种方法取决于您的需求。如果您只需要偶尔读取一些文件,直接使用 ADLS 存储路径可能更简单。如果您需要频繁访问相同的数据或希望在不同作业之间共享数据,创建一个挂载点可能更合适。
英文:
The documentation of Azure Synapse Analytics mentions two ways read/write data to an Azure Data Lake Storage Gen2 using an Apache Spark pool in Synapse Analytics.
- Reading the files directly using the ADLS store path
adls_path = "abfss://<containername>@<accountname>.dfs.core.windows.net/<filepath>"
df = spark.read.format("csv").load(adls_path)
- Creating a mount point using mssparkutils and reading the files using the synfs path
mssparkutils.fs.mount(
"abfss://<containername>@<accountname>.dfs.core.windows.net",
"/data",
{"linkedService":"<accountname>"}
)
synfs_path = "synfs:/<jobid>/data/<filepath>"
df = spark.read.format("csv").load(synfs_path)
What is the difference between the two methods? When should you prefer to use a mount point?
答案1
得分: 1
挂载点就像创建一个虚拟文件夹,将位置映射到Azure存储
访问挂载点存储的优点:
- 在从Datalake访问特定文件时,无需每次访问它们时指定存储的完整路径,代码较不复杂。
- 您可以像访问本地存储一样访问文件。
- 您可以将数据组织成文件夹,作为一个集中的位置。
缺点:
- 当您需要从Azure存储访问多个目录时,效率不高,映射多个目录会令人困惑并引发混乱。
英文:
Mount point is just like creating a virtual folder and mapping the location to Azure Storage
Pros of accessing Storage from a mount point:
- Less complex code while accessing specific files from Datalake, no need to specify full path of storage every time you access them
- You can access files like as they are in the local storage
- You can have your data organized as folders as a centralized location
Cons:
- Not much efficient when you need to access multiple directories from Azure Storage, mapping multiple directories confuses and makes a mess
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论