HOME

TheInfoList



OR:

Adabas, a contraction of "adaptable database system", is a
database In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and a ...
package that was developed by Software AG to run on IBM mainframes. It was launched in 1971 as a non-relational database. As of 2019, Adabas is marketed for use on a wider range of platforms, including
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
,
Unix Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
, and
Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
. Adabas can store multiple data relationships in the same table.


History

Initially released by Software AG in 1971 on
IBM mainframe IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the computer market with the 7000 series and the later System/360, followed by the System/370. Current mainframe computers in IBM' ...
systems using
DOS/360 Disk Operating System/360, also DOS/360, or simply DOS, is the discontinued first member of a sequence of operating systems for IBM System/360, System/370 and later mainframes. It was announced by IBM on the last day of 1964, and it was first d ...
, OS/MFT, or OS/MVT, Adabas is currently available on a range of enterprise systems, including BS2000, z/VSE,
z/OS z/OS is a 64-bit operating system for IBM z/Architecture mainframes, introduced by IBM in October 2000. It derives from and is the successor to OS/390, which in turn was preceded by a string of MVS versions.Starting with the earliest: ...
,
Unix Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
,
Linux Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, and
Microsoft Windows Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
. Adabas is frequently used in conjunction with Software AG's programming language
Natural Nature is an inherent character or constitution, particularly of the ecosphere or the universe as a whole. In this general sense nature refers to the laws, elements and phenomena of the physical world, including life. Although humans are part ...
; many applications that use Adabas as a database on the back end are developed with Natural. In 2016, Software AG announced that Adabas and Natural would be supported through the year 2050 and beyond. Adabas is one of the three major inverted list DBMS packages, the other two being Computer Corporation of America’s Model 204 and ADR’s Datacom/DB.


4GL support

Since the 1979 introduction of Natural the popularity of Adabas databases has grown. By 1990, SAS was supporting Adabas.


Non-relational

In a 2015 white paper, IBM said: "applications that are written in a pre-relational database, such as Adabas, are no longer mainstream and do not follow accepted IT industry standards". However, an Adabas database can be designed in accordance with the relational model. While there are tools and services to facilitate converting Adabas to various relational databases, such migrations are usually costly.


Hardware zIIP boost

IBM's
zIIP In IBM System z9 and successor mainframes, the System z Integrated Information Processor (zIIP) is a special purpose processor. It was initially introduced to relieve the general mainframe central processors (CPs) of specific Db2 processing load ...
(System z Integrated Information Processor) special purpose processors permit "direct, real-time SQL access to Adabas" (even though the data may still stored in a non-relational form).


Adabas data model

Adabas is an
acronym An acronym is a type of abbreviation consisting of a phrase whose only pronounced elements are the initial letters or initial sounds of words inside that phrase. Acronyms are often spelled with the initial Letter (alphabet), letter of each wor ...
for Adaptable Data Base System (originally written in all caps; today only the initial cap is used for the product name). Adabas is an inverted list data base, with the following characteristics or terminology: * Works with tables (referred to as files) and rows (referred to as records) as the major organizational units. * Columns (referred to as fields) are components of rows. * No embedded
SQL Structured Query Language (SQL) (pronounced ''S-Q-L''; or alternatively as "sequel") is a domain-specific language used to manage data, especially in a relational database management system (RDBMS). It is particularly useful in handling s ...
engine. SQL access via the Adabas SQL Gateway was introduced through an acquired company, CONNX, in 2004. It provides ODBC, JDBC, and OLE DB access to Adabas and enables SQL access to Adabas using
COBOL COBOL (; an acronym for "common business-oriented language") is a compiled English-like computer programming language designed for business use. It is an imperative, procedural, and, since 2002, object-oriented language. COBOL is primarily ...
programs. * Search facilities may use indexed fields, non-indexed fields, or both. * Does not natively enforce referential integrity constraints, and parent–child relations must be maintained by application code. * Supports two methods of denormalization: repeating groups in a record ("periodic groups") and multiple value fields in a record ("multi-value fields"). Adabas is typically used in applications that require high volumes of
data processing Data processing is the collection and manipulation of digital data to produce meaningful information. Data processing is a form of ''information processing'', which is the modification (processing) of information in any manner detectable by an o ...
or in high-transaction
online analytical processing In computing, online analytical processing (OLAP) (), is an approach to quickly answer multi-dimensional analytical (MDA) queries. The term ''OLAP'' was created as a slight modification of the traditional database term online transaction proces ...
environments. Adabas access is normally through Natural modules using one of several Natural statements including READ, FIND, and HISTOGRAM. These statements generate additional commands, under the covers, like open and close file. Adabas data can also be retrieved via direct calls.


Example of Natural program running against Adabas

