【Azure 架构师学习笔记】- Azure Databricks (13) -- 搭建Medallion Architecture part 1

本文属于【Azure 架构师学习笔记】系列

本文属于【Azure Databricks】系列。

接上文 【Azure 架构师学习笔记】- Azure Databricks (12) -- Medallion Architecture简介

前言

上文已经介绍了关于Medallion的知识,本文开始用ADB 来实现, 但是基于内容较多,所以分为两篇。

前面 【Azure 架构师学习笔记】- Azure Databricks (11) -- UC搭建中已经创建了一个空白的ADB 并启用了UC。

从下图可以大概看出ADB 在Azure上的架构,这里有个大概了解即可:

接下来稍微介绍一下ADB 集群的一些重要选项,并创建一个集群。

  • Access Mode:有下面3中模式,但是从解释可以看出只有前两种支持UC ,这里选择默认的single即可。

  • Databricks Runtime:决定了Spark的版本,一般使用最新版即可。
  • Worker Type:决定了节点所使用的VM 类型。
  • Number Worker Nodes:节点随压力增减的幅度。

完成这部分配置之后,我们快速搭建一个ADLS Gen2 来作为medallion的存储。这次使用Terraform来搭建,详见【Azure 架构师学习笔记】- Terraform创建Azure 资源

为了满足medallion 架构,在ADLS 上创建3个container分别为bronze, silever和gold,另外再加一个landing,用于提高可扩展性,最终的样子为这样:

至此,我们的ADB 一共有两个ADLS,一个是用于metadata,另外一个则是上面的用于存储业务数据的。

配置UC 与外部ADLS

为了让ADB 能够访问这个新建的ADLS, 还需要把ADB 的connector授权到这个ADLS 上(外部)。同时还需要在UC中创建"External Locations"(内部)。

打通 ADB UC 与 ADLS

把前面创建的"Access Connector for Azure Databricks"授予"Storage Blob Data Contributor"到新建的ADLS 中。如果ADLS 根据业务需求限制网络访问,那么还可能需要把ADB 的private subnet和public subnet 在ADLS 中进行白名单。

配置External location

External location实际上就是databricks内部的对象在外部ADLS上的映射。

但是由于"external location"是需要一个storage credential,所以我们先点下面一个"create a credential"创建凭证:

其中Access Connetctor ID 可以从资源Access connector 处复制:

有了这个credential之后,ADB UC 就可以正式与ADLS 连接上了。

创建external location, 注意下面的格式

错误出现了,很明显要授权:

检查当前权限,确实没有:

勾选报错中提到的权限,在后续会出现很多权限不足的问题,你可以逐个添加,但是要记录下来以便后续正式环境时减少错误。


按照这个方式,把前面所有的container都建好external location:

到此, 我们的基础环境已经搭建好,接下来将开始UC 内部具体的配置。

相关推荐
编码者卢布3 天前
【Azure 环境】获取Azure上资源的创建时间createdTime信息(ARM REST API版本)
microsoft·azure
编码者卢布3 天前
【Azure Developer】azd 安装最新版无法登录中国区问题二:本地Windows环境遇问题
microsoft·flask·azure
编码者卢布4 天前
【Azure Developer】中国区Azure环境中查看用户账号是否可用(accountEnabled)的操作步骤
microsoft·flask·azure
编码者卢布4 天前
【Azure APIM】如何实现对经过APIM并到达后端服务请求的全链路追踪呢?
python·flask·azure
编码者卢布4 天前
【Azure Stream Analytic】用 JavaScript UDF 解决 JSON 字段被转成 Record 的关键点
javascript·json·azure
编码者卢布4 天前
【Azure App Service】部署在应用服务上的WebJob中,为何会多出一个名为“DaaS“的 WebJob呢?
microsoft·azure
發糞塗牆7 天前
【Azure 架构师学习笔记】 - Azure AI(3)-数据工程在AI系统中的设计(ADF+ADLS)
人工智能·azure
宝桥南山9 天前
Power Platform - 恢复Developer environment
microsoft·微软·azure·rpa
NineData10 天前
NineData 新增支持 Azure SQL Database > PolarDB PostgreSQL
数据库·sql·azure·数据库管理工具·ninedata·数据库迁移·数据库迁移工具
考證寶題庫網11 天前
Designing and Implementing a Microsoft Azure AI Solution 微軟Azure AI-102 認證全攻略
人工智能·microsoft·azure