ISAM

ImprimirCitar
Método para crear, mantener y manipular archivos de computadora

ISAM (un acrónimo de método de acceso secuencial indexado) es un método para crear, mantener y manipular archivos informáticos de datos para que los registros se puedan recuperar de forma secuencial o aleatoria. por una o más teclas. Los índices de los campos clave se mantienen para lograr una recuperación rápida de los registros de archivos necesarios en los archivos indexados. IBM desarrolló originalmente ISAM para computadoras centrales, pero hay implementaciones disponibles para la mayoría de los sistemas informáticos.

El término ISAM se utiliza para varios conceptos relacionados:

  • El producto IBM ISAM y el algoritmo que emplea.
  • Un sistema de bases de datos donde un desarrollador de aplicaciones utiliza directamente una interfaz de programación de aplicaciones para índices de búsqueda con el fin de localizar registros en archivos de datos. En cambio, una base de datos relacional utiliza un optimizador de consultas que selecciona automáticamente índices.
  • Un algoritmo de indexación que permite el acceso secuencial y clave a los datos. La mayoría de las bases de datos utilizan algunas variaciones del árbol B para este propósito, aunque las implementaciones IBM ISAM y VSAM originales no lo hicieron.
  • En general, cualquier índice para una base de datos. Los índices son utilizados por casi todas las bases de datos.

Organización

En un sistema ISAM, los datos se organizan en registros que se componen de campos de longitud fija, originalmente almacenados secuencialmente en secuencia clave. Los conjuntos secundarios de registros, conocidos como índices, contienen punteros a la ubicación de cada registro, lo que permite recuperar registros individuales sin tener que buscar en todo el conjunto de datos. Esto difiere de las bases de datos de navegación contemporáneas, en las que los punteros a otros registros se almacenaban dentro de los propios registros. La mejora clave en ISAM es que los índices son pequeños y se pueden buscar rápidamente, posiblemente en su totalidad en la memoria, lo que permite que la base de datos acceda solo a los registros que necesita. Las modificaciones adicionales a los datos no requieren cambios en otros datos, solo la tabla y los índices en cuestión.

Cuando se crea un archivo ISAM, los nodos de índice son fijos y sus punteros no cambian durante las inserciones y eliminaciones que ocurren más tarde (luego solo cambia el contenido de los nodos hoja). Como consecuencia de esto, si las inserciones en algún nodo hoja exceden la capacidad del nodo, los nuevos registros se almacenan en cadenas de desbordamiento. Si hay muchas más inserciones que eliminaciones de una tabla, estas cadenas de desbordamiento pueden volverse muy grandes gradualmente y esto afecta el tiempo requerido para recuperar un registro.

Las bases de datos relacionales se pueden construir fácilmente en un marco ISAM con la adición de lógica para mantener la validez de los enlaces entre las tablas. Normalmente, el campo que se utiliza como enlace, la clave externa, se indexará para una búsqueda rápida. Si bien esto es más lento que simplemente almacenar el puntero a los datos relacionados directamente en los registros, también significa que los cambios en el diseño físico de los datos no requieren ninguna actualización de los punteros; la entrada seguirá siendo válida.

ISAM es fácil de entender e implementar, ya que consiste principalmente en el acceso directo a un archivo de base de datos. La compensación es que cada máquina cliente debe administrar su propia conexión con cada archivo al que accede. Esto, a su vez, genera la posibilidad de inserciones conflictivas en esos archivos, lo que genera un estado de base de datos inconsistente. Para evitar esto, algunas implementaciones de ISAM proporcionan la funcionalidad de bloqueo de registros individuales o de archivos completos. El bloqueo de múltiples registros corre el riesgo de interbloqueo a menos que se siga estrictamente un esquema de prevención de interbloqueo. Los problemas de bloqueo e interbloqueo generalmente se resuelven con la adición de un marco de trabajo cliente-servidor que ordena las solicitudes de los clientes y mantiene el orden. Algunas implementaciones cliente-servidor de ISAM proporcionan sistemas completos de gestión de transacciones ACID. Estos son los conceptos básicos detrás de un sistema de gestión de base de datos (DBMS), que es una capa de cliente sobre el almacén de datos subyacente.

