问题标签 [google-cloud-datastore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
12 回答
42728 浏览

google-app-engine - Google App Engine:是否可以进行 Gql LIKE 查询?

真的很简单。在 SQL 中,如果我想在文本字段中搜索几个字符,我可以这样做:

App Engine 的文档没有提到如何实现这一点,但它肯定是一个常见的问题吗?

0 投票
8 回答
23816 浏览

database - 如何在数据存储而不是数据库中思考?

例如,Google App Engine 使用 Google Datastore(而非标准数据库)来存储数据。有人对使用 Google Datastore 而不是数据库有任何提示吗?似乎我已经训练我的思维 100% 思考直接映射到表结构的对象关系,现在很难看到任何不同的东西。我可以理解 Google Datastore 的一些好处(例如性能和分发数据的能力),但是牺牲了一些好的数据库功能(例如连接)。

与 Google Datastore 或 BigTable 合作过的人是否对与他们合作有什么好的建议?

0 投票
16 回答
31611 浏览

python - 如何获取超过1000?

如何从数据存储中获取超过 1000 条记录并将所有记录放在一个列表中以传递给 django?

0 投票
8 回答
261732 浏览

database - 谷歌使用什么数据库?

是 Oracle 还是 MySQL 还是他们自己构建的东西?

0 投票
4 回答
2110 浏览

python - GAE - 如何在没有连接的情况下生活?

示例问题:

实体:

  • 用户包含姓名和朋友列表(用户参考)
  • 博客文章包含标题、内容、日期和作者(用户)

要求:

我想要一个显示用户朋友最近 10 篇文章的标题和博客链接的页面。我还希望能够继续翻阅旧条目。

SQL解决方案:

所以在 sql 领域它会是这样的:

我能想到的 GAE 解决方案是:

  • 加载用户,循环浏览朋友列表并加载他们最新的博客文章。最后合并所有博文,找到最新的10篇博文
  • 在博客文章中列出所有将作者作为朋友的用户。这意味着简单的阅读,但在添加拥有大量博客文章的朋友时会导致配额超载。

我不相信这些解决方案中的任何一个都会扩展。

我确定其他人已经遇到了这个问题,但我已经搜索过、观看过 google io 视频、阅读过其他人的代码……我错过了什么?

0 投票
1 回答
729 浏览

database - 动态选择要写入 Appengine 数据存储区的属性

有没有人尝试动态选择他们想要写入 appengine 上的实体的属性?例如:

我有一个包含 5 个字段的网络表单,任何给定的用户都会填写这些字段的一部分。我只将带有数据的字段发布到服务器(例如字段 1、2、4)。在服务器端,我如何优雅地只写属性 1,2 和 4?Model 类有一个函数,它返回一个属性名称字典 (Model.properties()),但我将如何使用它来选择属性名称?

在 SQL 中,我将通过将 POST 字段与 Model.properties() 字典相匹配来构建一个 INSERT 或 UPDATE 语句。我会查看 Appengine SDK 中的 db 模块代码,看看 Model 类是否有一些 Property 对象的集合,但我在磁盘上找不到该模块(我对 python 和 appengine 有点陌生)。

更新:我阅读了 trunk/google/appengine/ext/db/ init .py ,它确认无法将属性作为一个组来引用。有人知道解决方法吗?

有什么想法吗?

更新 2:Google Group for AppEngine 回答了这个问题:http ://groups.google.com/group/google-appengine/browse_thread/thread/b50be862f6d94b6e#

0 投票
2 回答
1231 浏览

google-app-engine - Google App Engine 数据存储区中不精确查询的良好模式是什么?

Google App Engine 数据存储区查询语言 (gql) 不提供不精确的运算符,例如“LIKE”,甚至不区分大小写。可以通过存储字段的小写版本来解决区分大小写的问题。但是如果我想搜索一个人但我不确定名字的拼写怎么办?是否有处理这种情况的公认模式?

0 投票
2 回答
1158 浏览

python - AppEngine:在创建记录时保持 DataStore 一致性

我遇到了一个小难题!我有一个叫 vote 的处理程序;当它被调用时,它将用户的投票设置为他们选择的任何内容。为了记住他们之前选择的选项,我存储了一个 VoteRecord 选项,其中详细说明了他们当前的投票设置。

当然,他们第一次投票时,我必须创建对象并存储它。但是连续的投票应该只是改变现有 VoteRecord 的值。但问题来了:在某些情况下,可以创建两个 VoteRecords。这种情况很少见(到目前为止,我们在 500 次投票中只发生过一次),但当它发生时仍然很糟糕。

之所以会出现这个问题,是因为两个单独的处理程序基本上都这样做:

我的问题是:在确保没有请求丢失并且没有请求创建两个 VoteRecord 对象的同时,处理这些请求的最有效和最快的方法是什么?

0 投票
3 回答
9858 浏览

python - AppEngine:查询数据存储中的记录价值

我在 Google App Engine 数据存储区中为我的数据库模型创建了一个新属性。

老的:

新的:

如何查询未设置“is_approved”值的徽标记录?我试过

但它没有用。在数据查看器中,新字段值显示为 。

0 投票
2 回答
218 浏览

python - GAE 中的格式化文本

谷歌应用引擎问题:从用户那里获取格式化文本(不一定是富文本)然后将其存储在数据存储中的文本或博客属性中的好方法是什么?我主要寻找的是存储换行符和空格字符串,以便文本返回时看起来与提交时相同。