Databases Reference
In-Depth Information
3.1
Transaction Processing Versus Analytical Processing
Modeling and optimizing a database depends solely on the workload the database
is servicing. Transaction and analytical processing workloads have been serviced
by the same system until the early 1990s. When both processing workloads became
more sophisticated and started to conflict each other's operation, applications were
classified into operational and analytical [ 61 ] and separate systems started to
evolve specializing in either workload. Transaction and analytical processing and
the systems servicing them have diverged largely, but recent developments bring
forth efforts that again focus on both workloads in the same system. In the following,
the characteristics of applications of both workloads will be described. What spurred
the development of reuniting them and its implications will be discussed.
3.1.1
OLTP and OLAP Workload Characteristics
Business applications are distinguished by their workload into operational and
analytical applications. The type of workload is seen as the key consideration in
tuning a database system [ 58 ]. Therefore, many efforts have been undertaken to
classify operational and analytical workloads along comprehensible attributes.
French [ 61 ] starts a high-level comparison of operational and analytical
workloads by differentiating from an application usage perspective: Operational
applications tend to be static over a long period of time (several years) once
they are programmed and configured if legal requirements do not change. Thus,
database access is determined by pre-defined queries that are embedded in the
program code and are parameterized according to the business case. Analyzing
sales order processing as a typical operational application indicates that the
structure of operational queries is simple. Selects from the database only contain
select-from-where clauses. Insert queries are composed of selecting information of
one or a small number of specific products that are ordered and the actual insertion
of new tuples that make up a sales order into the database. Operational queries are
highly selective. A closer look at current database workloads shows that more than
50 % of all database operations are lookups [ 125 ], which indicates that only a very
small number of tuples is needed from a table, for example, the specific products
ordered, the address of the customer currently ordering. Due to their pinpoint access
behavior, operational queries are very short concerning their run time. Since new
data is constantly added to the database (new sales orders, incoming payments,
recordings of outgoing deliveries), the operational workload is characterized by a
mixed read-write access. Furthermore, operational applications require up-to-date
data, for example, to determine if an ordered product is in stock to make a promise.
Analytical processing, according to French [ 61 ], is characterized by ad-hoc
queries. Standard reports that are based on pre-defined queries, for example, period-
end reporting, can entail further inquiries if results deviate from expectations.
Search WWH ::




Custom Search