You are on page 1of 29

SAP 

HANA 2.0 SPS 00 ­ What’s New?
HANA dynamic tiering foundation
Summary of what’s new in HANA 2.0 dynamic tiering
Positioning of dynamic tiering as a HANA data management option
New multistore table feature

(Delta from HANA SPS 12 to HANA 2.0 SPS 00)
SAP HANA Product Management November, 2016

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 1
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.

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 2
Agenda

Summary of what’s new in HANA 2.0 dynamic tiering
• HA/DR enhancements
• Security and system landscape improvements
• New multistore table feature
Positioning of DT as a HANA data management option
• Overview of data tiering options for native apps, SAP BW, and S4/HANA
New multistore table feature
• Multistore vs Extended Store Tables
• Multistore Partition Types
• Multistore Limitations
• Examples

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 3
Summary of what’s new in
HANA 2.0 dynamic tiering
SAP HANA dynamic tiering status in SPS 12
Extend SAP HANA memory with disk­backed column store technology
Value proposition
• Enable data lifecycle management in
SAP applications and native HANA projects
• Manage data according to its value – not Application powered by SAP HANA
all data must be accessed in real time
SAP HANA System with dynamic tiering option
Technical characteristics
SAP HANA Database
• SAP HANA database comprised of a memory­based hot store
and a disk­based warm store Optimized data movement and push
• Tool­based data lifecycle management (DLM) down query processing

• SQL and Calculation View support, cross­store query optimizer
Hot Store Warm Store
• Unified backup/restore, host auto­failover, integrated monitoring
Column Row Extended
Table Table Table
Use cases
• Primary use case is native HANA data marts Worker Worker Worker
ES host
host host host
• Dynamic tiering is used for a limited set of DSOs in the
propagation and transformation layers of SAP BW (7.40 SP 8
and above)
• Not supported at this time by SAP Business Suite or S/4 HANA

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 5
What’s new
Enhanced HA / DR

HANA system replication Backup and Recovery
• Support for two­tier HANA synchronous system • Incremental and differential delta Backups
replication supported for dynamic tiering
• Benefit: provides high availability of a HANA • Benefit: reduced backup times, and backup
dynamic tiering system with short takeover time and storage requirements for a slowly changing
no data loss
warm store

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 6
What’s new
Persistence encryption and co­deployment

Encryption of data at rest HANA+DT co­deployment
• An encrypted HANA database will now have an encrypted • Co­deployment of HANA and dynamic tiering
extended store servers on a single machine for production
environments
• Benefit: maintain confidentiality of both hot and warm data • User can configure how CPU and memory
resources are divided between HANA and dynamic
tiering servers.
• Benefit: HANA scale up systems can add
dynamic tiering without requiring an additional
HANA System
physical host
HANA HANA HANA DT DT
Server Server Server server server

Hot Store
Secure Store
in File System Encrypted
(SSFS) hot data Encrypted
warm data

Storage subsystem

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 7
What’s new
Multistore table
Multistore partitioned column table:
• Single HANA column partitioned table with some partitions in memory and some partitions in DT
• Range, hash­range, and range­range, and time selection partitioning options
• Runtime partition pruning (access to only hot data will not touch dynamic tiering store)
• Benefits:
– simplified data modeling compared to extended tables
– built­in runtime partition pruning for query optimization
– easily move partitions of data between HANA memory and dynamic tiering

SAP HANA Database

In­memory­store Extended store

Column table Multistore table T_M Extended


T_C table T_E
Partition 1 Partition 2 Partition 3

This is the current state of planning and may be changed by SAP at any time.

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 8
Positioning of DT as a HANA
data management option
HANA Dynamic Tiering as Data Tiering Option

HANA Dynamic Tiering is an technology enabler for an application­driven aging process in order to move historical data onto the cheaper
Dynamic Tiering Disk­Store.
The aging process depends on the application­specific data scheme, the application’s access patterns and its performance expectations for
historical data.

SAP BW,
Native S4/HANA
Apps SAP BW/4HANA

Memory Memory Extension Memory Historical


In­Memory Store load/unload load/unload load/unload partitions
Nodes
HANA
Database Extended Store Dynamic Dynamic
(TBD)
(Disk)) Tiering Tiering

NLS­subsystem , SAP DWF /
BW NLS
SAP Netweaver
SAP IQ, Filesystem DLM to IQ ILM

