HANA300 Extra Questions Flashcards
(83 cards)
Which of these are recommended to ensure good performance?
* Join on key or indexed columns
* Projection nodes should always be placed above aggregation nodes in a calculation view
* Filter data as early as possible in the data flow
* Avoid calculations after aggregations
- Join on key or indexed columns
- Filter data as early as possible in the data flow
You have set the flag in your view to execute only in the SQL engine. What design rules must you follow in order to achieve the best performance?
* Avoid use of input parameters, always use variables
* Do not include scripted calculation views in your model
* Do not include analytic views in your model
* You should also set the SQL flag in the underlying views
- Do not include scripted calculation views in your model
- Do not include analytic views in your model
What do we mean by ‘unfolding’?
* ‘Flattening’ of column engine expressions and stacked views into a plain SQL statement
* Breaking down complex SQL into smaller chunks to execute in sequence
- ‘Flattening’ of column engine expressions and stacked views into a plain SQL statement
Why is unfolding a good thing?
* Easier to debug SQL
* Improves performance
* Easier to export models to other SQL platforms
- Improves performance
What is union pruning?
* Automatic removal of not relevant data sources in a union
* Removal of columns that are not common to all sources in the union
* Removal of rows from the result of a union that are empty
- Automatic removal of not relevant data sources in a union
What options do I have to implement union pruning?
* Define constant values in a union node
* Write filter expressions in a table function
* Define a union pruning table and refer to it from a calculation view
- Define constant values in a union node
- Define a union pruning table and refer to it from a calculation view
Which are good practices when writing SQL?
* Use variables to break up complex statements
* Avoid Grouping Sets
* Use IF-THEN-ELSE statements to help control the data flow
* Avoid mixing CE plan operators and SQL relational operators
- Use variables to break up complex statements
- Avoid mixing CE plan operators and SQL relational operators
Which should you use for best performance?
* Column Engine (CE) expressions
* Plain SQL
- Plain SQL
Which are valid partition types?
* Hash robin
* Range
* Round hash
* Robin hash
* Round robin
* Hash
Range
* Round robin
* Hash
What are valid choices for data category of a calculation view built with Web IDE?
* Cube
* Attribute
* View
* SQL Access Only
* Dimension
- Cube
- SQL Access Only
- Dimension
In what languages can you write calculation expressions?
* SQL
* SQLScript
* Column Engine
* ABAP
- SQL
- Column Engine
Why do you implement a variable rather than an input parameter?
* When you want to apply a user-provided filter on the final calculation view result
* When you want to push down a user-provided filter to a lower level calculation view
* When you want to provide a dynamic value to a calculated expression
* When you want to apply a user defined filter on a measure
- When you want to apply a user-provided filter on the final calculation view result
True or false: Input Parameters can be derived using SQLScript
* True
* False
- False
Why do you define a restricted column?
* So it can only be seen by specified users
* To predefine a reuseable column that has been filtered by one or more attributes values
* To prevent developers from using a column in their calculation view that is forbidden
* To limit the amount of data that is produced if data sets ar very large
- To predefine a reuseable column that has been filtered by one or more attributes values
Where can you define a filter?
* In the semantics node
* Using the filter node
* In a project node
* In an aggregation node
* In a union node
- In a project node
- In an aggregation node
- In a union node
Why might I hide a column in the semantics node?
* To set a default hidden state so that a user can later decide if they want to expose it in the reporting tool
* When I need to use the column in a filter but don’t wish to expose it to the reporting tool
* When my calculation view does not require a column from a table
* To define a column as inactive so that I can decide to activate it later
- When I need to use the column in a filter but don’t wish to expose it to the reporting tool
What are valid types of hierarchy?
* Level Hierarchy
* Parent-child
* Dimensional
- Level Hierarchy
- Parent-child
True or false: Dimensions contains attributes and measures
* True
* False
- False
In a star join node what can I join to the central data foundation?
* Calculation views data category cube
* Tables
* Calculation views data category dimension
* Calculation views data category cube with star join
- Calculation views data category dimension
You created a user-defined function with the INVOKER security option. Which user’s authorizations are checked when the function is executed?
Please choose the correct answer.
Response:
The SYSTEM user
The user calling the function
The container’s technical user
The owner of the function
The user calling the function
In SAP Web IDE for SAP HANA, what can a flow graph generate in a predictive analysis scenario?
There are 2 correct answers to this question
Container
Task
Function
Procedure
Function
Procedure
Why would you develop an SQL procedure instead of a function?
There are 3 correct answers to this question.
Response:
A temporary table must be created within the code.
You want to create a dynamic analytic privilege.
You need to use conditional logic.
Optimal performance is a priority.
The code should modify data in the table.
You want to create a dynamic analytic privilege.
Optimal performance is a priority.
The code should modify data in the table.
You want to create a star schema using a calculation view. The measures are based on columns from two transaction tables. Dimension calculation views provide the attributes.
What is the correct approach?
Please choose the correct answer.
Response:
- Combine the transaction tables using a star join node in a calculation view of type cube with star join.
- Use the same star join node to connect the dimensions to the fact table.
- Combine the transaction tables using a star join node in a calculation view of type cube with star join.
- Use a join node to join the dimensions to the fact table.
- Combine the transaction tables using a join node in a calculation view of type cube with star join.
- Use a star join node to join the dimensions to the fact table.
- Combine the transaction tables using an aggregation node in a calculation view of type cube with star join.
- Use a star join node to join the dimensions to the fact table.
- Combine the transaction tables using a join node in a calculation view of type cube with star join.
- Use a star join node to join the dimensions to the fact table.
When would you develop an SQL procedure instead of a function?
There are 3 correct answers to this question.
The code should modify data in the table
You need to use conditional logic
You want to create a dynamic analytic privilege
Optimal performance is a priority
You need to implement Data Definition Language (DDL)statements
The code should modify data in the table
Optimal performance is a priority
You need to implement Data Definition Language (DDL)statements