IP Library Granted Patent US 10,701,213
Granted Patent B2
US 10,701,213 · App. 15/505,319 · Granted Jun 30, 2020

Dynamically generating an aggregation routine

Inventors: Daniel Dyer (Boise, ID); Atul Aggarwal (Sunnyvale, CA); Ashwin Arvind Agate (Sunnyvale, CA)
Assignee: Suse LLC
H04M15/41H04M15/44H04M15/51H04M15/61H04L67/10
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 10,701,213
App. No.
15/505,319
Granted
Jun 30, 2020
Kind
B2
Abstract

Example implementations relate to dynamically generating an aggregation routine. For example, a computing device may include a processor. The processor may receive a data record from a particular service source of a plurality of service sources in communication with the computing device. The data record may relate to usage of the particular service source. The processor may identify at least one field associated with the data record and convert the data record to a standardized record associated with metadata based on the at least one field. The standardized record may have a standardized record format. The processor may dynamically generate an aggregation routine based on the standardized record and the metadata associated with the standardized record. The aggregation routine may be used to calculate usage data associated with the usage of the particular service source.

Claims (54)

1. A computing device comprising:

a processor to:

receive a data record from a particular service source of a plurality of service sources in communication with the computing device, the data record relating to usage of the particular service source;

identify at least one field associated with the data record;

convert the data record to a standardized record associated with metadata based on the at least one field, the standardized record having a standardized record format, wherein convert includes generation of the metadata to describe the data record and the standardized record;

dynamically generate an aggregation routine based on the standardized record and the metadata associated with the standardized record, the aggregation routine to calculate usage data associated with the usage of the particular service source for a first metric; and

replicate the standardized record as a replicated standardized record when the data record includes a second metric that is to be aggregated, wherein the first metric and the second metric can be aggregated independently from the standardized record and the replicated standardized record without dependency on the data record.

2. The computing device of claim 1 , wherein the aggregation routine is dynamically generated using the metadata with a set of macros.

3. The computing device of claim 1 , wherein the processor is further to:

receive attributes associated with a new service source;

determine a billing model associated with the new service source; and

automatically configure a new aggregation routine associated with the new service source based on the attributes and the billing model.

4. The computing device of claim 1 , wherein the processor is further to store the standardized record with a plurality of standardized records.

5. The computing device of claim 4 , wherein the processor is further to:

determine the standardized record of the plurality of standardized records is ready to be processed;

access the standardized record; and

send the standardized record to a processing component based on the aggregation routine.

6. A method comprising:

receiving, by a computing device, a data record from a particular service source of a plurality of service sources in communication with the computing device, the data record relating to usage of the particular service source;

determining, by the computing device, at least one field associated with the data record;

transforming, by the computing device, the data record to a standardized record associated with metadata based on the at least one field, the standardized record having a standardized record format, and wherein transforming further includes generating the metadata to describe the data record and the standardized record;

dynamically generating, by the computing device, an aggregation routine based on the standardized record and the metadata associated with the standardized record for a first metric;

replicating, by the computing device, the standardized record as a replicated standardized record when the data record includes a second metric that is to be aggregated; and

using the aggregation routine, calculating, by the computing device, usage data associated with the usage of the particular service source for a first metric;

wherein the first metric and the second metric can be aggregated independently from the standardized record and the replicated standardized record without dependency on the data record.

7. The method of claim 6 , wherein the aggregation routine is dynamically generated using the metadata with a set of macros.

8. The method of claim 6 , further comprising:

receiving, by the computing device, attributes associated with a new service source;

determining, by the computing device, a billing model associated with the new service source; and

automatically configuring, by the computing device, a new aggregation routine associated with the new service source based on the attributes and the billing model.

9. The method of claim 6 , further comprising:

storing, by the computing device, the standardized record with a plurality of standardized records.

10. The method of claim 9 , further comprising:

determining, by the computing device, the standardized record of the plurality of standardized records is ready to be processed;

accessing, by the computing device, the standardized record; and

sending, by the computing device, the standardized record to a processing component based on the aggregation routine.

11. A non-transitory machine-readable storage medium storing instructions that, if executed by at least one processor of a computing device, cause the computing device to:

receive a data record from a particular service source of a plurality of service sources in communication with the computing device, the data record relating to usage of the particular service source;

identify at least one field associated with the data record;

change the data record to a standardized record associated with metadata based on the at least one field, the standardized record having a standardized record format, and wherein change includes generation of the metadata to describe the data record and the standardized record;

create an aggregation routine on the fly based on the standardized record and the metadata associated with the standardized record for a first metric;

replicate the standardized record as a replicated standardized record when the data record includes a second metric that is to be aggregated; and

determine, using the aggregation routine, usage data associated with the usage of the particular service;

wherein the first metric and the second metric can be aggregated independently from the standardized record and the replicated standardized record without dependency on the data record.

12. The non-transitory machine-readable storage medium of claim 11 , wherein the aggregation routine is created on the fly using the metadata with a set of macros.

13. The non-transitory machine-readable storage medium of claim 11 , wherein the instructions, if executed by the at least one processor, further cause the computing device to:

receive attributes associated with a new service source;

determine a billing model associated with the new service source; and

automatically configure a new aggregation routine associated with the new service source based on the attributes and the billing model.

14. The non-transitory machine-readable storage medium of claim 11 , wherein the instructions, if executed by the at least one processor, further cause the computing device to store the standardized record with a plurality of standardized records.

15. The non-transitory machine-readable storage medium of claim 14 , wherein the instructions, if executed by the at least one processor, further cause the computing device to:

determine the standardized record of the plurality of standardized records is ready to be processed;

access the standardized record; and

send the standardized record to a processing component based on the aggregation routine.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2018
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: SUSE LLC
Reel/Frame 046726/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2017
From: DYER, DANIEL; AGGARWAL, ATUL; AGATE, ASHWIN ARVIND
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 041315/0013 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2017
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 041762/0001 →
Continuity (1)
Related Publication 20170279970A1 · Sep 28, 2017