IP Library Granted Patent US 9,940,171
Granted Patent B2
US 9,940,171 · App. 15/463,343 · Granted Apr 10, 2018

Iterative and hierarchical processing of request partitions

Inventor: Thomas Mundar (Scottsdale, AZ)
Assignee: Live Nation Entertainment, Inc.
G06F9/5038G06F9/50G06F9/5005G06F17/30463G06F17/30486G06F21/6218G06F21/6227H04W4/021
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 9,940,171
App. No.
15/463,343
Granted
Apr 10, 2018
Kind
B2
Abstract

Methods and systems disclosed herein relate generally to temporally prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights.

Claims (79)

1. A digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, the digital data processing system including:

one or more data processors; and

a non-transitory computer readable storage medium containing instructions which when executed on the one or more data processors, cause the one or more data processors to perform actions including:

defining a set of bits, each bit of the set of bits being associated with an access right to a resource, each bit of the set of bits including a data element and being associated with one or more flags that represent characteristics of the associated access right, and the association of a flag with a bit being determined in accordance with a schema;

accessing one or more data stores that store the set of bits;

receiving, over a network, a request communication from a requestor device, the request communication including a plurality of query constraints;

generating a queue task for the request communication;

adding the queue task to a queue associated with the resource;

determining, based on a queue-processing protocol, that the queue task is to be processed;

generating a set of queue-task partitions for the queue task, each queue-task partition of the set of queue-task partitions corresponding to a constraint of the plurality of constraints;

accessing an index that identifies, for each flag, a quantity of bits associated with the flag;

generating an order for the set of queue-task partitions, the order of queue-task partitions within the set of queue-task partitions being based on the index, such that each queue-task partition of the set of queue-task partitions is ordered according to the quantity of bits associated with the queue-task partition; and

iteratively processing each queue-task partition of the set of queue-task partitions based on the generated order.

2. The digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 1 , wherein iteratively processing each queue-task partition of the set of queue-task partitions based on the generated order includes:

identifying a first queue-task partition from amongst the set of queue-task partitions based on the order;

identifying a first flag associated with the first queue-task partition via the constraint corresponding to the first queue-task partition;

querying the one or more data stores using the first flag to identify a first access-right result that identifies one or more access rights for the resource;

identifying a second queue-task partition from amongst the set of queue-task partitions based on the order;

identifying a second flag associated with the second queue-task partition via the constraint corresponding to the second queue-task partition; and

determining whether the first access-right result corresponds to the second flag.

3. The digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 2 , wherein when it is determined that the first access-right result does not correspond to the second flag, querying the one or more data stores using the first flag to identify a second access-right result different than the first access-right result.

4. The digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 3 , wherein when it is determined that the first access-right result does correspond to the second flags, determining whether any unprocessed queue-task partitions remain in the set of queue-task partitions.

5. The digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 1 , further comprising:

identifying an access-right result based on the iterative processing;

transmitting information about the access-right result to the requestor device; and

updating, for each access right identified in the access-right result, the bit corresponding to the access right to inhibit identifying the access right in another access-right result transmitted to another requestor device.

6. The digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 1 , wherein a characteristic represented by a flag includes any of a location of the associated access right, a status of the associated access right, or a value or value group of the associated access right.

7. The digital data processing system for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 1 , wherein each flag of the one or more flags corresponds to a flag type, and the flag type is associated with two or more flags.

8. A computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, the method comprising:

defining a set of bits, each bit of the set of bits being associated with an access right to a resource, each bit of the set of bits including a data element and being associated with one or more flags that represent characteristics of the associated access right, and the association of a flag with a bit being determined in accordance with a schema;

accessing one or more data stores that store the set of bits;

receiving, over a network, a request communication from a requestor device, the request communication including a plurality of query constraints;

generating a queue task for the request communication;

adding the queue task to a queue associated with the resource;

determining, based on a queue-processing protocol, that the queue task is to be processed;

generating a set of queue-task partitions for the queue task, each queue-task partition of the set of queue-task partitions corresponding to a constraint of the plurality of constraints;

accessing an index that identifies, for each flag, a quantity of bits associated with the flag;

generating an order for the set of queue-task partitions, the order of queue-task partitions within the set of queue-task partitions being based on the index, such that each queue-task partition of the set of queue-task partitions is ordered according to the quantity of bits associated with the queue-task partition; and

iteratively processing each queue-task partition of the set of queue-task partitions based on the generated order.

9. The computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 8 , wherein iteratively processing each queue-task partition of the set of queue-task partitions based on the generated order includes:

identifying a first queue-task partition from amongst the set of queue-task partitions based on the order;

identifying a first flag associated with the first queue-task partition via the constraint corresponding to the first queue-task partition;

