SAP HANA 2.0 Administration
Novice or expert, this is your one-stop shop for administering SAP HANA 2.0! You’ll begin with a deep dive into database and engine architecture. Then explore your key tools: SAP HANA cockpit, SAP HANA Studio, the command-line interface, and more. From there, choose the topics you need. Backup and recovery? High availability? Data tiering? Security? Objects, tables, and transactions? All covered within these pages! From installation to performance tuning, this book has it all.
- Master the tools that support SAP HANA 2.0 database administration
- Manage tables, objects, system performance, and security
- Configure backup, recovery, and high availability
You'll learn about:
- Setup:
Walk through deployment options, capacity planning, sizing, and design of SAP HANA infrastructure. Then see how to install and update your SAP HANA system.
- Database Management:
Learn about the objects and tables within your database—how they are structured, how they are used, and what that means for you. Understand how client applications communicate with the database and what the SAP HANA repository is all about.
- Security:
From roles and privileges to authentication and auditing, see how to manage security in SAP HANA 2.0.
Key Highlights:
- Installation and updates
- Architecture
- SAP HANA cockpit
- SAP HANA Studio
- Persistency
- High availability/disaster recovery
- Scale-out systems
- Data tiering
- Objects and tables
- Security
- Performance
- Monitoring
View Full Table of Contents
- Preface
- So You Want to Be an SAP HANA Database Administrator?
- The SAP HANA Landscape Used for This Book
- Management Tools
- Who Is This Book For?
- How Is This Book Organized?
- Acknowledgements
- 1 SAP HANA Overview
- 1.1 The Column Store
- 1.2 Hardware Requirements
- 1.3 Editions
- 1.3.1 SAP HANA, Platform Edition
- 1.3.2 SAP HANA, Express Edition
- 1.3.3 SAP HANA, Developer Edition
- 1.3.4 SAP HANA Cloud
- 1.4 Use Cases
- 1.4.1 SAP HANA as the Primary Database for the ABAP Platform and SAP NetWeaver
- 1.4.2 SAP HANA as a Data Mart
- 1.4.3 SAP liveCache on SAP HANA
- 1.4.4 SAP HANA Accelerators
- 1.4.5 SAP HANA as a Development Platform
- 1.5 Data Provisioning
- 1.5.1 SAP Landscape Transformation Replication Server
- 1.5.2 Mobilink
- 1.5.3 Direct Extractor Connection
- 1.5.4 SAP Data Services for ETL-Based Replication
- 1.5.5 SAP Replication Server for Log-Based Replication
- 1.6 Advanced Analytics
- 1.6.1 Machine Learning and SAP HANA, Predictive Option
- 1.6.2 SAP HANA, Spatial and Graph Option
- 1.6.3 Text Analytics and Search
- 1.6.4 SAP HANA, Streaming Analytics Option
- 1.7 Data Integration
- 1.7.1 SAP HANA Smart Data Access
- 1.7.2 SAP HANA Smart Data Integration and SAP HANA Smart Data Quality
- 1.8 Summary
- 2 Architecture of the SAP HANA System
- 2.1 The Basics
- 2.1.1 System Database
- 2.1.2 Tenant Databases
- 2.1.3 SAP HANA License Keys
- 2.1.4 Cross-Database Access
- 2.1.5 Database Isolation
- 2.2 Services and Processes
- 2.3 SAP HANA XSA Runtime Platform
- 2.4 Data Persistency
- 2.5 Multihost or Distributed SAP HANA Systems
- 2.5.1 Data and Table Partitioning
- 2.5.2 Single-Level Partitioning
- 2.5.3 Multilevel Partitioning
- 2.5.4 Heterogeneous Partitioning
- 2.6 High Availability
- 2.7 Backup and Recovery
- 2.8 Summary
- 3 Administration Tools
- 3.1 SAP HANA Cockpit
- 3.1.1 Navigation
- 3.1.2 Setup and Configuration
- 3.1.3 Monitoring and Administration
- 3.1.4 Starting and Stopping Instances and Databases
- 3.1.5 Configuring the System
- 3.1.6 Monitoring Performance
- 3.1.7 Installing the SAP HANA License
- 3.1.8 Executing SQL Statements
- 3.2 SAP HANA Studio
- 3.2.1 Setup and Configuration
- 3.2.2 Monitoring and Administration
- 3.2.3 Starting and Stopping Instances and Databases
- 3.2.4 Configuring the System
- 3.2.5 Monitoring Performance
- 3.2.6 Installing the SAP HANA License
- 3.2.7 Executing SQL Statements
- 3.3 Command-Line Tools
- 3.3.1 Starting and Stopping Instances and Databases
- 3.3.2 Monitoring and Administration
- 3.3.3 Configuring the System
- 3.3.4 Executing SQL Statements
- 3.3.5 Using hdbsql
- 3.4 DBA Cockpit for SAP HANA
- 3.5 Additional Tools
- 3.5.1 SAP Solution Manager
- 3.5.2 SAP Landscape Management
- 3.6 Summary
- 4 Instance Administration
- 4.1 Structure of an SAP HANA Instance
- 4.1.1 SAP HANA System ID and Instance Number
- 4.1.2 Users and Groups
- 4.1.3 Directory Structure
- 4.1.4 Process Tree
- 4.1.5 Services and Ports
- 4.1.6 SAP HANA Database Directories
- 4.1.7 INI Files: Database Parameters
- 4.1.8 Trace Files
- 4.1.9 Command Aliases for Directory Navigation
- 4.2 Starting and Stopping the Instance
- 4.2.1 With the Command Line
- 4.2.2 With SAP HANA Studio
- 4.2.3 With SAP HANA Cockpit
- 4.2.4 Starting and Stopping Tenant Databases
- 4.2.5 Checking the Instance and Database Status
- 4.2.6 Managing the SAP Start Service
- 4.3 Maintaining Parameters
- 4.3.1 With SQL Statements
- 4.3.2 With the SAP HANA Cockpit
- 4.3.3 With Transaction DBACOCKPIT
- 4.3.4 With SAP HANA Studio
- 4.3.5 With setParameter.py
- 4.3.6 Protecting against Unsupported Parameter Values
- 4.4 Managing Memory
- 4.4.1 Memory Layout
- 4.4.2 When and How Memory Is Allocated
- 4.4.3 Memory Shortages
- 4.4.4 Heap Memory and Shared Memory
- 4.4.5 Memory for SQL Statements
- 4.4.6 Host Memory Statistics
- 4.4.7 Monitoring Memory Usage
- 4.5 Sessions and Transactions
- 4.5.1 Monitoring Sessions
- 4.5.2 Monitoring Transactions
- 4.5.3 Monitoring Locks
- 4.6 Load Management and Distribution
- 4.6.1 Admission Control
- 4.6.2 Processor Affinity
- 4.6.3 Parallel Execution of SQL Statements
- 4.6.4 Workload Classes
- 4.6.5 Workload Settings for Users
- 4.6.6 Metadata
- 4.7 Special Utilities
- 4.7.1 hdbcons
- 4.7.2 hdbrsutil
- 4.7.3 hdbnsutil
- 4.8 Managing Redo Logs
- 4.8.1 Log Segments
- 4.8.2 Log Modes
- 4.8.3 Running with Logging Disabled
- 4.8.4 Handling a Full Log Situation
- 4.8.5 Information about Log Segments
- 4.9 Summary
- 5 Database Administration
- 5.1 Managing Tenant Databases
- 5.1.1 Creating a Tenant Database
- 5.1.2 Starting and Stopping Tenants
- 5.1.3 Renaming a Tenant
- 5.1.4 Deleting Tenant Databases
- 5.1.5 Working with Fallback Snapshots
- 5.1.6 Working with Services
- 5.1.7 Working with Alerts
- 5.1.8 Preventing System Changes in Tenant Databases
- 5.1.9 Restricting and Disabling Features on Tenant Databases
- 5.2 Managing Data and Log Volumes
- 5.2.1 Data and Log Volumes Overview
- 5.2.2 Savepoint Operation
- 5.2.3 Data Volumes
- 5.2.4 Partitioning of the Data Volumes
- 5.2.5 Log Volumes
- 5.2.6 Reclaiming Space
- 5.3 Database Corruptions
- 5.3.1 Verifying Logical Consistency
- 5.3.2 Verifying Physical Consistency
- 5.4 Backup and Recovery
- 5.4.1 What Is Disaster Recovery?
- 5.4.2 Savepoints and Redo Logs
- 5.4.3 Backup Types
- 5.4.4 Backup Targets
- 5.4.5 Backup Configuration
- 5.4.6 Running Backups
- 5.4.7 Database Recoveries
- 5.4.8 Diagnostic Files for Backup and Recovery
- 5.5 Landscape Management
- 5.5.1 Moving or Cloning an SAP HANA System Using SAP HANA Lifecycle Manager Tools
- 5.5.2 Renaming an SAP HANA System
- 5.5.3 Copying a System Using System Replication
- 5.5.4 Copying and Moving Tenant Databases Using Database Replication
- 5.5.5 Copying a Database Using Backup and Restore
- 5.6 Network Configuration
- 5.6.1 Network Zones
- 5.6.2 Ports and Connections
- 5.6.3 Client Connections
- 5.7 Summary
- 6 System Replication
- 6.1 Architecture
- 6.1.1 Storage Replication
- 6.1.2 System Replication Overview
- 6.1.3 Storage versus System Replication
- 6.1.4 Backup and Recovery
- 6.1.5 Hostname Resolution
- 6.1.6 System Replication Parameters
- 6.2 Configuring and Monitoring System Replication
- 6.2.1 Prerequisites and Process Overview
- 6.2.2 Using the SAP HANA Cockpit
- 6.2.3 Using SAP HANA Studio
- 6.2.4 Using the Command Line
- 6.3 Takeover and Failback
- 6.3.1 Using the SAP HANA Cockpit
- 6.3.2 Using SAP HANA Studio
- 6.3.3 Using the Command Line
- 6.4 Disable System Replication
- 6.4.1 Using the SAP HANA Cockpit
- 6.4.2 Using SAP HANA Studio
- 6.4.3 Using the Command Line
- 6.5 Multitier System Replication
- 6.5.1 Architecture
- 6.5.2 Multitier via the SAP HANA Cockpit
- 6.5.3 Multitier via SAP HANA Studio
- 6.5.4 Multitier via the Command Line
- 6.5.5 Performing a Takeover
- 6.5.6 Restore to the Original Configuration
- 6.6 SAP HANA, Active/Active Read-Enabled Option
- 6.7 Secondary Time Travel
- 6.8 Zero-Downtime Maintenance with SAP Solutions
- 6.9 Hardware Exchange via System Replication
- 6.10 Summary
- 7 Scale-Out Systems and High Availability
- 7.1 Architecture
- 7.1.1 Scale Up Versus Scale Out
- 7.1.2 Multiple Node System Overview
- 7.1.3 Host Grouping to Separate Hot and Warm Data
- 7.1.4 Host Roles
- 7.1.5 File System Layout
- 7.2 Network Layout
- 7.2.1 Host Name Resolution
- 7.2.2 Client Connections
- 7.2.3 Application Connection after Takeover
- 7.3 Host Autofailover
- 7.3.1 Network-Attached Storage
- 7.3.2 Storage Area Network
- 7.4 Administration and Monitoring
- 7.4.1 Starting and Stopping
- 7.4.2 Monitoring
- 7.4.3 Configure Host Failover
- 7.5 Configuration and Setup
- 7.5.1 Adding Hosts
- 7.5.2 Distributing Tenant Databases
- 7.5.3 Data Redistribution
- 7.5.4 Removing Hosts
- 7.5.5 Adding/Removing Host Roles
- 7.6 Takeover and Failback
- 7.6.1 Host Takeover Detection
- 7.6.2 Takeover Execution
- 7.6.3 Failback Execution
- 7.7 Summary
- 8 Data Tiering
- 8.1 Data Tiering Options
- 8.2 Persistent Memory
- 8.2.1 Persistent Memory Overview
- 8.2.2 Configuration Parameters
- 8.2.3 Enabling Persistent Memory on Database Objects
- 8.2.4 Unloading Tables from Memory
- 8.2.5 Monitoring Views
- 8.2.6 Persistent Memory Monitor
- 8.3 Native Storage Extensions
- 8.4 SAP HANA Extension Node
- 8.4.1 Architecture
- 8.4.2 Configuration
- 8.4.3 Backup and Recovery
- 8.4.4 High Availability
- 8.5 SAP HANA Dynamic Tiering
- 8.5.1 Dynamic Tiering Overview
- 8.5.2 Architecture
- 8.5.3 Configuration
- 8.5.4 Database Backup and Recovery
- 8.5.5 High Availability
- 8.6 Integration with SAP IQ
- 8.7 Integration with Hadoop
- 8.8 Summary
- 9 Planning and Setting Up the SAP HANA Landscape
- 9.1 Architecture
- 9.2 Cloud Deployments
- 9.3 On-Premise Deployments
- 9.3.1 The Appliance
- 9.3.2 SAP HANA Tailored Data Center Integration
- 9.3.3 Appliance versus SAP HANA Tailored Data Center Integration
- 9.3.4 Scale Up versus Scale Out
- 9.3.5 SAP HANA Hardware Directory
- 9.3.6 Deployment Options
- 9.3.7 Software and Hardware Virtualization
- 9.3.8 Codeployment of SAP HANA with SAP NetWeaver AS ABAP/Java on One System
- 9.3.9 Deployment Options Compared
- 9.4 Capacity Planning
- 9.4.1 Quick Sizer
- 9.4.2 Sizing Reports
- 9.4.3 T-Shirt Sizing
- 9.4.4 Easy and Lazy Sizing
- 9.5 Infrastructure Design
- 9.5.1 Appliance
- 9.5.2 SAP HANA Tailored Data Center Integration
- 9.6 Network Layout
- 9.6.1 Client Zone
- 9.6.2 Internal Zone
- 9.6.3 Storage Zone
- 9.6.4 Backup Zone
- 9.7 High-Availability Clusters
- 9.8 Virtualization
- 9.8.1 Virtualization on VMware
- 9.8.2 Virtualization on IBM Power VM
- 9.9 Operating System Platforms
- 9.10 Reference Architecture
- 9.11 Summary
- 10 Installation and Updates
- 10.1 Release Cycle of SAP HANA
- 10.2 Preparing for Installation and Upgrades
- 10.2.1 Hardware Requirements
- 10.2.2 Software Requirements
- 10.2.3 SAP Hardware and Cloud Measurement Tool
- 10.3 Using Lifecycle Management Tools
- 10.3.1 SAP HANA Lifecycle Manager
- 10.3.2 Graphical User Interface
- 10.3.3 Command Line Interface
- 10.3.4 Web User Interface
- 10.3.5 Executing Tasks in a Distributed System
- 10.3.6 Optimized or Flexible Downtime
- 10.4 Downloading the Software
- 10.5 Installing an SAP HANA System
- 10.5.1 Users and Configuration Files Created during the Installation
- 10.5.2 Preparing the Installation Media
- 10.5.3 Installing a Single System
- 10.5.4 Installing a Multiple-Host System
- 10.5.5 Postprocessing Actions
- 10.6 Updating an SAP HANA System
- 10.6.1 Preparing the Update Media
- 10.6.2 Updating a Single System
- 10.6.3 Updating a Multiple Host System
- 10.6.4 Updating Using System Replication and Zero-Downtime Maintenance
- 10.6.5 Postprocessing Actions
- 10.7 Uninstalling SAP HANA
- 10.8 Installing and Updating the SAP HANA Client
- 10.8.1 Installation on UNIX, Linux, and macOS
- 10.8.2 Installation on Microsoft Windows
- 10.9 Installing and Updating the SAP HANA Cockpit
- 10.10 Installing and Updating SAP HANA Studio
- 10.11 Summary
- 11 Database Objects
- 11.1 Object Attributes
- 11.1.1 Database Catalog
- 11.1.2 Schemas, Users, and Ownership
- 11.1.3 Object Names
- 11.1.4 The Object ID
- 11.1.5 Object Dependencies
- 11.2 Tables
- 11.2.1 Row Store and Column Store
- 11.2.2 Table Columns
- 11.2.3 Displaying the Structure of a Table
- 11.3 Indexes
- 11.4 Triggers
- 11.5 Constraints
- 11.6 Views
- 11.6.1 SQL Views
- 11.6.2 Column Views
- 11.7 Sequences
- 11.7.1 Usage Example
- 11.7.2 Numbering Gaps and Chronology
- 11.8 Stored Procedures
- 11.8.1 Creating a Stored Procedure
- 11.8.2 Calling the Stored Procedure
- 11.9 Functions
- 11.9.1 Creating a Function
- 11.9.2 Using the Function
- 11.10 Synonyms
- 11.11 Summary
- 12 Working with Tables
- 12.1 The Storage Models: Row and Column Stores
- 12.1.1 Row-Store Tables
- 12.1.2 Column Store Tables
- 12.1.3 Usage Guidelines: Row Store or Column Store?
- 12.2 Compression
- 12.2.1 Dictionary Compression
- 12.2.2 Optimized Compression
- 12.2.3 When Is Compression Used?
- 12.3 Delta Store and Delta Merge
- 12.3.1 The Delta Merge Process
- 12.3.2 When Does a Delta Merge Happen?
- 12.4 Partitioning
- 12.4.1 Partition Placement
- 12.4.2 Single-Level Partitioning
- 12.4.3 Multilevel Partitioning
- 12.4.4 Special Operations on Partitioned Tables
- 12.4.5 Heterogeneous Partitioning
- 12.4.6 How Many Partitions Should a Table Have?
- 12.5 Table Classification and Distribution
- 12.5.1 Table Classification
- 12.5.2 Table Placement Rules
- 12.5.3 Table Placement Location
- 12.5.4 Example of Table Placement
- 12.6 Memory and Persistence Layer
- 12.6.1 Loading Data into Memory
- 12.6.2 Preloading Tables
- 12.6.3 Loading and Unloading Tables
- 12.6.4 Savepoints
- 12.7 Special Table Types
- 12.7.1 Temporary Tables
- 12.7.2 Temporal Tables
- 12.7.3 Flexible Schema Tables
- 12.7.4 Table DUMMY
- 12.8 Indexes
- 12.8.1 Row-Store Index Types
- 12.8.2 Column-Store Index Types
- 12.8.3 Index Persistence to Disk
- 12.9 Multiversion Concurrency Control
- 12.9.1 Read Stability and MVCC
- 12.9.2 Row-Store Garbage Collection
- 12.9.3 MVCC in the Column Store
- 12.10 Export and Import
- 12.10.1 Output Formats
- 12.10.2 Export
- 12.10.3 Import
- 12.10.4 Export and Import with SAP HANA Cockpit
- 12.10.5 Export and Import with SAP HANA Studio
- 12.11 Consistency Checks
- 12.11.1 Stored Procedures
- 12.11.2 Manual Consistency Checks
- 12.11.3 Automatic Table Consistency Check
- 12.11.4 Results of the Checks
- 12.11.5 Consistency Checks at Startup
- 12.12 Metadata
- 12.12.1 Row and Column Store
- 12.12.2 Compression
- 12.12.3 Delta Merge
- 12.12.4 Partitioning
- 12.12.5 Table Classification and Distribution
- 12.12.6 Persistence
- 12.12.7 Temporary Tables
- 12.12.8 Temporal Tables
- 12.12.9 Indexes
- 12.12.10 Multiversion Concurrency Control
- 12.12.11 Export and Import
- 12.12.12 Consistency Checks
- 12.13 Summary
- 13 Security
- 13.1 Security Patches
- 13.2 User Management
- 13.2.1 Standard Database Users
- 13.2.2 Restricted User Accounts
- 13.2.3 Internal User Accounts
- 13.2.4 Creating and Managing User Accounts
- 13.2.5 The SYSTEM User
- 13.2.6 User Groups
- 13.3 Database Privileges
- 13.3.1 Privileges Managed in the Catalog
- 13.3.2 Privileges Managed in the Repository of SAP HANA
- 13.3.3 Privilege Types
- 13.4 Database Roles
- 13.4.1 Creating and Maintaining Roles
- 13.4.2 Catalog and Repository Roles
- 13.4.3 Standard Catalog Roles
- 13.5 Troubleshooting Authorization Issues
- 13.5.1 Finding Information on Granted Privileges and Roles
- 13.5.2 Tracing Missing Authorizations
- 13.6 Authentication Methods
- 13.6.1 Username and Password Authentication
- 13.6.2 LDAP Authentication
- 13.6.3 Supported Third-Party Authentication Providers
- 13.7 Auditing the Database
- 13.7.1 Audit Policies
- 13.7.2 System-Wide Audit Policies
- 13.7.3 Default Audit Policies
- 13.7.4 Configuration and Audit Policy Management
- 13.7.5 Recommended Audit Policies and Best Practices
- 13.8 Encryption
- 13.8.1 Server-Side Data Encryption
- 13.8.2 Persistency Encryption
- 13.8.3 Client Encryption Settings
- 13.8.4 Managing Certificates
- 13.9 Increase the System Isolation Level
- 13.10 Cross-Database Authorizations
- 13.11 Summary
- 14 Performance Analysis
- 14.1 System Performance Monitoring
- 14.1.1 SAP HANA Cockpit
- 14.1.2 SAP HANA Studio
- 14.1.3 DBA Cockpit
- 14.1.4 SQL Statements
- 14.2 SQL Statement Analysis
- 14.2.1 EXPLAIN PLAN
- 14.2.2 SQL Plan Cache and Expensive SQL Statements
- 14.2.3 PlanViz
- 14.2.4 DBA Cockpit
- 14.2.5 SQL Trace: Transaction ST05
- 14.3 Optimizer Statistics
- 14.4 Summary
- 15 Monitoring and Troubleshooting
- 15.1 Monitoring Views
- 15.1.1 Views in the SYS_DATABASES Schema
- 15.1.2 Reset Points for Monitoring Views
- 15.2 Statistics Service Views
- 15.3 Displaying System Views
- 15.4 Diagnostic Files
- 15.4.1 Trace Files
- 15.4.2 Dump Files
- 15.4.3 Additional Files
- 15.4.4 Viewing Diagnostic Files
- 15.5 Alerts
- 15.5.1 Statistics Views for Alerts
- 15.5.2 Displaying and Managing Alerts
- 15.6 SAP's SQL Statement Collection
- 15.6.1 Installing the Scripts
- 15.6.2 Structure of the SQL Scripts
- 15.6.3 Editing Scripts
- 15.6.4 Version and Feature-Dependent Scripts
- 15.6.5 Running the Scripts
- 15.7 Mini Checks
- 15.8 SQL Trace
- 15.8.1 Activating the Trace
- 15.8.2 Displaying the Trace
- 15.9 Additional Traces
- 15.9.1 Database Trace
- 15.9.2 User-Specific and End-to-End Traces
- 15.9.3 Kernel Profile Trace
- 15.9.4 Kernel Sentinel
- 15.9.5 Client-Side Traces
- 15.10 Summary
- A Setting Up Your Trial System
- A.1 Install SAP HANA, Express Edition
- A.1.1 Download and Install the Java SDK
- A.1.2 Download and Install a Hypervisor
- A.1.3 Download the Download Manager
- A.1.4 Install your Virtual Machine
- A.2 Get SAP HANA with SAP Cloud Appliance Library
- A.2.1 SAP Cloud Appliance Library Overview
- A.2.2 Create an Account and Subscription in the Public Cloud
- A.2.3 Set Up Your SAP Cloud Appliance Library
- A.2.4 Deploying Solutions
- A.2.5 Connect to Your System and Start Using the Software
- A.3 Summary
- B References and Further Reading
- B.1 Accessing the SAP Documentation
- B.2 SAP Documentation and Manuals
- B.3 SAP Product Support
- B.3.1 Architecture/General
- B.3.2 Management and Tools
- B.3.3 Monitoring, Analysis, and Troubleshooting
- B.3.4 Backup and recovery
- B.3.5 Security
- B.3.6 Performance
- B.3.7 High Availability and Replication
- B.3.8 Special Features and Operations
- B.4 Further Reading from SAP PRESS
- C The Authors
- Index