Method and system for access and display of data from large data sets
First Claim
1. A computer-readable storage medium having stored therein a set of instructions which, when executed, perform a method comprising:
- defining a first boundary set by iterating through a number of record rows, whereinthe record rows are retrieved from a database and are sorted according to a sort order,each of the record rows comprises a plurality of columns, the sort order is based on data stored in at least two columns of the plurality of columns,the first boundary set comprises a plurality of boundary markers,the defining comprises iterating through the record rows, and defining a boundary marker every Nth row of the record rows, whereinN is a data bucket size,a value of N is less than the number of record rows,the value of N is inversely proportional to a percentage of the number of record rows that is represented by a number of rows requested,the number of rows requested is determined according to a user-specified selection criterion, andeach boundary marker comprises a set of data corresponding to row data of a corresponding row of the at least two columns on which the sort order is based,the plurality of boundary markers is configured to logically partition the record rows into a plurality of continuous sections, whereineach of the plurality of continuous sections comprises N record rows of the record rows, except for a last continuous section of the plurality of continuous sections, andthe last continuous section comprises up to N record rows;
storing the first boundary set, whereinthe boundary markers of the first boundary set are stored in sequential order in accordance with the sort order, andeach pair of sequentially-adjacent boundary markers bounds a single continuous section of the plurality of continuous sections;
receiving a request for requested rows from the record rows sorted in the sort order;
searching the first boundary set for a pair of sequentially-adjacent boundary markers that bounds at least a portion of the requested rows; and
querying the database according to the pair of sequentially-adjacent boundary markers to retrieve a first continuous section that contains at least the portion of the requested rows.
0 Assignments
0 Petitions
Accused Products
Abstract
A method and system for accessing and display of data records from large data sets. The method includes defining a plurality of boundaries to logically partition the large data set into a plurality of buckets in accordance with a predefined sort order. The sort order is based on data stored in at least two columns of a database table in which at least a base portion of each data record is stored. In response to a request to retrieve a data record or group of related records, such as all contacts having a given first and last name, a determination is made to which bucket the data record or at least a portion of group of related records are stored in. A query is then formulated to retrieve a subset of the large set of records from the database corresponding to data records contained in the bucket.
-
Citations
11 Claims
-
1. A computer-readable storage medium having stored therein a set of instructions which, when executed, perform a method comprising:
-
defining a first boundary set by iterating through a number of record rows, wherein the record rows are retrieved from a database and are sorted according to a sort order, each of the record rows comprises a plurality of columns, the sort order is based on data stored in at least two columns of the plurality of columns, the first boundary set comprises a plurality of boundary markers, the defining comprises iterating through the record rows, and defining a boundary marker every Nth row of the record rows, wherein N is a data bucket size, a value of N is less than the number of record rows, the value of N is inversely proportional to a percentage of the number of record rows that is represented by a number of rows requested, the number of rows requested is determined according to a user-specified selection criterion, and each boundary marker comprises a set of data corresponding to row data of a corresponding row of the at least two columns on which the sort order is based, the plurality of boundary markers is configured to logically partition the record rows into a plurality of continuous sections, wherein each of the plurality of continuous sections comprises N record rows of the record rows, except for a last continuous section of the plurality of continuous sections, and the last continuous section comprises up to N record rows; storing the first boundary set, wherein the boundary markers of the first boundary set are stored in sequential order in accordance with the sort order, and each pair of sequentially-adjacent boundary markers bounds a single continuous section of the plurality of continuous sections; receiving a request for requested rows from the record rows sorted in the sort order; searching the first boundary set for a pair of sequentially-adjacent boundary markers that bounds at least a portion of the requested rows; and querying the database according to the pair of sequentially-adjacent boundary markers to retrieve a first continuous section that contains at least the portion of the requested rows. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method, comprising:
-
defining, using a computer processor, a first boundary set by iterating through a number of record rows, wherein the record rows are retrieved from a database according to a sort order, each of the record rows comprises a plurality of columns, the sort order is based on data stored in at least two columns of the plurality of columns, the first boundary set comprises a plurality of boundary markers, the defining comprises iterating through the record rows, and defining a boundary marker every Nth row of the record rows, wherein N is a data bucket size, a value of N is less than the number of record rows, the value of N is inversely proportional to a percentage of the number of record rows that is represented by a number of rows requested, the number of rows requested is determined according to a user-specified selection criterion, and each boundary marker comprises a set of data corresponding to row data of a corresponding row of the at least two columns on which the sort order is based, the plurality of boundary markers is configured to logically partition the record rows into a plurality of continuous sections, wherein each of the plurality of continuous sections comprises N record rows of the record rows, except for a last continuous section of the plurality of continuous sections, and the last continuous section comprises up to N record rows; storing, using the computer processor, the first boundary set, wherein the boundary markers of the first boundary set are stored in sequential order in accordance with the sort order, and each pair of sequentially-adjacent boundary markers bounds a single continuous section of the plurality of continuous sections; receiving a request for requested rows from the record rows sorted in the sort order; searching the first boundary set for a pair of sequentially-adjacent boundary markers that bounds at least a portion of the requested rows; and querying the database according to the pair of sequentially-adjacent boundary markers to retrieve a first continuous section that contains at least the portion of the requested rows. - View Dependent Claims (9)
-
-
10. A computer system comprising a processor and a memory storing instructions to be executed by the processor, said instructions executable to implement:
-
means for defining a first boundary set by iterating through a number of record rows, wherein the record rows are retrieved from a database according to a sort order, each of the record rows comprises a plurality of columns, the sort order is based on data stored in at least two columns of the plurality of columns, the first boundary set comprises a plurality of boundary markers, the means for defining comprises means for iterating through the record rows, and means for defining a boundary marker every Nth row of the record rows, wherein N is a data bucket size, a value of N is less than the number of record rows, the value of N is inversely proportional to a percentage of the number of record rows that is represented by a number of rows requested, the number of rows requested is determined according to a user-specified selection criterion, and each boundary marker comprises a set of data corresponding to row data of a corresponding row of the at least two columns on which the sort order is based, the plurality of boundary markers is configured to logically partition the record rows into a plurality of continuous sections, wherein each of the plurality of continuous sections comprises N record rows of the record rows, except for a last continuous section of the plurality of continuous sections, and the last continuous section comprises up to N record rows; means for storing the first boundary set, wherein the boundary markers of the first boundary set are stored in sequential order in accordance with the sort order, and each pair of sequentially-adjacent boundary markers bounds a single continuous section of the plurality of continuous sections; means for receiving a request for requested rows from the record rows sorted in the sort order; means for searching the first boundary set for a pair of sequentially-adjacent boundary markers that bounds at least a portion of the requested rows; and means for querying the database according to the pair of sequentially-adjacent boundary markers to retrieve a first continuous section that contains at least the portion of the requested rows. - View Dependent Claims (11)
-
Specification