Google App Engine:为有 SQL 背景的人介绍他们的 Data Store API?

Posted

技术标签:

【中文标题】Google App Engine:为有 SQL 背景的人介绍他们的 Data Store API?【英文标题】:Google App Engine: Intro to their Data Store API for people with SQL Background? 【发布时间】:2010-10-18 21:03:27 【问题描述】:

除了 Google 提供的 Google App Engine 文档之外,有没有人有任何有用的信息,这些文档为具有 MS SQL 背景的人提供了很好的概述,以便移植他们的知识和有效地使用 Google App Engine Data Store API。

例如,如果您有一个自建的用户表和一个消息表

如果用户和消息之间存在关系(通过 UserID 连接),那么这种结构将如何在 Google App Engine 中表示?

SELECT * FROM Users INNER JOIN Message ON Users.ID = Message.UserID

【问题讨论】:

Google App Engine 文档是一个很好的起点。你读过吗? 是的,我现在正在阅读它们。在发布此问题之前,我没有看到文章选项卡。简单的演练和 API 大纲是不够的。链接概述如下:) 【参考方案1】:

这是一个很好的链接:使用 Google App Engine 一对多加入。

http://blog.arbingersys.com/2008/04/google-app-engine-one-to-many-join.html

这是另一个很好的链接:Many to Many Join using Google App Engine:

http://blog.arbingersys.com/2008/04/google-app-engine-many-to-many-join.html

关于上述两个链接,这里有一个很好的讨论:

http://groups.google.com/group/google-appengine/browse_thread/thread/e9464ceb131c726f/6aeae1e390038592?pli=1

就我个人而言,我在讨论中发现此评论对 Google App Engine 数据存储非常有用:

http://groups.google.com/group/google-appengine/msg/ee3bd373bd31e2c7

在规模上,你最终会做一堆 看起来不对的事情,但那是 我们所要求的数字 跑步。去观看 eBay 的演讲。要么 阅读有关多少数据库的帖子 Facebook 正在运行的实例。

简单的事实是,我们学到了什么 关于在大学里很适合 小型到业务自动化应用程序 中型企业应用程序,其中 负载是可预测的,并且有 有足够的钱买服务器吗 需要处理 50 的负载 人们进行数据输入 账目或业务规划和 控制应用....

搜索了一下,发现了这篇 Google Doc 文章:

http://code.google.com/appengine/articles/modeling.html

App Engine 允许创建简单的 使用数据存储之间的关系 可以代表的实体 现实世界的事物和想法。采用 需要时参考属性 关联任意数量的 重复的信息类型 单一实体。使用密钥列表时 需要允许很多不同的 共享其他实例的对象 彼此之间。你会发现 这两种方法将为您提供 包含您需要创建的大部分内容 伟大应用背后的模型。

【讨论】:

【参考方案2】:

我认为这是基础知识:键和实体组 在 appengine 文档中查找它。 (我是新来的,所以不能发链接)

【讨论】:

【参考方案3】:

我可以通过视频链接进一步补充上面的出色答案吗:

http://sites.google.com/site/io/building-scalable-web-applications-with-google-app-engine

Google 的 Brett Slatkin 进行了精彩的演讲,他用一个小时的时间讲述了您需要以特殊的方式来考虑您的应用程序,然后才能期望它能够很好地扩展。如果您来自关系背景,则有一些真正的 WTF(例如 db 查询中没有 count() )会让您感到困难。

【讨论】:

【参考方案4】:

虽然 Google 应用引擎是非常好的东西,而且它实现了平台即服务和软件即服务,但我不是专家。 Google 应用引擎提供了一个非关系型数据库。所以你不能在这里写关系。

问候, 高拉夫J

【讨论】:

【参考方案5】:

这些链接很棒,但主要是 python 偏见,我正在使用 GWT,因此必须使用 GAE 的 Java 风格,有没有人有任何示例说明如何在 GAE 的 Java 版本中实现这些“连接”等效项?

干杯, 约翰

【讨论】:

查看 Google App Engine 网站上的 API 文档:code.google.com/appengine/docs/java/datastore,更具体地说:code.google.com/appengine/docs/java/datastore/…【参考方案6】:

独立的 GAE SDK 很难用于将数据放入 Google App Engine 数据存储区并从中检索数据。

“Objectify”是一个 GAE 扩展,它使这些操作变得更加容易。 Objectify wiki 和源代码可以在这里找到。我强烈建议在您的 GAE 项目中使用 Objectify。

http://code.google.com/p/objectify-appengine/

这里有一些关于在应用引擎中使用 Objectify 的教程。按照这些教程,您将立即存储和检索数据。

http://www.fishbonecloud.com/2010/11/use-objectify-to-store-data-in-google.html

【讨论】:

以上是关于Google App Engine:为有 SQL 背景的人介绍他们的 Data Store API?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Google App Engine 和 Google Cloud SQL 扩展 WordPress

Google App Engine 和 SQL LIKE

使用 Google APP Engine 的 Cloud SQL 连接限制

Google App Engine 中的 Datastore 与 Cloud SQL

Google App Engine .Net Core 2.0 应用无法访问 Google Cloud SQL 数据库

Spring Boot 应用在部署到 Google App Engine 时无法连接到 Google Cloud SQL (PostgreSQL)