I am looking for a (possibly) pure Python library for persistent hash table (btree or b+tree which would provide following features
- Large file support (possibly in terabytes)
- Fast enough and low memory footprint (looking for a descent balance between speed and memory)
- Low cost of management
- Reliability i.e. doesn't corrupt file once the content is written through the file system
- Lastly a pure Python implementation. I am OK if it has C library but I am looking for a cross platform solution
I have looked into solutions like redis, shelve, tokyo cabinet. Tokyo cabinet is impressive and has a Python binding in the making at http://code.google.com/p/python-tokyocabinet/, but its Windows port is a work in progress.
Thanks for some good suggestions. I am currently exploring SQLite3 with Python. I got suggestions to use database engine but am more inclined towards a lean and mean persistent b+tree implementations