Hoy regreso a escribir después de unas cortas vacaciones, vamos a comentar sobre las bases de datos, siempre los informáticos han buscado la forma con argumentos sólidos y no tan sólidos de responder a la pregunta de ¿cuál es la mejor base de datos?, primero el panorama es complicado, yo trataré de dar algunos argumentos validos y ver si podemos llegar a una conclusión al tema, primero mencionare que en el mercado tenemos muchas alternativas de bases de datos, como por ejemplo ORACLE, SQLServer, Postgres, Informix, DB2, MySQL entre las que recuerdo, y citaré que en la mayoría de los casos los finalistas terminan siendo ORACLE VS SQLServer.
Mencionaré que ORACLE le pertenece a “ORACLE Corporation” y SQLServer a la empresa “Microsoft”; algunos analistas también suelen poner como finalistas a Postgres y DB2 contra ORACLE, a simple vista podríamos concluir que si siempre el finalista es ORACLE, entonces esta debería ser la mejor; y es que debo decir que efectivamente ORACLE no es malo, pero solo está presente en empresas grandes, porque medianas y pequeñas empresas será mucha base datos y los costos de licenciamiento son altos para ellas, por otro lado siempre se ha defendido a ORACLE en el tema de la Granularidad de los datos donde se destaca, las unidades de asignación de espacio en la base de datos son los bloques de datos, extents y segmentos. El nivel más fino de granularidad en que Oracle almacena los datos es el bloque de datos (también llamados bloques lógicos, bloques de Oracle o páginas), si se que soné bastante técnico, pero son temas técnicos, los Administradores de Datos o también llamados DBA tienen a este factor como unos de los más importantes pero no el único existen otros tales como escalabilidad, seguridad, administración, Integridad, las herramientas entre otros.
En el caso de SQLServer también posee granularidad casi al mismo nivel que ORACLE, en ciertos aspectos destaco su sistema de bloqueo y jerarquías; pero siempre existirán detractores al tema; siempre existirán administradores “PRO” una base datos, es decir preferencias hacia una y otra.
Así que yo utilizaré otro argumento quizás para mi mas valedero que la granularidad; y es saber que empresas informáticas de renombre usan una o la otra; cuantificarlas y sacar conclusiones, pero no es fácil, así que me plantee una pregunta ¿Qué base de datos usará el motor de búsquedas GOOGLE y todos sus otros servicios?, ¿será ORACLE? ¿Será SQLServer?, pues eso me daría una respuesta concluyente, así que mis estimados lectores, aquí les va la respuesta “Ninguna de las dos”, incluso ninguna de las que mencione al principio del artículo, San Google usa una base de datos llamada Berkeley DB que es una base de datos incrustada con API para C, C++, Java, Perl, Python, Ruby, Tcl y muchos otros lenguajes. Soporta múltiples datos para una misma clave. además permite miles de hilos de control manipulando bases de datos de hasta 256 terabytes en muchos sistemas.
Esta base fue diseñada por la Universidad de Berkeley actualmente pertenece y es desarrollada por la compañía Sleepycat Software. Está disponible con código fuente y licencia de libre distribución (free software). Los desarrolladores que quieran redistribuir con aplicaciones propietarias deberán pagar una licencia a Sleepycat Software.
Ahora el tema a la pregunta podría estar casi respondida, pero algunos me dirán, sólo porque Google la usa no necesariamente será la mejor, pues aquí les listo otras empresas pesadas del mundo informático que la usan
Empresas que utilizan Berkeley DB en sus productos:
He puesto en negritas para resaltar las empresas que llamaron mi atención, y creo que ya podemos hacer conclusiones, efectivamente Berkeley DB sobresale y no creo que estas empresas no hayan tomado factores importantes en su decisión, aunque la base si tiene criticas como por ejemplo que Berkeley DB no soporta SQL ni esquemas. A pesar de esto tiene un tamaño superior al de otras alternativas incrustadas, así que con estos argumentos donde asumo las empresas citadas por su seriedad tuvieron que haber hecho un benchmarking, costo, beneficio, seguridad entre otras ganó Berkeley DB como la mejor alternativa.
No podré concluir sin darles un dato más, Berkeley DB ha sido comprado por ORACLE Corporation , asi que le pertenece, aunque fue desarrollada por la Universidad de Berkeley de California como parte de los esfuerzos para lograr eliminar el código de AT&T de BSD 4.3 para la versión 4.4. En 1996 Netscape pidió que los autores de Berkley DB que mejorasen y ampliasen su biblioteca, en su versión 1.86 por entonces, para satisfacer los requisitos de Netscape para un servidor LDAP y utilizarla en el navegador Netscape. La petición llevó a la creación de Sleepycat Software, que fue adquirida en febrero de 2006 por Oracle Corporation, mundo de locos.
Fuente: Microsoft, Oracle y Wikipedia.