使用 App Engine存储String
字段时:
- App Engine 数据存储区可以处理的最大值
length()
是多少?String
- 此外,如果使用 Objectify,此最大长度是否相同,或者 Objectify 是否进行了一些影响此最大长度的处理?
使用 App Engine存储String
字段时:
length()
是多少?String
Objectify 会自动将超过 500 个字符的字符串转换为原生文本存储。如果要索引字符串,请小心;文本对象未编入索引,因此 String > 500 字符将未编入索引。
我认为对此的回应已经过时,所以我正在更新。我正在使用 GAE 版本 1.9.22 并在错误日志中收到此信息:
字符串属性必须为1500字节或更少。相反,使用 com.google.appengine.api.datastore.Text,它可以存储任意长度的字符串。
使用 com.google.appengine.api.datastore.Text 可以很好地将 String 对象转换为 Text(例如,在代码的服务器端使用 new Text(thisString) 。对 com.google.appengine.api 中的库的任何引用。 datastore.* 在客户端不起作用。找不到类。
根据文档,500 个字符。不,Objectify 是一个包装器,不会修改您的数据,因此数据大小限制没有改变。
根据 2016 年 10 月对 Google 数据存储区文档的更新,以下是限制
索引字符串属性的 UTF-8 编码的最大大小:1,500 字节
未索引属性的最大大小:1,048,487 字节(1 MiB - 89 字节)
String
因此,您可以在未索引的属性中存储大小接近 1MB 的字符串。