小编Dan*_*ath的帖子

用于备份appengine数据存储区的建议策略

现在我使用remote_api并appcfg.py download_data每晚拍摄我的数据库的快照.这需要很长时间(6小时)并且很昂贵.如果没有滚动我自己的基于更改的备份(我不敢做那样的事情),那么确保我的数据安全无故障的最佳选择是什么?

PS:我认识到谷歌的数据可能比我的更安全.但是,如果有一天我不小心写了一个删除它的程序呢?

google-app-engine database-backups google-cloud-datastore

7
推荐指数
1
解决办法
408
查看次数

Google数据存储区 - 查询关键值

我有一个EntityKind SuggestedInterest.当我使用键"GrpId"和属性"suggestedint"填充它时.

现在,我需要"suggestint"值来请求"GrpId"

所以,我把查询写成:

String findSuggestedInterest(String grpId)
{
    DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
    Filter filter = new FilterPredicate(Entity.KEY_RESERVED_PROPERTY,FilterOperator.EQUAL,grpId);
    Query q0 = new Query("SuggestedInterest").setFilter(filter);
    PreparedQuery pq0 = datastore.prepare(q0);
    Entity result = pq0.asSingleEntity();
    return result.getProperty("suggestedint").toString();       
}
Run Code Online (Sandbox Code Playgroud)

当我执行此代码时,我得到了

java.lang.IllegalArgumentException: __key__ filter value must be a Key
Run Code Online (Sandbox Code Playgroud)

开发人员讲述了使用Entity.KEY_RESERVED_PROPERTY来查询密钥,但我想我误解了.查询密钥的正确方法是什么?

java google-app-engine google-cloud-datastore

7
推荐指数
1
解决办法
3714
查看次数

Google App Engine数据存储区中的高效NoSQL建模

我正在Google App Engine上编写应用程序,以帮助我更好地学习它.我将数据保存在数据存储区中.

该应用程序是类似于StackOverflow的模型:您有一个Story实体,它有一组Comment实体,而这些实体又可以被许多用户所喜欢/讨厌.我现在建模的方式如下:

class Story {
    Comment[] comments;
    ...
}

class Comment {
    User[] likes;
    User[] hates;
    ...
}
Run Code Online (Sandbox Code Playgroud)

因此,当您加载给定的故事时,您可以列出所有评论,以及每个评论的喜欢和讨厌的百分比.您还可以跟踪给定用户是否已投票评论.

我假设我可以延迟加载Comment实体中的所有实际用户,但即便如此,我还是认为有更好的方法可以做到这一点.

这将如何处理一个有数百条评论的故事,每条评论都有数十万票?!

在NoSQL中建模这种概念的常用方法是什么?

google-app-engine data-modeling nosql google-cloud-datastore

7
推荐指数
1
解决办法
1349
查看次数

在重定向本地环境后,我是否应该期待过时的结果?

将新实体发布到数据存储区后,我将页面重定向到一个新URL,该URL列出该组中的所有实体.当我重定向时,页面显示过时的结果,我必须重新加载以查看数据存储区中的新实体列表.

我知道最终的一致性.这就是为什么我看到陈旧的结果?

例如,

我的数据存储区我有一个用户 - 用户1然后,在一个表单中,我添加一个用户 - 用户2这个实体被放到数据存储区然后我重定向到一个新的网址,即'get/users'

在重定向上我只看到用户1,但如果我刷新页面,我会看到用户2.我能保证或帮助防止陈旧结果吗?

google-app-engine browser-cache app-engine-ndb google-cloud-datastore

7
推荐指数
1
解决办法
713
查看次数

从Google App Engine数据存储区获取的内容不一致

我在Google应用引擎中部署了一个应用程序.当我在更新该实体后立即通过id获取实体时,我得到的数据不一致.我正在使用JDO 3.0来访问应用程序引擎数据存储区.

我有一个实体员工

@PersistenceCapable(detachable = "true")
public class Employee implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = -8319851654750418424L;
    @PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY, defaultFetchGroup = "true")
    @Extension(vendorName = "datanucleus", key = "gae.encoded-pk", value = "true")
    private String id;
    @Persistent(defaultFetchGroup = "true")
    private String name;
    @Persistent(defaultFetchGroup = "true")
    private String designation;    
    @Persistent(defaultFetchGroup = "true")
    private Date dateOfJoin;    
    @Persistent(defaultFetchGroup = "true")
    private String email;
    @Persistent(defaultFetchGroup = "true")
    private Integer age;
    @Persistent(defaultFetchGroup = "true")
    private Double salary;
    @Persistent(defaultFetchGroup = "true") …
