【阿里云产品公测】离线归档OAS,再也不用担心备份空间了

作者:阿里云用户莫须有3i

1 起步 
 
1.1 初识OAS 
 啥是OAS,请看官方说明:

引用:

开放归档服务(Open Archive Service,简称OAS),致力于提供低成本、高可靠的数据归档服务,适合于大数据的长久归档备份。

低成本、高可靠,长久归档备份,这是它的特色。 
 
1.2 申请开通 
当前还处于公测阶段,需要申请,试用期间,免费试用,每个用户可以存储不超过10T的数据,并且文件数量不超过10万个,大伙有什么超大文件,没地方放的,可以考虑考虑喔,不过对于文件唤起要一段时间,哪怕是刚上传还是1KB的文件。 
 
1.3 接口与SDK

引用:

提供完整API,所有功能都可以通过API接口完成,便于用户的程序化实现。同时提供了多语言SDK。

官方说有提供多语言SDK,但我只看到Python版本的可供下载,难道忘记上传了,哈哈,大伙赶紧帮忙封装些: 
 
Python 手册与SDK下载:

复制代码

  1. http://imgs-storage.cdn.aliyuncs.com/help/oas/OAS_Python_SDK_帮助手册_140910.pdf

  2. http://imgs-storage.cdn.aliyuncs.com/help/oas/OAS_Python_SDK_0.1.7.zip

安装方法:

复制代码

  1. pip install oassdk 或 pip install --upgrade oassdk

API文档下载:

复制代码

  1. http://imgs-storage.cdn.aliyuncs.com/help/oas/OAS-API-Reference-Full-v0.1.24.pdf

不过提供的restful api文档看起来比较舒服,个人感觉比OSS的api手册好,可能是比较晚出来,编辑的比较好吧~~(●’◡’●)。 
 
2 实践

2.1 准备知识 
下载SDK后,可以根据《OAS_Python_SDK_帮助手册_140910.pdf》进行操作,或者能力比较强爱折腾的,也可以根据reset api通过其他语言的开发。

引用

在使用 Python SDK 或阅读本手册之前,请务必先阅读《OAS API 参考手册》

来自帮助手册的第一句话,看到这,马上想到:欲练此功,必先自宫。使用前还是先去恶补下必备知识,对 Vault、Archive、Mupltipart Upload、Job 等基础概念的了解。 
 
简单归纳如下:

引用

Vault 是 OAS 提供给用户用于管理 Archive 的目录,也是计费、权限控制等功能的管理单位,它在每个用户的每个区域(杭州、青岛、北京、香港)下唯一,每个用户在每个区域 最多可以自建 10 个,每个 Vault 里可以包含任意数量的 Archive。   
用户操作的基本数据单元是 Archive,它需要包含在 Vault中,它可以是任意类型的数据,上传 Archive时,文档大小限制在 6GB,如果大小超出 6GB,请使用 分块上传方式,使用分块上传最大可以上传 1000*10GB 的文档,不仅如此,多段上传还支持独立、任意顺序、甚至并行上传这些段,如果某段上传失败,只需要重新上传该段即可。

SDK包含低级接口与高级接口:

引用

低级接口是 OAS RESTful 接口的直接映射,每一个 RESTful 接口均对应于低级  
接口的一个方法。 
高级接口在低级接口的基础上,进一步封装了校验码生成、自  
动重试、断点续传等高级功能。用户在使用过程中不需要关心高级接口内部实际  
调用的是哪个 RESTful 接口,只需按照所需的业务类型调用接口即可,如上传、  
查询等。

低级接口更底层,高级更友好,要不是闲的没事干就不要用低级接口了~~ 
 
2.2 运行环境

引用

OAS Python SDK 要求的运行环境是 Python 2.7(含)以上,3.0 以下。

对于Python版本要2.7以上,3.0以下!!注意!!,2.6的不可使用,意味着Centos6以及以下版本,通过Yum安装的,都不能直接使用喔,LZ中招,需自行安装Python2.7。 
 
版本查看方法:

复制代码

  1. python --version

Python与OAS SDK安装:

复制代码

  1. mkdir /tmp/aliyun

  2. cd /tmp/aliyun

  3. wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz

  4. tar xzvf Python-2.7.8.tgzcd Python-2.7.8

  5. ./configure

  6. make && make install

  7. # 至此,python 2.7 安装完成,可通过命令( python2.7 --version )来验证

  8. # 安装OAS SDK

  9. cd /tmp/aliyun

  10. wget http://imgs-storage.cdn.aliyuncs.com/help/oas/OAS_Python_SDK_0.1.7.zip

  11. unzip OAS_Python_SDK_0.1.7.zip

  12. # 依赖包,就simplejson与pyaml两个

  13. pip install -r requirements.txt

  14. # 或,自行下载安装依赖组建

  15. #wget https://pypi.python.org/packages/source/s/simplejson/simplejson-3.6.4.tar.gz

  16. #wget http://pyyaml.org/download/pyyaml/PyYAML-3.11.tar.gz

  17. python2.7 setup.py install

