2014-11-24 36 views

回答

3

您可以使用API​​定义将文件从Amazon S3存档到Amazon Glacier的生命周期规则,您可以使用该API检索归档到Glacier的文件的临时副本。但是,您无法使用API​​告知Amazon S3将特定文件移动到Glacier中。

有使用亚马逊冰川两种方式:

    通过冰川API,它允许你上传/下载档案到/从冰川金库
  1. 通过Amazon S3的生命周期规则,数据存档
  2. 直接从Amazon S3到亚马逊冰川

经由冰川API允许您存储用于长期存储档案直接连接,经常被用作磁带的替代品。通过Glacier API存储的数据也必须通过Glacier API获取。这通常通过正常的企业备份软件或者轻量级产品完成,例如Cloudberry Backup(Windows)或Arq(Mac)。

使用Amazon S3生命周期规则让您的数据存储在亚马逊S3,然后定义确定何时数据应归档到冰川的长期存储的规则。例如,数据可以在创建后90天存档。数据传输由lifecycle rules管理,每日批量操作。规则可以通过putBucketLifecycle API call(在PHP SDK中提供)来设置,但是这仅仅定义了规则 - 不可能进行一个API调用,告诉S3将特定文件存档到Glacier。

Amazon S3的RestoreObject API call(可在PHP SDK中获得)将从Glacier存档的数据的临时副本恢复回S3。请注意,从Glacier恢复数据需要3-5小时

+0

所以当我们创建生命周期规则时,当文件移动到冰川并返回其ID时,amazon会通知我们的服务器。我们如何获得移动存档中移动存档的ID? – 2014-11-24 10:18:11

+2

由于生命周期规则,对象在Amazon S3和Amazon Glacier之间移动时没有通知。 Amazon S3对象的存储类更改为“Glacier”,表示内容已从S3中移出并可从Glacier获得(例如,通过“启动还原”命令)。该对象保留在S3中(除了它的内容),所以它保留了它现有的密钥名称(这是它的ID)。您不能直接访问从S3移动到Glacier的数据 - 您必须将其恢复到S3,然后从S3访问。 – 2014-11-24 10:42:31