# SAP HANA Platform document note ## Architecture * [SAP Help Portal](https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.04/en-US/f0e6eb689f5648899749389c0894fd25.html) * An **SAP HANA system** is identified by a single system ID (SID) and contains one or more tenant databases and one system database. Databases are identified by a SID and a database name. Database clients, such as the SAP HANA cockpit, connect to specific databases. * The **SAP HANA XS advanced application server** is a layer on top of SAP HANA that provides the platform for running SAP HANA-based Web applications. It is an integral part of the SAP HANA system. * Only the **system database** runs the ~name server~. The name server contains landscape information about the system as a whole, including which tenant databases exist. It also provides index server functionality for the system database. The name server does not own information about the location of tables and table partitions in tenant databases. Database-related information is stored in the relevant tenant database catalog. * **Tenant databases** require only an own index server. Servers that do not persist data, such as the compile server and the preprocessor server, run on the system database and serve all databases. * A system always has exactly one system database, used for central system administration, and any number of tenant databases (including zero). An SAP HANA system is identified by a single system ID (SID). Databases are identified by a SID and a database name. From the administration perspective, there is a distinction between tasks performed at system level and those performed at database level. Database clients, such as the SAP HANA cockpit, connect to specific databases. ### Things to Remember About the System Database * The system database does not have the same functionality as a tenant database. * The system database is not a database with full SQL support. * The system database cannot be distributed across multiple hosts, in other words, scale-out is not possible. * If you need a full-featured SAP HANA database, you always have to create at least one tenant database. * The system database does not support Application Function Libraries (AFL) and SAP liveCache applications. * Cross-database access between the system database and a tenant database is not possible. The system database can show monitoring data from tenant databases (views in the schema SYS_DATABASES) but can never show actual content from tenant databases. * The system database cannot be copied or moved to another host. * SAP HANA options can only run in tenant databases. * Tenant-specific configurations cannot be set in the system database. Only global settings are allowed. * Features can only be restricted or disabled at high level for tenant databases. ### System Versus Database Administration Tenant database systems have two levels of administration. Some administration tasks are performed in the system database and apply globally to the system and all its databases. They include for example: * Starting and stopping the whole system * Monitoring the system * Configuring parameters in configuration (*ini) files at system level * Setting up and configuring tenant databases, for example: * Creating and dropping tenant databases * Disabling features on tenant databases * Configuring system- and database-specific parameters in configuration (*ini) files * Scaling out tenant databases by adding services * Backing up tenant databases * Recovering tenant databases Some administration tasks are performed in the tenant database and apply only to that database. They include for example: * Monitoring the database * Provisioning database users * Creating and deleting schemas, tables, and indexes in the database * Backing up the database * Configuring database-specific parameters in configuration (*ini) files ### Administration Tools Several tools are available for the administration of SAP HANA. While all tools support database-level administration, system-level administration of tenant databases requires the SAP HANA cockpit (for example, monitoring availability of tenant databases, creating and deleting tenant databases). For more information about the SAP HANA cockpit and other administration tools, see the section on administration tools in the SAP HANA Administration Guide. ### Distributing Data [SAP Help Portal](https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.04/en-US/999c782cc4d0485ea04a70966b6aabad.html) ![SAP HANA System](https://help.sap.com/doc/PRODUCTION/6b94445c94ae495c83a19646e7c3fd56/2.0.02/en-US/loiod933ddc4a1cf4cfc82e0f0f98c31a31f_LowRes.png) In a multiple-host system each index server is usually assigned to its own host for maximum performance. SAP HANA supports different ways of distributing data across the hosts: * Different tables can be assigned to different index servers. * A table can be split, or partitioned, in a way that different rows of the table are stored on different index servers * A table can be replicated to multiple index servers, for better query and join performance. When you create new tables or partitions, data is distributed to the available hosts by the system. By default a ‘round-robin’ distribution method is used, but tables can also be positioned by using table placement rules or by specifying a host and port number with the SQL CREATE TABLE statement in the location clause; this gives complete control over the positioning of individual tables. Specific applications may have predefined table distribution rules and in some cases configuration files and documentation are available in SAP Notes to help you to set up the necessary partitioning and table placement rules. For more information, see the sections on table placement, table partitioning, and table replication. ### Distributed Execution Database clients may send their requests to any index server on any host in a distributed system. If the contacted index server does not own all of the data involved, it delegates the execution of some operations to other index servers, collects the result, and returns it to the database client. The SAP HANA client library supports load balancing and minimizes communication overhead by selecting connections based on load data and routing statements based on information about the location of data. ### SAP HANA Administration Tools * **SAP HANA Cockpit** The SAP HANA cockpit provides a single point of access to a range of tools for the administration and detailed monitoring of SAP HANA databases. For example, you can use the cockpit to ~start and stop systems and databases, monitor databases, configure system settings, manage users and authorizations, and do backups~. The cockpit also integrates the ~SAP HANA database explorer~ and the ~SAP HANA SQL analyzer~. The database explorer allows you to query ~information about the database~ and ~view information about catalog objects~, while the SQL analyzer helps you to understand and ~analyze the execution plans of queries~. * **SAP HANA Studio** The SAP HANA studio is the legacy development environment and administration tool for SAP HANA, ~based on the Eclipse platform~. * **SAP HANA hdbsql** SAP HANA hdbsql allows you to execute SQL statements and database procedures, as well as query information about the database and catalog objects, from the ~command line~. ## Other information ### Database Structure | BQ | Hana | | -------- | -------- | | Project | Database | | Database | Schema | | Table | Table | ### Database Performance Compare | Text | Hana | | -------- | -------- | | 1~2 secs | 6~7 secs | | ![](https://i.imgur.com/6a3F9hX.png) | ![](https://i.imgur.com/sVELMwI.png) | https://www.guru99.com/sap-hana-tutorial.html