Adabas , una contracción de “sistema de base de datos adaptable”, [1] [2] es un paquete de base de datos desarrollado por Software AG para ejecutarse en mainframes de IBM. Fue lanzado en 1971 como una base de datos no relacional [3] . A partir de 2019, Adabas se comercializa [4] para su uso en una gama más amplia de plataformas, incluidas Linux , Unix y Windows . [5]
Adabas puede almacenar múltiples relaciones de datos en la misma tabla.
Inicialmente lanzado por Software AG en 1971 [6] en sistemas mainframe de IBM que utilizan DOS/360 , OS/MFT u OS/MVT , Adabas está actualmente disponible en una variedad de sistemas empresariales, incluidos BS2000 , z/VSE , z/OS , Unix , Linux y Microsoft Windows . [7] Adabas se utiliza con frecuencia junto con el lenguaje de programación Natural de Software AG; muchas aplicaciones que utilizan Adabas como base de datos en el back-end se desarrollan con Natural. En 2016, Software AG anunció que Adabas y Natural serían compatibles hasta el año 2050 y más allá. [8]
Adabas es uno de los tres principales paquetes DBMS de lista invertida ; los otros dos son Model 204 de Computer Corporation of America y Datacom/DB de ADR. [9]
Desde la introducción de Natural [10] [11] en 1979 , la popularidad de las bases de datos Adabas ha crecido. En 1990, SAS [12] ya era compatible con Adabas.
En un informe técnico de 2015, IBM afirmó que "las aplicaciones escritas en una base de datos prerrelacional, como Adabas, ya no son comunes y no siguen los estándares aceptados de la industria de TI". [13] Sin embargo, una base de datos Adabas se puede diseñar de acuerdo con el modelo relacional. Si bien existen herramientas y servicios para facilitar la conversión de Adabas a varias bases de datos relacionales, [14] [15] dichas migraciones suelen ser costosas. [16] [17]
Los procesadores de propósito especial zIIP (System z Integrated Information Processor) de IBM permiten "acceso SQL directo y en tiempo real a Adabas" (aunque los datos todavía puedan estar almacenados en un formato no relacional). [18]
Adabas es un acrónimo de A daptable Da ta Bas e System [ 19] (originalmente escrito en mayúsculas; hoy solo se usa la inicial en mayúscula para el nombre del producto).
Adabas es una base de datos de lista invertida , con las siguientes características o terminología:
Adabas se utiliza normalmente en aplicaciones que requieren grandes volúmenes de procesamiento de datos o en entornos de procesamiento analítico en línea de gran volumen de transacciones . [21]
El acceso a Adabas se realiza normalmente a través de módulos Natural que utilizan una de varias instrucciones Natural, entre ellas READ, FIND e HISTOGRAM. Estas instrucciones generan comandos adicionales, en segundo plano, como abrir y cerrar archivos. Los datos de Adabas también se pueden recuperar mediante llamadas directas. [ cita requerida ]
BUSCAR EMPLEADO CON NOMBRE = 'JONES' O = 'BAKER' Y CIUDAD = 'BOSTON' HASTA 'NUEVA YORK' Y CIUDAD NE 'CHAPEL HILL' ORDENADO POR NOMBRE DONDE SALARIO < 28000 MOSTRAR NOMBRE NOMBRE CIUDAD SALARIO FIN-BUSCAR FIN
En el programa anterior, los criterios de búsqueda especificados en la cláusula WITH son procesados por Adabas, mientras que el filtrado adicional indicado por la cláusula WHERE lo realiza Natural.
Salida del programa:
NOMBRE APELLIDO CIUDAD SALARIO --------------------------------- BAKER PAULINE DERBY 4450 JONES MARTHA KALAMAZOO 21000 JONES KEVIN DERBY 7000
Natural es un lenguaje de programación propietario de cuarta generación . No formaba parte de la versión inicial de Adabas (1971). [22]
Los programas naturales pueden "ejecutarse" de forma interpretativa o "ejecutarse" como objetos compilados. [23] Los programas compilados pueden utilizar más directamente los servicios del sistema operativo y ejecutarse más rápido.
Los defensores dicen que Natural ha evolucionado desde un competidor de COBOL a "estar en competencia con Java como lenguaje de elección para escribir servicios ( SOA )". [24]
Natural, que incluye un editor de pantalla incorporado, tiene dos componentes principales: el sistema y el lenguaje.
El sistema es el vehículo central de comunicación entre el usuario y todos los demás componentes del entorno de procesamiento.
El lenguaje está estructurado y es menos procedimental que los lenguajes convencionales.
Los objetos naturales (programas, mapas, áreas de datos, etc.) se almacenan en bibliotecas, similares en estructura a un directorio DOS, y pueden nombrarse con identificadores de hasta 8 caracteres.
Los objetos, incluso si son de diferentes tipos, no pueden tener el mismo nombre (dentro de la misma biblioteca).
Natural permite la ejecución en línea y por lotes. Los programas por lotes pueden leer/escribir hasta 32 archivos de trabajo e imprimir hasta 32 informes. Natural también admite un depurador interactivo que permite a los desarrolladores recorrer el código paso a paso y visualizar el contenido de las variables.
Existen versiones para z/OS, z/VSE, BS2000/OS, Linux, Unix y Windows. [25]
Natural no sólo funciona con archivos Adabas, sino que también es compatible con Oracle , DB2 y otros.
Código de muestra:
DEFINIR DATOS LOCAL 01 EMPLEADOS VISTA DE EMPLEADOS 02 SALARIO ( 1 ) FIN-DEFINE LEER EMPLEADOS POR NOMBRE AL FINAL DE LA VISUALIZACIÓN DE DATOS MÍN ( EMPLEADOS . SALARIO ( 1 )) ( EM = ZZZ , ZZZ , ZZ9 ) PROMEDIO ( EMPLEADOS . SALARIO ( 1 )) ( EM = ZZZ , ZZZ , ZZ9 ) MÁXIMO ( EMPLEADOS . SALARIO ( 1 )) ( EM = ZZZ , ZZZ , ZZ9 ) FIN-FINDATA FIN-LECTURA FIN
Producción:
Página 1 18-08-22 16:42:22 ANUAL ANUAL ANUAL SALARIO SALARIO SALARIO ----------- ----------- ----------- 0 240.976 6.380.000
El lenguaje está fuertemente tipado y utiliza tipificación explícita de variables, que pueden ser una de las siguientes:
El archivo del sistema es un archivo Adabas reservado para uso de Natural, que contiene, entre otros, lo siguiente:
El sistema de archivos no se limita a Adabas. Natural también puede almacenar programas en VSAM en sistemas operativos mainframe. Natural utiliza el sistema de archivos en Windows y en varias implementaciones de Unix.
Los objetos naturales se identifican mediante nombres de hasta 8 caracteres, el primero de los cuales debe ser alfabético.
El editor de programas Natural permite la numeración de líneas en filas de hasta 72 posiciones. Las líneas se numeran con 4 dígitos. Natural genera esta numeración durante la creación del programa. Los números de línea los utilizan el compilador y los editores y pueden tener importantes funciones lógicas en los programas.
Los comentarios se pueden incluir de dos maneras:
Ejemplos:
0010 * Estas dos líneas (0010 y 0020)0020 ** son comentarios.0030 FORMATO LS = 80 /* Además de esta parte de la línea (0030)0040 * NOTA: El formato "/*" no tiene espacios entre la barra diagonal y el asterisco...0200 FIN
"END" o "." indica el final de un programa.
Un ejemplo de código Hola Mundo:
*Hola Mundo en NATURALESCRIBE '¡Hola mundo!'FIN
La mayoría de las instalaciones naturales incluyen productos complementarios como:
ADABAS fue uno de los tres principales DBMS de lista invertida, siendo los otros dos Model 204 de Computer Corporation of America y Datacom/DB de ADR.