Empress Embedded Database

Empress Embedded Database is a relational database management system that has been embedded into applications, including medical systems, network routers, nuclear power plant monitors, satellite management systems.[1] Empress is an ACID compliant relational database management system (RDBMS) with two-phase commit and several transaction isolation levels for real-time embedded applications.[2] It supports both persistent and in-memory storage of data and works with text, binary, multimedia, as well as traditional data.[3]

Empress Database
Developer(s)Empress Software Inc.
Stable release
v10.20-H / May 2023; 1 year ago (2023-05)
Operating systemCross-platform
TypeRDBMS
LicenseCommercial license
Websitewww.empress.com

History

edit

The first version of Empress was created by John Kornatowski and Ivor Ladd in 1979 and was originally named MISTRESS. It was based on research done on "MRS: A microcomputer database management system" at the University of Toronto, which was published by the Association for Computing Machinery in SIGSMALL SIGMOD 1981.[4] The commercial version was one of the first available relational database management systems (RDBMS) and was named Empress. Its first customer ship was in early 1981. Empress was the first commercial database to be available on Linux. Its Linux release dates back to early 1995.[5][6]

API and architecture

edit

Empress supports many application programming interfaces in several programming languages. The C programming language has the most APIs including the low-level kernel MR Routines, Embedded SQL, MSCALL and ODBC. There are also APIs for C++ and JAVA. The layered architecture design provides levels of system optimization for application development. Applications developed using these APIs may be run in standalone and/or server modes.[7]

Product features

edit
  • Kernel API
  • SQL API
  • Standalone and/or Server Mode
  • ODBC Client/Server and Local Access
  • Fast Bulk Data Handling (BLOBs)
  • Bulk Chunks
  • Unlimited Attributes
  • File Indices
  • Persistent Stored Modules
  • Triggers
  • Stored Procedures
  • No Pre-Partitioning required
  • Referential Constraints
  • Range Checks
  • Micro-Second Time Stamps
  • Layered Architecture
  • Text Search Index
  • Spatial Search Index
  • Cancel Functionality
  • Hierarchical Query
  • ADO.NET Data Provider
  • JDBC Interface
  • C++ APIs
  • Database Encryption
  • 64 BIT Operating System Versions
  • UTF-8
  • UNICODE & National Language Support
  • Replication Server
  • Time-out Function

Supported platforms

edit

Empress runs on all major Android,[8] Linux-, Real-Time- and Windows-supported platforms:[9]

References

edit
  1. ^ Empress Offers an Effective Embedded Database Solution by Craig S. Mullins 2005. Retrieved on Jan 26, 2010.
  2. ^ Empress Product Profile p.11, 2009. Retrieved on Jun 1, 2010.
  3. ^ List of Supported Data Types Retrieved on Jun 1, 2010.
  4. ^ "MRS: A microcomputer database management system", 1981. Retrieved on Jan 26, 2010.
  5. ^ “EMPRESS RDBMS VERSION 6.6 FOR LINUX OS READY TO SHIP”, May 1, 1995. Retrieved on Jan 26, 2010.
  6. ^ “Linux Commercial HOWTO”, v5.38, March 7, 1999. Retrieved on Jan 26, 2010.
  7. ^ Empress APIs Retrieved on Jun 1, 2010.
  8. ^ "Empress SDK for Android" Archived 2011-07-15 at the Wayback Machine Retrieved on Feb 16, 2011.
  9. ^ Supported Platforms Retrieved on Jun 1, 2010.
  10. ^ "Empress SDK for Android" Archived 2011-07-15 at the Wayback Machine Retrieved on Feb 16, 2011.
edit