请进行安装验证,如图,无报错则继续 

 大功告成。 
 
2.3 简单示例 
 
2.3.1 获取OAS连接

复制代码

  1. from oas.oas_api import OASAPI

  2. from oas.ease.vault import Vault

  3. accessKeyId = "xxxxxxxxxxxxxxxx"

  4. accessKeySecret = "ooooooooooooooooooo"

  5. serverHost = "cn-hangzhou.oas-internal.aliyuncs.com"

  6. # 创建 OASAPI 对象

  7. api = OASAPI(serverHost, accessKeyId, accessKeySecret)

通过这里获取accessKeyId与accessKeySecret:

复制代码

  1. https://i.aliyun.com/access_key/

通信服务地址,serverHost的由来:

引用

2.1.1 服务地址  
OAS API 的服务接入地址为:  
公网:RegionName.oas.aliyuncs.com  
内网:RegionName.oas-internal.aliyuncs.com  
其中,RegionName 为: cn-hangzhou、cn-qingdao、cn-beijing、cn-hongkong 等。现  
阶段只开放 cn-hangzhou。

哥,自豪的使用ECS,当然就走内外地址了,既:cn-hangzhou.oas-internal.aliyuncs.com 
 
2.3.2 建立Vault

复制代码

  1. ...

  2. 请复制上 #获取OAS连接 代码

  3. ...

  4. # 待创建Vault的名称

  5. vaultName="henji_org"

  6. # 创建 Vaultvault = Vault.create_vault(api, vaultName)


运行:[root@cloud-1 aliyun]# python2.7 create_vault.py 
 
此时,管理界面出现新建立的Vault了,如: 

PS,当前web界面没啥功能,只能新建Vault。 
 
2.3.3 查找Vault

复制代码

  1. ...

  2. 请复制上 #获取OAS连接 代码

  3. ...

  4. # 待查找Vault的名称

  5. vaultName="henji_org"

  6. # 根据名称获取 Vault 对象

  7. vault = Vault.get_vault_by_name(api, vaultName)

  8. # 或者,根据 valutID 获取 Vault 对象

  9. #vault = Vault.get_vault_by_id(api, vaultId)

2.3.4 增、删、改、查 Archive 
以下片段代码片段都基于 #查找Vault 下:

上传Archive:

复制代码

  1. file_path = "/etc/passwd"

  2. archive_id = vault.upload_archive(file_path)

获取Archive 列表:

复制代码

  1. file_path = "/etc/passwd"

  2. job = vault.retrieve_inventory()

  3. job.download_to_file('[File Path]')

下载Archive:

复制代码

  1. archive_id = ""

  2. file_path = "/tmp/aliyun/download.txt"

  3. job = vault.retrieve_archive(archive_id)job.download_to_file(file_path)

删除Archive:

复制代码

  1. vault.delete_archive('[Archive ID]')

3 疑问 
1.归档离线备份,现在磁盘都是白菜价了,企业完全可以自己购买备份归档,OAS有哪些优势可以让企业选择它呢? 
2.当前硬件不断升级,必然长期出现新设备取代旧设备,也就带来数据迁移,这块如何保证数据的完整性?
3.OAS能做的OSS都可以实现了,目前唯一看到的OAS特点是,取数据时,需等待4小时左右的Job任务。想必,价格要比OSS低很多才行,应该要接近免费阶段了。

(OAS答复:存储的低成本和数据安全性真是OAS最根本的品质,提供了99.99999999%的数据可靠性。公测期间,每个用户可以存储不超过10T的数据。)

原文地址:http://bbs.aliyun.com/read/179027.html

微博互动:http://weibo.com/1644971875/BrlU9CYNQ

参加活动:http://promotion.aliyun.com/act/aliyun/freebeta/

