Database Reference
In-Depth Information
that were not captured in the savepoints, ensuring that the database can be
restored in memory to the same state as before the failure.
Finally, compression is performed using data dictionaries. The idea is
that each attribute value in a table is replaced by an integer code and the
correspondence of codes and values is stored in a dictionary. For example, in
the City column of the Customer table, the value Berlin can be encoded as
'1', and the tuple (Berlin,1) will be stored in the dictionary. Thus, if needed,
the corresponding value (Berlin, in this case) will be accessed just once.
Therefore, data movement is reduced without imposing additional CPU load
for decompression. The compression factor achieved by this method is highly
dependent on the data being compressed. Attributes with few distinct values
compress well (e.g., if we have many customers from the same city), while
attributes with many distinct values do not benefit as much.
13.5.5 Oracle TimesTen
Oracle TimesTen 6 is an in-memory RDBMS that also supports transaction
processing. TimesTen stores all its data in optimized data structures in
memory and includes query algorithms designed for in-memory processing.
TimesTen can be used as a stand-alone RDBMS or as an application-tier
cache that works together with traditional disk-based RDBMS, for example,
the Oracle database itself: existing applications over an Oracle database can
use TimesTen to cache a subset of the data to improve response time. In this
way, read and write operations can be performed on the cache tables using
SQL and PL/SQL with automatic persistence, transactional consistency, and
synchronization with the Oracle database. In addition, TimesTen can be used
to replicate an entire data warehouse if it fits entirely in memory.
Unlike in traditional DBMSs, where query optimizers are based on disk
input/output costs, namely, the number of disk accesses, the cost function
of the TimesTen optimizer is based on the cost of evaluating predicates.
TimesTen's cache provides range, hash, and bitmap indexes and supports
typical join algorithms like nested-loop join and merge-join. Also, the
optimizer can create temporary indexes as needed and accepts hints from
the user, like in traditional databases.
Two key features of the TimesTen data storage architecture are the
in-memory database cache and the data aging algorithms. The in-memory
database cache (IMDB cache) creates a real-time updatable cache where a
subset of the tables are loaded. For instance, in the Northwind database, the
cache can be used to store recent orders, while data about customers can be
stored in a traditional Oracle database. Thus, the information that requires
real-time access is stored in the IMDB cache, while the information needed for
6 http://www.oracle.com/us/products/database/timesten/overview/index.html
Search WWH ::




Custom Search