AppEngine存储大块文本的方法

时间:2013-01-24 18:35:49

标签: python google-app-engine

我们正在构建一个应用程序,用AppEngine和py 2.7运行时存储用户提交的(大块> 2Mb)文本。当我们开始使用更大的文本块进行测试时,我们发现日志中存在大量的数据存储错误。我们阅读了数据存储区的限制,并发现最多请求它可以是1Mb。因此,我们可能会(错误地)使用blobstore来存储文本。在父对象中使用BlobKey属性类型有一个限制,即任何一个用户提交的文本很可能都有多个文本块。

传入的数据有效负载看起来像这样:

{
 "name": "blah name",
 "date": "00/00/00",
 "flags": "public",
 "attachments" : [
 {"id":1,"contents":"SEDFWEWETWT$WTWEFWEFWEFWEFW ... 2Mb"},
 {"id":2,"contents":"SEDFWEWETWT$WTWEFWEFWEFWEFW ... 1Mb"}     
] 
}

那么,我们如何解决这个问题呢? Blobstore每个附件,然后将每个blobkeys存储在父实体内的list属性中?非常感谢您的建议和帮助。

1 个答案:

答案 0 :(得分:0)