HANA DB - Restart Sequence

The SAP HANA system restart sequence restores the system to a fully operational state quickly.

When you restart an SAP HANA system, the following activities are executed by the restart agent of the persistence layer.

  1. The data volume of each service is accessed in order to read and load the restart record.
  2. The list of open transactions is read into memory.
  3. Row tables are loaded into memory.
  4. Open transactions are processed using the redo log:
    1. Write transactions that were open when the database was stopped are rolled back.
    2. Changes of committed transactions that were not written to the data area are rolled forward.

      The first column tables start being reloaded into memory as they are accessed for roll forward.

    After this step, the database is technically available and logon is possible.

  5. Aborted transactions are determined and rolled back.
  6. A savepoint is performed with the restored consistent state of the database.
  7. Column tables that are marked for preload and their attributes are asynchronously loaded in the background (if they have not already been loaded as part of log replay).

    The preload parameter is configured in the metadata of the table. This feature is useful for example to make certain tables and columns used by important business processes available more quickly.

  8. Column tables that were loaded before restart and their attributes start reloading asynchronously in the background (if they have not already been loaded as part of log replay or because they are marked for preload).

    During normal operation, the system tracks the tables currently in use. This list is used as basis for reloading tables after a restart.

Reloading column tables as described in steps 7 and 8 restores the database to a fully operational state more quickly. However, it does create performance overhead and may not be necessary in non-production systems. You can deactivate the reload feature in the indexserver.ini file by setting the reload_tables parameter in the sql section to false. In addition, you can configure the number of tables whose attributes are loaded in parallel using the tables_preloaded_in_parallel parameter in the parallel section of indexserver.ini. This parameter also determines the number of tables that are preloaded in parallel.


Steps:
  • Connect to HANA system and open SQL console in HANA studio
  • Execute any of following SQL (Execution of all three SQL is not required) 

ALTER TABLE "NAFTA"."yearlySales" PRELOAD ALL; //This SQL will mark the complete table for pre-loading.

ALTER TABLE "NAFTA"."yearlySales" PRELOAD NONE;   //This  SQL will remove the preloading flag of table.
ALTER TABLE "NAFTA"."yearlySales" PRELOAD ("YEAR","Product A");  //Partial loading - this will mark the column YEAR and 'Product A' for pre-loading. 

Comments

Popular Posts

SAP Logon Configuration(Load Balancing)

EHP Upgrade (SUM)

Interview Questions

SNOTE Implementation and FAQ

SAP Startup Troubleshooting

HANA Installation & upgrade

SAP HANA Backup

SAP Transport Management System (STMS)

Set Up SAP HANA System Replication with hdbnsutil

SAP Kernel Upgrade in Distributed System