Search

US-12619614-B2 - Technique for accessing archive data stored in relational databases through the SAP archive information system

US12619614B2US 12619614 B2US12619614 B2US 12619614B2US-12619614-B2

Abstract

An non-transitory computer readable medium is described herein related to enhancing an SAP Archive Information System running on a SAP NetWeaver Application Server. The enhancements enable the SAP Archive Information System to query a remote relational database for archived business data. The enhancements offers multiple alternative ways of interfacing with such a database and of merging the query results obtained from such database into the SAP-standard output structures of the SAP Archive Information System.

Inventors

  • Maximilian Ralph Peter von und zu Liechtenstein
  • Peter Rudolf Schoenenberger

Assignees

  • BUSINESS MOBILE AG

Dates

Publication Date
20260505
Application Date
20240704

Claims (3)

  1. 1 . A computer-implemented method for performing an archive-enabled search, the method comprising: receiving a search request for archive objects, wherein said archive objects are instances of an archiving object, wherein an archiving object is a business object comprising a plurality of tables linked to a single header table and wherein said business object is linked to an archive infostructure, wherein an archive infostructure is a structure which comprises a primary key, an identifier for an archive file and an offset within said archive file; sending a first query to a database, wherein said first query comprises said search request and wherein said first query is a relational query, wherein said first query comprises one or more keys from said archive infostructure, and wherein said first query is targeted at a database table and wherein said database table is a header table of said archive infostructure; sending a second query to an archive index, wherein said second query comprises said search request and wherein said archive index is a table wherein said table comprises one or more rows of said archive infostructure; for each row of a result of said first query: invoking a plurality of database queries, wherein each constituent table of said archiving object is queried on said database; and filling an in-memory table with results of said first query and with results of said second query, wherein said in-memory table is a table of said archive infostructure.
  2. 2 . A computer-implemented method for archive-enabled searching of data, the method comprising: receiving an archive query, wherein said archive query relates to an archiving object and wherein said archive query comprises at least one parameter with a key/value pair, wherein said archiving object is defined as a plurality of tables linked to a single header table and wherein said archiving object is linked to an archive infostructure, wherein an archive infostructure is a structure which comprises a primary key, an identifier for an archive file and an offset within said archive file; querying a relational archive database with said parameter and, in response, receiving a first query result; querying an archive index with said parameter and, in response, receiving a second query result wherein said second query result comprises one or more locations, wherein a location comprises a file name of an archive file and an offset for an archive object, wherein said archive object is comprised in said archive file, wherein said archive index is a table, wherein said table comprises one or more rows of said archive infostructure; instantiating an in-memory table wherein said in-memory table has a same schema as said archive infostructure; and assigning a pseudo offset value to said offset, wherein a pseudo offset value is defined as an offset value which does not exist in said archive object.
  3. 3 . A computer-implemented method for translating a serial-access archive query to a relational database query, the method comprising: receiving a search request for an archive object, wherein said search request comprises one or more query parameters, querying a relational archive database with said one or more query parameters and receiving a first result set; querying an archive index table with said one or more query parameters and receiving a second result set wherein each row of said archive index table comprises: a primary key of a header table for said archive object and a link to an offset in an archive file; combining the first result set and the second result set into a joint result set, wherein the joint result set comprises a key field, wherein said key field is designating a key of an archive file and an offset field, wherein said offset field relates to a start position of an archive object in terms of serial file access within an archive file, wherein said combining comprises: for the first result set: assigning a pseudo offset value to said offset field, wherein a pseudo offset value is defined as unique value, and for the second result set: assigning an identifier of an archive file to said key field, and assigning an offset within an archive file to said offset field.

Description

CROSS REFERENCE TO RELATED APPLICATIONS This application is a continuation of U.S. Non-Provisional patent application Ser. No. 17/572,515, filed Jan. 10, 2022 (now U.S. Pat. No. 12,067,015), which is a continuation of U.S. Non-Provisional patent application Ser. No. 17/063,134, filed Oct. 5, 2020 (now U.S. U.S. Pat. No. 11,222,021). STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT Not applicable to this application. FIELD OF THE INVENTION The document relates to systems, devices, methods, and related computer program products for accessing archive data through the SAP Archive Information System. More particularly, this patent specification relates to enhancements and modifications in relation to the SAP standard, that are useful in accessing archived data stored on relational databases. BACKGROUND OF THE INVENTION Prior Art Any discussion of the related art throughout the specification should in no way be considered as an admission that such related art is widely known or forms part of common general knowledge in the field. Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section. The Archive Information System (AS) is a generic tool for indexing data archives that is fully integrated into the SAP data archiving environment. Data Archiving is a service provided by the SAP NetWeaver Application Server, which is part of the SAP NetWeaver platform for building business applications. Data Archiving removes mass data that the system no longer needs online, but which must still be accessible at a later date if required, from the database. The process uses archiving objects to write business documents to archive files that can be stored on other media. as the language for programming the SAP NetWeaver Application Server, which is part of the SAP NetWeaver platform for building business applications. Standard SAP-delivered functionality can be adapted to customers' needs through SAP's enhancement framework. There are certain ways to achieve the enhancements: Core Modification, User Exits, Customer Exits, BADI (Business Add Ins), Explicit Enhancements and Implicit Enhancements. Third party providers have developed a business models around innovating around the SAP Standard in order to find new and useful ways of adapting the SAP-delivered product to customers' needs. Those third-party providers tend to market and sell their innovations as packages of Enhancements. The Archive Information System (AS) allows a user to search for archived data through an index. The index is a table of an Archive Infostructure. An Archive Infostructure is a structure comprising key fields, whereby the key fields relate to business data, e.g. the document number of a document in financial accounting. Every ADK-format file accessed using AS is accessed through Archive Infostructure. Every Archive Infostructure belongs to a unique Archiving Object and also refers to a Field Catalog. A Field Catalog is the collection of fields suitable for indexing the ADK-format archive files of the Archiving Object concerned. Every key in the index maps to an archive object on a one to one basis. An archive object comprises table rows from multiple tables of business data, where there are normally foreign key relationships between such tables of business data. The index itself does not contain all of the data of the archive object. An archive object is normally inserted into an ADK-format file stored on an external content server. The primary purpose of the index is to link a key of the index to the ADK-format file which contains the archive object and also to link to the offset in the file which marks the start location of the archive object. Without the index it would require a sequential search through the entire repository of ADK-format files in order to find an archive object. Therefore, the index allows faster access to archive data which is stored in data-compressed files, such as the described ADK-format files. SUMMARY The current state of the art in SAP Netweaver related archiving revolves around moving old data into compressed files which are then stored in a file storage system. The main reason for moving data out the productive database and into a file-based system is that such database space is expensive and having too much old data in such a database inevitably slows down the performance of queries in the day to day operational side of the business. At the time the AS was conceived file-based storage of data was still many orders of magnitude cheaper than storing the same amount of data in a relational database. The present inventor has realized that the price of relational database storage can be projected to come down very significantly in future years. Hence it is desirable, in principle, to store archived data not in a file, but in a database table. On of the advantages of storing SAP busi