Preparing the Modeling Environment
Creating Calculation Views
Working with Common Nodes in Calculation Views
Joining Data Sources in Calculation Views
Working with Union Nodes in Calculation Views
Creating Data Slices
Ranking Data
Embedding Functions in Calculation Views
Creating Dynamic Calculation Views
Implementing Hierarchies in Calculation Views
Developing Custom Logic using SQL
Applying Best Practices for Modeling
Using Tools to Check Model Performance
Implementing Features to Improve Performance
Storing Calculation View Results
Using Additional Modeling Productivity Tools
Working in a Modeling Project
Managing the Lifecycle of a Modeling Project
Implementing Security in SAP HANA Modeling
Getting Started with SAP HANA Cloud Knowledge Graph Engine

Partitioning Tables

Objective

After completing this lesson, you will be able to define partitions to improve calculation view runtime.

Partitioning Tables

Table Partitioning

Data in column store tables is separated into individual columns to support high performance on queries and also for better memory management. However, it is also possible to subdivide the rows of column tables into separate blocks of data. We call this table partitioning. If column separation is vertical subdivision, think of table partitioning as horizontal subdivision.

A table containing three columns: Year, Country and Quantity. It contains rows for three different years (2020,2021 and 2022). Three partitions are displayed, containing each a subset of the table rows, depending on the Year value.

Note

Partitioning only applies to column store tables and not row store tables. This is why it is recommended that you define tables as a column store that will be used for querying large data sets.

Generating partitions is usually the responsibility of the SAP HANA Cloud administrator. There are many decisions to be made relating to partitions including the type of partition. For example, hash, round robin, or range. Partitions can also include sub-partitions. The administrator uses monitoring tools to observe the performance of partitions and makes adjustments. What the modeler will need to do is to provide the information relating to the use of the data - for example, how queries will access the data so that the partitions can be defined optimally.

Reasons for Partitioning a Column Store Table