Azure数据湖存储Geni

微软宣布计划退休Azure数据湖存储Gen前Azure数据湖存储器ADLS推荐所有用户迁移Azure数据湖存储Gen2.Databricks建议升级为Azure数据湖存储Gen2

Azure数据湖存储Gen1直接使用服务原理

创建并授予服务本金权限

选择访问法需要服务主机并有适当权限,而没有权限时,请按这些步骤执行:

  1. 创建微软EntraID应用服务原则.注意下列属性:

    • 应用标识识别客户程序

    • 目录标识识别微软EntraID实例

    • service-credential:字符串应用证明身份

  2. 注册服务本金,准正角色分配出纳器Azure数据湖存储Gen1账号

直接访问sparkAPIs使用服务主机OAuth2.0

从您的 Azure数据湖存储Gen1账户读取时,您可配置spark使用服务证书并用笔记本中的下列片段

点火.conf.高山市"fs.adl.oauth2.access.token.provider.type","ClientCredential")点火.conf.高山市"fs.adl.oauth2.client.id",...
               
                ...
               )点火.conf.高山市"fs.adl.oauth2.credential",丁基.机密性.获取高山市范围=...
               
                ...
               ,密钥=...
               
                ...
               )点火.conf.高山市"fs.adl.oauth2.refresh.url","https://login.microsoftonline.com/
               
                /oath2ken
               )

去哪儿

  • dbutils.secrets.get(scope=... .. 密钥=... ) 检索存储账户访问密钥密钥隐蔽范围.

建立证书后,可使用标准spark和DatabricksAPIs访问资源例举 :

华尔街df=点火.读取.格式化高山市寻偶游戏)负载高山市adl/
               
                .azuredatalakestore.net/
                
                 ...
                
               )丁基.fs系统.Is高山市adl/
               
                .azuredatalakestore.net/
                
                 ...
                
               )

Azure数据湖存储Gen1提供目录级访问控制,所以服务主体必须访问您想阅读的目录和Azure数据湖存储Gen1资源

通过元存储存取

访问权限adl/元存储中指定位置时,必须指定 Hadoop证书配置选项为spark选项spark.hadoop对应 Hadoop配置密钥前缀向元站使用 Hadoop配置

spark.hadoop.fs.adl.oauth2.access.token.provider.type ClientCredentialspark.hadoop.fs.adl.oauth2.client.id
                spark.hadoop.fs.adl.oauth2.credential
                spark.hadoop.fs.adl.oauth2.refresh.url https://login.microsoftonline.com/
                
                 oath2ken
                

警告

  • 存取集群的所有用户都可获取这些证书

建立多账户服务证书

可设置多Azure数据湖存储Gen1账户服务证书供单次spark会话使用计数器 配置密钥举个例子,如果你想为两个帐户建立证书访问adl://example1.azuredatalakestore.netadl://example2.azuredatalakestore.net中,您可以做如下操作:

点火.conf.高山市"fs.adl.oauth2.access.token.provider.type","ClientCredential")点火.conf.高山市"fs.adl.account.example1.oauth2.client.id",...
               
                ...
               )点火.conf.高山市"fs.adl.account.example1.oauth2.credential",丁基.机密性.获取高山市范围=...
               
                ...
               ,密钥=...
               
                ...
               )点火.conf.高山市"fs.adl.account.example1.oauth2.refresh.url","https://login.microsoftonline.com/
               
                /oath2ken
               )点火.conf.高山市"fs.adl.account.example2.oauth2.client.id",...
               
                ...
               )点火.conf.高山市"fs.adl.account.example2.oauth2.credential",丁基.机密性.获取高山市范围=...
               
                ...
               ,密钥=...
               
                ...
               )点火.conf.高山市"fs.adl.account.example2.oauth2.refresh.url","https://login.microsoftonline.com/
               
                /oath2ken
               )

也为集群工作spark配置:

spark.hadoop.fs.adl.oauth2.access.token.provider.type ClientCredentialspark.hadoop.fs.adl.account.example1.oauth2.client.id
               spark.hadoop.fs.adl.account.example1.oauth2.credential
               spark.hadoop.fs.adl.account.example1.oauth2.refresh.url https://login.microsoftonline.com/
               
                oath2ken
               spark.hadoop.fs.adl.account.example2.oauth2.client.id
               spark.hadoop.fs.adl.account.example2.oauth2.credential
               spark.hadoop.fs.adl.account.example2.oauth2.refresh.url https://login.microsoftonline.com/
               
                oath2ken
               

笔记本显示如何直接访问Azure数据湖存储Gen1例子笔记本还显示使用DBFS挂载器使用,Google云发布Databricks时不支持使用DBFS

ADLSGen1服务主笔记本

开笔记本新标签