Cita:
Empezado por poliburro
Pues esa impresión me das estimado Casimiro, máxime cuando no me dices el por qué es irrelevante el uso de xml en bases de datos cuando es algo que está defino en el Ansi SQL
http://en.wikipedia.org/wiki/SQL/XML
|
Como bien dijiste. Mientras no se llegue al insulto.
----
Lo interesante de este debate es que la pregunta inicial nisiquiera ha sido contestada. ¿en la actualidad soporta o no devolver multiples recordset?. Habria que hacer las pruebas porque en google no he encontrado nada de eso.
Con respecto al debate:
No niego el grán rendimiento que tiene PostgreSQL y como mencionaron antes, en la vida real, el rendimiento depende mucho del diseño de la DB, la forma como el programa la utiliza, las técnologías para las comunicaciones y muchos factores. Y en mi experiencia he visto programas en Delphi y .Net conectados a MS-SQL, Oracle, Sybase, PostgreSQL e Informix ejecutar procesos muy lentos en servidores muy buenos.
Cuando una empresa me entrega la libertad de elegir el motor o puedo imponerlo

, opto por PotgreSQL y en un pequeño programa POS que tengo los tiempos de respuesta son excelentes aún con un pc convencional con windows funcionando como servidor.
Pero si una empresa ya tiene una red montada con su datacenter, bases de datos, servicios de red, seguridad; Todo esto en windows, aunque suene como a blasfemia para casimiro, muchisimas empresas desde pequeñas hasta grandes basan su infraestructura en windows. Y de seguro pedirán que la nueva base de datos (la de nuestro aplicativo) se acomode a sus estandares de manejo y entre ello pedirán la integración del aplicativo con el active directory.
Si la eleción es PostgreSQL o firebird, habrá que instalar o crear algun producto que realice cambios en la seguridad del motor para asimilar los cambios en la seguridad de active directory y esto representa costos y posibles errores adicionales.
Para estos casos, lo mejor sería que nuestro aplicativo se acomode a muchos rdbms y si el cliente tiene MS-SQL, Oracle, MySQL, PostgreSQL o Firebird. Nuestro aplicativo pueda trabajar en todos ellos.
Lo mas seguro es que yo esté por otro camino del debate ya que ustedes han hablado mas del rendimiento uno vs otro pero para mi lo importante de elegir entre uno u otro depende de como beneficiará al cliente y como este se sentirá mas satisfecho. Por lo general a los gerentes (quienes firman los cheques) lo que les importa es la eficiencia en todo sentido y puede que para nosotros esos milisegundos sean muy importantes pero para estos dueños de empresas, lo que importa es cuanto costará un nuevo servidor nuevo teniendo un windows server instalado; Cuanto costará capacitar a su administrador de red para manejar un linux cuando el 99% de sus equipos es windows; Cuanto costará el nuevo soporte cuando ya tiene uno contratado y cuanto costará la integración de nuestro app con su esquema y protocolos.
Tener un aplicativo con esta felxibilidad es muy importante porque el cliente no deberá incurrir en costos adicionales de capacitación o contratación para un motor o un S.O. que normalmente no manejaban y en cambio entrega a nuestro aplicativo una valor agregado que marca la diferencia y nos termina representando la satisfacción del que firma el cheque y clientes finales y recomendaciones para nuevas oportunidades de negocio.
---
Algunas características en el rdbms ya sean ofrecidos desde instalación, característica adicional o complemento de tercero son muy importantes porque hacen que tu rdbms sea mas que un simple almacen de datos.
Por ejemplo, (en oracle) el manejo interno de XML permite consumir webservices desde los SP. Eso significaria que nuestro app solo llamaría un SP que consumiria el WS, validaria procesaría y almacenaria los resultados. El proceso sería muchisimo más rapido de seguro.
El cifrado de datos (Lo he visto en oracle con AES) podría ser muy funcional a la hora de almacenar información de vital para la compañía y que esté en el motor permitiría que los SP procesen y guarden datos cifrados sin la necesidad explicita que lo haga el app.