Bases de Datos en la línea equinoccial
De regreso en mi país me asignaron un nuevo tema para investigar: las bases de datos. Para IBM este tema estaba íntimamente asociado con la llamada comunicación de datos, denominando al conjunto de ambos DB/DC (Data Base/Data Communications). Sospecho que si usara hoy estas siglas en el ambiente informático actual, todos se preguntarían de qué planeta viene este tipo.
Como ustedes ya saben, este tipo viene del planeta Tierra de la década de los 70, de donde espero provengan también algunos de mis lectores. Fue en esos años cuando se advirtió que incluso en los procesos en lotes no bastaba con haber traspasado los ficheros de tarjetas a archivos secuenciales en cintas y discos. Al cabo de poco tiempo nuevas aplicaciones requerían de datos adicionales. Si se le añadían nuevos campos a los registros de los archivos existentes, había que modificar todos los programas antiguos aunque no usasen los nuevos datos. Esto debido a que en los programas se especificaba el diseño de cada registro. Como esto podía ser muy engorroso, muchas veces se prefería generar un nuevo archivo que incluyera los campos nuevos y sólo los antiguos requeridos por la nueva aplicación. Ni qué decir que mantener sincronizados el archivo nuevo y el viejo era un dolor de cabeza que no se resolvía con un Geniol (jóvenes, pregúntenles a sus padres qué es eso).
Recuerdo que algunos años después me tocó ir a hablar del tema a la Empresa Nacional de Computación de Chile. Para ejemplificar les pedí el archivo de empleados. Ahí mismo se originó una discusión entre mis oyentes, porque unos tenían el archivo para sueldos, otros el que usaban para capacitación, por último estaba el que servía para los regalos a los hijos de los empleados en la fiesta de fin de año. No creo que el asunto se haya resuelto tan fácilmente. En las últimas elecciones (2016) el Registro Electoral incluía a un ciudadano de más de 140 años de edad y varios arriba de los 120. Parece que prefirieron abstenerse de votar, seguramente porque no pudieron levantar la lápida para ir a los comicios. Intuyo que el problema es que el Registro Electoral usa un archivo que no está vinculado con el de defunciones del Registro Civil.
Con los productos de base de datos de aquellos años se lograba independizar
la visión de los datos que tenían los programas de la estructura real de los
datos en los archivos. El CICS, por ejemplo, permitía seleccionar los campos a ver mediante tablas externas al programa. Pero lo más interesante era que se podía establecer vinculaciones entre los datos que ya no tendrían que ser manejadas por el programador. IBM utilizaba un modelo de bases de datos jerárquico implementado en el DL/1 en DOS y en el IMS en OS. Antes de que me pregunten les aclaro que no hubo nunca un DL/2, pero sí un OS/2 que no tenía nada que ver con aquel OS.
Había otros modelos en redes, de los que recuerdo el TOTAL, un duro competidor. Pero perdíamos el tiempo. A fines de la década vino un señor de apellido Codd que inventó las bases de datos relacionales y tiró al tarro de basura todos nuestros queridos productos.
Pero entretanto el tema me dio de comer y me entretuvo bastante. Me puse filósofo y me dediqué a pensar cómo se organizaba la información en el mundo real. Llegué a la conclusión que existían entidades cuyos atributos podían adoptar distintos valores. Entre las entidades podía haber relaciones uno a muchos (padres e hijos, aunque últimamente uno a pocos), uno a uno (esposo y esposa, excepto en países árabes), y muchos a muchos (clientes e ítems, a través de los pedidos). Todo esto existe desde mucho antes de que se inventaran las computadoras. Con estas ideas escribí un artículo (juro que no lo saqué de Google) y tiempo después lo presenté en un simposio de Ingeniería de Sistemas en Valparaíso. Después me enteré de que había sido mucho más apreciado por nuestros competidores que por la gente de IBM.
Estructura lógica
Mientras me paseaba por los clientes perorando sobre la nueva religión DB/DC, me salió la oportunidad de un viaje a Quito a apoyar a la IBM de Ecuador. El viaje no era fácil, porque en aquella época los aviones sólo podrían aterrizar allí en horas de la mañana. La ciudad está encajonada entre dos cadenas de cerros y siempre llueve al mediodía, al menos mientras yo estuve allí. En resumen, volé a Lima, pernocté en el hotel del aeropuerto y madrugué para llegar al ombligo del mundo a una hora razonable. La llegada fue bastante impresionante porque al aterrizar un veía pasar junto a las ventanas del avión los campanarios de las iglesias coloniales (déjenme que le ponga algo de emoción al cuento).
Me presenté en el edificio de IBM, donde el ingeniero de sistemas a cargo de la cuenta me dijo que el principal cliente interesado en base de datos era el Ejército. No puedo contarles de qué se trataba, porque podría haber algún peruano entre mis lectores. Ese mismo día hicimos una visita al cliente. El proyecto estaba a cargo de un capitán ecuatoriano, asesorado por un coronel del ejército israelí. Este último no sólo hablaba bien castellano, mejor aún, lo hacía con un marcado acento argentino. Es que había nacido y se había criado en Buenos Aires, seguramente a pasos del Hospital Escuela donde yo había hecho mis primeras armas. Quedamos en encontrarnos al día siguiente a las 9 de la mañana para ponernos a trabajar.
Mi ingeniero de sistemas me dijo que me pasaría a buscar al hotel a las 8:30. Allí estaba yo al día siguiente en la puerta, esperando que llegara. Dieron las 8:45 y no pasaba nada. Me empecé a poner nervioso, porque sabía, o más bien creía, que en las fuerzas armadas son muy celosos de la puntualidad. Finalmente me tomé un taxi y me presenté al cuartel. Pregunté por el capitán ecuatoriano y el coronel israelita y me hicieron pasar donde este último. Mi ingeniero llegó como media hora después, con algún pretexto inverosímil, y el capitán como a la hora. Imagínense como 'pelamos' la puntualidad de nuestros amigos ecuatorianos mientras esperábamos. Pero el coronel ya estaba acostumbrado y había aprendidos a ser tolerante, no en vano había vivido sus primeros años en Latinoamérica.
Por supuesto que aproveché para hacer turismo. La ciudad antigua, con sus iglesias recubiertas de láminas de oro, sus calles empedradas y sus indígenas vestidos como en tiempos de Atahualpa nos hacen creer que volvimos al siglo XVIII. Los indios son muy organizados. Cultivan los cerros casi hasta la punta, aprovechando que el agua cae del cielo. Me contaron que tienen caciques viviendo en Nueva York para negociar la venta de sus productos. Durante el fin de semana recorrí los alrededores y los vimos con sus vestidos domingueros, cada tribu con su traje característico y, eso sí, todos con sombrero, hasta los niños que apenas empiezan a caminar.
Por si fuera poco, desde la ciudad se ven dos enormes volcanes cubiertos de nieve, uno al norte y una al sur, el Chimborazo y el Cotopaxi si no me falla la memoria. También tenemos la selva a poca distancia, media hora y un par de miles de metros más abajo. Pero lo que más les gusta a los ecuatorianos es llevarnos a conocer la línea equinoccial, donde hay un monumento recordando que 200 años atrás un grupo de agrimensores franceses y españoles habían medido allí un arco de meridiano, comprobando con ello que el mundo es achatado en los polos, tal como lo había predicho mucho antes Isaac Newton.
Estando allí supimos la noticia de que había muerto Perón, en ese momento presidente de Argentina. Fue curiosa la forma en que los ecuatorianos se acercaban a mí, los más jóvenes ofreciéndome sus condolencias, los mayores tratando de ver por mis gestos si manifestaba tristeza o alegría. La verdad es que no que podían saber lo que había sufrido mi familia durante la dictadura peronista, pero en ese momento mis sentimientos principalmente eran de preocupación por el futuro de mi patria. Sin saberlo entonces, también estaba afectando de alguna manera mi propio futuro.
¡My interesante! No veo fechas, pero como todos sabemos DL/1 y otras bases jerárquicas se siguieron usando hasta pasado el año 1990. Codd ya había definido el concepto de base de datos relacional veinte años antes, pero era una imposibilidad para el hardware de entonces. Recién cuando se pudo correrlas en grandes computadoras IBM presentó en público el modelo relacional (en Bs. As. fue en un Congreso de informática hacia 1988 si bien recuerdo). Y como muchos recordarán, cuando en 1991 salió FoxPro 2 con su técnica "Rushmore" todos pudimos correrlas en nuestras PCs.
ResponderEliminarUna pequeña corrección. Yo estaba presente el 14 de junio de 1985 (que, curiosamente, fue también el día del lanzamiento del Plan Austral) en el Hotel Libertador, en la reunión convocada por IBM en la cual Ted Codd anuncio el DB2 con una frase que me quedó grabada: " fíjense si mi idea era buena que hasta IBM -después de luchar 14 años- la aceptó y puso en marcha."
EliminarVer en Clipping Historia de un Viejo Informático. La entrada en escena de Las Bases de Datos Relacionales, por Edward McCluskey, http://eltamiz.com/elcedazo/2009/04/20/historia-de-un-viejo-informatico-la-entrada-en-escena-de-las-bases-de-datos-relacionales/, con abundante información sobre el tema.
Eliminar