【问题标题】:Update google blobstore or cloud storage incrementally?增量更新 google blobstore 或云存储?
【发布时间】:2012-12-30 01:21:52
【问题描述】:

我正在开发一个应用程序,用户将在其中创建一个数据对象并将其上传到存储中。然后他们稍后会下载它,进行一些更改,然后上传这些更改(作为原始数据的补丁)。有没有办法使用 blobstore 或云存储来上传补丁并应用它,这样我的用户就不必再次上传整个数据对象(可能会变得非常大)?

【问题讨论】:

    标签: google-app-engine blobstore google-cloud-storage


    【解决方案1】:

    您不能对 Blobstore 或 Cloud Storage 中的数据发出增量更新。要应用补丁,您必须自己应用它并覆盖 blob 或对象中的数据。相关信息如下。

    来自 Google Cloud Storage 文档的 Concepts and Terminology section

    对象是不可变的,这意味着上传的对象不能 在整个存储生命周期内发生变化。对象的存储寿命 是成功创建(上传)对象和成功之间的时间 对象删除。在实践中,这意味着你不能使 对对象的增量更改,例如追加操作或截断 操作。但是,可以覆盖对象 存储在 Google Cloud Storage 中,因为正在进行覆盖操作 执行删除对象操作,然后立即上传 对象操作。所以一个单一的覆盖操作只是标志着结束 一个不可变对象的生命周期和一个新对象的开始 不可变对象的生命周期。

    来自Blobstore Introduction section

    Blob 在创建后无法修改,但可以 删除。每个 blob 都有一个对应的 blob 信息记录,存储在 数据存储,提供有关 blob 的详细信息,例如它的创建 时间和内容类型。您可以使用 blob 键来获取 blob 信息 记录并查询其属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-09
      • 2014-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-27
      • 2015-07-03
      相关资源
      最近更新 更多