使用 Azure Databricks 设计数据集成和分析解决方案

已完成

Azure Databricks 是完全托管的、基于云的大数据和机器学习平台,使开发人员能够加速 AI 和创新。 Azure Databricks 为数据科学和工程团队提供一个用于大数据处理和机器学习的平台。 借助 Azure Databricks 的托管 Apache Spark 平台,可以更方便地运行大规模 Spark 工作负载。

有关 Azure Databricks 的注意事项

Azure Databricks 完全基于 Apache Spark,因此对于那些已经熟悉开源群集计算框架的用户来说是一个很好的工具。 作为一个统一的分析引擎,它专为大数据处理而设计。 数据科学家可以利用 SQL、Java、Python、R 和 Scala 等核心语言的内置核心 API。

Azure Databricks 具有控制平面和数据平面:

  • 控制平面:托管 Databricks 作业、具有查询结果的笔记本和群集管理器。 控制平面还具有 Web 应用、Hive 元存储,以及安全访问控制列表 (ACL) 和用户会话。 这些组件由 Microsoft 与 Azure Databricks 协作管理,不驻留在 Azure 订阅中。
  • 数据平面:包含工作区中托管的所有 Azure Databricks 运行时群集。 所有数据处理和存储都存在于客户端订阅中。 在 Microsoft/Databricks 托管订阅中不会进行任何数据处理。

Azure Databricks 为开发数据密集型应用程序提供三个环境。

  • Databricks SQL:Azure Databricks SQL 为希望在其数据池上运行 SQL 查询的分析师提供了一个易用平台。 可以创建多个可视化效果类型,以从不同的角度探索查询结果,并构建和共享仪表板。
  • Databricks 数据科学和工程:“Azure Databricks 数据科学和工程”是一个交互工作区,支持数据工程师、数据科学家和机器学习工程师之间的协作。 使用大数据管道时,原始或结构化的数据将通过 Azure 数据工厂以批的形式引入 Azure,或者通过 Apache Kafka、Azure 事件中心或 Azure IoT 中心进行准实时的流式传输。 此数据将驻留在 Data Lake(长久存储)、Azure Blob 存储或 Azure Data Lake Storage 中。 在分析工作流中,使用 Azure Databricks 从多个数据源读取数据,并使用 Spark 将数据转换为突破性见解。
  • Databricks 机器学习:Azure Databricks 机器学习是一个集成式端到端机器学习环境。 它整合了用于试验跟踪、模型训练、特征开发和管理以及特征和模型服务的托管服务。

业务场景

让我们分析一下 Tailwind Traders 重型机械制造部门的场景。 Tailwind Traders 使用 Azure 云服务满足其大数据需求。 它们同时处理批数据和流数据。 该部门雇佣了数据工程师、数据科学家和数据分析师,他们相互协作以便为许多利益干系人提供快速且有见地的报告。 为了满足大数据需求,你计划推荐 Azure Databricks 并实施数据科学和工程环境。

让我们回顾一下为什么 Azure Databricks 是满足这些要求的正确选择。

  • Azure Databricks 提供了一个基于 Apache Spark的集成分析“工作区”,可在不同的用户之间实现协作。
  • 通过使用 Spark SQL 和数据帧等 Spark 组件,Azure Databricks 可以处理结构化数据。 它与 Kafka 和 Flume 等实时数据引入工具集成,用于处理流数据。
  • 使用基于 Spark 的安全数据集成功能,可在无需集中化的情况下统一数据。 数据科学家几步内即可实现数据可视化,并使用熟悉的工具,例如 Matplotlib、ggplot 或 d3。
  • Azure Databricks 运行时通过抽象化消除了基础结构复杂性,无需专业知识即可设置和配置数据基础结构。 用户可以使用 Python、Scala 和 R 的现有语言技能,并浏览数据。
  • Azure Databricks 与 Azure Synapse Analytics、Azure Cosmos DB、Azure Data Lake Storage 和 Azure Blob 存储等 Azure 数据库和存储深度集成。 它支持各种数据存储平台,可满足 Tailwind Traders 大数据存储需求。
  • 与 Power BI 的集成可提供快速且有意义的见解,这是 Tailwind Traders 的一项要求。
  • Azure Databricks SQL 不是正确的选择,因为它无法处理非结构化数据。
  • Azure Databricks 机器学习也不是正确的环境选择,因为在此方案中不需要机器学习。

使用 Azure Databricks 时的注意事项

对于多个场景,均可将 Azure Databricks 用作解决方案。 考虑该服务如何使 Tailwind Traders 的数据集成解决方案受益。

  • 考虑准备数据科学数据。 创建、克隆和编辑复杂非结构化数据的群集。 将数据群集转换为特定的作业。 将结果提供给数据科学家和数据分析师以供审阅。
  • 考虑数据中的见解。 实现 Azure Databricks 以生成建议引擎、流失分析和入侵检测。
  • 考虑跨数据和分析团队的工作效率。 为数据工程师、分析师和科学家创建协作环境和共享工作区。 团队可以使用共享工作区跨数据科学生命周期协同工作,这有助于节省宝贵的时间和资源。
  • 考虑大数据工作负载。 使用 Azure Data Lake 和引擎,获得大数据工作负载的最佳性能和可靠性。 创建方便操作的多步骤数据管道。
  • 考虑机器学习程序。 利用集成的端到端机器学习环境。 它整合了用于试验跟踪、模型训练、特征开发和管理以及特征和模型服务的托管服务。