IP Library Granted Patent US 11,561,974
Granted Patent B2
US 11,561,974 · App. 16/408,599 · Granted Jan 24, 2023

Cross-datasource querying using composite shapes

Inventors: John Benlin Lee (New York, NY); Kuntal Roy (Basking Ridge, NJ); Jason F. Melo (Hastings-on-Hudson, NJ)
Assignee: ADP, Inc.
G06F16/24542G06F3/0484G06F9/451
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 11,561,974
App. No.
16/408,599
Granted
Jan 24, 2023
Kind
B2
Abstract

A system and method of performing a cross-datasource query to provide a cross-datasource query result. A composite shape comprises a composite shape query and a plurality of shape identifiers identifying a plurality of shapes. Each of the plurality of shapes comprises a datasource identifier identifying a datasource and a shape query defining a query to be performed on the datasource. The composite shape is used to perform the composite shape query across the datasources identified in the plurality of shapes to provide the cross-datasource query result.

Claims (76)

1. A method of performing a cross-datasource query to provide a cross-datasource query result, comprising:

receiving, by a run-time platform of an information processing system, a composite shape, wherein the composite shape comprises a composite shape query and a plurality of shape identifiers identifying a plurality of shapes, wherein each of the plurality of shapes comprises a datasource identifier identifying a datasource and a shape query defining a query to be performed on the datasource; and

using, by the run-time platform of the information processing system, the composite shape to perform the composite shape query across a plurality of datasources identified in the plurality of shapes to provide the cross-datasource query result,

wherein:

a first one of the shape identifiers in the plurality of shape identifiers identifies a first shape in the plurality of shapes that comprises a first datasource identifier that identifies a first datasource that is an internal datasource for an organization for which the cross-datasource query is performed;

a second one of the shape identifiers in the plurality of shape identifiers identifies a second shape in the plurality of shapes that comprises a second datasource identifier that identifies a second datasource that is an external datasource for the organization for which the cross-datasource query is performed; and

the composite shape query is in a format for performing a query on the internal datasource.

2. The method of claim 1 ,

wherein the internal datasource is under control of the organization, and

wherein the external datasource is not under control of the organization.

3. The method of claim 1 , wherein a shape identifier in the plurality of shape identifiers is a composite shape identifier identifying another composite shape.

4. The method of claim 1 , wherein receiving the composite shape comprises reading the composite shape from a configuration store in response to a request by an application to execute the composite shape.

5. The method of claim 4 , wherein the application is an application for performing an action in a human capital management system.

6. The method of claim 4 , wherein using the composite shape to provide the cross-datasource query result comprises:

determining the plurality of shapes identified in the composite shape that is read from the configuration store;

reading the plurality of shapes identified in the composite shape from the configuration store; and

determining the shape queries and the plurality of datasources identified in the plurality of shapes read from the configuration store.

7. The method of claim 1 , wherein using the composite shape to provide the cross-datasource query result comprises:

performing shape queries for the plurality of shapes identified by the shape identifiers in the composite shape to provide intermediate results, wherein performing the shape queries comprises performing the shape query for each shape identified by the shape identifiers in the composite shape on the datasource identified by the datasource identifier for the shape; and

performing the composite shape query on the intermediate results to provide the cross-datasource query result.

8. The method of claim 7 , wherein the composite shape further comprises composite shape data shaping items and further comprising applying the composite shape data shaping items to shape data resulting from performing the composite shape query on the intermediate results to provide the cross-datasource query result.

9. A method of performing a cross-datasource query to provide a cross-datasource query result, comprising:

defining a plurality of shapes, using a shape designer of a development platform, wherein each shape in the plurality of shapes comprises a datasource identifier identifying a datasource and a shape query defining a query to be performed on the datasource;

storing the plurality of shapes in a configuration store of an information processing system;

defining a composite shape, using a composite shape designer of the development platform, wherein the composite shape comprises a composite shape query and a plurality of shape identifiers, wherein each shape identifier in the plurality of shape identifiers identifies a different shape in the plurality of shapes;

storing the composite shape in the configuration store of the information processing system; and

using, by a run-time platform of the information processing system, the composite shape to perform the composite shape query across a plurality of datasources identified in the plurality of shapes identified by the plurality of shape identifiers to provide the cross-datasource query result,

wherein:

a first one of the shape identifiers in the plurality of shape identifiers identifies a first shape in the plurality of shapes that comprises a first datasource identifier that identifies a first datasource that is an internal datasource for an organization for which the cross-datasource query is performed;

a second one of the shape identifiers in the plurality of shape identifiers identifies a second shape in the plurality of shapes that comprises a second datasource identifier that identifies a second datasource that is an external datasource for the organization for which the cross-datasource query is performed; and

the composite shape query is in a format for performing a query on the internal datasource.

10. The method of claim 9 , wherein:

defining each shape in the plurality of shapes comprises:

displaying a user interface for a shape designer that prompts an operator to identify the datasource for the shape, the shape query for the shape, and shape data shaping items for shaping data resulting from performing the shape query for the shape on the datasource for the shape, and

