【问题标题】:Google AppEngine database谷歌 AppEngine 数据库
【发布时间】:2011-03-05 12:47:05
【问题描述】:

我已经阅读了一些关于提供应用程序托管的 Google AppEngine。我一直在尝试它,因为我认为它看起来很有趣,但我有点担心数据库部分。

假设我正在本地开发我的 Java 应用程序。我不想每次更改代码时都部署到 Google,所以我在我的开发机器上设置了一个漂亮的小 Servlet 容器来轻松测试。使用 AppEngine,您可以使用他们的数据存储 API 来存储东西,这基本上可以让您使用 Java 对象对数据进行建模——这很好。

但是,这些数据似乎嵌入在应用程序代码本身中(在部署到 Google 的 .war 中)。我可以简单地在本地使用他们的数据存储 api 吗?它将如何存储在我的本地计算机上?这一切都是由他们处理的,所以我只需要担心使用数据存储 API,当我将它部署到 Google 时,数据的存储方式与它在本地计算机上的存储方式不同吗?

我只是有点困惑,因为我习惯于将数据部分分层放置在我的应用程序代码之外。

我希望我已经足够清楚了。谢谢。

【问题讨论】:

    标签: java google-app-engine


    【解决方案1】:

    开发数据存储和生产数据存储是两个不同的独立事物:

    开发数据存储通常是一个名为local_db.bin 的基于文件的数据存储,它仅用于将数据存储在测试环境中;部署应用程序时,数据不会复制到生产环境。
    这种数据存储旨在与相当少量的实体一起使用,其性能与基于Big Table 的强大的生产数据存储野兽无关。

    您需要做的就是使用 Datastore API 在您的代码和底层数据存储之间创建一个抽象级别;在测试中,您的数据将存储在本地数据存储文件中,在生产中,创建的数据将保存到 Google App Engine 数据存储中,并具有这意味着的所有功能和限制。

    【讨论】:

    • 如果我需要导入大量遗留数据怎么办。说 1 GB?这可以通过 AppEngine 的数据存储设施实现吗?
    • 我认为这种导入可以按不同的步骤进行组织。看看bulk uploader 设施。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-13
    • 1970-01-01
    • 2012-01-24
    • 1970-01-01
    • 1970-01-01
    • 2011-03-27
    相关资源
    最近更新 更多