Stonebraker: la base de datos Oracle está obsoleta y Facebook tiene el mayor problema de datos del mundo

Michael Stonebraker es una leyenda viva en el mundo de las bases de datos.

Stonebraker refinó las técnicas relacionales que hoy conforman el núcleo de miles de millones de dólares en ventas anuales de software por empresas como Oracle (ORCL), International Business Machines (IBM) y Microsoft (MSFT). Sigue siendo frecuente oir a tal o cual nueva startup tecnológica o ejecutivo del sector refiriéndose con asombro y admiración a su trabajo en los últimos 40 años.

Michael-Stonebraker

Tuve el honor de hablar con Stonebraker por teléfono, para felicitarle por ser el receptor este año del premio conocido como “Turing Award“, concedido por la Association for Computing Machinery en reconocimiento a sus innovadoras contribuciones a las ciencias de la computación o informática. En el sitio Web de ACM podrá encontrar más información sobre dicho premio.

Stonebraker, profesor de Ciencias de la Computación y del Laboratorio de Inteligencia Artificial del MIT, dijo que se sentía honrado, señalando que “este es el Premio Nobel de la informática.” (La biografía completa de Stonebraker se puede encontrar en el sitio Web CSAIL.)

Stonebraker no solo continúa realizando investigación fundamental en teorías de bases de datos sino que también tiene criterios profundos y fundamentados sobre el estado de la industria que son valiosos para cualquier inversor en tecnología. Entre los puntos de vista provocadores que compartió conmigo está el de que la tecnología actual de bases de datos de Oracle y de otros es “obsoleta“, y que Facebook (FB) se está enfrentando al “problema de base de datos más grande del mundo.”

Avances

El principal motivo por el cual Stonebraker alcanzó la fama es por haber impulsado la tecnología relacional, que fue conceptualizada en primer lugar por E.F. ‘Ted’ Codd, en una publicación germinal de 1970. Empresas de Stonebraker como Ingres, más tarde Postgres y muchas otras después, por ejemplo Vertica (adquirida por Hewlett-Packard, HPQ) contribuyeron a que fructificaran las nociones académicas de Codd en los mercados comerciales.

Cuando se le pregunta cuáles fueron sus contribuciones, Stonebraker es extraordinariamente humilde: hábilmente desvió la conversación hacia un brillante resumen de Codd, a quien él se refiere como “Ted”. “Lo que Ted propuso en su momento fue radical”, dijo. “Fue un cambio completo de cómo se hacían las cosas en bases de datos.”

Ted observó dos cosas importantes. En ese momento, había bases de datos como IMS de IBM, que estaba estructurada como una jerarquía, y la base de datos CODASYL, que estaba estructurada como una red de conexiones entre objetos. Ted se dio cuenta de que lo que la gente entiende, de forma inherente, son las relaciones, por lo que dio un giro al problema de la gestión de datos convirtiéndolo en uno de relaciones. Eso simplificó las cosas de forma impresionante. Se dio cuenta de que las cosas deben mantenerse simples. Ted realmente siguió el principio KISS [Keep it Simple, Stupid].

El otro gran avance realizado por Codd, afirma Stonebraker, fue alejar la manipulación real de datos de la programación en lenguaje ensamblador que existía en la época, hacia mayores niveles de abstracción que más tarde se convertirían en lenguaje de consulta estructurado o SQL.

La manera de proceder comúnmente aceptada en ese momento era que se debía compilar conforme a las características particulares de cómo se almacenasen los datos. Él vio que eso no tenía sentido. Introdujo principios de encapsulación y abstracción en las bases de datos de programación, al igual que con un lenguaje de nivel alto en la programación. El problema con el enfoque ensamblador era que los datos con los que uno trabaja tienen una vida muy larga. En la actualidad, su negocio podría estar relacionado con suministros de fontanería. Pero luego decide fusionar su empresa con otra compañía y ahora su negocio está relacionado con suministros de fontanería y suministros de productos de belleza. Inevitablemente, sus estructuras de datos cambiarán como resultado. Si usted escribe estos programas en lenguaje ensamblador, tendrá que descartarlos y recodificar cuando las cosas cambian, mientras que si usted escribe en un alto nivel, con independencia de datos, sus datos no serán dependientes de la estructura de los datos.

En cuanto a su propia contribución, Stonebraker es igualmente humilde. En la conversación, él utiliza “nosotros” en lugar de “yo”, y señala que la base de datos Ingres “fue la contribución de un buen número de personas.” Entre ellos, Jerry Held y Gene Wong se unieron a Stonebraker en la lista de ganadores del “Premio de software de sistemas” de la ACM en 1988 por Ingres.

