Rocket U2

Last updated
Rocket U2 Product Family
Developer(s) Rocket Software
Initial release1987
Stable release
UniData 8.1, UniVerse 12.1.1, SB+ 6.5.6, Web DE 5.1.2 / January 7, 2022;2 years ago (2022-01-07)
Written in C, C++, UniBasic, Python
Platform Linux, Unix, Windows
Type MultiValue
License Proprietary
Website rocketsoftware.com/u2

Rocket U2 is a suite of database management (DBMS) and supporting software now owned by Rocket Software. It includes two MultiValue database platforms: UniData and UniVerse. [1] Both of these products are operating environments which run on current Unix, Linux and Windows operating systems. [2] [3] They are both derivatives of the Pick operating system. [4] The family also includes developer and web-enabling technologies including SB/XA (sometimes known as SB+ or SystemBuilder), U2 Web Development Environment (WebDE), UniObjects connectivity API and wIntegrate terminal emulation software. [1]

Contents

History

UniVerse was originally developed by VMark Software and UniData was originally developed by the Unidata Corporation. Both Universe and Unidata are used for vertical application development and are embedded into the vertical software applications. In 1997, the Unidata Corporation merged with VMark Systems to form Ardent Software. [5] In March 2000, Ardent Software was acquired by Informix. [5] IBM subsequently acquired the database division of Informix in April 2001, [6] making UniVerse and UniData part of IBM's DB2 product family. IBM subsequently created the Information Management group of which Data Management is one of the sub-areas under which the IBM U2 family comprised UniData and UniVerse along with the tools, SystemBuilder Extensible Architecture (SB/XA), U2 Web Development Environment (U2 Web DE) and wIntegrate.

On 1 October 2009 it was announced that Rocket Software had purchased the entire U2 portfolio from IBM. [7] [8] The U2 portfolio is grouped under the name RocketU2.

System structure

Accounts

Systems are made of one or more accounts. Accounts are directories stored on the host operating system that initially contain the set of files needed for the system to function properly. This includes the system's VOC (vocabulary) file that contains every command, filename, keyword, alias, script, and other pointers. Each of these classes of VOC entries can also be created by a user.

Files

Files are similar to tables in a relational database in that each file has a unique name to distinguish it from other files and zero to multiple unique records that are logically related to each other.

Files are made of two parts: a data file and a file dictionary (DICT). The data file contains records that store the actual data. The file dictionary may contain metadata to describe the contents or to output the contents of a file.

Hashed files

For hashed files, a U2 system uses a hashing algorithm to allocate the file's records into groups based on the record IDs. When searching for data in a hashed file, the system only searches the group where the record ID is stored, making the search process more efficient and quicker than searching through the whole file.

Nonhashed files

Nonhashed files are used to store data with little or no logical structure such as program source code, XML or plain text. This type of file is stored as a subdirectory within the account directory on the host operating system and may be read or edited using appropriate tools.

Records

Files are made of records, which are similar to rows within tables of a relational database. Each record has a unique key (called a "record ID") to distinguish it from other records in the file. These record IDs are typically hashed so that data can be retrieved quickly and efficiently.

Records (including record IDs) store the actual data as pure ASCII strings; there is no binary data stored in U2. For example, the hardware representation of a floating-point number would be converted to its ASCII equivalent before being stored. Usually these records are divided into fields (which are sometimes called "attributes" in U2). Each field is separated by a "field mark" (hexadecimal character FE).

Thus this string:

123-45-6789^JOHN JONES^jjones@example.com^432100^...

might represent a record in the EMPLOYEE file with 123-45-6789 as the Record ID, JOHN JONES as the first field, jjones@example.com as the second field and $4321.00 as a monthly salary stored in the third field. (The up-arrow (^) above is the standard Pick notation of a field mark; that is, xFE).

Thus the first three fields of this record, including the record ID and trailing field mark, would use 49 bytes of storage. A given value uses only as many bytes as needed. For example, in another record of the same file, JOHN JONES (10 bytes) may be replaced by MARJORIE Q. HUMPERDINK (21 bytes) yet each name uses only as much storage as it needs, plus one for the field mark.

Fields may be broken down into values and even subvalues. Values are separated by value marks (character xFD); subvalues are separated by subvalue marks (character xFC). Thus, if John Jones happened to get a second email address, the record may be updated to:

123-45-6789^JOHN JONES^jjones@example.com]johnnyjones@example.net^432100^...

where the close bracket (]) represents a value mark.

Since each email address can be the ID of a record in separate file (in SQL terms, an outer join; in U2 terms, a "translate"), this provides the reason why U2 may be classified as a MultiValued database.

Data

Raw information is called Data. A record is a set of logical grouped data. e.g. an employee record will have data stored in the form of fields/attributes like his name, address etc.

Programmability

Both UniVerse and UniData have a structured BASIC language (UniVerse Basic and UniBasic, respectively), similar to Pick/BASIC which naturally operates on the structures of the MultiValue database. They also have a structured database query language (RetrieVe and UniQuery) used to select records for further processing and for ad hoc queries and reports.

RocketU2 provides a set of Client Tools to allow software developers to access U2 databases from other software languages. [9]

Client Tool interfaces include:

Security

Both UniVerse and UniData support TLS transport level data encryption and record and file level encryption of data at rest using OpenSSL. Additional API encryption functionality is also available to allow custom solutions or meet specific regulatory requirements.

Professional certification

RocketU2 offers three professional certification designations related to the U2 product family. [10]

Web-based applications for U2 data

