Datablitz
Encyclopedia
DataBlitz is a general purpose main memory database management system
Database management system
A database management system is a software package with computer programs that control the creation, maintenance, and use of a database. It allows organizations to conveniently develop databases for various applications by database administrators and other specialists. A database is an integrated...

, developed by Lucent Bell Labs
Bell Labs
Bell Laboratories is the research and development subsidiary of the French-owned Alcatel-Lucent and previously of the American Telephone & Telegraph Company , half-owned through its Western Electric manufacturing subsidiary.Bell Laboratories operates its...

 Research in 1995. It replaced various home-grown database products used throughout Lucent beginning in 1997.

It was originally named "Dali", and provided recovery and concurrency control
Concurrency control
In information technology and computer science, especially in the fields of computer programming , operating systems , multiprocessors, and databases, concurrency control ensures that correct results for concurrent operations are generated, while getting those results as quickly as possible.Computer...

 features. Later, Dali was renamed as "DataBlitz".

DataBlitz provides a platform for building high-performance shared memory applications that can survive failures or organize large amounts of data with features suited to many applications.

Applications for DataBlitz include:
  • Switching and call routing in telecommunications
  • Real-time billing
  • High-performance Web servers
  • Financial trading applications
  • Data caching


Features of DataBlitz

  • Architecture for high performance
    • No disk access for read operations and limited disk access for write operations
    • All algorithms optimized for memory rather than disk
    • Direct shared memory access to data
    • Native C++ API for faster data access
    • Support Multithread applications.
  • Full Transaction Semantics
    • Atomicity
    • Consistency
    • Isolation
    • Durability
  • High Availability
    • Data replication to enhance availability and redundancy
    • Asynchronous and Synchronous data replication
    • Multi level Recovery to handle all kinds of failures
    • Enhanced Fault Tolerance
      Fault-tolerant system
      Fault-tolerance or graceful degradation is the property that enables a system to continue operating properly in the event of the failure of some of its components. A newer approach is progressive enhancement...

    • Code-word and Memory protection to detect and prevent data corruption due to stray application pointers
  • Fuzzy checkpoints that only minimally interfere with transaction processing
  • Relational C++ interfaces to optimize CPU cycles
  • Supports a broad subset of ANSI SQL 99, using Dharma SQL engine
  • Support SQL, ODBC and JDBC through Dharma SQL engine.
  • On-line backup and restore facility

Relational

The DataBlitz Relational Manager is a C++ class library interface to a relational system with SQL support limited to definition statements. Schema information is stored in tables, and can be queried using the relational API itself. Indices may be created on arbitrary subsets of the attributes in a table. Referential integrity
Referential integrity
Referential integrity is a property of data which, when satisfied, requires every value of one attribute of a relation to exist as a value of another attribute in a different relation ....

 is supported (foreign key constraints), as are null values, date and time attribute types, and variable length fields. Navigation is supported through
iterators over a single table. A conjunctive query may be specified for the iterator, and automatic index selection is performed. Both fine-grained and multi-granularity locking strategies are used for high concurrency without incurring too much overhead. Also, locks obtained by iterators avoid the "phantom" anomaly...

Collections and Indices

DataBlitz also provides higher-layer interfaces for grouping related data items, and performing scans as well as associative access (via indices) on data items in a group...

Storage Manager

Each database file in DataBlitz consists of segments, which are contiguous page-aligned units of allocation, similar to clusters in a file system
File system
A file system is a means to organize data expected to be retained after a program terminates by providing procedures to store, retrieve and update data, as well as manage the available space on the device which contain it. A file system organizes data in an efficient manner and is tuned to the...

. Chunk is a collection of segments. Recovery characteristics of memory (transient, zeroed, or persistent) are specified on a per-chunk basis at the time of chunk creation. Zeroed memory remains allocated upon recovery but each byte is set to zero. With transient memory, the data are no longer allocated upon recovery. Users allocate within a chunk, and do not specify a particular segment. Since segments can be arbitrarily large (within the size of the database), arbitrarily large objects can be stored contiguously. Upon allocation within a chunk, the system returns a standard DataBlitz pointer to the space, which specifies the offset within the file. The elements shown linking together segments in a chunk are themselves stored in a special chunk used for control information. Storing control information separately from the data reduces the likelihood of it being corrupted by stray application pointers...

Replication

In DataBlitz, data can be replicated across multiple DataBlitz instances running on machines connected by a network in a distributed environment. The primary benefits of data replication are higher availability and improved performance. For instance, if a table is stored only at a single site in a distributed setting, and if that site crashes or becomes unavailable due to a network failure, then the table would become inaccessible to other sites in the system. DataBlitz provides support for data replication at the granularity of tables. Each table can be replicated at any subset of sites in the system...
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK