IP Library Patent Application 13787441
Patent Application
App. No. 13/787,441

DYNAMIC IN-MEMORY DATABASE SEARCH

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
13/787,441
Abstract

The disclosure generally describes computer-implemented methods, software, and systems for providing an in-memory database search mechanism without using an index table. A system for accessing at least one of multiple data elements that are stored as non-key fields in one or more application tables comprises: an in-memory database storing the one or more application tables that store the multiple data elements as non-key fields, the system configured to execute operations comprising: receiving a criterion, retrieving, without using an index table, at least one data element of the one or more application tables that fulfills the criterion.

Claims (44)

1 . A system for accessing at least one of multiple data elements that are stored as non-key fields in one or more application tables, comprising:

an in-memory database storing the one or more application tables that store the multiple data elements as non-key fields; and

the system configured to execute operations comprising:

receiving a criterion; and

retrieving, without using an index table, at least one data element of the one or more application tables that fulfills the criterion.

2 . The system of claim 1 , wherein the index table is a table comprising a copy of at least one of the multiple data elements without a dynamic link to corresponding location of the data element in the one or more application tables so that the copy of the data element does not change upon a change of the corresponding original data element in the one or more application tables.

3 . The system of claim 1 , wherein the multiple data elements are grouped into one or more data categories, and wherein the criterion defines a subset of the one or more data categories and a condition data elements corresponding to the subset have to fulfill.

4 . The system of claim 3 , further comprising at least one mapping table that comprises one or more fields that provide a mapping between each of the one or more data categories and one or more locations, within the one or more application tables, of the data elements that correspond to the respective data category.

5 . The system of claim 4 , wherein the retrieving of at least one data element of the one or more application tables that fulfills the criterion comprises:

accessing the mapping table to determine, for at least one of the one or more application tables, at which location within the application table the at least one data element corresponding to the subset of data categories is stored.

6 . The system of claim 4 , wherein the mapping table does not comprise the data elements of the one or more application tables, and wherein the mapping table is configured to update its fields upon augmenting at least one of the application tables by an additional data element stored as non-key field at an additional location within the at least one of the application tables.

7 . The system of claim 1 , wherein the in-memory database is a column-based in-memory database.

8 . The system of claim 1 , wherein a non-key field of a table is a field that does not connect to a field of another table.

9 . The system of claim 1 , wherein an index table comprises combinations of data elements of the one or more application tables without memorizing at which location the data elements are located in the one or more application tables.

10 . The system of claim 1 , wherein the system is part of an online transaction processing system, wherein the one or more application tables originate from the online transaction processing system.

11 . A method performed by a processor for accessing at least one of multiple data elements that are stored as non-key fields or key fields in one or more application tables, wherein the one or more application tables are stored in an in-memory database, the method comprising:

receiving a criterion; and

retrieving, without using an index table, at least one data element of the one or more application tables that fulfills the criterion.

12 . The method of claim 11 , wherein the in-memory database is a column-based in-memory database.

13 . The method of claim 11 , wherein the index table is a table comprising a copy of at least one of the multiple data elements without a dynamic link to corresponding location of the data element in the one or more application tables so that the copy of the data element does not change upon a change of the corresponding original data element in the one or more application tables.

14 . The method of claim 11 , wherein the multiple data elements are grouped into one or more data categories, and wherein the criterion defines a subset of the one or more data categories and a condition data elements corresponding to the subset have to fulfill.

15 . The method of claim 14 , wherein at least one mapping table comprises one or more fields that provide a mapping between each of the one or more data categories and one or more locations, within the one or more application tables, of the data elements that correspond to the respective data category, and

wherein the retrieving of at least one data element of the one or more application tables that fulfills the criterion comprises:

accessing the mapping table to determine, for at least one of the one or more application tables, at which location within the application table the at least one data element corresponding to the subset of data categories is stored.

16 . The method of claim 14 , wherein the retrieving of at least one data element of the one or more application tables that fulfills the criterion comprises:

building and executing a Structured Query Language command comprising a static part encoding a first portion of the criterion and a dynamic part encoding a second portion of the criterion different from the first portion of the criterion, wherein the second portion comprises the condition.

17 . The method of claim 11 , further comprising:

updating the mapping table upon augmenting at least one of the application tables by an additional data element stored as non-key field or key field at an additional location within the at least one of the application tables.

18 . A computer-readable medium having computer-executable instructions stored thereon that, when executed by a processor, cause the processor to perform operations for accessing at least one of multiple data elements that are stored as non-key fields or key fields in one or more application tables, wherein the one or more application tables are stored in an in-memory database, the operations comprising:

receiving a criterion; and

retrieving, without using an index table, at least one data element of the one or more application tables that fulfills the criterion.

19 . The computer-readable medium of claim 18 , wherein the in-memory database is a column-based in-memory database.

20 . The computer-readable medium of claim 18 , wherein the index table is a table comprising a copy of at least one of the multiple data elements without a dynamic link to corresponding location of the data element in the one or more application tables so that the copy of the data element does not change upon a change of the corresponding original data element in the one or more application tables.

21 . The computer-readable medium of claim 18 , wherein the multiple data elements are grouped into one or more data categories, and wherein the criterion defines a subset of the one or more data categories and a condition data elements corresponding to the subset have to fulfill.

22 . The computer-readable medium of claim 21 , wherein at least one mapping table comprises one or more fields that provide a mapping between each of the one or more data categories and one or more locations, within the one or more application tables, of the data elements that correspond to the respective data category, and wherein the retrieving of at least one data element of the one or more application tables that fulfills the criterion comprises:

accessing the mapping table to determine, for at least one of the one or more application tables, at which location within the application table the at least one data element corresponding to the subset of data categories is stored.

23 . A system for accessing at least one of multiple data elements that are stored as non-key fields in one or more application tables, the system comprising:

an in-memory database storing the one or more application tables that store the multiple data elements as non-key fields, wherein the multiple data elements are grouped into one or more data categories, and wherein the criterion defines a subset of the one or more data categories and a condition data elements corresponding to the subset have to fulfill;

at least one mapping table comprising one or more fields that provide a mapping between each of the one or more data categories and one or more locations, within the one or more application tables, of the data elements that correspond to the respective data category; and

the system configured to execute operations comprising:

receiving a criterion;

retrieving at least one data element of the one or more application tables that fulfills the criterion, wherein the retrieving of at least one data element of the one or more application tables that fulfills the criterion comprises:

accessing the mapping table to determine, for at least one of the one or more application tables, at which location within the application table the at least one data element corresponding to the subset of data categories is stored.

24 . The system of claim 23 , wherein the at least one data element of the one or more application tables that fulfills the criterion is retrieved without using an index table, wherein the index table is a table comprising a copy of at least one of the multiple data elements without a dynamic link to corresponding location of the data element in the one or more application tables so that the copy of the data element does not change upon a change of the corresponding original data element in the one or more application tables.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2013
From: KUNERT, ANDREAS; KISTNER, KLAUS
To: SAP AG
Reel/Frame 029936/0288 →