DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

TimesTen


TimesTen is an in-memory, relational OLTP database management system supporting SQL through Open Database Connectivity (ODBC), Java Database Connectivity (JDBC) and Oracle Call Interface (OCI) APIs. It services very well for real time application because of short response time and high throughput derived from its in-memory characteristics. TimesTen can deployed in following ways: Classic (single node), Cache and Scaleout (distributed, assume this deployment when coming to concurrency-related sections later).[04][05]

Database Entry

TimesTen


TimesTen is an in-memory, relational OLTP database management system supporting SQL through Open Database Connectivity (ODBC), Java Database Connectivity (JDBC) and Oracle Call Interface (OCI) APIs. It services very well for real time application because of short response time and high throughput derived from its in-memory characteristics. TimesTen can deployed in following ways: Classic (single node), Cache and Scaleout (distributed, assume this deployment when coming to concurrency-related sections later).[04][05]

History[06][07]


TimesTen was originally named as SmallBase and developed by HP Labs. Shortly after its first commercial use in 1995, the product was split out as a separate startup company and renamed as TimesTen. In 2005, the company with 90 employees at the time was acquired by Oracle. TimesTen was then integrated with Oracle software as well as services and become part of Oracle Database Products.

Checkpoints[08][09]


TimesTen maintains two checkpoint files (ds0 and ds1) on disk to keep track of metadata of in-memory permanent data. It switches two files when a checkpoint is done to ensure there is always at least one completed checkpoint file for backup and recovery purpose. The rate for checkpointing disk writes is configurable by application. It supports fuzzy or non-blocking checkpoints as well as transaction-consistent checkpoints (i.e. blocking checkpoints).

Compression[08]


TimesTen supports columnar compression. This feature uses dictionary-based encoding to replace column values with dictionary table identifiers. It maintains separate dictionary for each column.

Concurrency Control[10][05][08][11]


Concurrency control of TimesTen is achieved through isolation and locking. It supports fully ACID transactions but allow user to loose it for performance by modifying configuration.

Locking

TimesTen provides three level of lock granularity: row-level, table-level and database-level. By default, row-level locking is used to maximize the throughput. TimesTen has lockless multi-versioning mechanism for read-write concurrency and uses row-level locking to ensure write-write concurrency.

Deadlock Detection

Deadlock detection is supported in TimesTen with a subdaemon process checking every 2 seconds. It reports and eliminates deadlock when the situation occurs. Application should roll back and retry entire transaction when it is denied a lock due to deadlock error.

Data Model[10]


TimesTen implements actual relational data model instead of just a relational view. Data in TimesTen is stored as tables of rows which contains data fields.

Foreign Keys


Indexes


By default TimesTen uses B+Tree. The original version (SmallBase) from the 1990s supported T-Trees. TimesTen still supports T-Tree indexes but the administrator has to request for the DBMS to use them.

Isolation Levels


Query Interface


SQL

Storage Architecture


Stored Procedures[12]


System Architecture


Views


Citations

13 sources
  1. https://www.oracle.com/database/timesten-in-memory-database/index.html oracle.com Dead — Check Archive
  2. Oracle TimesTen In-Memory Database Documentation Release 18.1 - Get Started oracle.com
  3. TimesTen - Wikipedia wikipedia.org
  4. https://www.oracle.com/database/technologies/related/timesten.html oracle.com Dead — Check Archive
  5. http://www09.sigmod.org/sigmod/sigmod99/eproceedings/papers/neimat.pdf sigmod.org Dead — Check Archive
  6. http://www.itjungle.com/tug/tug061605-story03.html itjungle.com Dead — Check Archive
  7. TimesTen - Wikipedia wikipedia.org
  8. http://sites.computer.org/debull/A13june/TimesTen1.pdf computer.org
  9. Transaction Management oracle.com
  10. White Paper oracle.com
  11. Transaction Management oracle.com
  12. TimesTen PL/SQL Samples oracle.com
  13. AI Database | Oracle oracle.com
Revision #12