
Azure Databricks Lakehouse平台在一个bob体育客户端下载简单、开放和协作的平台上为您提供最好的数据湖和数据仓库,可以安全地与您现有的Azure服务集成。在这个演示中,我们介绍了几个最常见的Azure Databricks集成,包括Azure数据湖存储(ADLS)、Azure数据工厂(ADF)、Azure物联网中心、Azure Synapse Analytics、Power BI等。
深入了解Azure Databricks
视频记录
Azure Databricks上的Lakehouse介绍
Azure Databricks是Databricks和微软联合开发的数据+ AI服务,用于数据工程、数据科学、分析和机器学习。Azure Databricks Lakehouse平台在一个bob体育客户端下载简单、开放和协作的平台上为您提供最好的数据湖和数据仓库,可以安全地与您现有的Azure服务集成。
批处理ETL管道与Azure数据工厂和Azure Databricks
由于Azure Databricks和Azure data Factory之间的集成,编排用于提取、转换和加载(ETL)操作的数据管道比以往任何时候都更容易。在这个演示中,我们将使用来自用于维护美国各地风力涡轮机的车队管理系统的功率输出和维护系统记录。我们已经创建了一个Azure数据工厂管道,它使用COPY命令将数据从SQL server中的舰队管理系统增量地摄取到Azure数据湖存储Gen2中的着陆区。然后,数据工厂执行Databricks笔记本,使用Databricks Auto Loader处理数据,并将其保存到Delta Lake表中。
点击展开文字记录→
点击折叠文本→
通过将Azure Databricks Notebook活动添加到管道中,可以创建Azure数据工厂到Azure Databricks集成。在活动中,我添加了一个新的Azure Databricks链接服务,指向Azure Databricks工作空间,并进行了适当的配置,以便为我的计算使用现有的交互式集群。最后,我在Databricks工作区中选择了一个笔记本路径,将用于转换数据并将其加载到Delta Lake中。
当我运行管道时,输出窗口显示了已经运行的不同活动,在我的Databricks活动中,我实际上可以浏览到管道运行时执行的笔记本。
我们可以从元数据中看到,这个笔记本执行成功,花了23秒。
当我创建一个名为“Maintenance Header DF”的DataFrame时,代码中的真正工作开始了,该DataFrame读取ADF放入着陆区域的Parquet文件。尽管我正在读取Parquet数据,但我的格式是“云文件”,因为我正在使用Auto Loader自动检测新文件,因为它们落在我的着陆区域。我还为我的电源输出数据创建了一个DataFrame。我使用writeStream命令将DataFrame写入Delta Lake表,指定格式为Delta,并提供在Azure Data Lake存储中的表写入位置。我还使用了一个名为“triggerOnce”的选项来将我的代码编程为流管道,但将其作为面向批处理的执行来运行。
流数据管道与物联网事件集线器和Spark流
接下来,我们使用Azure提供的物联网模拟器将实时流数据有效载荷发送到Azure物联网事件中心,类似于真实风力涡轮机创建的数据。一旦我们按下“运行”按钮,模拟器开始每秒钟向物联网中心发送遥测和天气数据。
在Event Hubs指标中,我们可以看到模拟器正在运行并向Event Hubs发送新消息。
在Azure Databricks中,我们创建了一个笔记本,从IoT事件中心实时读取这些流数据。代码的第一部分将来自IoT设备的原始JSON数据解析为DataFrame列。正如您所看到的,使用Spark连接器到事件集线器的连接非常简单。然后,我们将天气数据和涡轮机数据分割到不同的dataframe中,并以Delta格式存储数据。Delta格式是Delta Lakehouse体系结构的基础,它在数据湖之上提供流事务和增量数据加载。
在流式DataFrame的可视化中,您可以看到数据正在实时刷新,每秒钟都有新的数据点到达。
我们还可以为每个一小时的滚动窗口创建滚动聚合,并将其以Delta格式存储在Silver层中,供下游数据分析师和应用程序使用。
为Delta Lake Gold表提供Azure Synapse专用SQL池
在演示的第三部分中,我们通过将来自维护系统的信息(通过批处理加载)与物联网和遥测数据(通过流加载)相结合来增强数据。然后,我们将结果存储在Azure Data Lake Storage上的Delta Lake Gold表中,并将其发布到Azure Synapse Analytics专用SQL池中。
Delta Lake Gold表将用于数据科学和机器学习,以及直接在Databricks notebook和Databricks SQL analytics中执行的数据探索和数据分析。加载到Synapse Dedicated SQL Pool中的版本通常是一个较小的表,具有用于高并发、低延迟工作负载的高级聚合。
Azure Databricks提供了一个到Synapse SQL Pool的高性能连接器。该连接器同时支持批处理和流刷新。在这种情况下,涡轮Gold表在流更新中不断刷新。
在SQL分析中浏览和可视化数据
为了简化流程并更快地将数据交到业务手中,许多组织正在使用Databricks SQL Analytics和Power BI直接从Delta Lake提供报告。作为一名业务分析师,我可以在SQL分析中看到对我可用的数据。我通过点击UI中的“new query”按钮来创建一个新的查询。在数据浏览器中,我可以连接到我的IoT演示数据库,并查看对我可用的表及其元数据。然后我可以查询我的涡轮金表,浏览数据,甚至做简单的数据可视化。
使用SQL Analytics端点连接到Power BI
但如果我真的需要让我的数据闪闪发光,Azure Databricks可以通过优化的连接器与Power BI集成,为存储在数据湖中的数据提供安全、更具交互性的数据可视化体验。为了将Power BI连接到Databricks SQL Analytics,我浏览到Endpoints,并在连接详细信息选项卡上查看端点的连接信息。在Power BI中,我点击“获取数据”>“更多”,“>”Azure,“>”Azure Databricks,然后“连接”。我从端点复制服务器主机名和HTTP路径信息,并将其放入Power BI中。或者,我可以输入我的数据库名称,选择“Import”或“DirectQuery”,然后单击“OK”。
当表格和视图列表出现在导航器UI中时,我可以选择涡轮Gold表格并单击“加载”。一旦Power BI将我的数据加载到数据模型中,我就可以开始将字段列表拖放到我的画布上,以交互方式分析数据,甚至可以创建视觉上吸引人的、企业就绪的报告和仪表板,这些报告和仪表板可以发布到Power BI服务并与我的团队共享。

准备开始了吗?

