On 06/28/2011 02:43 AM, Victor Hooi wrote:

Shawn,

Thanks for the quick reply =).

If we go with the third approach, what advantages are there to persisting the models in MongoDB (or something similar like Redid.or Cassandra), as opposed to a traditional RDBMS? (I just want to get a good handle on the issues).

The schema-less nature will give you the ability to "just work."

Furthermore, is there a particular reason you picked MongoDB over the other NoSQL solutions?

No. I heard about it on FLOSS Weekly, checked out, and I love it. Also, pymongo is great and I'm a Python guy. I've read some comparisons among the other "NoSQL" databases and some are better for some uses but MongoDB is great for me.

Also, in terms of actually persisting the temporary models to MongoDB, I can just use PyMongo and store the dicts themselves - and just user a nested dict to represent all the model instances from a given import file. Any issues with that approach?


No issues that I can see. If you're using pymongo then you can just treat everything as a Python dictionary and MongoDB will consume it no problem (assuming you stick to certain data types).

Thanks for the tip about using asynchronous processing for the import file - I didn't think the file would be that big/complex to process, but I suppose it's probably the better approach to do it all asynchronously, instead of just hoping it won't grow larger I the future. In this case, I suppose I can just use Ajax on the page itself to check on the status of the queue?

Sure, although Comet would be better for this use-case. You could also just e-mail the user from the background process after it's done with a link to the URL for the next step. AJAX is easier than Comet (no service to install or set up), and it probably wouldn't generate enough extra bandwidth to really bother you.

Cheers,
Victor

--
You received this message because you are subscribed to the Google Groups "Django users" group. To view this discussion on the web visit https://groups.google.com/d/msg/django-users/-/CvCjWNrV4pUJ.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.

--
You received this message because you are subscribed to the Google Groups "Django 
users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to