×

Partitioned batch processing for a usage analysis system

  • US 10,706,073 B1
  • Filed: 12/03/2014
  • Issued: 07/07/2020
  • Est. Priority Date: 12/03/2014
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • one or more memory or storage devices to implement a data store that stores an application usage table comprising a plurality of records, each record corresponding to a particular one of a plurality of applications and including one or more aggregated usage metrics for the respective application;

    one or more computing devices, comprising one or more hardware processors and associated memory, configured to implement one or more session event nodes configured to;

    generate updates for the records in the application usage table according to session events received from a plurality of devices of a plurality of users, each session event indicating new usage data for a respective application instance on a respective device, and each update including an application identifier indicating one of the plurality of applications and increments for the one or more aggregated usage metrics of the respective application, wherein, for at least one of the plurality of applications, the session events received from two or more different devices of two or more different users indicate new usage data for two or more different application instances of the same application, and wherein the updates are generated as the session events are received; and

    partition the updates into a plurality of partitions according to the application identifier;

    a plurality of computing devices, each comprising one or more hardware processors and associated memory, configured to implement a plurality of application usage update nodes distinct from the one or more session event nodes, each application usage update node associated with a different one of the plurality of partitions, and responsible for updating a different one of the records in the application usage table according to the updates from its associated partition, and each application usage update node configured to;

    obtain the updates from the respective different one of the plurality of partitions; and

    apply the updates to the respective different one of the plurality of records in the application usage table corresponding to the respective particular one of the plurality of applications;

    wherein the updates obtained and applied by at least one of the plurality of application usage update nodes to the respective different one of the plurality of records corresponds to session events received, by one or more of the session event nodes, from two or more different devices of two or more different users.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×