Para quem tem acompanhado as discussões e notícias sobre NoSQL, sabe que não é mais uma promessa para o futuro, e sim uma realidade.
/dev/null ;-)
E o framework web mais conhecido e utilizado do mundo Python(a.k.a Django) não poderia deixar esta onda passar.
O Django foi criado em outra época, em outro contexto e nasceu com a idéia de funcionar junto a bancos relacionais.
Porém com o advento dos bancos não relacionais, portar sua aplicação Django de um paradigma para outro é uma tarefa nada simples:
- Não há possibilidade de reutilizar as instruções SQL
- Geralmente você tem de gerenciar seus índices manualmente
- Gerenciamento de seus relacionamentos, já que não conta com joins
- e muitos outros problemas...
E neste cenário é que nasceu o Django non-rel, um 'port' do framework Django porém tendo re-implementado sua ferramenta de ORM para funcionar com bancos de dados não relacionais. Sendo assim você continua tendo todas as ferramentas fornecidas pelo framework(ORM, Admin, URL Routing, Template, Managers, Cache, User, Session, etc, etc, etc..) porém funcionando em um banco de dados não-relacional(ou NoSQL se preferirem).
Ele possui módulos/projetos internos para resolver algumas diferenças entre os dois mundos, como por exemplo o django-dbindexer, que se responsabiliza pelas não normalização do seu banco e também pelos JOINs.
Outro módulo importantíssimo, e responsável pela 'independência' citada no título, é o projeto djangoappengine, que como o nome diz, é responsável por implementar as diversar funcionalidades do Django tendo o Google AppEngine como backend. Com este projeto você pode desenvolver sua aplicação sem se preocupar em 'estar amarrado' ao GAE, pois o código será portável para outra plataforma(seja uma outra plataforma PaaS, ou sua própria).
Ao fazer o download do django-nonrel e seus módulos aqui você vai encontrar um projeto de teste pronto para ser executado no GAE.
-Rafael
Comentários
Estou fazendo um projeto com ele e está bem estável sim, há algumas features do Django não suportadas ainda mas está tudo muito bem documentado.