全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
云数据库 RDS 版

多结构数据存储

更新时间:2017-06-07 13:26:11

OSS 是阿里云对外提供的海量、安全、低成本、高可靠的云存储服务。RDS 可以和 OSS 搭配使用,组成多类型数据存储解决方案。

例如,当业务应用为论坛时,RDS 搭配 OSS 使用,注册用户的图像、帖子内容的图像等资源可以存储在 OSS 中,以减少 RDS 的存储压力。

代码示例

OSS 与 RDS 搭配使用示例。

  1. 初始化 OssApi。

    1. from oss.oss_api import *
    2. endpoint=”oss-cn-hangzhou.aliyuncs.com
    3. accessKeyId, accessKeySecret=”your id”,”your secret
    4. oss = OssAPI(endpoint, accessKeyId, accessKeySecret)
  2. 新建 Bucket。

    1. #设置bucket权限为私有
    2. res = oss.create_bucket(bucket,"private")
    3. print "%s\n%s" % (res.status, res.read())
  3. 上传 Object。

    1. res = oss.put_object_from_file(bucket, object, "test.txt")
    2. print "%s\n%s" % (res.status, res.getheaders())
  4. 获取对应 Object。

    1. res = oss.get_object_to_file(bucket, object, "/filepath/test.txt")
    2. print "%s\n%s" % (res.status, res.getheaders())

ECS 应用代码中,RDS 中存储了每个用户的 id,而用户对应的头像资源存储于 OSS 中,以简单的 python 代码为例:

  1. ```
  2. #!/usr/bin/env python
  3. from oss.oss_api import *
  4. endpoint=”oss-cn-hangzhou.aliyuncs.com”
  5. accessKeyId, accessKeySecret=”your id”,”your secret”
  6. oss = OssAPI(endpoint, accessKeyId, accessKeySecret)
  7. user_id = mysql_client.fetch_one(sql)#从RDS中查找用户的user_id
  8. #获取用户头像并下载到对应路径
  9. oss.get_object_to_file(bucket, object, your_path/user_id+’.png’)
  10. #处理用户上传头像
  11. oss.put_object_from_file(bucket, object, your_path/user_id+’.png’)
  12. ```
本文导读目录