All calculation views have a data source assigned. This provides the input data that is processed by the calculation view.
The following is a list of the data source types that are supported in SAP HANA Cloud calculation views.
- Row Table
- Column Table
- Virtual Tables
- Calculation Views
- SQL Views
- Table Functions
Row or Column Tables
SAP HANA Cloud supports traditional row tables but also the SAP HANA Cloud optimized column tables. It make no difference to a modeler whether the table is row or column and all modeling functions are available with both types. Column tables are optimized for very fast read-performance and so will be the most popular type of table use with calculation views.
A virtual table is a table that is part of the SAP HANA Cloud database and is mapped to a remote table outside of SAP HANA Cloud.
By including a virtual table in your calculation view, you reach external data sources from any location in your landscape. The data sources can be database tables, flat files, spreadsheets and more. You should always keep performance in mind when using virtual tables as their use can significantly impact response time.
Calculation views are a popular data source for other calculation views. Developing data models using layers is recommended break up compelx models. Also, a calculation view can be used by other calculation views, so it makes sense to capture the data processing logic once and re-use many times to avoid redundancy.
SQL views have been around for a very long time and are created using the SQL language. These views might be present in your SAP HANA Cloud database as they are still popular with developers who may not have the skills to develop calculation views. They are a much simpler type of view compared to a calculation view but still provide the ability to combine data sources and add calculated columns.
Table functions can be used to define complex data sources using SQL Script. These data sources can then be consumed by a calculation view.
As a general rule, you should always try to use the standard functionality of the calculation view using the graphical editors but sometimes you might need to revert to SQL code to produce the desired outcome.