SAP DWF / BW Direct
Hadoop (HDFS) DLM Load

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 10
New multistore table feature
Multistore vs Extended Store
Tables
SAP HANA extended tables
And how they relate to classical memory­based tables in SAP HANA
HANA extended table HANA extended table HANA extended table is a first
schema is part of HANA data resides in warm class database object with full
database catalog store ACID compliance

Database Catalog
Table Definition Hot Store Classical HANA
Data (memory column/row table
)
Table Definition Warm Store Extended table
Data (disk) (warm table)

HANA Database
IN-MEMORY TABLE EXTENDED STORAGE TABLE
CREATE COLUMN TABLE t1 (a INT, b INT); CREATE COLUMN TABLE t1_ext (a INT, b INT)
USING EXTENDED STORAGE;

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 13
Managing and processing data in extended tables

Data temperature tied to table type (SPS 9/10)
Applications must manage data temperature explicitly
T1 T2
• Appropriate for object­based classification
Hot Warm
• Possible if application has good control over data
• Easiest if cold data is mostly read­only Explicit Split
• DLM tool of SAP HANA Data Warehousing Foundation provided as
interim solution (http://help.sap.com/hana_options_dwf/)
Ordering

Push/Pull query optimization and transformation
Grouping

Optimized cross­store execution
• Shift query operations to hot or warm store as appropriate
• Parallel execution of operations in hot and warm store Join / Union

• Supported in HANA calculation views T1 T2 T3 T4

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 14
Multistore Table High Level

Logical

Last Prev
Current
month month

Master Node Slave Nodes D
T
Physical

Last Prev
Current
month month

Master Node Slave Nodes D
T

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 15
Range Partitioned Multi­store Table

Master Node Slave Nodes

HANA Current Range 1 Range 2 Range n

DT Range n+1 Range n+2 Range m

Single physical Table

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 16
Hash Range Partitioned Multi­store Table

Top level provides scalability
Lower level provides temperature

Master Node Slave Nodes

HANA Current Range 1 Range 2 Current Range 1 Range 2 Current Range 1 Range 2

Hash Node 1 Hash Node 2 Hash Node 3

Range 3 Range 4 Range 5 Range 3 Range 4 Range 5 Range 3 Range 4 Range 5


DT

Single physical Table

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 17
Multistore Partition Types

Range Partitioning
• Only range partitions are supported for single­level partitioning.
• At least one range partition must reside in default storage and one range partition in extended storage.

Hash­Range and Range­Range Partitioning
• Hash­range and range­range partitions are supported for multilevel partitioning.
• Hash partitions can reside only on nodes in the HANA cluster in default storage.
• First­level hash or range partitions must reside in default storage.
• At least one second­level range partition must reside in default storage and one in extended storage. Any
additional second­level range partitions can reside in either store.

Time­Selection Partitioning
• Range, hash­range, and range­range partitions are supported with time­selection partitioning.
• The data type for the time­selection column must be NVARCHAR(8).
• You cannot convert multistore tables containing time­selection partitioning to other table types (extended storage
or HANA tables).

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 18
Multistore Limitations

Multistore tables have been implemented on top of existing HANA and Dynamic Tiering
capabilities
➢ Existing limitations of HANA & DT are inherited by Multistore tables

Unsupported Data Types Close but not Quite – Different Domains
• TIMESTAMP • SMALLDECIMAL
• ALPHANUM • DECIMAL
• SHORTTEXT
• TEXT
• ARRAY
Table & Index Definition Limitations
• No full text or geocode indexes
• Several clauses specific to in­memory tables are not supported, other clauses will only apply to
either the in­memory partition or the extended storage partitions
• No triggers on partitions in extended storage
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 19
Create Multistore Table – Range Partitioned

RANGE PARTITIONED TABLE


CREATE COLUMN TABLE t1 (a INT, b INT) PARTITION BY RANGE(b)
(USING DEFAULT STORAGE (PARTITION 10 <= VALUES < 20, PARTITION VALUE = 25, PARTITION OTHERS)
USING EXTENDED STORAGE (PARTITION 30 <= VALUES < 40, PARTITION 40 <= VALUES < 50))
FOR EXTENDED STORAGE ENABLE DELTA
AT LOCATION ('hosta:30003', 'hostb:30003');

• Partitioning based on values of column b
• 3 partitions in DEFAULT STORAGE, 2 partitions in EXTENDED STORAGE
• PARTITION OTHERS is a catch all for any values not explicitly assigned to a partition
• Can only be declared/created in DEFAULT STORAGE
• AT LOCATION clause provides the location of the index servers used for DEFAULT
STORAGE
• ENABLE DELTA clause activates the delta store for EXTENDED STORAGE which
allows concurrent writes to partitions in EXTENDED STORAGE
© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 20
Create Multistore Table –Range­Range Partitioned

RANGE-RANGE PARTITIONED TABLE


CREATE COLUMN TABLE t2 (a INT, b INT) PARTITION BY
RANGE(a) (PARTITION 5 <= VALUES < 10),
RANGE(b) (USING DEFAULT STORAGE (PARTITION 10 <= VALUES < 20, PARTITION VALUE = 25, PARTITION OTHERS)
USING EXTENDED STORAGE (PARTITION 30 <= VALUES < 40, PARTITION 40 <= VALUES < 50))
FOR EXTENDED STORAGE ENABLE DELTA
AT LOCATION ('hosta:30003', 'hostb:30003');

• Similar to previous example but with addition of partitioning on 2 columns
• First level of partitioning is on RANGE(a)
• Second level of partition is on RANGE(b)
• First level partitioning is always in DEFAULT STORAGE and therefore the DEFAULT STORAGE is
not explicitly stated
• Second level partitions may be in DEFAULT STORAGE  or EXTENDED STORAGE

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 21
Create Multistore Table – Hash­Range Partitioned

HASH-RANGE PARTITIONED TABLE


CREATE COLUMN TABLE t3 (a INT, b INT ) PARTITION BY
HASH (a) PARTITIONS 5,
RANGE (b) (USING DEFAULT STORAGE (PARTITION 10 <= VALUES < 20, PARTITION VALUE = 25, PARTITION OTHERS)
USING EXTENDED STORAGE (PARTITION 30 <= VALUES < 40, PARTITION 40 <= VALUES < 50)
)
FOR EXTENDED STORAGE ENABLE DELTA
AT LOCATION ('hosta:30003', 'hostb:30003');

• HASH ranges are always in DEFAULT STORAGE
• For HASH ranges, you specify a # of partitions to use instead of
setting bounds for each range

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 22
Create Multistore Table – Time Selection
RANGE PARTITIONED WITH TIME SELECTION
CREATE COLUMN TABLE ts1 (a INT, b INT, c NVARCHAR(8)) PARTITION BY RANGE (c)
(USING DEFAULT STORAGE ( PARTITION value = '00000000' IS CURRENT,
PARTITION OTHERS,
PARTITION '20150101' <= VALUES < '20160101',
PARTITION '20140101' <= VALUES < '20150101')
USING EXTENDED STORAGE ( PARTITION '20130101' <= VALUES < '20140101',
PARTITION '20120101' <= VALUES < '20130101')
)
FOR EXTENDED STORAGE ENABLE DELTA
WITH PARTITIONING ON ANY COLUMNS ON
FOR NON CURRENT PARTITIONS UNIQUE CONSTRAINTS OFF
FOR DEFAULT STORAGE NON CURRENT PARTITIONS PAGE LOADABLE
AT LOCATION ('hosta:30003', 'hostb:30003';)

• Data type for the time­selection column must be NVARCHAR(8)
• Values are expected to follow YYYYMMDD format
• Partition IS CURRENT is required, can only exist in DEFAULT
STORAGE and must be the first partition defined
• WITH PARTITIONING ON ANY COLUMNS ON clause is required

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 23
Create Multistore Table – Time Selection
RANGE-RANGE PARTITIONED WITH TIME SELECTION
CREATE COLUMN TABLE ts2 (a INT, b INT, c NVARCHAR(8), PRIMARY KEY (a, c)) PARTITION BY
RANGE (a) ( PARTITION 10 <= VALUES < 20,
PARTITION 20 <= VALUES < 30),
RANGE (c) ( USING DEFAULT STORAGE (PARTITION value = '00000000' IS CURRENT,
PARTITION OTHERS,
PARTITION '20150101' <= VALUES < '20160101',
PARTITION '20140101' <= VALUES < '20150101')
USING EXTENDED STORAGE (PARTITION '20130101' <= VALUES < '20140101',
PARTITION '20120101' <= VALUES < '20130101'))
FOR EXTENDED STORAGE ENABLE DELTA
WITH PARTITIONING ON ANY COLUMNS ON
FOR NON CURRENT PARTITIONS UNIQUE CONSTRAINTS OFF
FOR DEFAULT STORAGE NON CURRENT PARTITIONS PAGE LOADABLE
AT LOCATION ('hosta:30003', 'hostb:30003');

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 24
Create Multistore Table – Time Selection
HASH-RANGE PARTITIONED WITH TIME SELECTION
CREATE COLUMN TABLE ts3 (a INT, b INT, c NVARCHAR(8), PRIMARY KEY (a, c)) PARTITION BY
HASH (a) PARTITIONS 5,
RANGE (c) (USING DEFAULT STORAGE ( PARTITION value = '00000000' IS CURRENT,
PARTITION OTHERS,
PARTITION '20150101' <= VALUES < '20160101',
PARTITION '20140101' <= VALUES < '20150101')
USING EXTENDED STORAGE ( PARTITION '20130101' <= VALUES < '20140101',
PARTITION '20120101' <= VALUES < '20130101'))
FOR EXTENDED STORAGE ENABLE DELTA
WITH PARTITIONING ON ANY COLUMNS ON
FOR NON CURRENT PARTITIONS UNIQUE CONSTRAINTS OFF
FOR DEFAULT STORAGE NON CURRENT PARTITIONS PAGE LOADABLE
AT LOCATION ('hosta:30003', 'hostb:30003');

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 25
Migrating Data by Partition

Most efficient method for migrating data within a Multistore table from DEFAULT STORAGE to
EXTENDED STORAGE or back is to ALTER the table and move a complete partition

RANGE PARTITIONED TABLE


CREATE COLUMN TABLE t1 (a INT, b INT) PARTITION BY RANGE(b)
(USING DEFAULT STORAGE (PARTITION 10 <= VALUES < 20, PARTITION VALUE = 25, PARTITION OTHERS)
USING EXTENDED STORAGE (PARTITION 30 <= VALUES < 40, PARTITION 40 <= VALUES < 50))
FOR EXTENDED STORAGE ENABLE DELTA
AT LOCATION ('hosta:30003', 'hostb:30003');

AGING A PARTITION – from DEFAULT STORAGE to EXTENDED STORAGE


ALTER TABLE t1 ALTER PARTITION (b) USING EXTENDED STORAGE (10 <= VALUES < 20 );

ANTI-AGING A PARTITION – from EXTENDED STORAGE to DEFAULT STORAGE


ALTER TABLE t1 ALTER PARTITION (b) USING DEFAULT STORAGE (40 <= VALUES < 50 );

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 26
Monitoring Views

View Name Description
TABLE_PARTITIONS Shows information for all partitions
PARTITIONED_TABLES General partitioning information for all partitions of a
table
SYS.TOPOLOGY_INFORMATION_ Table that contains volume locations for the partitions
of all database objects
M_CS_PARTITIONS Shows information for only CS partitions
M_ES_TABLES Will have new partid field that will have ­1 for
multistore tables
TABLES Partition spec will also show DT partitions
M_TABLE_PERSISTENCE_LOCATION Location of indexservers that contain data of partitions
M_TABLE_LOCATION Shows the distribution locations of partitions across
various indexserver’s.  DT partitions will be shown as
well.

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 27
Thank you

Contact information:

Courtney Claussen Ruediger Karl Robert Waywell


SAP HANA product management SAP HANA product management SAP HANA product management
courtney.claussen@sap.com ruediger.karl@sap.com robert.waywell@sap.com

© 2016 SAP SE or an SAP affiliate company. All rights reserved.
© 2016 SAP SE or an SAP affiliate company. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP SE or an SAP affiliate company.

SAP and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP SE (or an SAP affiliate
company) in Germany and other countries. Please see http://global12.sap.com/corporate­en/legal/copyright/index.epx for additional trademark information and notices.

Some software products marketed by SAP SE and its distributors contain proprietary software components of other software vendors.

National product specifications may vary.

These materials are provided by SAP SE or an SAP affiliate company for informational purposes only, without representation or warranty of any kind, and SAP SE or its
affiliated companies shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP SE or SAP affiliate company products and
services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as
constituting an additional warranty.

In particular, SAP SE or its affiliated companies have no obligation to pursue any course of business outlined in this document or any related presentation, or to develop
or release any functionality mentioned therein. This document, or any related presentation, and SAP SE’s or its affiliated companies’ strategy and possible future
developments, products, and/or platform directions and functionality are all subject to change and may be changed by SAP SE or its affiliated companies at any time
for any reason without notice. The information in this document is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. All forward­
looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from expectations. Readers are cautioned not to place
undue reliance on these forward­looking statements, which speak only as of their dates, and they should not be relied upon in making purchasing decisions.

© 2016 SAP SE or an SAP affiliate company. All rights reserved. Publi 29

You might also like