querying the one or more data stores using the first flag to identify a first access-right result that identifies one or more access rights for the resource;

identifying a second queue-task partition from amongst the set of queue-task partitions based on the order;

identifying a second flag associated with the second queue-task partition via the constraint corresponding to the second queue-task partition; and

determining whether the first access-right result corresponds to the second flag.

10. The computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 9 , wherein when it is determined that the first access-right result does not correspond to the second flag, querying the one or more data stores using the first flag to identify a second access-right result different than the first access-right result.

11. The computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 10 , wherein when it is determined that the first access-right result does correspond to the second flags, determining whether any unprocessed queue-task partitions remain in the set of queue-task partitions.

12. The computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 8 , further comprising:

identifying an access-right result based on the iterative processing;

transmitting information about the access-right result to the requestor device; and

updating, for each access right identified in the access-right result, the bit corresponding to the access right to inhibit identifying the access right in another access-right result transmitted to another requestor device.

13. The computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 8 , wherein a characteristic represented by a flag includes any of a location of the associated access right, a status of the associated access right, or a value or value group of the associated access right.

14. The computer-implemented method for prioritizing queries of queue-task partitions based on distributions of flags assigned to bits corresponding to access rights, as recited in claim 8 , wherein each flag of the one or more flags corresponds to a flag type, and the flag type is associated with two or more flags.

15. A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause a data processing apparatus to perform operations including:

defining a set of bits, each bit of the set of bits being associated with an access right to a resource, each bit of the set of bits including a data element and being associated with one or more flags that represent characteristics of the associated access right, and the association of a flag with a bit being determined in accordance with a schema;

accessing one or more data stores that store the set of bits;

receiving, over a network, a request communication from a requestor device, the request communication including a plurality of query constraints;

generating a queue task for the request communication;

adding the queue task to a queue associated with the resource;

determining, based on a queue-processing protocol, that the queue task is to be processed;

generating a set of queue-task partitions for the queue task, each queue-task partition of the set of queue-task partitions corresponding to a constraint of the plurality of constraints;

accessing an index that identifies, for each flag, a quantity of bits associated with the flag;

generating an order for the set of queue-task partitions, the order of queue-task partitions within the set of queue-task partitions being based on the index, such that each queue-task partition of the set of queue-task partitions is ordered according to the quantity of bits associated with the queue-task partition; and

iteratively processing each queue-task partition of the set of queue-task partitions based on the generated order.

16. The computer-program product, as recited in claim 15 , wherein iteratively processing each queue-task partition of the set of queue-task partitions based on the generated order includes:

identifying a first queue-task partition from amongst the set of queue-task partitions based on the order;

identifying a first flag associated with the first queue-task partition via the constraint corresponding to the first queue-task partition;

querying the one or more data stores using the first flag to identify a first access-right result that identifies one or more access rights for the resource;

identifying a second queue-task partition from amongst the set of queue-task partitions based on the order;

identifying a second flag associated with the second queue-task partition via the constraint corresponding to the second queue-task partition; and

determining whether the first access-right result corresponds to the second flag.

17. The computer-program product, as recited in claim 16 , wherein when it is determined that the first access-right result does not correspond to the second flag, querying the one or more data stores using the first flag to identify a second access-right result different than the first access-right result.

18. The computer-program product, as recited in claim 17 , wherein when it is determined that the first access-right result does correspond to the second flags, determining whether any unprocessed queue-task partitions remain in the set of queue-task partitions.

19. The computer-program product, as recited in claim 15 , further comprising:

identifying an access-right result based on the iterative processing;

transmitting information about the access-right result to the requestor device; and

updating, for each access right identified in the access-right result, the bit corresponding to the access right to inhibit identifying the access right in another access-right result transmitted to another requestor device.

20. The computer-program product, as recited in claim 15 , wherein a characteristic represented by a flag includes any of a location of the associated access right, a status of the associated access right, or a value or value group of the associated access right.

Assignments (3)
SECURITY AGREEMENT Recorded Jan 4, 2021
From: LIVE NATION ENTERTAINMENT, INC.; LIVE NATION WORLDWIDE, INC.
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 054891/0552 →
SECURITY AGREEMENT Recorded May 20, 2020
From: LIVE NATION ENTERTAINMENT, INC.; LIVE NATION WORLDWIDE, INC.
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 052718/0016 →
SECURITY AGREEMENT Recorded Jul 14, 2017
From: LIVE NATION ENTERTAINMENT, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 043194/0710 →
Continuity (3)
Continuation 15155825 · May 16, 2016
Provisional Application 62336938 · May 16, 2016
Related Publication 20180011745A1 · Jan 11, 2018