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 IBM. Se lanzó en 1971 como una base de datos no relacional [3] . En 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.
Lanzado inicialmente por Software AG en 1971 [6] en sistemas mainframe 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 frecuentemente 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 recibirían soporte hasta el año 2050 y más allá. [8]
Adabas es uno de los tres principales paquetes DBMS de la lista invertida , los otros dos son el Modelo 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] apoyaba a Adabas.
En un documento técnico de 2015, IBM dijo que "las aplicaciones escritas en una base de datos pre-relacional, 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 aún puedan almacenarse en una forma no relacional). [18]
Adabas es un acrónimo de A daptable Data Ba se System [19] ( originalmente escrito en mayúsculas ; hoy solo se usa la mayúscula inicial 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 altas transacciones . [21]
El acceso a Adabas normalmente se realiza a través de módulos naturales que utilizan una de varias declaraciones naturales, incluidas LEER, ENCONTRAR e HISTOGRAMA. Estas declaraciones generan comandos adicionales, encubiertos, como abrir y cerrar archivos. Los datos de Adabas también se pueden recuperar mediante llamadas directas. [ cita necesaria ]
ENCONTRAR EMPLEADO CON NOMBRE = 'JONES' O = 'BAKER' Y CIUDAD = 'BOSTON' HASTA 'NUEVA YORK' Y CIUDAD NE 'CHAPEL HILL' ORDENADOS POR NOMBRE DONDE SALARIO < 28000 MOSTRAR NOMBRE PRIMER NOMBRE CIUDAD SALARIO FINAL ENCONTRAR FINAL
En el programa anterior, los criterios de búsqueda especificados en la cláusula FROM son procesados por Adabas, mientras que el filtrado adicional indicado por la cláusula WHERE lo realiza Natural.
Salida del programa:
NOMBRE NOMBRE 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 del lanzamiento inicial de Adabas (1971). [22]
Los programas naturales pueden "ejecutarse" interpretativamente 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.
Sus defensores dicen que Natural ha pasado de ser un competidor de COBOL a "competir con Java como lenguaje de elección para servicios de escritura ( SOA )". [24]
Natural, que incluye un editor integrado orientado a pantalla, 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 es estructurado y menos procedimental que los lenguajes convencionales.
Los objetos naturales (programas, mapas, áreas de datos, etc.) se almacenan en bibliotecas, de estructura similar a un directorio de DOS, y pueden denominarse con identificadores de hasta 8 caracteres.
Los objetos, aunque sean de distintos tipos, no pueden tener el mismo nombre (dentro de la misma biblioteca).
Natural proporciona ejecución tanto en línea como 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 y mostrar el contenido de las variables.
Existen versiones para z/OS, z/VSE, BS2000/OS, Linux, Unix y Windows. [25]
Natural no solo 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 ) FINAL DEFINIR LEER EMPLEADOS POR NOMBRE AL FINAL DE LA PANTALLA DE DATOS MIN ( EMPLEADOS . SALARIO ( 1 ) ) ( EM = ZZZ , ZZZ , ZZ9 ) PROMEDIO ( EMPLEADOS . SALARIO ( 1 ) )) ( EM = ZZZ , ZZZ , ZZ9 ) MAX ( EMPLEADOS . SALARIO ( 1 )) ( EM = ZZZ , ZZZ , ZZ9 ) FIN-ENDDATOS FINAL-LECTURA FINAL
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 tipos explícitos 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 archivo del sistema 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 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 fuentes en filas de hasta 72 posiciones. Las líneas están numeradas con 4 dígitos. Esta numeración la genera Natural durante la creación del programa. Números de línea utilizados por el compilador y los editores, y pueden tener funciones lógicas importantes en los programas.
Los comentarios se pueden incluir de dos formas:
Ejemplos:
0010 * Estas dos líneas (0010 y 0020)0020 ** son comentarios.0030 FORMAT LS = 80 /* Además de esta parte de la línea (0030)0040 * NOTA: El formulario "/*" no tiene espacios entre la barra diagonal y el asterisco...0200 FIN
"FIN" o "." indica el final de un programa.
Un ejemplo de código Hola Mundo:
* Hola Mundo en NATURALESCRIBA '¡Hola mundo!'FIN
La mayoría de las instalaciones de Natural incluyen productos complementarios como:
ADABAS era ... uno de los tres principales DBMS de lista invertida, los otros dos eran el Modelo 204 de Computer Corporation of America y Datacom/DB de ADR.