Historia del desarrollo de la persistencia de la información
Lograr la persistencia de la información es uno de los primeros problemas de las ciencias computacionales. Los archivos han sido la solución a esta necesidad de preservar la información más haya de la memoria RAM de la computadora. Un archivo se define como una secuencia de bytes almacenados en un medio magnético ( como un floppy, HDD, CD, etc. ). A esta secuencia comúnmente se le denomina "flujo de bytes" ( por su término en ingles stream ).
La información almacenada en un archivo debe de conservar un formato conocido por las subrutinas que graban o leen información sobre él. Siendo las oraciones afirmativas la forma de transmitir información; se debe encontrar la forma de almacenarlas de forma eficiente para recuperar la información que se requiera en el momento en que se necesita. Para ellos se pueden describir las siguientes normas informales:
* Cada archivo almacena un tipo de enunciado específico, es decir solo almacena enunciados que tengan la misma estructura. Por ejemplo, el archivo UNO.TXT almacena oraciones que dicen información del nombre, fecha de nacimiento y antiguedad de un empleado; por tanto su contenido es algo parecido a lo siguiente:
Jonas Dominguez Ruiz nació el 14 de enero de 1977 y lleva 5 años trabajando en la compañia
Ernestina Jimenez Ruiz nació el 4 de diciembre de 1975 y lleva 2 años trabajando en la compañia
Tomas Esocol Meza nació el 7 de febrero de 1979 y lleva 6 años trabajando en la compañia
...
Esto facilita la recuperación de información, porque solo se busca en un archivo un tipo de oración. Si se mezclará el contenido de un archivo con oraciones con distinta estructura, la subrutina que lee el archivo tendrá muchas condicionales para poder abarcar todos los posibles formatos que pueda contener un archivo. Esto no hace eficiente las subrutinas, ya que si se repiten los formatos de enunciados en varios archivos, las subrutinas podrían repetir código para la lectura o escritura de información.
* Solo se almacenan los datos clave del enunciado. No tiene caso almacenar el enunciado completo, solo las partes que varían indicando los datos clave del enunciado, ya que los datos que no cambian son parte del "formato" o "plantilla" del enunciado. Se especifica un símbolo especial para separar estos datos clave; este símbolo debe de ser distinto de cualesquiera que pueda introducirse como parte de los datos clave, de no ser así podría confundirse el símbolo como parte de un dato clave. Otro símbolo especial debe de indicar la separación entre enunciados; el usado en el fin de línea.
Para el ejemplo anterior podría indicarse con una coma la separación entre datos clave y los enunciados se separan con fin de línea:
Jonas Dominguez, 14 de enero de 1977, 5
Ernestina Jimenez Ruiz, 4 de diciembre de 1975, 2
Tomas Esocol Meza, 7 de febrero de 1979, 6
Problemáticas de los archivos
Aún siguiendo las normas anteriores el manejo de la información, por medio de este tipo de archivos, se vuelve muy complejo por los siguientes motivos:
* Los enunciados se pueden relacionar unos con otros. Esto es normal porque un archivo puede tener la información personal de los empleados y en otro se puede hablar de su nómina. Volver a escribir la información personal en el archivo de nómina es redundante y el objetivo es reducir al mínimo los recursos usados ( en este caso un recurso es el espacio de almacenamiento ).
* La actualización de los archivos se complica cuando varias personas hacen uso de ellos. Si dos personas manejan el mismo archivo, ¿cómo se comunicarán las modificaciones que haya realizado?, ¿qué seguridad tendrá cada uno de ellos de usar datos que no estan siendo modificados en esos mismos momentos por la otra persona?. Este problema de acceso concurrente a la información ( dos entidades solicitan la misma información en el mimos momento ) es un problema común en las ciencias computacionales y se soluciona por medio de la centralización.
* La recuperación de la información requiere la realización de subrutinas especializadas para cada formato de archivo. Como cada archivo tiene distinta información, son subrutinas distintas las que leen los archivos y entienden su estructura. Esto provoca que se realice muchas veces la programación de las mismas suburtinas de búsqueda, ya que cada archivo tendrá su rutina especializada que puede entender la ifnormación que contiene.
La solución de este problema es definir una estructura general para cualesquier archivo que permita almacenar todo tipo de estructura. Esta estructura general es comúnmente llamada "metaestructura", es una estructura que haya de estructuras. Es decir, es una estructura que permite definir muchos formatos de archivos. Si se logra esta estructura podrá definirse un único juego de subrutinas para buscar información.
Para plantear las soluciones de estas problemáticas se recurre a la generación de un nuevo concepto: Base de datos. Una base de datos es un conjunto de información relacionada entre si; y para especificar esta información se han usado varias estrategías, con el fin de hacer más eficiente las operaciones que son comunes de realizar sobre la información empresarial.
No hay comentarios:
Publicar un comentario
Are you ready?