HOME

TheInfoList



OR:

IBM Informix C-ISAM (also C-ISAM or cisam) is an
X/Open X/Open group (also known as the Open Group for Unix Systems and incorporated in 1987 as X/Open Company, Ltd.) was a consortium founded by several European UNIX systems manufacturers in 1984 to identify and promote open standards in the field of info ...
standards-compliant
Application programming interface An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how t ...
(API) to an Indexed Sequential Access Method or
ISAM ISAM (an acronym for indexed sequential access method) is a method for creating, maintaining, and manipulating computer files of data so that records can be retrieved sequentially or randomly by one or more keys. Indexes of key fields are mainta ...
.


Description

C-ISAM is an
API An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software Interface (computing), interface, offering a service to other pieces of software. A document or standa ...
(Application Programming Interface) of
C Programming Language ''The C Programming Language'' (sometimes termed ''K&R'', after its authors' initials) is a computer programming book written by Brian Kernighan and Dennis Ritchie, the latter of whom originally designed and implemented the language, as well as ...
functions for managing data files organised with a
B+ tree A B+ tree is an m-ary tree with a variable but often large number of children per node. A B+ tree consists of a root, internal nodes and leaves. The root may be either a leaf or a node with two or more children. A B+ tree can be viewed as a B- ...
index scheme. C-ISAM provides the underlying file storage mechanism of the
Informix IBM Informix is a product family within IBM's Information Management division that is centered on several relational database management system (RDBMS) offerings. The Informix products were originally developed by Informix Corporation, whose I ...
Standard Engine
Relational Database Management System A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
(RDBMS).


History

C-ISAM was first created by
Informix Corporation Informix Corporation was a software company located in Menlo Park, California. It was a developer of relational database software for computers using the Unix, Microsoft Windows, and Apple Macintosh operating systems. Timeline * 1980: Relati ...
in the 1980s. It provided the underlying file storage mechanism for the popular first generation Informix
Relational Database Management System A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
(RDBMS), which allows data manipulation by way of the Structured Query Language (SQL) protocol. This version later became known as the Standard Engine (SE), to distinguish it from Informix's later database engine which used Random Sequential Access Method ( RSAM). Informix initially called this the "Turbo" engine, but that name was later abandoned in favour of the name "OnLine". Many
computer systems A computer is a machine that can be programmed to Execution (computing), carry out sequences of arithmetic or logical operations (computation) automatically. Modern digital electronic computers can perform generic sets of operations known as C ...
were written using C-ISAM, which was fast and efficient and flexible, while providing effective mechanisms for maintaining
data integrity Data integrity is the maintenance of, and the assurance of, data accuracy and consistency over its entire Information Lifecycle Management, life-cycle and is a critical aspect to the design, implementation, and usage of any system that stores, proc ...
. C-ISAM was also licensed by other software suppliers, for example as the
indexed file An indexed file is a computer file with an index that allows easy random access to any record given its file key. The key must be such that it uniquely identifies a record. If more than one index is present the other ones are called ''alternat ...
handler in early versions of
Micro Focus Micro Focus International plc is a British multinational software and information technology business based in Newbury, Berkshire, England. The firm provides software and consultancy. The company is listed on the London Stock Exchange and is ...
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 us ...
. C-ISAM was primarily used for business applications, which were at the time often written in the C language. For business purposes, development in a low level 3GL such as C could be too slow and error prone, requiring very high skill levels. Another significant limitation was in networked applications, since the use of C-ISAM on a client to access a remote file system resulted in heavy network traffic. Both problems could be resolved by use of the SE to provide an SQL interface to C-ISAM, using Informix's
embedded SQL Embedded SQL is a method of combining the computing power of a programming language and the database Data Manipulation Language, manipulation capabilities of SQL. Embedded SQL statement (programming), statements are SQL statements written inline wi ...
(ESQL/C and ESQL/COBOL) or
4GL A fourth-generation programming language (4GL) is any computer programming language that belongs to a class of languages envisioned as an advancement upon third-generation programming languages (3GL). Each of the programming language generations ai ...
products for client development. The SE could be used on a server to support networked use without the performance penalty. This allowed
programmers A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software. A programmer is someone who writes/creates ...
to focus on business logic, while the
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
and
RDBMS A relational database is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relation ...
took care of error checking and data-type conversion and most importantly,
memory management Memory management is a form of resource management applied to computer memory. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and free it for reuse when ...
. Thus, the direct use of C-ISAM declined, while
4GL A fourth-generation programming language (4GL) is any computer programming language that belongs to a class of languages envisioned as an advancement upon third-generation programming languages (3GL). Each of the programming language generations ai ...
with embedded SQL, became the new darling of business
programmers A computer programmer, sometimes referred to as a software developer, a software engineer, a programmer or a coder, is a person who creates computer programs — often for larger computer software. A programmer is someone who writes/creates ...
. Unfortunately, Informix made some strategic errors by not adapting to the next generation of "Visual" or "GUI based" programming tools. Competitors like
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washing ...
and
Oracle An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination. Description The word '' ...
supplanted these products by vertically integrating theirs, while Informix focused mainly on developing their RDBMS. New use of these products went into decline with the company. As of 2006, they were still in wide use around the world and are also available and supported. Informix was acquired by IBM in April 2001. IBM still recommends the use of the Informix Standard Engine for embedded applications.


See also

*
Embedded system An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded'' as ...
*
Joint Inter-Domain Management Joint Inter-Domain Management (JIDM) task force, jointly sponsored by X/Open and the Network Management Forum, has defined a mapping between SNMP, CMIP and CORBA. The JIDM specification was adopted as a standard by the Open Group in 2000. The ma ...


References


External links


Programmer's Manual
368 pages PDF, for C-ISAM version 7.2, October 2001 {{Portal bar, Computer programming, Technology, Engineering, Science, Electronics, Mathematics Application programming interfaces Computer file formats Computing terminology History of software IBM software Informix C-ISAM Technology consortia