El día 17 de marzo de 2010 15:39, Jose Caballero
<jcaballero....@gmail.com> escribió:
> El hecho de que django aún no de soporte estable a consultas multi-db es un
> dato importante en mi caso. Tengo que lidiar con 3 bases de datos distintas
> a la vez.

Doc de la versión estable de sqlalchemy:
http://www.sqlalchemy.org/docs/05/session.html#partitioning-strategies

Doc de la versión inestable de django:
http://docs.djangoproject.com/en/dev/topics/db/multi-db/#topics-db-multi-db

> El otro factor que es importante para mí, y creo que ahí es donde se nota mi
> inexperiencia, es que necesito crear clases que incluyan no sólo el
> resultado de cada 'query' (por lo que asumo las clases serán en parte una
> réplica de mi 'schema') sino además mis propios métodos para hacer análisis
> estadístico con los resultados de los 'queries', etc. Aunque imagino que
> será igual de fácil en ambos casos, con una simple herencia de clases o
> similar.

No se a que te refieres con "análisis estadístico de los resultados de
los 'queries'". Puedes hacer cosas como las siguientes en ambos ORM's:
 * Extender las clases para crear campos que no existen en las tablas
(ejemplo: calculando datos a través de otros campos).
 * Tener consultas preestablecidas
 * Puedes hacer consultas agregadas (sum, avg, ...)
 * ...

Temas de funciones de ventana como las que están soportadas por
motores como postgresql y oracle no se si se pueden hacer directamente
con alguno de los dos ORM's:
http://developer.postgresql.org/pgdocs/postgres/tutorial-window.html

Si necesitas hacer muchas cosas "raras" con la base de datos, es
posible que un ORM sea más problemático que no usarlo. Pero si vas a
hacer cosas que tu ORM soporta, la base de datos se convierte en una
comodity que puedes reemplazar con facilidad.

>
> En cualquier caso, muchas gracias por tu respuesta. Creo que necesito
> estudiar más antes de poder plantear la pregunta de forma más precisa.
>
>

Ahora voy a hacer comentarios claramente subjetivos:
 * Si vas a usar django, lo mejor es usar el orm de django. Usar
SQLAlchemy puede implicar que el resto de cosas que hacen atractivo a
django no te funcionen.
 * SQLAlchemy es mucho más avanzado y tiene muchas más cosas. Pero
también supone una curva de aprendizaje mayor. Si el ORM de django te
es suficiente, seguramente no te compense pegarse con SQLAlchemy.
 * Django mola. El ciclo de desarrollo con él es brutalmente rápido.

Un saludo:

Javi
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a