App Engine 的替代/兼容数据存储?

Posted

技术标签:

【中文标题】App Engine 的替代/兼容数据存储?【英文标题】:Alternative/compatible datastores for App Engine? 【发布时间】:2011-03-14 21:39:30 【问题描述】:

还有哪些其他“nosql”数据库(或多或少)与 Google Appe Engine 数据存储区兼容。

或者,什么是一个好的抽象层/解决方案(免费),它在多个数据库实现之间进行抽象,包括谷歌应用引擎和我的数据库访问应用程序。

我想为 GAE 开发一个应用程序,但后来将它部署在我自己的服务器上,但我不想重写 db 代码。

重要更新:该应用是用 Java 开发的,因此理想情况下,数据抽象层或任何替代方案必须是“Java 友好的”。

【问题讨论】:

GAE webapp alternative working outside of GAE environment的可能重复 Use Google AppEngine datastore outside of AppEngine project的可能重复 与Breaking out of the Google App Engine Python lock-in?相关 感谢 cmets。我在发布之前找到的一些链接。问题是,该应用程序是用 Java 而不是 python 开发的。提到的所有链接都是特定于 python 的。 AppScale 1.4 支持 GAE 1.3.5 的 Java 运行时(链接在我的回答中)。 【参考方案1】:

AppScale 项目已将数据库后端解耦,因此您可以在各种数据库上运行 GAE。他们目前为HBase 和Hypertable (ref) 提供支持。 AppScale 是开源的,可让您在 EC2 或您自己的集群上运行您的 GAE 应用程序。

【讨论】:

【参考方案2】:

这听起来很奇怪,但 AppEngine Datastore 和 Lotus Domino 之间有很多相似之处:您可能需要编写一个抽象层来处理这两个 API,但功能非常相似。但是,您需要非常熟悉这两种模型才能看到相似之处。

【讨论】:

以上是关于App Engine 的替代/兼容数据存储?的主要内容,如果未能解决你的问题,请参考以下文章

在 Google App Engine 数据存储中存储分层数据?

连接到 Google App Engine 数据存储

如何减少 Google App Engine 数据存储延迟?

App Engine:如何“重置”数据存储区?

如何浏览本地 Java App Engine 数据存储?

从 Google App Engine 数据存储区获取随机记录?