【问题标题】:Storing data in a Google App Engine App在 Google App Engine 应用程序中存储数据
【发布时间】:2009-10-06 15:56:16
【问题描述】:

我正在阅读有关 Google App 引擎的信息,并且正在考虑将其用作我正在从事的项目的 CDN。据我所知,有两种存储数据的方法。我可以使用数据存储,也可以将文件放在目录中。

我从小就认为将大型二进制数据存储在数据库中是个坏主意,但根据 Google 的说法,数据存储不是 RMDB,它只是一个。

所以我的直觉告诉我将文件上传到目录。但是,我想在下定决心之前,我最好在这里征求一下意见。

有没有人用 GAE 来做这样的事情?如果是,您选择了哪种存储文件的方法,为什么?

【问题讨论】:

    标签: google-app-engine cdn


    【解决方案1】:

    您无法写入 App Engine 中的文件系统。您需要使用 Datastore 来存储任何数据。

    请注意,如果您的“大型二进制文件”实际上很大,那么您将在所有 API 调用中遇到 1MB 的限制。用于存储较大 blob 的 API 已在路线图中,但无法知道何时发布。目前,您需要将大于 1MB 的 Blob 拆分为多个数据存储实体。

    【讨论】:

    • 我刚刚发现了 1mb 的限制。这在工作中引发了一把扳手。我需要存储通常在 3 到 6 mb 之间的 MP3。所以它又回到了绘图板上。
    • Blob API 即将推出,这将使存储和检索更大的文件成为可能。
    • 我希望 Nick 是对的,因为即使您低于 1MB 限制,您也会达到“从数据库检索的数据”配额限制。这是一个更隐蔽的问题,无论是blob还是no。
    • 只是一个更新,这不再是真的。有 Blobstore 可以存储高达 50MB 的文件。
    【解决方案2】:

    blobstore API 允许您存储高达 50 mb 的文件,尽管它是一个实验性 API,需要启用计费。而且它与 bigtable 不同。

    http://code.google.com/appengine/docs/java/blobstore/

    【讨论】:

      【解决方案3】:

      如今,Google Cloud Storage 是处理大文件的最佳方式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-05-26
        • 2013-02-05
        • 2010-11-03
        • 2014-10-31
        • 1970-01-01
        • 2012-06-04
        • 2013-05-17
        • 1970-01-01
        相关资源
        最近更新 更多