viernes, 30 de enero de 2009

Oracle SQL Developer Data Modelling

Los días de Oracle Designer 10g están acabando. El cásico paquete de diseño, versionamiento e implementación de bases de datos, tiene un jóven sustituyo acorde a los tiempos que corren: Oracle SQL Developer Data Modelling.

Esta herramienta de nombre largo es totalmente gratuita, profesional y actualizada, y su propósito es quitarle el mercado que otros diseñadores compactos como Erwin o Toad Data Modeller han ganado.

Es que la comunidad Oracle reclamaba hace tiempo las limitaciones de la interfase, que no había cambiado mucho desde la versión Designer/2000 de 1995, y prácticamente nada desde 9i para 10g. También, la ubicación geográfica de los desarrolladores era un problema cada vez que debían movilizarse lejos del repositorio que Designer require para funcionar.

Oracle SQL Developer Data Modelling simplemente se copia en una carpeta y no require de instalador. Es un producto separado disponible para Windows, Linux y Mac.
Se conecta con Oracle a partir de 9.2.0.1, no necesita un repositorio (aunque opcionalmente puede usarlo), y tiene una abanico de funcionalidades muy atractivas: modelos lógico, relacional y físico, ingeniería reversa desde otras bases de datos, diseño multidimensional de tablas para DW, data flow diagrams, modelado gráfico de Oracle types, importación desde otros modeladores como Erwin, importación por ODBC, exportación a ddl, csv, xml, Oracle AW.

Mi impresión sobre la herramienta es muy buena. Luego de un buen tiempo cuesta dejar algunos condicionamientos que el arcaico Designer impone para sobrellevar los problemas de su propia interfase, pero parece que con Oracle Data Modelling no son más necesarios.
Uno típico era el nombrado automático de objetos, Designer tenía una forma particular de autogenerar nombres de FKs e índices, y cada vez que se generaban había que arreglarlos. Oracle Data Modeller permite personalizar todos esos prefijos que usa para ingeniería reversa, o pasaje de modelo lógico para relacional, facilitando el cumplimiento de estándares. Por ejemplo para la generación de índices puedo definir los nombres como: IX_{table}_{seq nr}.
El Navigator (pequeño cuadro que muestra un mapa de todo el modelo) es otra buena innovación que aporta navegabilidad en diagramas grandes.
Es posible especificar una vasta variedad de propiedades sobre cada objeto, para mejorar la generación de código final y evitar tener que repasar los ddls generados.
También cuenta con un analizador de impacto, para anticipar la propagación de cambios en el modelo existente.
La integración por ODBC permite conectarse con prácticamente cualquier base de datos existente.
La mayor ventaja de todas es, como dije anteriormente, que es gratuito.

Oracle SQL Developer Data Modeller está proyectado para ser lanzado sobre el correr de 2009, pero una serie de versiones beta están siendo publicadas por Oracle para evaluación.
La versión Early Adopter Release 2 (Nov 2008) está disponible para descargar en OTN.

ACTUALIZACIÓN (01-mar-2010): Este articulo comenta sobre la versión Early Adopter R2, la cual no está más disponible. Las versiones comerciales actuales no son gratuitas. Ver comentarios abajo.

Ver también:
OTN SQL Developer

2 comentarios:

lfer dijo...

Marco, gracias por la aclaración!

Como bien dices, el release final de este producto (liberado en julio de 2009) es pago, y por lo que averigué cada licencia cuesta alrededor de U$S 3,000.

Este artículo no fue actualizado desde enero de 2009, y trata sobre la versión que habia en ese momento, la early adopter 2, de nov 2008. En ese entonces no vi visto nada sobre pricing, pero es bueno aclararlo ahora.

Sigue un FAQ sobre el licensing de este producto:
http://www.oracle.com/technology/products/database/datamodeler/html/pricing_faq.html

Saludos!

Anónimo dijo...

Ahora sí. A partir del 11 de octubre de 2010 el Oracle SQL Developer Data Modeler Early Adopter (3.0.0.649) es totalmente libre, como lo pueden ver en http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html

Carlos Calderón