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 a plurality of data repositories;
performing a query at the plurality of data repositories for a first number of satisfying records equal to a maximum number of displayable records, wherein a total number of records in the dataset satisfying the query is greater than the returned set of satisfying records;
displaying the first number of satisfying records returned by the first query in a page;
displaying a plurality of links to additional pages, wherein each link represents another number of satisfying records in the dataset other than the first number of satisfying records returned by the first query;
establishing a location of each number of satisfying records in the dataset other than the returned set of satisfying records based on meta data of the first number of satisfying records returned by the first query;
performing a second query upon selection of a link, the second query for a second number of satisfying records equal to the maximum number of displayable records, the second query returning the second number of satisfying records from the plurality of data repositories using the established location, wherein the second number of satisfying records is equal to at most the first number of satisfying records; and
discarding an excess number of satisfying records, wherein the excess number of satisfying records is equal to the difference between one of the first or second number of satisfying records and a maximum number of satisfying records displayable on each page;
identifying a subsequent query starting point from information related to the second number of satisfying records, including;
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 plurality of data repositories from the modified satisfying record metadata; and
beginning a next query at the next record location at each of the plurality of data repositories.
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.
26 Citations
13 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 a plurality of data repositories; performing a query at the plurality of data repositories for a first number of satisfying records equal to a maximum number of displayable records, wherein a total number of records in the dataset satisfying the query is greater than the returned set of satisfying records; displaying the first number of satisfying records returned by the first query in a page; displaying a plurality of links to additional pages, wherein each link represents another number of satisfying records in the dataset other than the first number of satisfying records returned by the first query; establishing a location of each number of satisfying records in the dataset other than the returned set of satisfying records based on meta data of the first number of satisfying records returned by the first query; performing a second query upon selection of a link, the second query for a second number of satisfying records equal to the maximum number of displayable records, the second query returning the second number of satisfying records from the plurality of data repositories using the established location, wherein the second number of satisfying records is equal to at most the first number of satisfying records; and discarding an excess number of satisfying records, wherein the excess number of satisfying records is equal to the difference between one of the first or second number of satisfying records and a maximum number of satisfying records displayable on each page; identifying a subsequent query starting point from information related to the second number of satisfying records, including; 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 plurality of data repositories from the modified satisfying record metadata; and beginning a next query at the next record location at each of the plurality of data repositories.
-
-
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 a satisfying record displayable limit.
-
3. 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 plurality of data repositories.
-
4. The method of claim 2, wherein the satisfying record displayable limit includes a default value.
-
5. The method of claim 1, wherein querying the plurality of data repositories for a first number of satisfying records comprises dispatching an application control thread to the plurality of data repositories, the application control thread performing a query at the plurality of data repositories.
-
6. The method of claim 1, wherein returning a second number of satisfying records from the plurality of data repositories comprises:
-
combining the second number of satisfying records from the a plurality of data repositories into a query result; and sorting the query result.
-
-
7. The method of claim 1, wherein returning a second number 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 second number of satisfying records.
-
8. The method of claim 1,
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.
- and
-
9. The method of claim 1, wherein performing a query at the plurality of data repositories for a first number of satisfying records further comprises:
-
determining a query starting point, the query starting point corresponding to a member of a set of all satisfying records on the plurality of data repositories; determining an arbitrary starting point record identifier, the arbitrary starting point record identifier residing on a first data repository of the plurality of data repositories; wherein the total number of satisfying records residing on the plurality of data repositories at a position relative to the arbitrary starting point record identifier is equal to a number of records corresponding to the query starting point; and retrieving an ordered set of satisfying records from the first data repository and a second data repository, the ordered set beginning with a satisfying record corresponding to the query starting point.
-
-
10. The method of claim 9, further comprising storing the information associated with the location of the second number of satisfying records.
-
11. The method of claim 1, further comprising determining a satisfying record displayable limit.
-
12. The method of claim 11, 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.
-
-
13. The method of claim 12, 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.
Specification