Run Code Online (Sandbox Code Playgroud)

java google-app-engine jdo datanucleus google-cloud-datastore

7
推荐指数
2
解决办法
1106
查看次数

如何组织GAE模块的应用程序结构和代码?

我有一些GAE应用程序,我正在考虑分成三个模块:default(www), mobileapi但我有理解模块以及如何组织代码中的一些困难.

根据这里找到的图像,这是一个应用程序应该是什么样子. 谷歌推荐的GAE App结构

这是我到目前为止提出的简化结构:

gae-app/
??? modules
?   ??? api
?   ?   ??? app.yaml
?   ?   ??? src
?   ?       ??? main.py
?   ??? mobile
?   ?   ??? app.yaml
?   ?   ??? src
?   ?       ??? index.html
?   ??? www
?       ??? app.yaml
?       ??? src
?           ??? main.py
?           ??? templates
??? cron.yaml
??? index.yaml
??? queue.yaml
Run Code Online (Sandbox Code Playgroud)


  • api模块提供了大量的API函数,并且可以自行运行.

  • mobile模块只是一堆html + js,api通过ajax 与模块配合得很好. …

python git google-app-engine module google-cloud-datastore

7
推荐指数
1
解决办法
568
查看次数

将数据转换为leveldb以获取caffe

我在Matlab中有一堆二维数据矩阵(没有图像数据,但有一些单精度数据).

有谁知道如何将2D matlab矩阵转换为caffe所需的leveldb格式来训练自定义神经网络?

我已经完成了关于如何训练图像(使用imagenet架构)和mnist(数字识别数据集)的教程.但是在后一个例子中,他们没有展示如何创建相应的数据库.在教程中,已经提供了数据库.

matlab leveldb caffe conv-neural-network matcaffe

7
推荐指数
1
解决办法
3419
查看次数

为灵活的Cloud Datastore创建索引时出错:AppInfoExternal类型的对象的意外属性"索引"

当我访问Cloud Datastore Web管理时,"索引"部分下没有列出索引,我想明确定义一些索引以运行高级查询.我有一个yaml文件,看起来像:


indexes:
- kind: order
  ancestor: no
  properties:
  - name: email
  - name: name
  - name: ownerId
  - name: status
  - name: updated_at
  - name: created_at
    direction: desc
Run Code Online (Sandbox Code Playgroud)

然后我运行以下命令来创建索引:

gcloud预览数据存储区创建索引indices.yaml

这是我得到的错误消息:

"AppInfoExternal类型的对象的意外属性'索引'"

有没有人遇到同样的问题?有任何想法吗?

问候,何塞

google-cloud-datastore google-cloud-platform google-cloud-sdk

7
推荐指数
1
解决办法
720
查看次数

Google Cloud Spanner数据库在空闲时定价

在阅读新谷歌关系数据库Spanner的定价后,它指出成本是基于存储和使用.他们每节点收费0.9美元.问题是:如果我为开发创建数据库,并且每天只使用它6小时,每月最多100小时...我是否只需要支付活跃使用时间(接收查询)或整个时间月?费用类似于App Engine实例?

在第一种情况下,花费90美元来测试这个新数据库是没有问题的,但是如果他们收取整个月的费用(使用与否)......成本上涨到每月670美元......

任何人一直在使用这个数据库,可以分享最终的发票费用吗?

在教程中,他们建议在测试后删除de数据库,但是对于开发来说,删除数据库并每天重新创建数据库和数据是不合适的.

database google-cloud-platform google-cloud-spanner

7
推荐指数
2
解决办法
1603
查看次数

Firebase - 使用云功能定位特定的Firestore文档字段

将Cloud Functions与Firebase实时数据库一起使用时,您可以使用云功能定位特定字段.例如,给定这个JSON结构,我可以定位user1的电子邮件字段是否通过('/user/{userId}/email').onUpdate云功能更改.

{ "user": { "user1": { "name": "John Doe", "phone": "555-5555", "email": "john@gmail.com" } } }

现在使用Firestore,我似乎无法定位特定字段,只能定位文档.如果是这种情况,定位电子邮件字段的Firestore云功能必须如下所示 ('/user/{userId}').onUpdate,并且每次user集合中的任何文档发生更改时都会触发.这将导致大量浪费的云功能触发.这就是Firestore的工作方式吗?它有一个优雅的工作吗?

database database-design firebase google-cloud-functions google-cloud-firestore

7
推荐指数
1
解决办法
1560
查看次数