METHOD FOR PROVIDING THE APPEARANCE OF A SINGLE DATA REPOSITORY FOR QUERIES INITIATED IN A SYSTEM INCORPORATING DISTRIBUTED MEMBER SERVER GROUPS
First Claim
Patent Images
1. A method for providing the appearance of a single data repository for queries initiated in a system incorporating distributed member server groups comprising:
- distributing a dataset to one or more data repositories;
performing a query at the one or more data repositories for a first number of satisfying records;
wherein the first number of satisfying records is at least one of equal to a satisfying record displayable limit, less than the satisfying record displayable limit, or a factor of the satisfying record displayable limit;
returning a second number of satisfying records from the one or more data repositories;
wherein the second number of satisfying records is equal to at most the first number of satisfying records; and
identifying a subsequent query starting point from information related to the second number of satisfying records.
10 Assignments
0 Petitions
Accused Products
Abstract
Queries to an enterprise data system based on discrete groups of servers may display the sets of data satisfying a query as if the query results originated from a single data repository. Further, queries within the system may efficiently search through a large set of satisfying records while accounting for data latency or system performance.
-
Citations
28 Claims
-
1. A method for providing the appearance of a single data repository for queries initiated in a system incorporating distributed member server groups comprising:
-
distributing a dataset to one or more data repositories; performing a query at the one or more data repositories for a first number of satisfying records; wherein the first number of satisfying records is at least one of equal to a satisfying record displayable limit, less than the satisfying record displayable limit, or a factor of the satisfying record displayable limit; returning a second number of satisfying records from the one or more data repositories; wherein the second number of satisfying records is equal to at most the first number of satisfying records; and identifying a subsequent query starting point from information related to the second number of satisfying records.
-
-
2. The method of claim 1, further comprising displaying a number of satisfying records from the second number of satisfying records;
wherein the number of satisfying records from the second number of satisfying records is equal to at most the satisfying record displayable limit.
-
3. The method of claim 1, wherein the first number of satisfying records is equal to the difference between the satisfying record displayable limit and a number of satisfying records from a previous query returned from each of the one or more data repositories.
-
4. The method of claim 1, wherein the second number of satisfying records is equal to a combined total of a number of satisfying records from each of the one or more data repositories.
-
5. The method of claim 1, wherein the satisfying record displayable limit includes a default value.
-
6. The method of claim 1, wherein querying the one or more data repositories for a first number of satisfying records comprises dispatching an application control thread to the one or more data repositories, the application control thread performing a query at the one or more data repositories.
-
7. The method of claim 1, wherein returning a second number of satisfying records from the one or more data repositories comprises:
-
combining the second number of satisfying records from the one or more data repositories into a query result; and sorting the query result.
-
-
8. The method of claim 1, wherein returning a second number of satisfying records from the one or more data repositories comprises segregating at least one of a new satisfying record or a changed satisfying record from the second number of satisfying records.
-
9. The method of claim 1, further comprising storing an excess number of satisfying records;
-
wherein the excess number of satisfying records is equal to the difference between the second number of satisfying records and the number of displayable records; and wherein the excess number of satisfying records comprises at least one of a previous page of displayable records or a subsequent page of displayable records.
-
-
10. The method of claim 1, further comprising discarding an excess number of satisfying records, wherein the excess number of satisfying records is equal to the difference between the second number of satisfying records and the maximum number of displayable records.
-
11. The method of claim 1, wherein identifying the subsequent query starting point at the one or more data repositories comprises:
-
modifying information associated with a location of the second number of satisfying records, the information including satisfying record metadata; wherein the satisfying record metadata includes at least one of a last member identifier, a last member record location identifier, or a data repository identifier; identifying a next record location at each of the one or more data repositories from the modified satisfying record metadata; and beginning a next query at the next record location at each of the one or more data repositories.
-
-
12. The method of claim 1, wherein performing a query at the one or more data repositories for a first number of satisfying records further comprises:
-
determining a desired query starting point, the desired query starting point corresponding to a member of a set of all satisfying records on the one or more data repositories; determining an arbitrary starting point record identifier, the arbitrary starting point record identifier residing on a first data repository of the one or more data repositories; wherein the total number of satisfying records residing on the one or more data repositories at a position relative to the arbitrary starting point record identifier is equal to a number of records corresponding to the desired query starting point; and retrieving an ordered set of satisfying records from the first and second data repositories, the ordered set beginning with a satisfying record corresponding to the desired query starting point.
-
-
13. The method of claim 12, further comprising storing the information associated with the location of the second number of satisfying records.
-
14. The method of claim 1, further comprising determining the satisfying record displayable limit.
-
15. The method of claim 14, wherein determining the satisfying record displayable limit comprises:
-
assessing at least one system performance parameter, the at least one system performance parameter including at least one of an amount of available system resources, or an amount of memory allotted to complete a combine and sort function; determining the satisfying record displayable limit based on the at least one system performance parameter.
-
-
16. The method of claim 15, further comprising completing the combine and sort function on the second number of satisfying records if the at least one system performance parameter includes at least one of an amount of available system resources or an amount of memory allotted to complete a combine and sort function.
-
17. A method for executing a query on a system including a dataset distributed across a plurality of data repositories comprising:
-
communicating a first query to each of the plurality of data repositories for a maximum number of displayable records; returning a set of satisfying records from the plurality of data repositories to an administrative data repository; wherein the set of satisfying records includes a number of satisfying records from each of the plurality of data repositories; wherein the number of satisfying records from each of the plurality of data repositories is equal to at most the maximum number of displayable records; combining and sorting the set of satisfying records at the administrative data repository; displaying a subset of the set of satisfying records, the subset including a number of sorted records equal to at most the maximum number of displayable records; recording meta data for each satisfying record of the set of satisfying records; wherein the meta data includes each satisfying record location at each of the plurality of data repositories; establishing at least one of a location of a next satisfying record or an end of the first query based on the meta data; communicating a second query to at least one of the plurality of data repositories for at least one of; the maximum number of displayable records, a factor of the maximum number of displayable records, or a number of satisfying records from each data repository equal to the difference between the maximum number of displayable records and a number of previously-displayed satisfying records from the at least one of the plurality of data repositories.
-
-
18. The method of claim 17, further comprising:
-
assessing at least one system performance parameter; and determining the maximum number of displayable records based on the at least one system performance parameter.
-
-
19. The method of claim 18, wherein the at least one system performance parameter includes at least one of an amount of available system resources, or an amount of memory allotted to combine and sort the set of satisfying records.
-
20. The method of claim 17, wherein communicating a first query to each of the plurality of data repositories and communicating a second query to at least one of the plurality of data repositories comprises dispatching an application control thread.
-
21. The method of claim 17, wherein returning a set of satisfying records from the plurality of data repositories comprises segregating at least one of a new satisfying record or a changed satisfying record from the set of satisfying records.
-
22. The method of claim 17, further comprising storing an excess number of satisfying records;
wherein the excess number of satisfying records is equal to the difference between the set of satisfying records and the maximum number of displayable records.
-
23. The method of claim 22, wherein the excess number of satisfying records comprises at least one of a previous page of displayable records or a subsequent page of displayable records.
-
24. A computer-readable medium having computer-executable instructions for providing the appearance of a single data repository for queries initiated in a system incorporating distributed member server groups comprising:
-
computer executable instructions for distributing a query to each of a plurality data repositories for at least one of; a number of displayable records, a factor of the number of displayable records, or a number of satisfying records from each data repository equal to the difference between the number of displayable records and a number of previously-displayed satisfying records; computer executable instructions for returning a first number of satisfying records from each of the plurality of data repositories, the first number of satisfying records equal to at most the number of displayable records; and computer executable instructions for identifying a location for a second number of satisfying records from information related to the first number of satisfying records.
-
-
25. The computer-readable medium of claim 24, wherein the computer executable instructions for distributing a query to each of the plurality of data repositories comprises dispatching an application control thread.
-
26. The computer-readable medium of claim 24, further comprising computer executable instructions for determining the number of displayable records based on at least one system performance parameter;
wherein the at least one system performance parameter includes at least one of an amount of available system resources, or an amount of memory allotted to complete a combine and sort function on the first number of satisfying records.
-
27. The computer-readable medium of claim 24, further comprising computer executable instructions for combining and sorting the first number of satisfying records from each of the plurality of data repositories.
-
28. The computer-readable medium of claim 24, wherein the computer executable instructions for returning a first number of satisfying records comprises segregating at least one of a new satisfying record or a changed satisfying record from the first number of satisfying records.
Specification