资源描述:
《阿里云-归档存储-最佳实践-D》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、归档存储最佳实践弹性伸缩/常见问题最佳实践PythonSDK代码示例PythonSDK简易使用示例本节以示例的方式展示如何使用SDK高级接口进行开发。用户在阅读本节后,可模仿示例,并参考高级接口一节进行开发。其中,方括号内的参数用户应根据实际需求进行替换。-创建Vaultfromoas.oas_apiimportOASAPIfromoas.ease.vaultimportVault#创建OASAPI对象api=OASAPI('[ServerHost]','[AccessKeyID]','[AccessKeySecret]')#创建
2、Vaultvault=Vault.create_vault(api,'[VaultName]')-查找Vault#创建OASAPI对象api=OASAPI('[ServerHost]','[AccessKeyID]','[AccessKeySecret]')#根据名称获取Vaultvault=Vault.get_vault_by_name(api,'[VaultName]')#根据ID获取Vaultvault=Vault.get_vault_by_id(api,'[VaultID]')-上传文件archive_id=vault.u
3、pload_archive('[FilePath]')-删除Archive15弹性伸缩/常见问题vault.delete_archive('[ArchiveID]')-续传MultipartUpload任务uploader=vault.recover_uploader('[UploadID]')uploader.resume('[FilePath]')-获取Archive列表job=vault.retrieve_inventory()job.download_to_file('[FilePath]')-下载Archivejob=v
4、ault.retrieve_archive('[ArchiveID]')job.download_to_file('[FilePath]')-从OSS上转储Object到OASjob=vault.pull_from_oss(conf.osshost,conf.bucket,conf.object,"testdesc")-从OAS上转储Archive到OSSjob=vault.push_to_oss(archive_id,conf.osshost,conf.bucket,archive_id,"testdesc")PythonSDK
5、完整使用演示代码下面函数中test_single_archive_upload提供单一文件archive上传;函数test_multi_upload()使用sdk低级接口实现分段上传;函数test_uploader()使用sdk高级接口实数据上传(当数据大于64MB时,会自动选择分段上传);函数test_vault_retrieve()实现vault信息查询;函数test_download_archive(archive_id)实现archive下载;函数test_delete_archive(archive_id)实现archi
6、ve删除。importrandom函数test_pull_from_oss()实现从OSS直接转储到OAS函数test_push_to_oss()实现从OAS直接转储到OSS15容器服务/服务编排文档importtimeimportloggingimportlogging.handlersfromoas.oas_apiimportOASAPIfromoas.ease.apiimportAPIProxyfromoas.ease.exceptionsimport*fromoas.ease.responseimport*fromoas.
7、ease.utilsimport*fromoas.ease.vaultimport*fromoas.ease.uploaderimport*fromoas.ease.jobimport*importosLOG_FILE="test.log"handler=logging.handlers.RotatingFileHandler(LOG_FILE,maxBytes=1024*1024,backupCount=5)fmt='%(asctime)s-%(filename)s:%(lineno)s-%(name)s-%(message)s
8、'formatter=logging.Formatter(fmt)handler.setFormatter(formatter)log.addHandler(handler)log.setLevel(logging.DEBUG)classTestC