If you don't need the data indexed and your access patterns are
suitable like you say, there is no harm in storing data in JSON format
in a blob, i have done similar things in many places. But remember
there is no cjson on app engine so make sure to benchmark if you are
doing a lot of parsing. Google's protocol buffer is much faster than
the json parsing.

On Nov 10, 11:23 am, davidgm <[email protected]> wrote:
> Hi again,
>
> I just figured out that using JSON to store my main data in datastore
> could be a good idea.
> I would like to share this view and have your opinion about this:
>
> My app usually returns data to client in JSON format.
> This data comes from different db classes, created almost as a
> relational db (maybe a newbie mistake).
> Instead of having those multiple records, fetching them and building
> the aggregate structure and converting it to JSON... I just wonder if
> it would be better to store the JSON string into a single db class.
>
> Updates will need JSON parsing back and forth, but they are few
> updates compared to read queries.
> And db lock contention will be limited since only a few dozens of
> clients are interested in one data chunk.
>
> I think this trick can cut down CPU usage and datastore API calls.
>
> But here comes another point: JSON string will be into memcache also.
> This cache already reduces CPU and datastore calls. Maybe the
> difference between a classic approach (close to relational db) and
> this JSON string storage will be unnoticeable.
>
> The intermediate solution is to store a complex aggregate into one db
> class, but I didn't yet figure out how to do it. Precision: I use
> Python.
>
> So, my question is:
>
> In this context, what do you think of using JSON strings to store data
> into datastore?
>
> Thanks for any advice
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to