Archive: May, 2010

MariaDB, La Hermanita Menor de MySQL

1 comment May 29th, 2010

Es por todos sabido que Oracle ha adquirido Sun, y con ello lo que Sun había adquirido meses atrás, hablo en concreto de MySql.

MySql es o era (no sé cuál de los dos calificativos es correcto) el sistema de bases de datos Open Source más famoso y utilizado en el mundo.

Sin embargo, ahora tenemos que Sun forma definitivamente parte de Oracle, y Oracle tiene ahora la “patita” en máquinas de Sun, la “pattita” en lenguajes con Java, y la “patita” de bases de datos con MySql, pero Oracle es famosa precisamente por tener un gestor de bases de datos muy poderoso, el propio Oracle que da nombre a la compañía, así que, ¿qué hacer con MySql?.

Hay que tener en cuenta además, que la sombra de Oracle es muy larga y lo suficientemente ancha como para ocultar a MySql de la faz de la tierra. La incertidumbre por lo tanto, es bastante grande con respecto al futuro de MySql.

De momento no ha hecho nada “raro” con MySql, sin embargo, hay mucha gente que comenta que Oracle va a empezar a cobrar soporte con MySql y en el futuro…:s ya veremos qué…;) igual incluso hasta desaparece…

Aún y así, un irreducible finlandés no se va a quedar de brazos cruzados.
Hablo de Ulf Michael Widenius a quién se le conoce con el apodo de “Monty” (blog de Monty).

Monty es el principal autor de MySql y miembro fundador de MySql AB, empresa que fue adquirida en Febrero de 2008 por Sun Microsystems como comentaba anteriormente. Por la nada depreciable cantidad de 16 millones de € ($ 252883200 MXN).

Con la venta de MySql, Monty se embolsó mucho dinero y en Febrero de 2009 dejó Sun para montar una nueva compañía. Los motivos por los que dejó Sun no están claros.

Lo peor para Oracle, es que Monty se ha puesto a crear un nuevo motor de bases de datos de datos teniendo en mente a MySql y agregándoles “esas” cosas que quería haberle agregado a MySql en su día y que por las razones que sean, no ha podido llevar a cabo.

La iniciativa de Monty tiene que ver sobre todo con la adquisición de Sun por parte de Oracle.

Adquisición maestra, ya que se ha manejado la situación estratégica de forma expecional. Primero Sun compra MySql,  todo normal y coherente, no!?.

Luego Oracle compra Sun, y aquí aparecen las dudas. Monty duda de la compra (seguramente se sintió engañado/decepcionado/triste como amante de un sistema gestor de bases de datos abierto).

El departamento de la libre competencia de la Unión Europea analiza entonces si vulnera la libertad, pero aunque Oracle y Sun tienen un frente común en el mundo de las bases de datos, no es menos cierto que al tener Sun sus departamentos de Hardware y Software con Java a la cabeza, se ha hecho claramente la vista gorda sobre MySql.

Sin dudas, siento que esto ya estaba pactado de ante mano y Monty fue engañado. Quitaron a MySql, y así Oracle solo tendría un único competidor real y de importancia, hablo de SQL Server.

Al menos a Monty le quedó la tranquilidad de haberse hecho rico. Pero Monty es como comentaba antes, un hombre irreducible y tenía pensado vengar su honor como si de un duelo se tratara.

En Internet apareció entonces una iniciativa impulsada por el propio Monty para salvar a MySql, hecho que motivó que Monty se adentrara en esta aventura.

El producto en el que anda trabajando se llama MariaDB. El nombre de Maria se debe a su hija menor.

En realidad, MariaDB es un fork (bifurcación, branch o rama) que parte del código base de MySql. Es decir y como ellos lo comentan en el wiki de la página MariaDB es un upgrade de MySQL.

La empresa de Monty encargada de llevar a cabo la aventura de MariaDB se llama Monty Program AB.

El icono elegido por Monty en este caso es una foca, icono que posiblemente utilice para sus distribuciones.

MariaDB Logo
MariaDB Logo

Ahora bien… ¿cuál es la versión actual de MariaDB?.
La versión actual es MariaDB 5.2.0 Beta que está basada en MySql 5.1.

Monty afirma que esta versión es estable, aunque no quiere decirlo muy alto porque es una versión en desarrollo y por lo tanto, no debería ser utilizada en producción.

El caso es que a Oracle le ha salido un emergente y posible competidor, porque el irreducible Monty no tiene pensado dejar tirada a la Comunidad y va a hacer todo lo posible por sacar adelante el proyecto de MariaDB.

