Frequently Asked Questions
General Questions
- Do I need a license for Data Aging?
No, data aging is not a licensed product. The Data Aging framework is available with NetWeaver release 740 SP05 onwards.
- What is the difference between Archiving and Data Aging?
Data Aging offers you the option of moving operationally less relevant data within a database so as to gain more working memory. You use the relevant SAP applications, particularly data aging objects to move data from the current area to the historical area. The move influences the visibility when data is accessed. This also means that you can perform queries of large amounts of data in current area in a shorter time. To be able to apply Data Aging to your data, you need to fulfill certain requirements regarding the database and the application.
Data Archiving is used to remove data from the database and store it outside in a consistent and secure manner. The archived data is stored in a file system and from there can be moved to other, more cost-efficient and long-term storage system.
The main difference is that aged data remains under full control of the database and continues to be accessible by SQL, whereas archived data leaves the database and needs additional access paths (address information or archive indexes) to be read. Archived data is also strictly read-only and additionally secured by the ADK format. Aging targets the main memory footprint reduction whereas archiving is the basis for ILM, covering the full life cycle up to the destruction of information.
- Where does historical data reside?
Historical data resides in the historical area, which, in the case of SAP HANA, consists of aging partitions belonging to the standard HANA table persistency layer.
- Can you access/read historical data?
Yes, you can access/read historical data.
- How do we enable data access from the historical area in ABAP?
You can enable data access from historical area by using the classes CL_ABAP_SESSION_TEMPERATURE and CL_ABAP_STACK_TEMPERATURE.
- Can the data be unloaded from the main memory?
Yes, you can unload the data from the main memory.
- Can you modify historical data?
Yes, you can modify historical data. Usually, business complete data is aged, so modifications are exceptionally rare.
- What is the business function and switch associated with Data Aging?
The business function for Data Aging is DAAG_DATA_AGING. The switch is DAAG_USAGE.
- Which are the authorization objects and roles that are needed?
The needed authorization objects are:
- S_DAAG
- S_DAGPTM
The available single roles are:
- SAP_DAAG_ADMIN
- SAP_DAAG_EXPERT
For more information about authorizations and roles, see Authorizations.
- Do we have Fiori applications for data aging?
Yes, we have 3 Fiori applications for Data Aging administrators.
Transactional apps:
Analytical app:
- What is current data?
Current data is the data relevant to the operations of application objects, needed in day-to day-business transactions. The application logic determines when current data turns historical by using its knowledge about the object’s life cycle. The application logic validates the conditions at the object level from a business point of view, based on the status, execution of existence checks, and verification of cross-object dependencies. Current data is stored in the current area.
Examples of current data: Open FI items, items cleared only a few months ago, undelivered purchase orders, sales documents of sales cycle that is still in progress, documents for an ongoing project, and IDocs that need to be processed.
- What is historical data?
Historical data is data that is not used for day-to day-business transactions. By default, historical data is not visible to ABAP applications. It is no longer updated from a business point of view. The application logic determines when current data turns historical by using its knowledge about the object’s lifecycle. The application logic validates the conditions at object level from a business point of view, based on the status, executing existence checks, and verifying cross object dependencies. Historical data is stored in historical area.
Examples of historical data: Cleared FI items posted two years prior to the current fiscal year, material documents one period older than the current closed period, processed IDocs, and application logs after X number of days.
- Why do we need partitions?
Partitioning supports the creation of very large tables by breaking them up into smaller and more manageable pieces. In particular, a partition limits the amount of column-wise data to be loaded into HANA memory and allows for partition-wise mapping of data to persistent storage. Partitioning is transparent for SQL queries and Data Manipulation Language (DML) statements.
- What is the maximum capacity threshold for a partition?
The maximum capacity threshold for a partition enforced by HANA Database is 2 billion records.
- Can I have multiple partitions for historical data?
Yes, you can have multiple partitions based on date ranges.
- When do we create new partition range in historical area?
We create a new partition range when data to be aged is not covered by an existing partition range in historical area. A new partition range can also be created when the maximum capacity threshold for an existing partition is reached soon.
- Why can historical data reside in multiple partitions?
Multiple partitioning is based on the volume of the data in the database. It helps in database partition pruning as well for different historical ranges.
- Can there be multiple current partitions?
No.
- Does the Data Aging Framework decide to move the data from the current area to the historical area automatically?
The application logic determines when current data turns historical by using its knowledge about the object’s life cycle. The application logic validates the conditions at the object level from a business point of view, based on the status, execution of existence checks, and verification of cross-object dependencies. The framework executes the move.
- Are partitions provided by the Data Aging Framework?
No.
- Is partitioning available for row store tables?
Partitioning is available for column store tables only.
- If data aging is enabled, will the existing SELECT statements retrieve data from the historical partition without any modifications?
No, the code needs to be adapted by the application to retrieve data from historical partitions. The default access is to current data only. For more information on accessing data from historical partition see FAQ No. 5.
- If the data in the historical partition is accessed, will the partition be loaded to the in-memory part of the database?
The data that is necessary to check and fulfill the SELECT condition is loaded to in-memory part of the database.
- I realized that I moved some data to the historical partition because of too short residence time. Is there any way to undo my changes?
Yes, you can do so by using the undo function.