FIND EMPLOYEE WITH NAME = 'JONES' OR = 'BAKER' AND CITY = 'BOSTON' THRU 'NEW YORK' AND CITY NE 'CHAPEL HILL' SORTED BY NAME WHERE SALARY < 28000 DISPLAY NAME FIRST-NAME CITY SALARY END-FIND END In the above program, the search criteria specified in the WITH clause is processed by Adabas, whereas the additional filtering indicated by the WHERE clause is performed by Natural. Output of program: NAME FIRST-NAME CITY SALARY --------------------------------- BAKER PAULINE DERBY 4450 JONES MARTHA KALAMAZOO 21000 JONES KEVIN DERBY 7000


Natural (4GL)

Natural is a proprietary
fourth-generation programming language A fourth-generation programming language (4GL) is a high-level programming language, high-level computer programming language that belongs to a class of languages envisioned as an advancement upon third-generation programming languages (3GL). Each ...
. It was not part of the initial (1971) Adabas release. Natural programs can be "run" interpretively or "executed" as compiled objects. Compiled programs can more directly use operating system services, and run faster. Proponents say that Natural has evolved from a competitor of COBOL to "being in competition with Java as language of choice for writing services ( SOA)."


About Natural

Natural, which includes a built-in screen-oriented editor, has two main components: the system and the language. The system is the central vehicle of communication between the user and all other components of the processing environment. The language is structured and less procedural than conventional languages. Natural objects (programs, maps, data areas, etc.) are stored in libraries, similar in structure to a DOS directory, and can be named with identifiers up to 8 characters. Objects, even if they are of different types, cannot have the same name (within the same library). Natural provides both online and batch execution. Batch programs can read/write up to 32 work files and print up to 32 reports. Natural also supports an interactive debugger that allows developers to step through the code and display the contents of variables. Versions exist for z/OS, z/VSE, BS2000/OS, Linux, Unix and Windows.


Language features

Natural works not only with Adabas files, but also supports
Oracle An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination. Descript ...
, DB2, and others. Sample code: DEFINE DATA LOCAL 01 EMPLOYEES VIEW OF EMPLOYEES 02 SALARY (1) END-DEFINE READ EMPLOYEES BY NAME AT END OF DATA DISPLAY MIN (EMPLOYEES.SALARY(1)) (EM=ZZZ,ZZZ,ZZ9) AVER(EMPLOYEES.SALARY(1)) (EM=ZZZ,ZZZ,ZZ9) MAX (EMPLOYEES.SALARY(1)) (EM=ZZZ,ZZZ,ZZ9) END-ENDDATA END-READ END Output:
Page      1                                                  18-08-22  16:42:22
                                                                               
  ANNUAL      ANNUAL      ANNUAL                                               
  SALARY      SALARY      SALARY                                               
----------- ----------- -----------                                            
                                                                               
          0     240,976   6,380,000                                            
The language is strongly-typed, using explicit typing of variables, which may be one of: * Alphanumeric * Numeric Zoned decimal up to 27 total digits, of which a total of 7 may be to the right of decimal point * Packed Decimal, same limits as "Numeric") * Integer (1, 2 or 4 bytes, ranging from -128 to 127 / -32,768 to 32,767 and -2,147,483,648 to 2,147,483,647) * Date * Time (which includes the date) * Logical (True or False) * Binary * Control variable paralleling CICS map attribute * Floating Point (4 or 8 bytes)


The system file

The system file is an Adabas file reserved for use by Natural, which contains, but is not limited to, the following: * All Natural programs, both in source format (programs) and in object format (compiled), grouped in libraries; * File Definition Modules, or Data Definition Modules (DDM), which describe the fields defined within Adabas or other databases supported by Natural as well as userviews, which are fields groupings/subsets; * Natural error messages; * The texts of the Help function. The system file is not limited to Adabas. Natural can also store programs in VSAM on mainframe operating systems. Natural uses the file system on Windows and various Unix implementations.


Programs

Natural objects are identified by names up to 8 characters, the first of which must be alphabetical. The Natural program editor allows source in rows of up to 72 positions. Lines are numbered by 4 digits. This numbering is generated by Natural during program creation. Line numbers used by the compiler and editors, and can have important logical functions in the programs. Comments can be included in two ways: * Full-line comments are identified by a "*" or "**" prefix. * Annotated code lines have a "/*" - everything to its right is a comment. Examples: 0010 * These two lines (0010 and 0020) 0020 ** are comments. 0030 FORMAT LS = 80 /* As well as this part of the line (0030) 0040 * NOTE: The "/*" form has no space between the SLASH and ASTERISK. . . 0200 END "END" or "." indicates the end of a program. A Hello World code example: * Hello World in NATURAL WRITE 'Hello World!' END


Related products

Most Natural installations include add-on products such as: * Natural Security - used to administer security related to Users, Libraries and Files (tables). * Predict - A dictionary used to define and document Files, Relationships, Programs, etc. * Natural Construct - A code generator used to generate Natural applications.


See also

* Adabas D


References


Bibliography

*


External links


ADABAS product home pageADABAS Developer CommunityADABAS Discussion Forum
{{Authority control Proprietary database management systems Software AG IBM mainframe software