Rocket U2: The Big Picture
Updated: 15 June 2011
Rocket U2 UniData® and UniVerse® (U2) databases provide cost-effective and robust databases for embedding in vertical applications that need to support extended data structures. The U2 extended relational or MultiValue (MV) model uses three-dimensional tables that consolidate data within a single record. The record is represented as a dynamic array. An integrated development language provides world-class string handling constructs to quickly traverse the record structure. All, or a subset of the data, can be pulled with a simple query and a single I/O, eliminating excessive disk reads. This provides a much simpler, intuitive and highly efficient data storage with fewer tables to administer.
The Rocket U2 databases support both a pure relational, and a nested relational model or non-first normal form (NF2) model simultaneously. They can therefore support the simple to complex data structures demanded by todays business applications. For example, the Rocket U2 nested relational databases are ideally suited to represent the complex data structures of banking transactions, work orders, and point of sale systems.
The Rocket U2 databases are fully variable length, which provides smaller columns, rows and tables. This results in faster data access and considerably less administration. In addition, Rocket U2 tables have the unique ability to grow and shrink as needed without the need for a DBA to take the tables off line for maintenance. The Rocket U2 extended RDBMS, stores data as strings, which provides the developer with an extremely powerful and flexible tool called the "dynamic array". It is the strength of this dynamic array concept that makes the building of complex and high performance business applications found in institutions today such as libraries, hospitals, manufacturing, distribution, etc., possible.
As an example, lets look at electronically storing the information found on a simple Rolodex card index.
Key: Customer_ID Col1: Company Col2: Contact (multiple values) Col3: Phone (multiple values, associated with Contact)
1111 Amoco Jim Smith}Bob Brown 713-555-1212|713-479-4444}713-267-1471
SELECT NAME, PHONE FROM CONTACTS WHERE COMPANY = "Amoco"
NAME PHONE Jim Smith 713-555-1212 713-479-4444 Bob Brown 713-267-1471
Traditional relational databases, for the most part, store data as simple rows and columns, much like a spreadsheet. To compare a traditional RDBMS with the Rocket U2 extended RDBMS, consider the Rolodex™ example from the previous section. A fully normalized view of the same information would look as follows:
company_contact (Company_ID,Contact_ID) contact_phone (Contact_ID, PhoneID) phone_number (Phone_ID, Phone_Number) company (Company_ID, Company_Name) contact (Contact_ID, Contact_Name)
SELECT C.CONTACT_NAME, E.PHONE_NUMBER FROM COMPANY A, COMPANY_CONTACT B, CONTACT C, CONTACT_PHONE D, PHONE_NUMBER E WHERE A.COMPANY_NAME = "Amoco" AND A.COMPANY_ID = B.COMPANY_ID AND B.CONTACT_ID = D.CONTACT_ID AND D.PHONE_ID = E.PHONE_ID
CONTACT_NAME PHONE_NUMBER Jim Smith 713-555-1212 Jim Smith 713-479-4444 Bob Brown 713-267-1471
The extended relational database allows data to be stored in a "business" view with very few tables required, resulting in more data accessed with logical read operation. RDBMS developers must "normalize" the data, which typically results in a greater number of tables required to represent the same "business" view. More tables require more reads, which results in slower application performance. The slowest operation of a computer system is the movement of the disk I/O head(s) to read and write data. To mitigate this, 1NF developers often design a fully normalized database but then de-normalize for performance. The latest versions of 1NF databases often support a single "nested table" implemented as a view. U2 databases allow an unlimited number of multi-value fields or "nested tables".
In our experience, applications developed using the extended relational database are far less difficult to build, and are easier to understand conceptually than those built using a traditional RDBMS (cf. Rolodex™ card example). Typically, developers using the Rocket U2 extended RDBMS as the foundation of their application can easily transfer the business model (banking transaction, point of sale, etc) directly into extended relational table(s). This allows for rapid application development, maintenance and customization. Traditional RDBMS developers must first transform the business model into a normalized set of tables. Using the Rocket U2 extended relational database, the developer is not required to have knowledge of SQL, and the more complex C programming language. However, both styles of development are supported, if required.
For server-based application logic, the Rocket U2 extended relational database uses BASIC for its stored procedure language. Thus, adopting the use of the Rocket U2 extended relational database technology is straightforward and does not require an Engineer level programmer to either understand the database, or develop the applications. On the client-side, the Rocket U2 extended relational database supports industry standard tools such as Microsoft® Visual Studio, Studio and WebSphere® Application Developer, via JDBC, ODBC, OLE DB provider, and native C, Java™ and .NET APIs. Most client tools today support one or more of these technologies.
The extended relational database uses the predominant standards associated with UNIX®, Linux™ and Windows™-based systems for its networking layer. The Rocket U2 extended RDBMS provides homogeneous distributed database capabilities. Additionally, using its database gateway interface (BCI), it can update heterogeneous databases such as Microsoft SQL Server, Oracle, Sybase, etc. using standard ODBC interfaces. The latest releases of UniData and UniVerse provide a tightly coupled I/O level interface to Microsoft SQL Server, Oracle and IBM DB2® UDB via its External Database Access (EDA) technology.
Rocket U2 supports row level locking facilities, either through implicit SQL usage, or through explicit control from within its stored procedure language. Page level locks, common to other RDBMS products, do not hamper the Rocket U2 extended RDBMS. It provides many levels of lock granularity. Within this same environment, the Rocket U2 extended RDBMS implements all ANSI 1992 Isolation levels, for ACID-compliant transaction processing. Due to its lock granularity, the Rocket U2 extended relational database can support very large database installations, with high accessibility, data integrity, and large numbers of concurrent users.
The extended RDBMS files (tables) have an automatic table space allocation capability, which dynamically adjusts for optimal size, and hence performance, without fragmentation. Each file can grow to a size dictated by the available operating file system. Coupled with its inherently self tuning architecture, and low memory requirement, extended relational databases do not require intensive monitoring, continual tuning and time consuming maintenance tasks.
The extended RDBMS provides all the industry standard capabilities for database integrity, including transaction logging, warm-start recovery and check pointing. These features prevent database corruption from occurring in the event of a hardware failure. In addition, the Rocket U2 extended RDBMS works with all levels of RAID disk arrays to provide additional database robustness.
SystemBuilder Extensible Architecture (SB/XA) is a Rapid Application Development (RAD) tool for the Rocket U2 databases, providing a structured process-based environment in which to create and maintain enterprise applications.
U2 Web Development Environment (U2 Web DE) is Rocket U2's scalable object-based infrastructure for the U2 databases that includes an object-abstraction tool, allowing for development within a variety of technologies such as Java and ASP/JSP.
wIntegrate is an advanced terminal emulation and host-based application enhancement tool for MultiValue databases, including Rocket's UniData and UniVerse databases.
- Quick return on investment; exceptional price and performance ratio
- Lower total cost of ownership, with less administration and disk storage requirements
- High performance and efficient use of resources
- Highly scalable from single-user development to enterprise-class platforms
- Best-of-breed native tools for application renovation and development, interactive reporting, business intelligence, e-commerce, and mobile device access
- Rapid and flexible application design and modification
- Supports extended relational model allowing developers to quickly model and easily modify their database design to fit their business needs via multi-valued and multi-subvalued fields and associations
- Can use dynamic files to ensure maximum performance
- Support for standards-based open interfaces such as Web Services, XML, JDBC, .NET, C, HTTP, Java, Sockets, ODBC and OLEDB
- Enables secure end-to-end authentication and encrypted communications using open standards
- Supports both record set and direct I/O access for high performance
The Rocket U2 extended relational databases provide all of the characteristics needed for advanced application development and data management. Geared specifically toward the embedded database market, the extended relational architecture provides a business-oriented data model that is ideal for support of vertical industry solutions that require flexibility and scalability. The extended RDBMS is the right technology for the right solution in the right environment.
By reducing the complexity, providing industry standard capabilities and self-maintaining features, the extended RDBMS is the ideal embedded database solution with unprecedented low total cost of ownership.
- UniVerse product page
- U2 DataVu product page
- SystemBuilder product page
- U2 Web DE product page
- wIntegrate product page
- U2 User Group Web site
- U2 industry
Jackie Burhans has responsibility for the U2 Product Management team, U2 Training and Partner Enablement. Jackie joined Unidata in 1992 and previously worked with similar technology at the University of Southern California (USC) and as an independent consultant. Jackie has over 25 years of experience in computing and holds a degree in Business Administration with an emphasis on Decision Systems from the University of Southern California in Los Angeles.