IP Library › Granted Patent US 12,423,282
Granted Patent B1
US 12,423,282 · App. 18/792,265 · Granted Sep 23, 2025

Object reference structure generation for data purging

Inventors: Sreehari Medikurthi (Bangalore, IN); Pravin Kumar (Bangalore, IN); Tharanath Ramakrishna (Bangalore, IN)
Assignee: SAP SE
G06F16/215G06F16/24566G06F16/9024G06F16/9027
View Patent ↗
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 12,423,282
App. No.
18/792,265
Granted
Sep 23, 2025
Kind
B1
Abstract

Systems and methods described herein relate to the automated generation of object reference structures for data purging processes. A primary query is executed in a database to identify first data objects with reference relationships to a root data object. Secondary queries are executed in the database to identify additional data objects with reference relationships to the first data objects or to other additional data objects identified in a previous one of the secondary queries. An object reference structure is generated based on the reference relationships among the root data object, the first data objects, and the additional data objects. The graphical representation is presented via a user interface. A purge instruction can be received with respect to at least part of the object reference structure. Execution of a data purge is triggered to purge data from the database according to the purge instruction.

Claims (64)

1. A system comprising:

at least one memory that stores instructions; and

one or more processors configured by the instructions to perform operations comprising:

receiving, via a user interface, first user input identifying a root data object;

in response to receiving the first user input:

executing a primary query to identify, in a database, first data objects with reference relationships to the root data object, and

recursively executing secondary queries to identify, in the database, additional data objects with reference relationships to one or more of the first data objects or to any other additional data object identified in a previous one of the secondary queries until a predetermined condition is met;

generating an object reference structure based on the reference relationships among the root data object, the first data objects, and the additional data objects;

causing presentation, via the user interface, of a graphical representation of the object reference structure;

receiving, via the user interface, second user input comprising a purge instruction associated with at least part of the object reference structure; and

in response to receiving the second user input, triggering execution of a data purge to purge data from the database according to the purge instruction.

2. The system of claim 1 , wherein the database comprises a relational database, and each data object from among the root data object, the first data objects, and the additional data objects is mapped to a table in the database.

3. The system of claim 1 , wherein the graphical representation represents the object reference structure as a diagram that comprises a plurality of interconnected nodes, each of the plurality of interconnected nodes represents a respective one of the root data object, the first data objects, or the additional data objects, and the root data object is represented by a root node of the plurality of interconnected nodes in the diagram.

4. The system of claim 3 , the operations further comprising:

identifying, for a data object represented in the object reference structure, one or more attributes comprising at least one of a nullability, a variant data object, an object path, a data type, or a functional component; and

causing presentation, via the user interface, of the one or more attributes in association with a corresponding node of the plurality of interconnected nodes that represents the data object in the diagram.

5. The system of claim 1 , wherein the object reference structure identifies child data objects and parent data objects, and wherein the predetermined condition comprises performing one or more of the secondary queries for each child data object from among the child data objects that has a corresponding parent data object, from among the parent data objects, that is not nullable within a context of the child data object.

6. The system of claim 1 , the operations further comprising:

identifying a data object from among the first data objects and the additional data objects as a child data object of a parent data object from among the root data object, the first data objects, or the additional data objects;

determining a nullability of the parent data object of the child data object within a context of the child data object; and

causing presentation, via the user interface, of the nullability together with the graphical representation of the object reference structure.

7. The system of claim 1 , the operations further comprising:

identifying an object path of a data object from among the root data object, the first data objects, and the additional data objects; and

causing presentation, via the user interface, of the object path of the data object together with the graphical representation of the object reference structure.

8. The system of claim 1 , the operations further comprising:

determining a data type of a data object from among root data object, the first data objects, and the additional data objects; and

causing presentation, via the user interface, of the data type together with the graphical representation of the object reference structure.

9. The system of claim 1 , wherein the first user input or the second user input further comprises a value for the root data object, the operations further comprising:

using the value in addition to at least a subset of data objects from among the root data object, the first data objects, and the additional data objects to establish a purge scope associated with the purge instruction; and

executing the data purge based on the purge scope.

10. The system of claim 9 , wherein the root data object, the first data objects, and the additional data objects are identified in object data of a first data format, the operations further comprising:

converting at least some of the object data from the first data format to a second data format to obtain converted object data; and

transmitting the converted object data in the second data format to a purging service prior to execution of the data purge.

11. The system of claim 1 , the operations further comprising:

receiving, via the user interface, third user input to adjust at least one of the object reference structure or the graphical representation of the object reference structure; and

adjusting a purge scope associated with the purge instruction based on the third user input.

12. The system of claim 1 , wherein the purge instruction is associated with one or more temporal constraints that are used to establish a purge scope associated with the purge instruction.

