Azure Blob数据迁移工具

数据迁移备份,更多的应用场景见https://docs.azure.cn/zh-cn/storage/common/storage-moving-data?toc=%2fstorage%2fblobs%2ftoc.json

本文档是针对近期数据冷热备份实际工作的一个小结。实际使用过Azcopy和AzureClient这两种方式。据与Microsoft的交流,目前的工具都没有提供内置压缩算法(Azcopy正在开发中)。

1、Azcopy

AzCopy 是一个 Windows 命令行实用程序,用于将数据高性能复制到 Azure 存储(或从中进行复制)。 还可在存储帐户内或在存储帐户间复制数据。

具体的命令请参考https://docs.azure.cn/zh-cn/storage/common/storage-use-azcopy

本文要说的一个点:关于权限。

通过Azcopy移动数据后,目标数据的权限跟源数据的权限完全一致(Linux目录和文件的权限,包括owner/group/permissions)。如果前后两个环境的owner/group不一致,则复制后的数据可能存在权限问题。

2、WindowsAzure.Storage Client

参考:

https://docs.azure.cn/zh-cn/storage/files/storage-dotnet-how-to-use-files?toc=%2fstorage%2fblobs%2ftoc.json

该方法同样要说的一个点,也是权限问题。

新new出来的blob实例,是不带权限的,需要手工赋值。

CloudBlockBlob hotBlockBlob = this.hotBlobContainer.GetBlockBlobReference(hotBlockName);
this.SetProperties(hotBlockBlob.Properties, blob.Properties);
if (blobFloderNames.Contains(blob.Name))
{
  hotBlockBlob.Metadata.Add("hdi_isfolder", "true");
   hotBlockBlob.Metadata.Add("hdi_permission", "{\"owner\":\""+ hotPermission_Owner + "\",\"group\":\""+ hotPermission_Group + "\",\"permissions\":\"rwxr-xr-x\"}");
}else
   hotBlockBlob.Metadata.Add("hdi_permission", "{\"owner\":\"" + hotPermission_Owner + "\",\"group\":\"" + hotPermission_Group + "\",\"permissions\":\"rw-r--r--\"}");

3、Microsoft.Azure.Storage.DataMovement

 参考:https://www.nuget.org/packages/Microsoft.Azure.Storage.DataMovement

时间: 2024-11-05 15:57:24

Azure Blob数据迁移工具的相关文章

Azure Blob Storage从入门到精通

今天推荐的是一个系列文章,让读者阅读完成后可以对Azure Blob Storage的开发有一个全面的了解,可谓是从入门到精通. Azure在最初的版本里面就提供了非结构化数据的存储服务,也即Blob Storage.其是Azure中非常重要和基础的一项服务,支撑着很多其他服务的运行(比如虚拟机等).前不久Azure出现故障,就是Blob Storage导致的. Robin Shahan(女程序猿)发表了一个系列文章,全面的介绍Azure Blob Storage的开发.这个系列文章分为10个部

Python 操作 Azure Blob Storage

笔者在<Azure 基础:Blob Storage>一文中介绍了 Azure Blob Storage 的基本概念,并通过 C# 代码展示了如何进行基本的操作.最近笔者需要在 Linux 系统中做类似的事情,于是决定使用 Azure 提供的 Azure Storage SDK for Python 来操作 Blob Storage.这样今后无论在 Windows 上还是 Linux上,都用 Python 就可以了.对 Azure Blob Storage 概念还不太熟悉的同学请先参考前文. 安

presto访问 Azure blob storage

当集群使用Azure Blog Storage时,prestoDB无法获取返回结果,在此记录下 如下,hive里面的两个表,一个使用的是本地的hdfs,一个是使用 azure blob storage, presto 能访问到hive里面的所有表结构,能查询本地hdfs的hive表,如下: 在返回查询数据时,本地hdfs 存储正常 存储在azure blob storage上的数据返回异常,如下: 问题待解决中....... 收集资料: http://stackoverflow.com/ques

DW(六):polybase访问Azure Blob Storage

目录: 连接hadoop配置语法 配置hadoop连接 Pushdown配置 Create external tables for Azure blob storage 连接hadoop配置语法: global configuration settings for PolyBase Hadoop and Azure blob storage connectivity, Syntax: sp_configure:  List all of the configuration options 配置与

Azure Blob

Blob的概念: Blob是一种为存储二进制数据提供的存储机制,每个Storage Account可以有多个Container,Container中可以存放二进制文件 可以通过REST API来访问,如下: http://accountName.blob.core.windows.net/<containerName>/<blobName> Blob也支持Root Container的概念 访问路径如下 http://accountName.blob.core.windows.ne

使用Azure Blob存储

可以通过多种方式来对Azure Blob进行操作.在此我们介绍通过VS的客户端及代码两种方式来操作Blob. 一.通过VS来操作Blob. 1.首先下载publish settings 文件:打开“https://manage.windowsazure.cn/publishsettings/index”,登陆China Azure,下载publish Settings文件到本地. 2.      打开Visual Studio, 选择 View -> Server Explorer 3.    

使用Azure Blob优化Hadoop集群存储成本

大数据与云计算的关系就像一枚硬币的正反面一样密不可分,大数据是云计算非常重要的应用场景,而云计算则为大数据的处理和数据挖掘都提供了最佳的技术解决方案.云计算的快速供给.弹性扩展以及按用量付费的优势已经给IT行业带来了巨大变化,它已经日益成为企业IT的首选.在让企业通过数据洞察提升效率和效益的同时,如何降低大数据平台成本也是IT部门经常关心的问题. 为什么用Azure Blob作为Hadoop分布式文件系统管理大数据? HDFS是Hadoop集群分布式文件系统,它将文件分割为数据块Block,默认

使用ADO实现BLOB数据的存取 -- ADO开发实践之二

使用ADO实现BLOB数据的存取 -- ADO开发实践之二 http://www.360doc.com/content/11/0113/16/4780948_86256633.shtml 一.前言 在上一篇文章<>中我们详细介绍了ADO基本的操作方法,在实际的开发过程中我们常常需要存储较大的二进制数据对象,比如:图像.音频文件.或其它二进制数据,这些数据我们称之为二进制大对象BLOB(Binary Large Object),其存取的方式与普通数据有所区别.本文将介绍利用ADO在数据库中存取B

『数据库』随手写了一个 跨数据库 数据迁移工具

随手写了一个 跨数据库 的 数据迁移工具:>目前支持 SQLServer,MySql,SQLite: >迁移工具 可以自动建表,且 保留 主键,自增列: >迁移工具 基于 Laura.Source  ORM框架 开发: >迁移工具 支持 崩溃恢复(重启迁移工具,将会继续 未完成的 数据迁移): >每张表一个事务(即使  表中有 >100W 的数据,也是一个事务完成): >迁移后 的 自增列 和 原数据库 保持一致: 只是展示一下,直接上图片: 操作工具: 迁移工具