Por su hija y por él mismo, va a luchar para prevalecer su honor. Una noticia que personalmente celebro de pie.

Diferencias entre TRUNCATE y DELETE en MySQL

No comments May 29th, 2010

Si os habeis preguntado alguna vez las diferencias entre truncate y delete en la base de datos MySQL Server. Aquí os pongo una pequeña explicación de cuando utilizar una u otra.

TRUNCATE

Este comando borra todas las filas de una tabla sin registrar las eliminaciones individuales en el log de transacciones.

Por ejemplo:

TRUNCATE Cursos;

Borra todos los registros de la tabla Cursos

DELETE

DELETE borra las filas de una tabla, pero registra las eliminaciones individuales en el log de transacciones. Podemos utilizar la clausula WHERE para filtrar las filas que necesitemos eliminar.

Ejemplo:

DELETE FROM Cursos  WHERE CursoId = 50;

DIFERENCIAS ENTRE TRUNCATE Y DELETE

  • Ambas eliminan los datos, no la estructura.
  • Solo DELETE permite la eliminación condicional de los registros.
  • DELETE es una operación registrada en el log de transacciones y trucate no.
  • TRUNCATE es una operación registrada en el log de transacciones, pero como un todo, en conjunto, no por eliminación individual. TRUNCATE se registra como una liberación de las páginas de datos en las cuales existen los datos.
  • TRUNCATE es más rápida que DELETE.
  • Ambas se pueden deshacer con un ROLLBACK.
  • TRUNCATE reiniciará el contador para una tabla que contenga una columna IDENTITY.
  • DELETE mantendrá el contador de la tabla para una columna IDENTITY.
  • TRUNCATE es un comando DDL(lenguaje de definición de datos) mientras que DELETE es un DML(lenguaje de manipulación de datos).
  • TRUNCATE no desencadena un TRIGGER, DELETE sí.
  • TRUNCATE recrea una tabla.

CUANDO USARLAS

  • Usar Truncate es más rapido que Delete si vas a borrar toda una tabla y no te importan los indices(identity) o bien quieres resetearlos.
  • Usar Delete para borrados selectivos.
  • Usar Delete en caso de tener Foreign Key, es decir .. usarla en caso de borrados en cascada.

Google Over SSL

No comments May 27th, 2010

Hace unos pocos días, fue de conocimiento público el hecho de que Google había estadorecolectando datos de redes Wi-Fi abiertas a través de sus vehículos asociados con el servicio Google Street View. Una oleada de protestas y dos demandas después, el asunto parece haber sido corregido en Mountain View, aunque la ignorancia por parte de miles de usuarios al dejar sus redes Wi-Fi completamente abiertas y sin una protección eficientesigue tan vigente como antes del incidente (N. del. R.: Cierren sus redes. No es broma.). Mientras tanto, Google se encuentra trabajando sobre una capa extra de protección para los resultados de las búsquedas hechas en su motor. En otras palabras, ha aparecido unaversión beta del clásico portal de Google, con una conexión segura utilizando el protocolo criptográfico SSL.

Google SSL

es Facebook. La gente acostumbra a ingresar a la red social con la clásica dirección WWW, pero si agregan una “s” al http, verán que Facebook tiene certificado de seguridad, y es compatible con esta clase de conexión. Google ha incluido conexiones seguras en varios de sus servicios, como es el caso de Gmail, pero ahora es el turno del portal de búsquedas. Actualmente el servicio se encuentra en fase beta, y es posible que los usuarios obtengan un rendimiento inferior al acostumbrado, pero lo hemos estado probando desde hace un buen rato, y no hemos tenido inconveniente alguno.

Tal vez pase algún tiempo hasta que la conexión segura en el portal de búsquedas de Google se convierta en la opción por defecto. Google ha explicado que la conexión segura sólo encripta las palabras claves y los resultados enviados. En caso de que el ordenador se encuentre infectado por alguna clase de malware o keylogger que pueda registrar la actividad del usuario, dicha conexión segura sería irrelevante, pero nunca está de más contar con una capa extra de seguridad. Desde todo punto de vista esto se ve como una especie de compensación ante el “error” cometido con los coches de Google Street View. No es necesario decir que Mountain View deberá tener más cuidado para la próxima, pero esto ha servido para que los usuarios obtengamos algo mejor. Después de todo, las búsquedas encriptadas no suenan nada mal.