你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍几个可用于将数据传入和传出 Azure 的选项,具体取决于你的需求。
物理传输
在以下因素适用时,使用物理硬件将数据传输到 Azure 是一个不错的选择:
- 网络较慢或不可靠。
- 获取更多网络带宽太贵。
- 处理敏感数据时,安全或组织策略不允许出站连接。
如果主要担心传输数据需要多长时间,请考虑测试以确认网络传输是否比物理传输慢。
Azure 导入/导出服务和 Azure Data Box 是将数据物理传输到 Azure 的两个主要选项。
Azure 导入/导出服务
通过 Azure 导入/导出服务,可以将内部串行高级技术附件(SATA)硬盘驱动器(HDD)或固态硬盘(SSD)传送到 Azure 数据中心,从而安全地将大量数据传输到 Azure Blob 存储或 Azure 文件。 还可以使用此服务将数据从 Azure 存储传输到 HDD,并将驱动器寄送到本地加载。
Data Box
Data Box 是一个Microsoft设备,其功能与 Azure 导入/导出服务类似。 借助 Data Box,Microsoft提供专有、安全且防篡改的传输设备,并处理端到端物流,可以通过 Azure 门户进行跟踪。 Data Box 服务的一项优势是易用。 无需购买多块硬盘、配备好硬盘,并将文件传输到每块硬盘。 许多 Azure 合作伙伴支持数据盒,这使得在他们的解决方案中更容易使用脱机传输至云端。
命令行工具和 API
需要编写脚本和编程数据传输时,请考虑以下选项:
Azure CLI 是一种跨平台工具,可用于管理 Azure 服务并将数据上传到存储。
AzCopy 是一个命令行实用工具,可用于将数据复制到 Blob 存储、Azure 文件存储和 Azure 表存储,并具有最佳性能。 AzCopy 支持并发度和并行度,并且可以在复制操作中断后进行恢复。 还可以使用 AzCopy 将数据从 Amazon Web Services (AWS) 复制到 Azure。 对于编程访问, Microsoft Azure 存储数据移动库 是支持 AzCopy 的核心框架。 它以 .NET Core 库的形式提供。
Azure PowerShell 是一个脚本环境,
Start-AzureStorageBlobCopy其中 cmdlet 为熟悉 Azure PowerShell 的操作员提供了一个选项。DistCp 是一个实用工具,用于在 Azure HDInsight 群集的默认存储和其他 Blob 存储或 Azure Data Lake Storage 帐户之间复制数据。
Apache Sqoop 是一个 Apache 项目和 Hadoop 生态系统的一部分。 所有 HDInsight 群集上已预装 Sqoop。 Sqoop 在 HDInsight 群集和关系数据库(如 SQL、Oracle 和 MySQL)之间传输数据。 它是相关工具的集合,包括导入和导出工具,并使用 Blob 存储或 Data Lake Storage 附加存储处理 HDInsight 群集。
PolyBase 是一种通过 T-SQL 语言访问数据库外部数据的技术。 它允许对 Hadoop 中的外部数据运行查询,或者从 Blob 存储导入和导出数据。
Hadoop 命令行是一种工具,可在数据驻留在 HDInsight 群集头节点上时使用。 可以使用
hadoop fs -copyFromLocal此命令将该数据复制到群集的附加存储,例如 Blob 存储或 Data Lake Storage。 若要使用 Hadoop 命令,必须先连接到头节点。 连接后,可以将文件上传到存储。
图形界面
如果只需要传输几个文件或数据对象,并且不需要自动执行该过程,请考虑以下选项。
Azure 存储资源管理器 是一种跨平台工具,可用于管理存储帐户的内容。 它使您可以上传、下载以及管理 Blob、文件、队列、表和 Azure Cosmos DB 实体。 将存储资源管理器与 Blob 存储配合使用来管理 Blob 和文件夹,以及在本地文件系统和 Blob 存储之间或存储帐户之间上传和下载 Blob。
Azure 门户是一个基于 Web 的应用程序,它提供统一的界面来创建、管理和监视 Azure 资源。 Blob 存储和 Data Lake Storage 都提供基于 Web 的界面,用于浏览和上传文件。 如果不想安装工具或运行命令以快速搜索文件,或者只需上传几个文件,则此选项适用。
Microsoft Fabric 数据流 是基于云的功能,可帮助你在不编写代码的情况下准备和转换数据。 它们提供一个低代码接口,用于从数百个源引入数据,并使用内置数据转换器转换数据,并将生成的数据加载到 受支持的目标。
数据同步和管道
Azure 数据工厂 是一项托管服务,旨在定期跨 Azure 服务、本地系统或两者的组合传输文件。 通过使用数据工厂,可以创建和计划数据驱动的工作流,称为 管道 ,用于从不同的数据存储引入数据。 数据工厂可以使用 Apache Spark 和 Azure 机器学习等计算服务来处理和转换数据。 可以创建数据驱动的工作流,以便 协调 和自动执行数据移动和数据转换。
Fabric 数据工厂 是一个数据集成平台,可用于跨云和混合环境协调和自动化数据移动和转换。 它允许你生成和计划数据驱动的工作流(管道),这些工作流从各种源(包括云存储、数据库和本地系统)引入数据。 这些管道支持各种活动,例如数据移动、转换和控制流,并且可以在 Fabric 工作负载中使用 Spark 和 SQL 等计算引擎。 通过集成到 OneLake,Fabric 可确保跨整个数据资产进行统一的数据访问、治理和协作。
数据工厂中的 集成运行时 、Fabric 中的 本地数据网关 和 虚拟网络数据网关 提供跨云、本地和虚拟网络环境的安全连接和数据集成功能。
Azure Data Box Gateway 将数据传入和传出 Azure,但它是虚拟设备,而不是硬盘驱动器。 驻留在本地网络中的虚拟机(VM)使用网络文件系统(NFS)和服务器消息块(SMB)协议将数据写入 Data Box Gateway。 然后,设备将数据传输到 Azure。
关键选择条件
对于数据传输方案,请考虑以下几点,为你的需求选择合适的系统:
确定您是否需要传输大量数据,如果通过 Internet 连接传输数据需要太长时间、不可靠或太昂贵。 如果是,请考虑物理传输。
确定你是否希望编写数据传输任务的脚本,以便它们可重用。 如果是,请选择一个命令行选项或数据工厂。
确定是否需要通过网络连接传输大量数据。 如果是,请选择针对大数据优化的选项。
确定是否需要将数据传输到关系数据库或从关系数据库传输数据。 如果是,请选择支持一个或多个关系数据库的选项。 其中的一些选项还需要 Hadoop 群集。
确定您的数据是否需要自动化管道或工作流编排。 如果是,请考虑数据工厂。
功能矩阵
以下各表汇总了功能上的关键差异。
物理传输
| 功能 | Azure 导入/导出服务 | Data Box |
|---|---|---|
| 外形规格 | 内部 SATA HDD 或 SDD | 安全、防篡改、单个硬件设备 |
| Microsoft 管理寄送物流 | 否 | 是 |
| 与合作伙伴产品集成 | 否 | 是 |
| 自定义设备 | 否 | 是 |
命令行工具
以下工具与 Hadoop 和 HDInsight 兼容。
| 功能 | DistCp | Sqoop | Hadoop 命令行界面 |
|---|---|---|---|
| 针对大数据优化 | 是 | 是 | 是 |
| 复制到关系数据库 | 否 | 是 | 否 |
| 从关系数据库复制 | 否 | 是 | 否 |
| 复制到 Blob 存储 | 是 | 是 | 是 |
| 从 Blob 存储复制 | 是 | 是 | 否 |
| 复制到 Data Lake Storage | 是 | 是 | 是 |
| 从 Data Lake Storage 复制 | 是 | 是 | 否 |
下表包括常规用途数据传输工具。
| 功能 | Azure CLI | AzCopy | Azure PowerShell | PolyBase |
|---|---|---|---|---|
| 兼容的平台 | Linux、OS X、Windows | Linux、Windows | Windows操作系统 | SQL Server |
| 针对大数据优化 | 否 | 是 | 否 | 是 1 |
| 复制到关系数据库 | 否 | 否 | 否 | 是 |
| 从关系数据库复制 | 否 | 否 | 否 | 是 |
| 复制到 Blob 存储 | 是 | 是 | 是 | 是 |
| 从 Blob 存储复制 | 是 | 是 | 是 | 是 |
| 复制到 Data Lake Storage | 否 | 是 | 是 | 是 |
| 从 Data Lake Storage 复制 | 否 | 否 | 是 | 是 |
通过将计算推送到 Hadoop 并使用 PolyBase 横向扩展组在 SQL Server 实例和 Hadoop 节点之间实现并行数据传输,1 PolyBase 性能。
图形界面、数据同步和数据管道
| 功能 | 存储资源管理器 | Azure 门户 2 | 数据工厂 | Data Box Gateway | Dataflows |
|---|---|---|---|---|---|
| 针对大数据优化 | 否 | 否 | 是 | 是 | 是 |
| 复制到关系数据库 | 否 | 否 | 是 | 否 | 是 |
| 从关系数据库复制 | 否 | 否 | 是 | 否 | 是 |
| 复制到 Blob 存储 | 是 | 否 | 是 | 是 | 是 |
| 从 Blob 存储复制 | 是 | 否 | 是 | 否 | 是 |
| 复制到 Data Lake Storage | 否 | 否 | 是 | 否 | 是 |
| 从 Data Lake Storage 复制 | 否 | 否 | 是 | 否 | 是 |
| 上传到 Blob 存储 | 是 | 是 | 是 | 是 | 是 |
| 上传到 Data Lake Storage | 是 | 是 | 是 | 是 | 是 |
| 协调数据传输 | 否 | 否 | 是 | 否 | 是 |
| 自定义数据转换 | 否 | 否 | 是 | 否 | 是 |
| 定价模型 | 免费 | 免费 | 按使用情况付费 | 按单位付费 | 按使用情况付费 |
2 在本例中,Azure 门户表示 Blob 存储和 Data Lake Storage 的基于 Web 的浏览工具。
作者
Microsoft维护本文。 以下参与者撰写了本文。
主要作者:
- Zoiner Tejada |CEO 和架构师
其他参与者:
- Prabhjot Kaur |高级解决方案工程师
- Sriram Kolla |首席云解决方案架构师
若要查看非公开的LinkedIn个人资料,请登录LinkedIn。
后续步骤
相关资源
- 将存档数据从大型机系统移动到 Azure
- 在 Azure 上
大型机文件复制和同步 - 将大型机数据复制和同步到 Azure