PL/SQL vs Java
Escrit per Aaloy a 26 de May , 2007 a les 8:01 p.m.
Des del planet de Python he arribat al blog de S. Lott damunt arquitectura de programari i a un article anomenat PL/SQL vs Java - Yet Again. En aquest post Lott va tractant els llocs comuns que ens trobam quan comparam tecnologies com Java i PL/SQL. En faig una traducció lliure:- PL/SQL és més ràpid perquè està més proper a la BD. Fals. No ens ho hem de creure, el que hem de fer és mesurar-ho. Segons Lott una de les causes de Java pugui ser més ràpid que el PL és que la màquina virtual Java pot fer optimitzacions al vol (JIT) cosa que PL no pot fer.
- PL/SQL vs JDBC.El PL/SQL és molt bo quan sols hem de fer transaccions bàsiques CRUD, però quan l'algoritme té altra tipus de lògica l'avantatge s'esvaeix.
- Escalabilitat. Java és molt més escalable a un cost menor. Amb GNU/Linux traient partit dels processadors moderns multi-nucli afegir més nivells de concurrència a les nostres aplicacions és relativament barat.
- No tenc recursos Java o presupost per comprar més màquines, però ja he pagat per la BD i tenc gent que sap PL/SQL. Si la direcció d'IT diu que (1) el rendiment és important i (2) no es volen fer mesures de rendiment (benchmarchs) llavors tenim un problema important d'esquizofrènia. Si al responsable d'IT no li importa el rendiment, llavors per què fer proves de rendiment per començar? Si el rendiment no importa PL/SQL està bé. És lleig i mal de mantenir, però és una decisió del responsable d'IT. Bàsicament ve a dir, que si el responsable de programació selecciona un llenguatge no basant-se en el rendiment i la mantenibilitat sinó en altres consideracions, llavors està fotut, no hi ha res a fer: PL/SQL.
Enllaços citats
1 comentari, 0 trackbacks (URL) , Tags: Informàtica
Comentaris
1 Comentari de Paco Ros a les 06:04 del Sunday 13 Apr de 2008
El PL és més ràpid. En esser dins la pròpia BD i compilat, el motor de BD pot "fer trampa" i optimitzar alguns paquets molt utilitzats per tal de que vagin com un tir.
El problema del PL és la portabilitat.
Que Java és més escalable, està fora de tot dubte.
El darrer punt és el més significatiu. És irrissori, però passa per tot: He pagat una pasta per la tecnolgia X i una altra pasta per formar a la gent. Ja sé que en el futur, hauré de pagar més i serà un mal d'ous... pero, De veres vols que li digui als accionistes / gerent que l'he cagada i estic agafat pels ous? Res, al món dels átoms també passa. Ho entendran.
En general, jo tenc una regla que em funciona molt molt bé: la base de dades serveix per a gestionar dades (i ho fa molt bé). La resta, millor deixar-li a un llenguatge prou adient.