Rocket Software Universe and Unidata have limited ability to create web-based front-ends to Universe/UniData content. Since Rocket Software provides SQL access to its database products, a SQL-based product can be used to build a web-based UI to the databases; regardless of using Files or Tables in U2. A third-party application framework, can be used to build such web interfaces.

See also

Notes

  1. 1 2 'U2 Product Family', Rocket Software
  2. 'U2 Product Matrix' Rocket Software
  3. 'UniVerse System Description, Version 10.3' page 1-3, Rocket Software
  4. 'UniVerse Guide for Pick Users, Version 10.3' page 1-3, Rocket Software
  5. 1 2 'Ardent Definition', PC Magazine
  6. 'Informix Definition' PC Magazine
  7. 'Rocket Software U2 Acquisition Announcement', Rocket Software
  8. 'Rocket Software to purchase U2 from IBM', International Spectrum
  9. 'Client Tools', Rocket Corporation
  10. 'U2 Certifications', Rocket Software

Related Research Articles

A relational database is a 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 relational database systems are equipped with the option of using SQL for querying and updating the database.

<span class="mw-page-title-main">Informix</span> Database management software product family

Informix is a product family within IBM's Information Management division that is centered on several relational database management system (RDBMS) and multi-model database offerings. The Informix products were originally developed by Informix Corporation, whose Informix Software subsidiary was acquired by IBM in 2001.

<span class="mw-page-title-main">Ingres (database)</span>

Ingres Database is a proprietary SQL relational database management system intended to support large commercial and government applications.

<span class="mw-page-title-main">IBM Db2</span> Relational model database server

Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON and XML. The brand name was originally styled as DB/2, then DB2 until 2017 and finally changed to its present form.

Informix-4GL is a 4GL programming language developed by Informix during the mid-1980s. At the time of its initial release in 1986, supported platforms included Microsoft Xenix, DEC Ultrix, Altos 2086, AT&T 3B2, AT&T 3B5, AT&T 3B20 and AT&T Unix PC.

FileMaker is a cross-platform relational database application developed by Claris International, a subsidiary of Apple Inc. It integrates a database engine with a graphical user interface (GUI) and security features, allowing users to visually modify a database. Versions for desktops, servers, iOS and web-delivery have been released.

Adabas, a contraction of “adaptable database system," is a database 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, Unix, and Windows.

The Pick Operating System, also known as the Pick System or simply Pick, is a demand-paged, multi-user, virtual memory, time-sharing computer operating system based around a MultiValue database. Pick is used primarily for business data processing. It is named after one of its developers, Dick Pick.

<span class="mw-page-title-main">Comma-separated values</span> File format used to store data

Comma-separated values (CSV) is a text file format that uses commas to separate values. A CSV file stores tabular data in plain text, where each line of the file typically represents one data record. Each record consists of the same number of fields, and these are separated by commas in the CSV file. If the field delimiter itself may appear within a field, fields can be surrounded with quotation marks.

<span class="mw-page-title-main">IDMS</span>

The Integrated Database Management System (IDMS) is a network model (CODASYL) database management system for mainframes. It was first developed at B.F. Goodrich and later marketed by Cullinane Database Systems. Since 1989 the product has been owned by Computer Associates, who renamed it Advantage CA-IDMS and later simply to CA IDMS. In 2018 Broadcom acquired CA Technologies, renaming it back to IDMS.

The following tables compare general and technical information for a number of relational database management systems. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.

A table is a collection of related data held in a table format within a database. It consists of columns and rows.

IBM InfoSphere DataStage is an ETL tool and part of the IBM Information Platforms Solutions suite and IBM InfoSphere. It uses a graphical notation to construct data integration solutions and is available in various versions such as the Server Edition, the Enterprise Edition, and the MVS Edition. It uses a client-server architecture. The servers can be deployed in both Unix as well as Windows.

Microsoft Identity Integration Server (MIIS) is an identity management (IdM) product offered by Microsoft. It is a service that aggregates identity-related information from multiple data-sources. The goal of MIIS is to provide organizations with a unified view of a user's/resources identity across the heterogeneous enterprise and provide methods to automate routine tasks.

A MultiValue database is a type of NoSQL and multidimensional database, typically considered synonymous with PICK, a database originally developed as the Pick operating system.

SB/XA is a 4GL development and runtime environment originally written for the Pick family of computer databases/environments and now part of the Rocket U2 software suite.

IBM Data magazine is a U.S.-based custom, online magazine published by TDA Group for IBM Corp. With a worldwide readership of more than 100,000, the magazine provides how-to information about Db2, Informix, UniVerse, and UniData, along with coverage of related tools, software, and solutions.

An embedded database system is a database management system (DBMS) which is tightly integrated with an application software; it is embedded in the application. It is a broad technology category that includes:

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.

<span class="mw-page-title-main">Distributed Data Management Architecture</span> Open, published architecture for creating, managing and accessing data on a remote computer

Distributed Data Management Architecture (DDM) is IBM's open, published software architecture for creating, managing and accessing data on a remote computer. DDM was initially designed to support record-oriented files; it was extended to support hierarchical directories, stream-oriented files, queues, and system command processing; it was further extended to be the base of IBM's Distributed Relational Database Architecture (DRDA); and finally, it was extended to support data description and conversion. Defined in the period from 1980 to 1993, DDM specifies necessary components, messages, and protocols, all based on the principles of object-orientation. DDM is not, in itself, a piece of software; the implementation of DDM takes the form of client and server products. As an open architecture, products can implement subsets of DDM architecture and products can extend DDM to meet additional requirements. Taken together, DDM products implement a distributed file system.