7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 1/33
© 2011 SAP AG. All rights reserved. 1
SAP HANA 1.0
Best PracticesSAP BusinessObjects 4.0
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 2/33
© 2011 SAP AG. All rights reserved. 2
Disclaimer
This presentation outlines our general product direction and should not be relied on in
making a purchase decision. This presentation is not subject to your license
agreement or any other agreement with SAP. SAP has no obligation to pursue any
course of business outlined in this presentation or to develop or release any
functionality mentioned in this presentation. This presentation and SAP's strategy and
possible future developments are subject to change and may be changed by SAP at
any time for any reason without notice. This document is provided without a warranty
of any kind, either express or implied, including but not limited to, the implied
warranties of merchantability, fitness for a particular purpose, or non-infringement.
SAP assumes no responsibility for errors or omissions in this document, except if
such damages were caused by SAP intentionally or grossly negligent.
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 3/33
© 2011 SAP AG. All rights reserved. 3
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 4/33
© 2011 SAP AG. All rights reserved. 4
General Modeling Principles
Column
Store
Analytical
Views
Attribute
Views
Calculation Views
Client / Application
A B C D
A B C D G Y
A G Y
A G Y Z
Filter data amount as early as possible in the lower layers(CONSTRAINTS, WHERE Clause,Analytical Privileges..)
Aggregate data records (e.g usingGROUP BY, reducing Coulmns)
Avoid transfer data of large resultsets between the HANADB and client application
- Do calculation after aggregation.
- Avoid Complex expressions (IF, CASE, ... )
Join on Key Columns or IndexedColumns
Avoid calculations beforeaggregation on line item level
Reduce data transfer between views
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 5/33
© 2011 SAP AG. All rights reserved. 5
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 6/33
© 2011 SAP AG. All rights reserved. 6
Modeling Example 1
Restricted Measures vs Logical Partitioning
Analytical View
• Define 3 Restricted Measures - once for each PLANT(A,B & C) within a single Analytical View
Multiple Analytical Views + 1 Calculation View• Create 3 Analytical views – one for each PLANT
• Define a design time filter (PLANT) on each Analytical View
• Create a Calculation view that reads each Analytical view
• Combine the results using Union Constants
100 200 300
PLANT A View PLANT B View PLANT C View
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 7/33
© 2011 SAP AG. All rights reserved. 7
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 8/33
© 2011 SAP AG. All rights reserved. 8
Modeling Example 2
Calculated Attributes - Row vs Sets
Calculation View
• Re-use the same Analytical View 3x• Define a Current Year Key filter in each Projection Node
• Combine results using Union Constants
Analytical View• Define 4 Calculated Attributes
Filter [3]
Filter [2]
Analytical View + 1 Calculation View• Create a Analytical View without any Calculated Attributes,
instead define Calculated Columns in a Calculation View
• Create a Calc. View reading from a single Analytical View
• Add one Projection Node above the Analytical View & add
Calculated Columns
• Stack 3 Projection nodes and Filter by Current Year Key
• Combine results using Union Constants
Filter [1]
Filter [1]
Filter [3]
Filter [2]
Current Year Filter
Current Year [midstr(now(),1,4)]
Previous Year [ (“current_year")-1]
Earliest Year [(“previous_year")-1]
Current Key [if(“cur"=“year",1,if(“prev"=“year",2,if(“earl"=“year",3),-1)]
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 9/33
© 2011 SAP AG. All rights reserved. 9
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 10/33
© 2011 SAP AG. All rights reserved. 10
Modeling Example 3
Calculate Before Aggregation
Analytical View• Define Calculated Measure threshold
(i.e. NETWR > 99) using the Expression Editor
• Check Calculate Before Aggregation
• The result will either be 1 or 0 per row
• Use regular SUM aggregation to calculate count
based on threshold calculation
Use with caution, row based processing
significantly slower than set based processing
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 11/33
© 2011 SAP AG. All rights reserved. 11
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 12/33
© 2011 SAP AG. All rights reserved. 12
Modeling Example 4
Calculation View – SQL vs CE Functions
Calculation Engine (CE) Functions• Preferred over SQL
• Improved performance, can be optimized by the engine (i.e. field pruning &
parallelized)
SQL
CE Functions
Even though only MATNR & NETWR are
requested by the front end tool all fields will be
retrieved from the table including all
calculations will be done irrespective.
Only MATNR & NETWR will be retrieved from
the database. Only NETWR will be calculated.
Columns requested by the front end tool can be
parallelized
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 13/33
© 2011 SAP AG. All rights reserved. 13
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 14/33
© 2011 SAP AG. All rights reserved. 14
Join Types – Definitions and Referential Integrity
Join Type Use when you needto report on…
Be aware that…
INNER facts with matching
dimensions only
facts without any dimension will be excluded
dimensions without any fact will be excluded
JOIN is always performed
LEFT OUTERall posted facts whether there
is a matching dimension or
not
dimensions without any fact will be excluded
best for performance because JOIN is omissible
RIGHT OUTER all dimensions whether there
are matching facts or not
facts without any dimension will be excluded
JOIN is always performed
REFERENTIAL facts for the requesteddimensions
AND referential integrity is
ensured
• it is the default join type• acts as an INNER for Attributes Views
• join on attribute views is “optional”, which facts are
returned will depend on which attributes are
queried for
TEXT an SAP dimension table
joined to a text table for
translation purpose
only available for Attribute Views with SAP ERP tables
(SPRAS field) or equivalent design
acts as an INNER
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 15/33
© 2011 SAP AG. All rights reserved. 15
Join Types - Example
Customer ( … Right table / Header / Dimension for sales)
( … Central / Left / Many table for s tate
Sales( … Fact table / Central / Left / Items / Many)
C_ID ORDER_ID AMOUNT
1 1 100
1 2 100
2 3 100
4 4 100
77 8 100
C_ID CNAME STATE AGE
1 WERNER MI 10
2 MARK MI 113 TOM TX 12
4 BOB TX 13
STATE SNAME
MI MICHIGAN
AL ALABAMA
State( … Right table / Header / Dimension fo r customer)
Notes: Order 8 does not have a customer master record
Customer TOM does not have any orders
State TX does not have a description
No customers reside in Alabama
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 16/33
© 2011 SAP AG. All rights reserved. 16
Join Types – Referential Join in Attribute Views
C_ID CNAME STATE AGE SNAME
1 WERNER MI 10 MICHIGAN
2 MARK MI 11 MICHIGAN
SELECT
C_ID, CNAME, STATE, AGE, SNAME
C_ID CNAME AGE
1 WERNER 10
2 MARK 11
SELECT
C_ID, CNAME, AGE
*** Referential join is a feature available only in OLAP engine, when testing Attribute views outside the context of a
Analytical view then the Join Engine will perform a Inner Join. As a result TOM and BOM will not be returned.
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 17/33
© 2011 SAP AG. All rights reserved. 17
Customer Sales2 table referential join in
Data Foundation. No
dimensions.
*** Customer table join will be omitted since onlyfields are selected from the left table
*** Since the field AGE is selected from the right
table then a inner join is preformed resulting in
order 8 not being returned.
*** Since there are no dimensions joined to C_ID
all the facts will be returned.
C_ID AMOUNT
1 200
2 100
4 100
77 100
Join Types – Referential Join in Analytic Views
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 18/33
© 2011 SAP AG. All rights reserved. 18
Join Types – Text Join for multilingual reporting
Text Join is used when
translation for a dimension is
available
Designed for ERP table (and
typically SPRAS field)
Act as an INNER join
User language is used as a
filter at runtime to find the right
translation for that attribute
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 19/33
© 2011 SAP AG. All rights reserved. 19
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 20/33
© 2011 SAP AG. All rights reserved. 20
Do’s and Don’ts with SBO Explorer
Recommendation Description
1Only include dimensions (facets) the end user absolutely needs, 6-10
facets seem to work for most cases
2
If the end user needs more facets but response time is the priority, split the
Information Space in two spaces.
Restrict each Information Space to one or two hierarchies (navigationpaths)
3The first measure on the list should be one that leads to the easiest /
lightest calculation (among all available measures)
4aUse the "Show facets in the defined order" option when the facet order
matters to end users and select a “fast” dimension first
4bUse the "Order facets by filtering capability“ option if the facet order is not
so important, Explorer will determine the optimal order
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 21/33
© 2011 SAP AG. All rights reserved. 21
SBO Explorer – Recommendation #1
Avoid selecting all dimensions available from the HANA view
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 22/33
© 2011 SAP AG. All rights reserved. 22
SBO Explorer – Recommendation #1
Only include dimensions (facets) the end user absolutely needs
6-10 facets seem to work for most cases
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 23/33
© 2011 SAP AG. All rights reserved. 23
SBO Explorer – Recommendation #2
If the end user needs more facets but response time is the priority, split theInformation Space in two spaces. Restrict each Information Space to one or two
hierarchies (navigation / drill paths).
Suggestion: present Information Spaces side by side if the user needs more hierarchies at once
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 24/33
© 2011 SAP AG. All rights reserved. 24
SBO Explorer – Recommendation #3
The first measure on the list should be the easiest / lightest calculation
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 25/33
© 2011 SAP AG. All rights reserved. 25
SBO Explorer – Recommendation #4a
Use the "Show facets in the defined order" option when the facet order matters toend users and select a “fast” dimension first
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 26/33
© 2011 SAP AG. All rights reserved. 26
SBO Explorer – Recommendation #4b
use the "Order facets by filtering capability“ option if the facet order is not soimportant, Explorer will determine the optimal order
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 27/33
© 2011 SAP AG. All rights reserved. 27
Agenda
General Modeling Principles
Restricted Measures vs Logical Partitioning
Calculated Attributes - Row vs Sets
Calculation Before Aggregation
Calculation Views - SQL vs Calculation Engine Functions
Join Types and Referential Integrity
Do’s and Don’ts with SBO Explorer
Importance of Drill Functionality in SBO WebIntelligence
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 28/33
© 2011 SAP AG. All rights reserved. 28
Dril l functionality in SBO WebIntelligence
Navigate along a hierarchy defined as a navigation path in a universe
Only fetch data you need as you select a member and drill one level down
Query data on demand as opposed to everything upfront
Leads to (much) lighter reports, faster response times and better user
experience
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 29/33
© 2011 SAP AG. All rights reserved. 29
Dril l functionality in SBO WebIntelligence
Navigate along a hierarchy defined as a navigation path in a universe
Only fetch data you need as you select a member and drill one level down
HANA Universe (relational)
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 30/33
© 2011 SAP AG. All rights reserved. 30
Dril l functionality in SBO WebIntelligence
WebIntelligence
Query only the
top level of thehierarchy
As opposed to all
levels upfront
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 31/33
© 2011 SAP AG. All rights reserved. 31
Dril l functionality in SBO WebIntelligence
Start Drilling and navigate
along hierarchies…
Down Up
Alongside
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 32/33
© 2011 SAP AG. All rights reserved. 32
More Info http://help.sap.com/hana
Previous Know How Webinars on SAP HANA :
http://www.sdn.sap.com/irj/scn/khnc Build ing Advanced Data Models with SAP HANA:
http://www.sdn.sap.com/irj/scn/events?rid=/library/uuid/208df7db-74bd-2e10-adac-b47ea848e5af
How to best leverage SAP BusinessObjects BI 4.0 on SAP HANA 1.0:
http://www.sdn.sap.com/irj/scn/events?rid=/library/uuid/201d220d-11cc-2e10-39bf-e6cf6d42438b
Lessons Learned from the Provimi HANA Project:
http://www.sdn.sap.com/irj/scn/events?rid=/library/uuid/30f565bb-2703-2f10-bab9-845b7a71da88 Upcoming white paper on SDN (January 2012) : “Creating a universe on SAP HANA: Best Practices”
7/21/2019 1302 - BusinessObjects with HANA - Best Practices.pdf
http://slidepdf.com/reader/full/1302-businessobjects-with-hana-best-practicespdf 33/33
© 2011 SAP AG All i ht d 33
No part of this publication may be reproduced or transmitted in any form or for any
purpose without the express permission of SAP AG. The information contained
herein may be changed without prior notice.
Some software products marketed by SAP AG and its distributors contain
proprietary software components of other software vendors.
Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of
Microsoft Corporation.
IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5,
System x, System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries,
zSeries, eServer, z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390Parallel Enterprise Server, PowerVM, Power Architecture, POWER6+, POWER6,
POWER5+, POWER5, POWER, OpenPower, PowerPC, BatchPipes,
BladeCenter, System Storage, GPFS, HACMP, RETAIN, DB2 Connect, RACF,
Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent Miner, WebSphere,
Netfinity, Tivoli and Informix are trademarks or registered trademarks of IBM
Corporation.
Linux is the registered trademark of Linus Torvalds in the U.S. and other
countries.
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or
registered trademarks of Adobe Systems Incorporated in the United States and/or
other countries.Oracle and Java are registered trademarks of Oracle and/or its affiliates.
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and
MultiWin are trademarks or registered trademarks of Citrix Systems, Inc.
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®,
World Wide Web Consortium, Massachusetts Institute of Technology.
© 2011 SAP AG. All rights reserved.
SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects
Explorer, StreamWork, and other SAP products and services mentioned herein aswell as their respective logos are trademarks or registered trademarks of SAP AG
in Germany and other countries.
Business Objects and the Business Objects logo, BusinessObjects, Crystal
Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business
Objects products and services mentioned herein as well as their respective logos
are trademarks or registered trademarks of Business Objects Software Ltd.
Business Objects is an
SAP company.
Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other
Sybase products and services mentioned herein as well as their respective logos
are trademarks or registered trademarks of Sybase, Inc. Sybase is an SAP
company.
All other product and service names mentioned are the trademarks of their
respective companies. Data contained in this document serves informational
purposes only. National product specifications may vary.
The information in this document is proprietary to SAP. No part of this document
may be reproduced, copied, or transmitted in any form or for any purpose without
the express prior written permission of SAP AG.