检查 .NET 中是否存在 azure databricks 挂载点
Check if azure databricks mount point exists from .NET
我开发的应用程序执行某种数据工程,我们使用 Azure ADLS 进行数据存储,使用 Databricks 进行数据操作。有两种方法可以检索数据,第一种使用 Storage Account
和 Storage account secret key
,另一种方法使用 mount point
。当我使用第一种方法时,我可以从 .NET 成功检查 Storage account
和它的对应 Secret key
是否相互对应,并且 return 消息是否正确或不是。但是,我需要对 mount point
做同样的事情,即确定 mount point
是否存在于 dbutils.fs.mounts()
或存储中的任何地方(我不知道 mount point
究竟如何有效,如果它在 blob 中存储数据)。
Storage account
和 Secret key
的流程如下:
- 尝试使用 Microsoft 的
BlobServiceClient
API 进行连接;
- 如果失败,return 向用户发送一条消息,指出凭据无效;
- 如果没有失败,继续下一步。
我不太熟悉 /mnt/
之类的东西,因为我主要使用 .NET,但是有没有办法从 .NET 检查 mount point
是否存在?
挂载点只是对底层云存储的一种引用。 dbutils.fs.mounts()
命令需要在某些集群上执行 - 这是可行的,但速度不快且麻烦。
最简单的检查方法是使用 DBFS REST API 的 List command,将挂载点名称 /mnt/<something>
作为 path
参数传递。如果不存在,您将收到错误消息 RESOURCE_DOES_NOT_EXIST
:
{
"error_code": "RESOURCE_DOES_NOT_EXIST",
"message": "No file or directory exists on path /mnt/test22/."
}
我开发的应用程序执行某种数据工程,我们使用 Azure ADLS 进行数据存储,使用 Databricks 进行数据操作。有两种方法可以检索数据,第一种使用 Storage Account
和 Storage account secret key
,另一种方法使用 mount point
。当我使用第一种方法时,我可以从 .NET 成功检查 Storage account
和它的对应 Secret key
是否相互对应,并且 return 消息是否正确或不是。但是,我需要对 mount point
做同样的事情,即确定 mount point
是否存在于 dbutils.fs.mounts()
或存储中的任何地方(我不知道 mount point
究竟如何有效,如果它在 blob 中存储数据)。
Storage account
和 Secret key
的流程如下:
- 尝试使用 Microsoft 的
BlobServiceClient
API 进行连接; - 如果失败,return 向用户发送一条消息,指出凭据无效;
- 如果没有失败,继续下一步。
我不太熟悉 /mnt/
之类的东西,因为我主要使用 .NET,但是有没有办法从 .NET 检查 mount point
是否存在?
挂载点只是对底层云存储的一种引用。 dbutils.fs.mounts()
命令需要在某些集群上执行 - 这是可行的,但速度不快且麻烦。
最简单的检查方法是使用 DBFS REST API 的 List command,将挂载点名称 /mnt/<something>
作为 path
参数传递。如果不存在,您将收到错误消息 RESOURCE_DOES_NOT_EXIST
:
{
"error_code": "RESOURCE_DOES_NOT_EXIST",
"message": "No file or directory exists on path /mnt/test22/."
}