4

Looking around for a noSQL database implementation that has an ORM syntax (pref. like Django's), lets me store and retrieve nested dictionary attributes but written entirely in Python to ease deployment and avoids Javascript syntax for map/reduce. Even better if it has a context-aware (menus), python-based console, as well as being able to run as a separate daemon task. Is there such an initiative already (I can't find it) or should I start one?

2
  • Except for wanting a Python syntax for map/reduce, I cannot see the validity of any of these arguments. You can have a Python-based console without the db server in Python. Mongo is not difficult to deploy. And for a DB server, you really want maximum performance at the core engine (there are popular DBMS written in Java though, so maybe it can be done in Python, too). Commented Oct 6, 2010 at 12:51
  • Re: map/reduce in Python: jira.mongodb.org/browse/SERVER-699 Commented Oct 6, 2010 at 12:53

4 Answers 4

4

There is a Python mongo db driver PyMongo. It is a mongodb.org Supported driver. So its up to date.

And for GUI purpose, there are several experiments going on.

  1. PHP mongo admin
  2. Futon for mongo
Sign up to request clarification or add additional context in comments.

5 Comments

Looking for a Python implementation. I believe Mongo is written in C/Erlang
Not Erlang, its in C. And I dont think there is a native python implementation , because speed and low level memory access is the main concern..
I think that CPU speed is no longer an issue, should think the work is I/O bound. You're right about Erlang, that's RabbitMQ ... another candidate for higher level language implementation....
"I think that CPU speed is no longer an issue, should think the work is I/O bound.". Not sure. MongoDB works best (only works properly?) if most of your DB (or at least the frequently used indexes) fits into memory. In this case, I/O to memory-mapped files should be pretty fast.
MongoDB is implemented in C++
3

This is an old question, so I do not know whether this is still relevant, but I just found this pure python noSQL database that looks really nice:

CodernityDB at Codernity Labs

If you want some pure python indexing and full-text search solution, you could be interested in Whoosh, in some use case, this is completely relevant to use this as a storage.

For both of these, I'm not sure about an ORM interface.

If you started your own solution since then, I would be interested in it.

Comments

2

I don't know about a noSQL solution, but sqlite+sqlalchemy's ORM works pretty well for me. As long as it gives you the interface and features you need, I don't see a reason to care whether it uses sql internally.

3 Comments

sqlalchemy is for relation data only, not nested structures (dictionaries)?
you can model nested structures with relations just fine, and sqlalchemy will make them easy to access
Right now I can store a nested dict very easily with Mongo. Please let me know a bit more about how you do it without NOSQL help, curious...
2

The Google's BigTable presents developers with a SQL-like interface. However, you will need to access it via the Google App Engine.

In fact, if you're doing to do that, you may as well just use web2py. web2py's ORM works in GAE without any alterations. It even simulates joins via its application code.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.