什么是 Azure HDInsight 和 Hadoop 技术堆栈

本文介绍 Azure HDInsight 上的 Apache Hadoop。 Azure HDInsight 是适用于企业的分析服务,具有完全托管、全面且开源的特点。 可以使用 Hadoop、Spark、Hive、LLAP、Kafka、Storm 等开源框架。

什么是 HDInsight 和 Hadoop 技术堆栈?

Apache Hadoop 是原始的开源框架,适用于对群集上的大数据集进行分布式处理和分析。 Hadoop 技术堆栈包括相关的软件和实用程序(Apache Hive、HBase、Spark、Kafka 等)。

Azure HDInsight 是 Hortonworks Data Platform (HDP) 提供的 Hadoop 组件的云发行版。 可以通过 Azure HDInsight 轻松、快速且经济有效地处理大量数据。 可以使用 Hadoop、Spark、Hive、LLAP、Kafka、Storm 等最常用的开源框架。 可以通过这些框架启用各种各样的方案,例如提取、转换和加载 (ETL);数据仓库操作;机器学习;IoT。

若要查看 HDInsight 上的可用 Hadoop 技术堆栈组件,请参阅可以与 HDInsight 配合使用的组件和版本。 若要详细了解 HDInsight 中的 Hadoop,请参阅 Azure 上介绍了 HDInsight 功能的页面

什么是大数据?

与以前相比,大数据的收集量在增加,收集速度在加快,收集格式在增多。 大数据可以是历史数据(即已存储的数据),也可以是实时数据(即从数据源流式传输的数据)。 请参阅使用 HDInsight 的方案,了解大数据的最常见用例。

为何应使用 HDInsight 上的 Hadoop?

本部分列出了 Azure HDInsight 的功能。

功能 说明
云原生 可以使用 Azure HDInsight 在 Azure 上为 Hadoop、 Spark、 交互式查询 (LLAP)、 Kafka、 StormHBase 创建优化群集。 HDInsight 还在所有生产工作负荷上提供端到端 SLA。
低成本且可缩放 可以通过 HDInsight 纵向缩放 工作负荷。 还可以生成数据管道,使作业可操作化。 使计算和存储分离,提高性能和灵活性。
既安全又合规 HDInsight 允许通过 Azure 虚拟网络加密来保护企业数据资产。
工作效率 Azure HDInsight 允许将各种适用于 Hadoop 和 Spark 的高效工具与首选的开发环境配合使用。 这些开发环境包括 Visual StudioEclipseIntelliJ,可以提供 Scala、Python、R、Java 和 .NET 支持。 数据科学家也可以使用 JupyterZeppelin 等常用 Notebook 进行协作。
可扩展性 可以使用脚本操作通过安装的组件(Hue、Presto 等)来扩展 HDInsight 群集,具体方法是:添加边缘节点集成其他大数据认证应用程序

使用 HDInsight 的方案

Azure HDInsight 适用于各种方案的大数据处理。 大数据可以是历史数据(已收集和存储的数据),也可以是实时数据(直接从源流式传输的数据)。 处理此类数据的方案可以汇总成以下类别:

批处理 (ETL)

提取、转换和加载 (ETL) 是指将非结构化或结构化数据从异类数据源中提取出来, 转换成某种结构化格式,然后加载到数据存储中这一过程。 可以将转换的数据用于数据科学或数据仓库。

数据仓库

可以使用 HDInsight 对任何格式的结构化或非结构化数据执行 PB 规模的交互式查询。 也可以通过生成模型将其连接到 BI 工具。 有关详细信息,请阅读此客户经历

HDInsight 体系结构:数据仓库

物联网 (IoT)

可以使用 HDInsight 处理从各种设备实时接收的流数据。 有关详细信息,请阅读 Azure 提供的此博客文章,了解使用 Azure 托管磁盘的 Apache Kafka on HDInsight 公共预览版。

HDInsight 体系结构:物联网

数据科学

可以使用 HDInsight 生成从数据中提取关键见解的应用程序。 也可在此基础上使用 Azure 机器学习来预测业务的未来趋势。 有关详细信息,请阅读此客户经历

HDInsight 体系结构:数据科学

混合

可以使用 HDInsight 将现有的本地大数据基础结构扩展到 Azure,充分利用云的高级分析功能。

HDInsight 体系结构:混合

HDInsight 中的群集类型

HDInsight 包括特定的群集类型和群集自定义功能,例如添加组件、实用程序和语言的功能。 HDInsight 提供以下群集类型:

HDInsight 中的开源组件

Azure HDInsight 允许使用 Hadoop、Spark、Hive、LLAP、 Kafka、Storm 和 HBase 等开源框架创建群集。 这些群集默认已随附其他开源组件,例如 AmbariAvroHiveHCatalogMahoutMapReduceYARNPhoenixPigSqoopTezOozieZooKeeper

HDInsight 中的编程语言

HDInsight 群集包括 Spark、HBase、Kafka、Hadoop 和其他群集,支持多种编程语言。 某些编程语言默认情况下未安装。 对于默认情况下未安装的库、模块或程序包,请使用脚本操作来安装组件

编程语言 信息
默认编程语言支持 默认情况下,HDInsight 群集支持:
  • Java
  • Python
可以使用脚本操作来安装其他语言。
Java 虚拟机 (JVM) 语言 除 Java 之外的许多语言都可以在 Java 虚拟机 (JVM) 上运行。 但是,运行这其中的部分语言时,可能必须在群集上安装其他组件。 HDInsight 群集支持以下基于 JVM 的语言:
  • Clojure
  • Jython (Python for Java)
  • Scala
Hadoop 特定的语言 HDInsight 群集支持以下特定于 Hadoop 技术堆栈的语言:
  • 用于 Pig 作业的 Pig Latin
  • 用于 Hive 作业的 HiveQL 和 SparkSQL

HDInsight 上的商业智能

大家熟悉的商业智能 (BI) 工具使用 Power Query 外接程序或 Microsoft Hive ODBC 驱动程序来检索、分析和报告与 HDInsight 集成的数据:

后续步骤

本文介绍了 Azure HDInsight 及其在 Azure 上提供 Hadoop 和其他群集类型的方式。 请继续阅读下一篇文章,了解如何在 HDInsight 中创建 Apache Hadoop 群集。