Stonebraker señala que él y sus compañeros pioneros trajeron las encumbradas ideas relacionales de Codd al reino de las personas ordinarias:

Ted era matemático y escribió sus teorías en términos matemáticos que ningún simple mortal podía manejar. Nosotros las convertimos en construcciones que podían ser manejadas por gente común. En segundo lugar, se argumentó en su momento que RDBMS no podía funcionar, pero demostramos que podía ser eficiente.

Oracle, Microsoft e IBM tienen un problema

Volviendo al presente, Stonebraker me dice que las bases de datos Oracle, DB2 de IBM y SQL Server de Microsoft, están todas obsoletas y se enfrentan a un par de grandes retos. Uno es que en su momento fueron diseñadas para el “proceso de datos empresariales.” “¡Pero ahora también hay datos científicos y medios de comunicación social y registros de la Web y lo que uno quiera nombrar! El número de personas con problemas de bases de datos tiene ahora una envergadura mucho más grande”.

En segundo lugar, “Estábamos desarrollando Ingres y System R para máquinas con una pequeña memoria principal, por lo que se basaban en discos; eran lo que llamamos ‘almacenes de filas.”

“Se almacenan los datos registrados en un disco, registro por registro. Todos los principales sistemas de bases de datos de los últimos 30 años tenían esa apariencia – Postgres, Ingres, DB2, Oracle DB, SQL Server – todos son métodos de almacén de filas en disco”.

Pero, con la reducción de los costes de los chips de memoria, “la memoria principal ahora es lo suficientemente barata como para que el OLTP [procesamiento de transacciones en línea] se base cada vez más en bases de datos de memoria principal y no se parezcan en nada a los métodos de almacén de filas basados en discos”, afirma Stonebraker. Cita como ejemplos la base de datos “en memoria” más reciente, Hana de SAP (SAP), y también su nueva iniciativa, VoltDB.

Puedes seguir leyendo la traducción de este artículo en el post NoSQL propone lenguajes de bajo nivel, por lo que es una apuesta contra el compilador

Artículo original: Michael Stonebraker Explains Oracle’s Obsolescence, Facebook’s Enormous Challenge, by Tiernan Ray

13 thoughts on “Stonebraker: la base de datos Oracle está obsoleta y Facebook tiene el mayor problema de datos del mundo

  1. Desde de luego el planteamiento que realiza si es demoledor para las bases de datos actuales, y eso les va a poner las pilas para actualizarse a las nuevas necesidades de almacenamiento de la información, tiempos de transacción y demás. Reitero, interesantísimo articulo.

    • Sí, es provocador en el buen sentido y hace replantearse cosas. Esta traducción es de sólo un tercio del artículo original. Las siguientes 2 entregas las iremos publicando en semanas sucesivas.

  2. Bastantes RDBMS sí serán reemplazadas por bases de datos en memoria (con escritura periódica a disco si hace falta). Aunque los 2 órdenes de magnitud quizá se reduzcan a 1 con los SSD.

  3. En la banca, seguros etc. hace muchos años que los mainframes de IBM operan con las BBDDs “en memoria”. Lo único que está pasando es que los “nuevos” negocios quieren dicha potencia. Era imposible calcular los nuevos niveles de exigencia y la bajada de precio de la memoria.

  4. Es curioso que no hable de la tercera base de datos por implantación: MySQL. Ah, ¡qué es de Oracle!
    Artículo dirigido, con poco fundamento, más bien parece una rabieta.

    • Yo he leído el original completo en inglés y no es una rabieta. Sin embargo, el titular es un tanto sensacionalista, igual que el original en inglés, aunque este último es un poco más comedido: Michael Stonebraker Explains Oracle’s Obsolescence, Facebook’s Enormous Challenge (Michael Stonebraker explica la obsolescencia de Oracle, el descomunal reto de Facebook).

  5. Con estos nuevos escenarios actuales, big data, inmensas cantidades de datos, nuevas arquitecturas de Hardare,…, es necesario un cambio en los modelos de bases de datos. Todo esta inventado, hasta que viene alguien y lo reinventa….

  6. Sólo un detallito: Stonebreaker no habla de “almacenes en bruto” en este artículo, sino de “almacenes de filas” (en contraposición a “almacenes de columnas”). Es decir, “row”, no “raw”. Excelente artículo, por lo demás.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *