如何在数据存储区中序列化和反序列化用户配置文件信息?

时间:2011-01-16 23:08:53

标签: python json google-app-engine serialization

对于用户实体,我想创建一个属性,它是序列化数据的字典。数据是:

time = time_value
name = name_value
id = id_value

是否有现有的库支持序列化数据,包括DateTime值,然后在从数据存储区中获取数据时将它们反序列化为它们的类型(如DateTime,String,Integer)?

注意:我假设序列化数据比使用JSON编码更有效。如果这是一个错误的假设,那么这个问题就没有实际意义了。

1 个答案:

答案 0 :(得分:2)

内置的Python库pickle可用于序列化和反序列化数据(同时保留类型信息)。您可以将“腌制”数据存储在db.BlobProperty中。

不幸的是,Google App Engine对pickle库使用仅限Python的实现,并且不支持更快的cPickle。根据Konstantin在他的文章Pickle vs JSON - Which is Faster?中提供的分析,在这种情况下,您似乎可以期望使用JSON获得更好的性能。