ISAM fue reemplazado en IBM con una metodología llamada VSAM (método de acceso al almacenamiento virtual). Aún más tarde, IBM desarrolló SQL/DS y luego Db2, que IBM promueve como su principal sistema de gestión de bases de datos. VSAM es el método de acceso físico utilizado en Db2.

Abrir VMS

El sistema operativo OpenVMS utiliza el sistema de archivos Files-11 junto con RMS (Record Management Services). RMS proporciona una capa adicional entre la aplicación y los archivos en el disco que brinda un método consistente de organización de datos y acceso a través de múltiples lenguajes 3GL y 4GL. RMS proporciona cuatro métodos diferentes para acceder a los datos; acceso secuencial, relativo al número de registro, acceso a la dirección del archivo de registro y acceso indexado.

El método de acceso indexado para leer o escribir datos solo proporciona el resultado deseado si, de hecho, el archivo está organizado como un archivo ISAM con las claves apropiadas definidas previamente. El acceso a los datos a través de la(s) clave(s) previamente definida(s) es extremadamente rápido. Se admiten claves múltiples, claves superpuestas y compresión de claves dentro de las tablas hash. Se proporciona una utilidad para definir/redefinir claves en archivos existentes. Los registros se pueden eliminar, aunque "recolección de basura" se realiza a través de una utilidad separada.

Consideraciones de diseño

Los ingenieros de IBM diseñaron el sistema ISAM para utilizar una cantidad mínima de memoria informática. La compensación fue que el canal de entrada/salida, la unidad de control y el disco se mantuvieron más ocupados. Un archivo ISAM consiste en una colección de registros de datos y dos o tres niveles de índice. El índice de pista contiene la clave más alta para cada pista de disco en el cilindro que indexa. El índice de cilindro almacena la clave más alta en un cilindro y la dirección de disco del índice de pista correspondiente. Un índice maestro opcional, generalmente utilizado solo para archivos grandes, contiene la clave más alta en una pista de índice de cilindro y la dirección de disco de ese índice de cilindro. Una vez que se carga un archivo, los registros de datos no se mueven; los registros insertados se colocan en un área de desbordamiento separada. Para localizar un registro por clave, se buscan los índices en el disco mediante un complejo programa de canal automodificable. Esto aumentó el tiempo ocupado del canal, la unidad de control y el disco. Con el aumento del tamaño de la memoria física y virtual en los sistemas posteriores, esto se consideró ineficiente y VSAM se desarrolló para alterar el equilibrio entre el uso de la memoria y la actividad del disco.

El uso de ISAM de programas de canal automodificables más tarde causó dificultades para la compatibilidad con CP-67 de OS/360, ya que CP-67 copió un programa de canal completo en la memoria fija cuando se inició y tradujo la operación de E/S. direcciones virtuales a direcciones reales.

Implementaciones estilo ISAM

  • Administrador de bases de datos de Advantage Database Server
  • Berkeley DB
  • Btrieve
  • FairCom DB
  • C-ISAM
  • Base de datos de propiedad DataFlex
  • dBase y productos relacionados Clipper y Foxpro
  • Digital Equipment Corporation Servicios de Gestión de Registros
  • Escriba es el método de acceso estructurado de archivos HP Tandem
  • Motor de almacenamiento extensible
  • Access Database Engine (ACE y anteriormente JET) utilizado por Microsoft Access
  • MySQL implementa y extiende ISAM como MyISAM
  • Paradox
  • pblIsam GPL implementación escrita en C
  • Raima database manager
  • Superbase database family
  • dbm bases de datos DBM y Flat File trabajando en tándem

Contenido relacionado

Buscador de dirección automático

Un goniómetro automático es un instrumento de radionavegación marino o aéreo que muestra de forma automática y continua la demora relativa del barco o...

Amplificador instrumental

Un amplificador de instrumentación es un tipo de amplificador diferencial que ha sido equipado con un búfer de entrada amplificadores, que eliminan la...

Destructor de bombarderos

destructores de bombarderos eran aviones interceptores de la Segunda Guerra Mundial destinados a destruir aviones bombarderos enemigos. Los destructores de...
Más resultados...
Tamaño del texto:
Copiar