RSS
Логотип
Баннер в шапке 1
Баннер в шапке 2

UMS DBMS

Product
Developers: H-technology
Date of the premiere of the system: December, 2006.
Last Release Date: January, 2012.
Branches: Information technologies
Technology: DBMS

Content

UMS is the database management system (DMS) consisting of the environment of execution of server applications and the engine of the database. Has an expanded relational data model where entities are presented in the form of the denormalized relations, and the physical data structure representing a set of associative arrays.

UMS provides side-by-side execution of OLTP and OLAP transactions, eliminates fragmentation of data, provides the serializable level of isolation of transactions and lack of logical blocking in read operations, record and changes of data, manages structure of metadata in the background.

UMS is intended for application as a core of information systems.

UMS is executed in the client-server architecture. The Web server, OpenSSL library, the gateway of data transfer protocols of the application layer, frontal and rear compilers of the D+ language, the manager of programs are a part of UMS. The engine of the database is executed in the form of library of functions of determination and data manipulation.

DBMS server

Architecture of ANSI-SPARC: The internal physical layer includes multilists of data and matrix search trees, intermediate conceptual level is provided by abstractions of the denormalized relations and relational communications, external user level is implemented in the form of the scheme consisting of object types, domains, types of user data (hierarchies of domains) and dictionaries of values of attributes of domains.

Compliance to requirements of ACID: Atomicity is reached by assignment to subjects of unique transaction numbers, coordination is maintained using triggers, the isolation is provided with providing the database to users of individual pictures and record of changes of the teams of users given on first come, the durability is provided with synchronization of record of attributes with record of changes of values of their descriptors. The isolation of transactions is maintained at the serializable level.

Physical data structure: The expanded relational data model is based on the denormalized relation. The relations are stored in a type of associative arrays of trains of data. Each train consists of a set of the attributes located on different hierarchy levels. As indexes the ordered lists of values of attributes which are a part of separate domains are used. Lists of values of attributes are broken into file blocks and connected with inverted lists of attributes. Search in indexes is performed by a dichotomizing method. The completeness and consistency of information is maintained without use of the transaction log and segments of rollback. Versionny architecture: provides change or removal of the child versions given in the form of record supplementing parent; consolidation of versions is made by periodic compression of the database in the background. Multi-user access: The updated versions of data at the time of the beginning of reading are provided to each reading user, free access on record of the changed data without their blocking is provided to each writing user. Data recording: Data register in streaming mode. Indexes register in the copy-on-write mode. File size of one relation is limited to 8 exabytes. The maximum length of record of one this is limited to opportunities of the operating system. Server programming: Triggers, stored procedures, the user functions and representations are programmed in the form of separate modules, compiled in the bit code, remain in the database as a part of fragments of unstructured information and are dynamically loaded on the database server.

Programming language

The built-in programming language D + general purpose is intended for creation, modification, extraction and data management, stored in a multidimensional database, programming of server applications.

+ the SQL-like syntax has D and consists of set of operators:

  • operators of data definition
  • operators of manipulation with data
  • operators of variables, conditions, cycles, cursors and exceptions with support of stored procedures.

+ supports by D procedural, object-oriented, functional and logical programming paradigms, has relational, regular and geometrical expansions.

The built-in data types D + - Char, Varchar, Integer, Bigint, Smallint, Float, Double, Numeric, Decimal, Money, Boolean and Bit. The user data types are created by the declaration in the database scheme of hierarchies of the domains corresponding to the combined data – dates, time, a network node address of a computer network, etc.

D + uses encoding of data in the Unicode UTF-8 format.

Access facility

The LCD driver is executed in the form of the library included in structure of client applications. Supports API on C ++, interacts with the UMS server on TCP/IP, HTTP, DTP and SSL. LCD provides approval of schemes of the application and database, dynamic formation of requests, support of HTML and XML.

Development and administration

The graphical interface of the administrator of a multidimensional database of GAI - the client application developed in the environment of Qt the designer of schemes of databases, the binder of requests turns on, the report generator, an integrated environment of programming on D+, the LCD driver, the module of export import of information.

Expansions

UMS is integrated with the libraries written on C/C ++ including with OpenSSL.

Hardware-software platforms

UMS supports 64-bit hardware platforms of Intel, AMD, Sparc and POWER7 and the UNIX/Linux operating systems. LCD and GAI support 32/64-bit hardware platforms of Intel and AMD and the UNIX/Linux and MS Windows operating systems.

Licensing

UMS is distributed under the license GNU LGPL.

History

  • The first version of UMS based on a list data structure and a hash meta tables was developed in 2006.
  • In 2008 the second version supporting structure of metadata in the form of matrix search trees in 2009 - the third version providing integration with the built-in libraries of functions was released. With 2011 the fourth version with frontal and rear compilers as a part of a framework of UMS is developed.