【阿里云产品公测】离线归档OAS,再也不用担心备份空间了的更多相关文章

  1. 【阿里云产品公测】简单日志服务SLS使用评测 + 教程

    [阿里云产品公测]简单日志服务SLS使用评测 + 教程 评测介绍 被测产品: 简单日志服务SLS 评测环境: 阿里云基础ECS x2(1核, 512M, 1M) 操作系统: CentOS 6.5 x6 ...

  2. 【阿里云产品公测】以开发者角度看ACE服务『ACE应用构建指南』

    作者:阿里云用户mr_wid ,z)NKt#   @I6A9do   如果感觉该评测对您有所帮助, 欢迎投票给本文: UO<claV   RsfTUb)<   投票标题:  28.[阿里云 ...

  3. 【阿里云产品公测】云引擎ACE初体验

    作者:阿里云用户蓝色之鹰 :RYYjmG5;  来投票支持我把=i2]qj\  序号2. [阿里云产品公测]云引擎ACE初体验:作者:蓝色之鹰 e(OKE7  序号10.[阿里云产品公测]结构化数据服 ...

  4. 【阿里云产品公测】消息队列服务MQS java SDK 机器人应用初体验

    [阿里云产品公测]消息队列服务MQS java SDK 机器人应用初体验 作者:阿里云用户啊里新人   初体验 之 测评环境 由于MQS支持外网访问,因此我在本地做了一些简单测试(可能有些业余),之后 ...

  5. 【阿里云产品公测】利用PTS服务优化网站数据库读写性能

    [阿里云产品公测]利用PTS服务优化网站数据库读写性能 作者:阿里云用户千鸟 写这个帖子主要也是因为在用PTS测试网站的时候,手动访问网站进入报错页面,主要原因是数据库连接对象存在问题,导致并发多的时 ...

  6. 【阿里云产品公测】大数据下精确快速搜索OpenSearch

    [阿里云产品公测]大数据下精确快速搜索OpenSearch 作者:阿里云用户小柒2012 相信做过一两个项目的人都会遇到上级要求做一个类似百度或者谷歌的站内搜索功能.传统的sql查询只能使用like ...

  7. 【阿里云产品公测】云引擎ACE新手实战基于Wordpress

    [阿里云产品公测]云引擎ACE新手实战基于Wordpress 作者:阿里云用户imnpc ACE(Aliyun Cloud Engine) 是一款弹性.分布式的应用托管环境,支持Java.php多种语 ...

  8. 【阿里云产品公测】结构化数据服务OTS之JavaSDK初体验

    [阿里云产品公测]结构化数据服务OTS之JavaSDK初体验 作者:阿里云用户蓝色之鹰 一.OTS简单介绍 OTS 是构建在阿里云飞天分布式系统之上的NoSQL数据库服务,提供海量结构化数据的存储和实 ...

  9. 【阿里云产品公测】阿里云ACE部署通用完整教程及评测

    [阿里云产品公测]阿里云ACE部署通用完整教程及评测 作者:阿里云用户bailimei ACE应该是目前在公测的服务中应用最广泛的一项服务.在公测云引擎ACE前曾使用过新浪SAE,而ACE给我的最初印 ...

随机推荐

  1. oracle存储过程返回数据集结果

    MSSQL的存储过程返回数据集好简单,直接SELECT 就可以. ORACLE的存储过程返回数据集必须通过游标. 创建ORACLE存储过程 create or replace procedure cx ...

  2. redis缓存数据表

    直观上看,数据库中的数据都是按表存储的:更微观地看,这些表都是按行存储的.每执行一 次select查询,数据库都会返回一个结果集,这个结果集由若干行组成.所以,一个自然而然 的想法就是在Redis中找 ...

  3. HDU 4539郑厂长系列故事――排兵布阵(状压DP)

    HDU 4539  郑厂长系列故事――排兵布阵 基础的状压DP,首先记录先每一行可取的所哟状态(一行里互不冲突的大概160个状态), 直接套了一个4重循环居然没超时我就呵呵了 //#pragma co ...

  4. Android PHP 通过JSON进行数据交互

    一.首先是Android客户端解析PHP返回的JSON数据 1.PHP代码(这里用到了数据库,如果没有准备数据库的话,可以自定义字符串) <?php $link=mysql_connect(SA ...

  5. sqlservice 查询该字段的值是否为数字、不包含a-z字母、获取中文的首字母

    select zjm from xskh where guid_yw='e6ee44f3-98ab-4446-bd9b-db2e525d3b24' and zjm not like  '%[ABCDE ...

  6. mysql max_allowed_packet错误

    mysql错误 max_allowed_packet 查看目前配置 show VARIABLES like '%max_allowed_packet%'; 修改: set global max_all ...

  7. [Sparrow OS 设计文档连载(一)] Introduction

  8. SQLServer2005 提示 '其他会话正在使用事务的上下文'

    MSDN上看了一下说是sql server 2005不支持在分布式事务处理中存在指向本地的链接服务器(环回链接服务器) 这个是官方的回答 个人认为,应该是在事务中,使用了链接服务器访问进行跨库访问引起 ...

  9. [转]Android事件分发机制完全解析,带你从源码的角度彻底理解(上)

    Android事件分发机制 该篇文章出处:http://blog.csdn.net/guolin_blog/article/details/9097463 其实我一直准备写一篇关于Android事件分 ...

  10. Linux基础教程之/dev/null和/dev/zero的区别及其用法

    在Linux操作系统中/dev/null和/dev/zero是两个相似却又很特殊的文件,特别是在shell脚本开发和系统运维过程中会经常用这两个文件,因此作为Linux系统工程师,必须了解这两个文件的 ...