Topic 11 - OLAP Systems
Topic 11 - OLAP Systems
Lecture 11
What is online analytical processing?
• Online analytical processing (OLAP) is software technology you can use to analyze
business data from different points of view. Organizations collect and store data
from multiple data sources, such as websites, applications, smart meters, and
internal systems. OLAP combines and groups this data into categories to provide
actionable insights for strategic planning. For example, a retailer stores data
about all the products it sells, such as color, size, cost, and location. The retailer
also collects customer purchase data, such as the name of the items ordered and
total sales value, in a different system. OLAP combines the datasets to answer
questions such as which color products are more popular or how product
placement impacts sales.
How does OLAP work?
• An online analytical processing (OLAP) system works by collecting, organizing,
aggregating, and analyzing data using the following steps:
• The OLAP server collects data from multiple data sources, including relational
databases and data warehouses.
• Then, the extract, transform, and load (ETL) tools clean, aggregate, precalculate,
and store data in an OLAP cube according to the number of dimensions specified.
• Business analysts use OLAP tools to query and generate reports from the
multidimensional data in the OLAP cube.
• OLAP uses Multidimensional Expressions (MDX) to query the OLAP cube. MDX is a
query, like SQL, that provides a set of instructions for manipulating databases.
How OLAP Systems Work?
Data collection and storage
• Data is extracted from multiple sources, such as transactional databases and external
systems. Then, the extracted data undergoes a transformation process to maintain quality.
It’s then loaded into a centralized data warehouse optimized for analytical queries and
historical data storage.
Creation of OLAP cubes
• OLAP cubes are pre-calculated, multidimensional data structures built from the data stored in
the data warehouse. They organize data along various predefined dimensions and hierarchies
(e.g., time, product, location) and measures (e.g., sales, quantity). This pre-calculation of
aggregations is a key part of OLAP, and it's really what gives rapid query responses. Because
OLAP cubes are pre-aggregated at various levels, we can access summarized data without
having to write the same SQL query on raw data.
Fast and efficient data querying
• OLAP cubes make it easier to access summarized data at different granularity levels quickly.
You can perform complex analytical queries without impacting the source systems and enjoy
more flexible data exploration. Here are some of the key OLAP operations that data analysts
What is OLAP architecture?
• Online analytical processing (OLAP) systems store multidimensional data by
representing information in more than two dimensions, or categories. Two-
dimensional data involves columns and rows, but multidimensional data has
multiple characteristics. For example, multidimensional data for product sales
might consist of the following dimensions:
• Product type
• Location
• Time
Data engineers build a multidimensional OLAP system
that consists of the following elements.
Data warehouse
• A data warehouse collects information from different
sources, including applications, files, and databases. It
processes the information using various tools so that the
data is ready for analytical purposes. For example, the
data warehouse might collect information from a
relational database that stores data in tables of rows and
ETL tools
Extract, transform, and load (ETL) tools are
database processes that automatically retrieve,
change, and prepare the data to a format fit for
analytical purposes. Data warehouses use ETL
to convert and standardize information from
various sources before making it available to
OLAP tools.
OLAP server
• An OLAP server is the underlying machine that powers the OLAP system. It uses ETL tools to
transform information in the relational databases and prepare them for OLAP operations.
OLAP database
• An OLAP database is a separate database that connects to the data warehouse. Data engineers
sometimes use an OLAP database to prevent the data warehouse from being burdened by
OLAP analysis. They also use an OLAP database to make it easier to create OLAP data models.
OLAP cubes
• A data cube is a model representing a multidimensional array of information. While it’s easier
to visualize it as a three-dimensional data model, most data cubes have more than three
dimensions. An OLAP cube, or hypercube, is the term for data cubes in an OLAP system. OLAP
cubes are rigid because you can't change the dimensions and underlying data once you model
it. For example, if you add the warehouse dimension to a cube with product, location, and time
dimensions, you have to remodel the entire cube.
OLAP analytic tools
• Business analysts use OLAP tools to interact with the OLAP cube. They perform operations
such as slicing, dicing, and pivoting to gain deeper insights into specific information within the
OLAP cube.
What Are OLAP Cubes?
• Any discussion of OLAP is remiss without talking about OLAP cubes. An OLAP cube, also
known as a hypercube, is a kind of data structure that permits fast and multi-dimensional
analysis of extensive data beyond what can be achieved by relational databases.
Its key features include the following:
•
• With OLAP, data analysts can rapidly analyze
complex queries to transform enormous datasets
into the actionable insights that our supervisors
often ask for. With OLAP, analysts can perform
multidimensional analysis, meaning they look at
dimensions such as time, geography, and
hierarchical categories in order to see patterns and
trends that would probably be difficult to detect if
you were working with tables and had to find
associations without OLAP.
Online transactional processing
Online transactional processing (OLTP) enables the real-time execution
of large numbers of database transactions by large numbers of people,
typically over the internet.
• Now that we have looked at different types of OLAP systems, we can compare OLAP
versus OLTP. Unlike OLAP, OTLP, which stands for online transaction processing, is
designed for transaction processing rather than analytical processing. OLAP is
focused on data analysis and querying, but OLTP is centered around real-time
transaction processing and data integrity in operational databases.
• Generally speaking, OLAP handles more complex queries so businesses can make
better decisions. An OLTP system handles day-to-day transactions to maintain data
integrity and service various applications, like order entry and inventory control.
• More specifically, and in the language of data engineering and architecture, we can
say that OLAP uses a multidimensional data model with a denormalized schema
that is best for fast querying and read-heavy operations. OLTP, on the other hand,
uses a normalized relational data model optimized for write-heavy operations to
ensure consistency in real-time transactions. The differences in a table:
https://www.youtube.com/watch?v=IhFkNmVmwn4
Benefits of OLAP
• Let’s now document the key benefits of OLAP, some of which we touched on above.
• Faster Data Analysis: OLAP speeds up querying and analyzing large amounts of data by
reducing the time needed to generate reports and insights. This helps businesses make
timely decisions based on the current available data.
• Support for Non-Technical Users: It makes data analysis more accessible for even non-
technical users. As a result, aspiring data analysts can carry out complex analytical
calculations and reports without learning advanced database usage.
• Unified Data Perspective: OLAP allows businesses to manage multiple functions like
marketing, finance, and production on a single platform. This integrated view helps
managers and decision-makers understand the greater context and address issues
more effectively.
• Complex Query Processing: OLAP systems handle complex queries that involve many
dimensions and vast volumes of data. This feature helps users analyze data in detail,
which would be very difficult or impossible to do using traditional tools for data
processing.
Implementing OLAP Solutions
• Here are key factors to consider while implementing OLAP solutions within your
organization:
• Business Requirements: Clearly define analytical needs and objectives.
• Data Sources: Identify and integrate relevant data sources.
• Scalability: Ensure the solution can grow with increasing data volumes.
• User-Friendliness: Choose tools that match users' technical skills.
• Integration: Consider compatibility with existing systems.
• Cost: Evaluate the total cost of ownership, including licensing and maintenance.
• Some of the most common tools with OLAP capabilities include IBM Cognos and
Oracle OLAP. These tools come with various advanced analytics capabilities to
meet different needs.