13. The system of claim 1 , wherein the reference relationships among the root data object, the first data objects, and the additional data objects include one or more data object dependencies and one or more nested object relationships.

14. The system of claim 1 , the operations further comprising:

generating, from a database schema of the database, a list of selectable root data objects, wherein the first user input comprises a selection of the root data object from the list of selectable root data objects.

15. A method comprising:

receiving, via a user interface, first user input identifying a root data object;

in response to receiving the first user input:

receiving, via a user interface, first user input identifying a root data object;

in response to receiving the first user input:

executing a primary query to identify, in a database, first data objects with reference relationships to the root data object, and

recursively executing secondary queries to identify, in the database, additional data objects with reference relationships to one or more of the first data objects or to any other additional data object identified in a previous one of the secondary queries until a predetermined condition is met;

generating an object reference structure based on the reference relationships among the root data object, the first data objects, and the additional data objects;

causing presentation, via the user interface, of a graphical representation of the object reference structure;

receiving, via the user interface, second user input comprising a purge instruction associated with at least part of the object reference structure; and

in response to receiving the second user input, triggering execution of a data purge to purge data from the database according to the purge instruction.

16. The method of claim 15 , wherein the database comprises a relational database, and each data object from among the root data object, the first data objects, and the additional data objects is mapped to a table in the database.

17. The method of claim 15 , wherein the graphical representation represents the object reference structure as a diagram that comprises a plurality of interconnected nodes, each of the plurality of interconnected nodes represents a respective one of the root data object, the first data objects, or the additional data objects, and the root data object is represented by a root node of the plurality of interconnected nodes.

18. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by a computing system, cause the computing system to perform operations comprising:

receiving, via a user interface, first user input identifying a root data object;

in response to receiving the first user input:

executing a primary query to identify, in a database, first data objects with reference relationships to the root data object, and

recursively executing secondary queries to identify, in the database, additional data objects with reference relationships to one or more of the first data objects or to any other additional data object identified in a previous one of the secondary queries until a predetermined condition is met;

generating an object reference structure based on the reference relationships among the root data object, the first data objects, and the additional data objects;

causing presentation, via the user interface, of a graphical representation of the object reference structure;

receiving, via the user interface, second user input comprising a purge instruction associated with at least part of the object reference structure; and

in response to receiving the second user input, triggering execution of a data purge to purge data from the database according to the purge instruction.

19. The one or more non-transitory computer-readable media of claim 18 , wherein the database comprises a relational database, and each data object from among the root data object, the first data objects, and the additional data objects is mapped to a table in the database.

20. The one or more non-transitory computer-readable media of claim 18 , wherein the graphical representation represents the object reference structure as a diagram that comprises a plurality of interconnected nodes, each of the plurality of interconnected nodes represents a respective one of the root data object, the first data objects, or the additional data objects, and the root data object is represented by a root node of the plurality of interconnected nodes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2024
From: MEDIKURTHI, SREEHARI; KUMAR, PRAVIN; RAMAKRISHNA, THARANATH
To: SAP SE
Reel/Frame 068158/0711 →
References Cited (18)
US 10572448B1 · Donohue et al. · 2020 [cited by applicant]
US 10783125B2 · Bester et al. · 2020 [cited by applicant]
US 11580067B1 · Kuruvada et al. · 2023 [cited by applicant]
US 20090106298A1 · Furusho · 2009 [cited by examiner]
US 20140101133A1 · Carston · 2014 [cited by examiner]
US 20140351201A1 · Hobart et al. · 2014 [cited by applicant]
US 20180081916A1 · Jaiswal et al. · 2018 [cited by applicant]
US 20200073971A1 · Elliott · 2020 [cited by examiner]
US 20200242090A1 · Prasad et al. · 2020 [cited by applicant]
US 20200265305A1 · Budden et al. · 2020 [cited by applicant]
US 20210049510A1 · Adjaoute · 2021 [cited by applicant]
US 20210089910A1 · Zheng et al. · 2021 [cited by applicant]
US 20210201147A1 · Tu et al. · 2021 [cited by applicant]
US 20240045847A1 · Wei · 2024 [cited by examiner]
“U.S. Appl. No. 18/502,305, Non Final Office Action mailed Jan. 3, 2025”, 24 pgs. [cited by applicant]
“U.S. Appl. No. 18/502,305, Examiner Interview Summary mailed Mar. 17, 2025”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 18/502,305, Response filed Mar. 31, 2025 to Non Final Office Action mailed Jan. 3, 2025”, 16 pgs. [cited by applicant]
“Feedforward neural network”, [Online]. Retrieved from the Internet: URL: https: web.archive.org web 20230711034608 https: en.wikipedia.org wiki Feedforward_neural_network, (accessed on Jul. 11, 2023), 7 pgs. [cited by applicant]
Cited By (1)
US 12,596,840