receiving input from the operator by the user interface for the shape designer to define each shape in the plurality of shapes; and

defining the composite shape comprises:

displaying a user interface for a composite shape designer that prompts the operator to identify the composite shape query, shapes in the plurality of shapes, and composite shape data shaping items for shaping data resulting from performing the composite shape query, and

receiving input from the operator by the user interface for the composite shape designer to define the composite shape.

11. The method of claim 9 ,

wherein the internal datasource is under control of the organization, and

wherein the external datasource is not under control of the organization.

12. The method of claim 9 , wherein using the composite shape to provide the cross-datasource query result comprises:

reading the composite shape from the configuration store in response to a request by an application to execute the composite shape;

determining the plurality of shapes identified in the composite shape that is read from the configuration store;

reading the plurality of shapes identified in the composite shape from the configuration store;

determining the shape queries and the plurality of datasources identified in the plurality of shapes read from the configuration store;

performing the shape queries for the plurality of shapes read from the configuration store to provide intermediate results, wherein performing the shape queries comprises performing the shape query identified in each shape read from the configuration store on the datasource identified by the datasource identifier for the shape; and

performing the composite shape query on the intermediate results to provide the cross-datasource query results.

13. The method of claim 12 , wherein the application is an application for performing an action in a human capital management system.

14. An apparatus for performing a cross-datasource query to provide a cross-datasource query result, comprising:

a configuration store, of an information processing system, having stored therein a plurality of shapes and a composite shape, wherein each shape in the plurality of shapes comprises a datasource identifier identifying a datasource and a shape query defining a query to be performed on the datasource, wherein the composite shape comprises a composite shape query and a plurality of shape identifiers, wherein each shape identifier in the plurality of shape identifiers identifies a different shape in the plurality of shapes; and

a run-time platform, of the information processing system, configured to use the composite shape in the configuration store to perform the composite shape query across a plurality of datasources identified in the plurality of shapes in the configuration store that are identified in the plurality of shape identifiers to provide the cross-datasource query result,

wherein:

a first one of the shape identifiers in the plurality of shape identifiers identifies a first shape in the plurality of shapes that comprises a first datasource identifier that identifies a first datasource that is an internal datasource for an organization for which the cross-datasource query is performed;

a second one of the shape identifiers in the plurality of shape identifiers identifies a second shape in the plurality of shapes that comprises a second datasource identifier that identifies a second datasource that is an external datasource for the organization for which the cross-datasource query is performed; and

the composite shape query is in a format for performing a query on the internal datasource.

15. The apparatus of claim 14 ,

wherein the internal datasource is under control of the organization, and

wherein the external datasource is not under control of the organization.

16. The apparatus of claim 14 , wherein a shape identifier in the plurality of shape identifiers is a composite shape identifier identifying another composite shape.

17. The apparatus of claim 14 , wherein the run-time platform comprises:

a composite shape run-time engine configured to read the composite shape from the configuration store in response to a request to execute the composite shape by an application;

a composite shape execution planner configured to determine the plurality of shapes identified in the composite shape read from the configuration store, read from the configuration store the plurality of shapes identified in the composite shape read from the configuration store, and determine the shape queries and the plurality of datasources identified in the plurality of shapes read from the configuration store;

an executor configured to perform shape queries for the plurality of shapes read from the configuration store to provide intermediate results, wherein performing the shape queries comprises performing the shape query identified in each shape read from the configuration store on the datasource identified by the datasource identifier for the shape; and

a composite shape engine configured to perform the composite shape query on the intermediate results to provide the cross-datasource query results.

18. The apparatus of claim 17 , wherein the application is an application for performing an action in a human capital management system.

19. The apparatus of claim 17 , wherein the composite shape further comprises composite shape data shaping items and wherein the composite shape engine is further configured to apply the composite shape data shaping items to shape data resulting from performing the composite shape query on the intermediate results to provide the cross-datasource query results.

20. The apparatus of claim 14 further comprising a development platform comprising:

a shape designer configured to, for each shape in the plurality of shapes:

display a user interface that prompts an operator to identify the datasource for the shape, the shape query for the shape, and shape data shaping items for shaping data resulting from performing the shape query for the shape on the datasource for the shape,

receive input from the operator by the user interface to define the shape, and

store the shape in the configuration store; and

a composite shape designer configured to:

display a user interface that prompts the operator to identify the composite shape query, shapes in the plurality of shapes, and composite shape data shaping items for shaping data resulting from performing the composite shape query,

receive input from the operator by the user interface to define the composite shape, and

store the composite shape in the configuration store.

Assignments (2)
CHANGE OF NAME Recorded Feb 4, 2022
From: ADP, LLC
To: ADP, INC.
Reel/Frame 058959/0729 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2019
From: LEE, JOHN BENLIN; ROY, KUNTAL; MELO, JASON F.
To: ADP, LLC
Reel/Frame 049136/0220 →