| CPC G06F 16/254 (2019.01) [G06F 16/2282 (2019.01); G06F 16/2365 (2019.01); G06F 16/9024 (2019.01)] | 21 Claims |

|
1. A method executed by one or more computing devices for extracting a subset from a database, the method comprising:
receiving, by at least one of the one or more computing devices, a request comprising one or more criteria indicating one or more criteria tables in a plurality of tables of the database;
determining, by at least one of the one or more computing devices, one or more top-most criteria entities in an entity graph, wherein an entity graph corresponds to a schema of the database and the one or more criteria; and
generating, by at least one of the one or more computing devices, the subset from the plurality of tables by iteratively traversing the entity graph, starting from each top-most criteria entity, along one or more directed edges that have not been previously traversed to update the subset with data corresponding to entities that have been traversed, wherein each subsequent traversal is in a direction opposite to a direction of previous traversal,
wherein each directed edge is traversed once, and
wherein each directed edge connects a pair of entities in the entity graph.
|