Anyone can confirm if storing a property with a null value is most effective (in terms of datastore usage and quotas) than not storing anything at all (that is, a missing value) ?
It seems reasonable to think so and, in that case, I’d like to know how to avoid storing a property value instead of a null value when using JDO/JPA. I’ve only been able to avoid storing a given property with the datastore low level API.
I believe that not storing a property will save you a small amount of disk quota, but I’m not sure it is worth the effort, unless the amount of these “optional” properties is large compared to the amount of “always there” properties.
Of course, you can do a simple test by creating 2 sets of sample data using the low level API, and checking the Stats page to see how the sizes differ in the datastore.
One gotcha to be aware of is that AFAIK you can’t query for all entities that don’t have a property.