使用 Azure Data Lake Storage Gen1 满足大数据要求
注意
Azure Data Lake Storage Gen1 现已停用。 请参阅此处的停用公告。Data Lake Storage Gen1 资源不再可访问。
大数据处理的四个主要阶段:
- 实时或批量引入大量数据到数据存储
- 处理数据
- 下载数据
- 可视化数据
本文介绍有关 Azure Data Lake Storage Gen1 的这四个阶段,帮助用户了解可用于满足大数据需求的选项和工具。
将数据引入 Data Lake Storage Gen1
本部分重点介绍不同的数据源和将数据引入 Data Lake Storage Gen1 帐户的不同方式。
临时数据
这表示可用于形成大数据应用程序原型的较小数据集。 存在数种不同的引入临时数据的方式,具体取决于数据源。
数据源 | 引入方式 |
---|---|
本地计算机 | |
Azure 存储 Blob |
流数据
这表示可由应用程序、设备、传感器等多种源生成的数据。此数据可通过各种工具引入 Data Lake Storage Gen1。 这些工具通常实时逐事件捕获和处理数据,并随后批量将事件写入 Data Lake Storage Gen1,以便这些事件可以得到进一步处理。
可用工具如下:
- Azure 流分析:可使用 Azure Data Lake Storage Gen1 输出将引入事件中心的事件写入 Azure Data Lake Storage Gen1。
- EventProcessorHost:可接收事件中心内的事件,然后使用 Data Lake Storage Gen1 .NET SDK 将其写入 Data Lake Storage Gen1。
关系数据
也可从关系数据库中获得数据。 在一个时间段期间,关系数据库会收集大量数据,这些数据如果通过大数据管道处理,可提供重要见解。 可使用以下工具将此类数据移入 Data Lake Storage Gen1。
Web 服务器日志数据(使用自定义应用程序上传)
由于分析 Web 服务器日志数据是大数据应用程序的常见用途,且需要上载大量日志文件到 Data Lake Storage Gen1,将明确调用此类数据集。 可使用以下任何工具编写自己的脚本或应用程序来上传此类数据。
对于上传 web 服务器日志数据和上传其他类型的数据(例如社会情绪数据),编写自定义脚本/应用程序是一个非常不错的方式,因为这可灵活地将数据上传组件作为更大的大数据应用程序的一部分而包含在内。 某些情况下,此代码的形式可能是脚本或简单的命令行实用工具。 其他情况下,此代码可用于将大数据处理集成到业务应用程序或解决方案中。
与 Azure HDInsight 群集关联的数据
大多数 HDInsight 群集类型(Hadoop、HBase、Storm)支持将 Data Lake Storage Gen1 用作数据存储库。 HDInsight 群集从 Azure 存储 Blob (WASB)访问数据。 要提高性能,可从 WASB 将数据复制到与此群集关联的 Data Lake Storage Gen1 帐户。 可使用以下工具复制数据。
存储在本地或 IaaS Hadoop 群集的数据
使用 HDFS 可在本地计算机上的现有 Hadoop 群集中存储大量数据。 Hadoop 群集可能在本地部署或 Azure 上的 IaaS 群集中。 通过一次性方法或重复方式将此类数据复制到 Azure Data Lake Storage Gen1 可能存在一些要求。 实现此目的有多种可用选项。 以下是替代项和相关折衷方案的列表。
方法 | 详细信息 | 优点 | 注意事项 |
---|---|---|---|
使用 Azure 数据工厂 (ADF) 直接将数据从 Hadoop 群集复制到 Azure Data Lake Storage Gen1 | ADF 支持将 HDFS 作为数据源 | ADF 提供 HDFS 开箱即用支持和一流的端到端管理和监视 | 要求在本地或 IaaS 群集中部署数据管理网关 |
从 Hadoop 将数据以文件形式导出。 然后使用适当机制将文件复制到 Azure Data Lake Storage Gen1。 | 可以使用以下方法将文件复制到 Azure Data Lake Storage Gen1:
|
快速入门。 可执行自定义上传 | 涉及多种技术的多步处理。 由于工具的自定义性质,随着时间推移,管理和监视会逐渐变得具有挑战性 |
使用 Distcp 将数据从 Hadoop 复制到 Azure 存储。 然后使用适当机制将数据从 Azure 存储复制到 Data Lake Storage Gen1。 | 可以使用以下方法将数据从 Azure 存储 复制到 Data Lake Storage Gen1: | 可使用开放源代码工具。 | 涉及多种技术的多步处理 |
大型数据集
对于上传兆兆字节范围内的数据集,使用上述方法可能有时速度慢且成本高。 这种情况下,可使用以下选项。
使用 Azure ExpressRoute。 Azure ExpressRoute 可允许在 Azure 数据中心与本地中的基础结构之间创建专有连接。 这对传输大量数据提供了可靠的选项。 有关详细信息,请参阅 Azure ExpressRoute 文档。
数据“离线上传”。 如果由于任何原因而导致使用 Azure ExpressRoute 不可行,可使用 Azure 导入/导出服务将包含数据的硬盘驱动器发送到 Azure 数据中心。 数据会首先上传到 Azure 存储 Blob。 然后可使用 Azure 数据工厂或 AdlCopy 工具将数据从 Azure 存储 Blob 复制到 Data Lake Storage Gen1。
注意
使用此导入/导出服务时,发送到 Azure 数据中心的磁盘上的文件大小不可大于 195 GB。
处理存储在 Data Lake Storage Gen1 中的数据
数据在 Data Lake Storage Gen1 中可用后,可使用支持的大数据应用程序对此数据运行分析。 目前,可使用 Azure HDInsight 和 Azure Data Lake Analytics 对存储在 Data Lake Storage Gen1 中的数据运行数据分析。
可查看以下示例。
- 创建包含 Data Lake Storage Gen1 作为存储的 HDInsight 群集
- 将 Azure Data Lake Analytics 与 Data Lake Storage Gen1 配合使用
从 Data Lake Storage Gen1 下载数据
用户可能还希望为一些方案从 Azure Data Lake Storage Gen1 下载或移动数据,例如:
- 将数据移动到其他存储库以便连接现有数据处理管道。 例如,用户可能希望从 Data Lake Storage Gen1 将数据移动到 Azure SQL 数据库或 SQL Server。
- 构建应用程序原型时,下载数据到本地计算机以在 IDE 中进行处理。
这种情况下,可使用以下任何选项:
也可使用以下方法自己编写脚本/应用程序来从 Data Lake Storage Gen1 下载数据。
可视化 Data Lake Storage Gen1 中的数据
可混合使用服务来创建 Data Lake Storage Gen1 中存储的数据的可视化表示形式。
- 首先通过使用 Azure 数据工厂从 Data Lake Storage Gen1 将数据移动到 Azure Synapse Analytics
- 之后,可集成 Power BI 和 Azure Synapse Analytics 来创建数据的可视化表示形式。