Articles of 谷歌云的数据存储

Google云数据存储,如何查询更多结果

简单而言,我有以下function,使用Google Cloud Datastore Node.js API: fetchAll(query, result=[], queryCursor=null) { this.debug(`datastoreService.fetchAll, queryCursor=${queryCursor}`); if (queryCursor !== null) { query.start(queryCursor); } return this.datastore.runQuery(query) .then( (results) => { result=result.concat(results[0]); if (results[1].moreResults === _datastore.NO_MORE_RESULTS) { return result; } else { this.debug(`results[1] = `, results[1]); this.debug(`fetch next with queryCursor=${results[1].endCursor}`); return this.fetchAll(query, result, results[1].endCursor); } }); } Datastore API对象位于variablesthis.datastore ; 该函数的目标是获取给定查询的所有结果,尽pipe每个runQuery调用返回的项目数量有限制。 我还没有发现Datastore […]

可能:Sailsjs与NoSQL和SQL?

我有一个想法,在Google云平台上托pipe的nodejs项目中同时使用NoSQL(Google数据存储)和SQL(Google SQL)。 原因是因为我想保留统计数据,大量的数据,远离MySQL的数据库。 它会创造许多写道,为此目的使用noSQL更便宜和更快。 我不能在整个站点使用noSQL,这个项目已经用mySQL创build了。 这可能吗? 如果是这样,请分享任何指导来做到这一点

Google Cloud Datastore是否支持Mongodb $ set的部分更新?

我使用的是Node.js,并且不希望每一次更新都覆盖整个实体,大部分时间只需要更新一个特定的属性,例如计数器。 关于如何在文档中做到这一点没有明显的参考。 Node.js版本的Google Cloud Datastore是否支持Mongodb $ set的部分更新?

在Google数据存储中应用filter后获取不同的项目

我一直在尝试使用以下查询在谷歌数据存储filter获取不同的项目: var query = datastore.createQuery('Todo') query.groupBy(['completed']); query.filter('title', 'abc'); query.run(function (err, items) { console.log(err, items) if (err) { callback(err); return; } callback(null, items.map(entityToTodo)); }); 我得到这个错误: { [Error: Precondition Failed] code: 412, metadata: Metadata { _internal_repr: {} } } undefined 有什么办法可以得到想要的结果?

我可以浏览node.js项目的本地Google Datastore模拟器数据吗?

我有一个node.js项目,我正在部署到Google Compute Engine(而不是App Engine)。 我在本地使用数据存储模拟器。 我知道浏览本地数据存储模拟器数据的一个典型方法是使用dev_appserver.py并浏览到http:// localhost:8000 / datastore 但是,我没有使用本地开发服务器支持的运行时间之一。 有没有办法浏览本地数据存储模拟器数据时使用node.js?

查询Google Cloud Datastore以检索匹配的结果

我正在使用Google Cloud Datastore来保存我的应用程序数据。 我必须添加一个查询来获得与Name,Brand或Sku匹配的所有结果。 查询数据与字段之一是返回我的logging,但一起使用所有字段返回我错误。 查询: const term = "My Red"; const q = gstore.createQuery(req.params.orgId, "Variant") .filter('brand', '=', term) .filter('sku', '=', term) .limit(10); 错误: {“msec”:435.96913800016046,“error”:“找不到匹配的索引。build议索引是: – 种类:变体 特性: – 名牌 – 名字:sku “ ”数据“:{ ”代码“:412, ”元数据“:{ ”_ internal_repr“:{}}, ”isBoom“:真 ”isServer“:真, ”数据“:空 ”则输出“:{”状态码“:500,”有效载荷“:{”statusCode“:500,”错误“:”内部服务器错误“,”消息“:”发生内部服务器错误“}”headers“:{}}}}内部错误 此外,我想执行OR操作来获得匹配的结果,如上所述将返回与AND操作的数据。 请帮我find正确的path,以达到预期的效果。 预先感谢,让我知道如果有什么不清楚。

在node.js中是否有用于Google数据存储api的caching库?

我正在研究使用gcloud node api来访问数据存储api,但是好奇的是,它是否支持类似于ndb的查询caching? 如果没有,确保重复查询被caching的最佳方法是什么?

在计算引擎上托pipe的nodeJS项目中,在哪里定义datastore-indexes.xml?

我们正在计算引擎上托pipe一个NodeJS应用程序,它使用gcloud-node连接到Google DataStore。 简单的查询运行良好,但与multippleselect复杂的查询正在给出“412:先决条件失败”的错误。 更多细节在“: 多select在谷歌数据存储查询抛出ApiError:Precondition节点失败的错误 我明白这个错误是由于我没有configurationdatastore-indexes.xml。 作为GCP世界的新手。 你能帮我吗我在哪里可以定义我的项目中的datastore-indexes.xml文件。

如何从谷歌数据存储中的祖先查询返回的对象检索完整的密钥?

我正在使用祖先查询来检索使用nodejs从谷歌数据存储的实体 query = datastore.createQuery(entity).hasAncestor(key) 关键在哪里 key = datastore.key([kind_name_of_parent, id_of_parent]) 我能够检索对象,但我想获得检索对象的完整的关键,而返回的数组只包含返回的对象和endCursor。 我怎样才能得到完整的密钥? 或者,我可以从endCursor获得完整的密钥吗? 我的查询结果的一个例子是: [{ modTS: 1481006473081, modLoc: null, modUid: 0, createTS: 1481006473081 } ], { moreResults: 'NO_MORE_RESULTS', endCursor: 'CloSVGoTc350ZXN0cHJvamVjdC0zN2ZiNnI9CxIEdXNlchiAgID409OICgw‌​LEgRzaW1zGICAgICAgIA‌​KDAsSDmNsaWVudFNldHR‌​wsdrfGICAgICA5NEKDBg‌​AIAA=' } ]

Node.JS数据存储查询获取密钥

我怎样才能得到查询返回的实体的关键? 我试图像正常的数据访问它,但是当我打印实体本身没有密钥。 有甚至有办法这样做吗? 预先感谢您的帮助。