Method and mechanism for reducing client-side memory footprint of transmitted data
First Claim
Patent Images
1. A computer-implemented process for increasing data storage efficiency, comprising:
- identifying a first set of data;
determining, using a processor, existence of data redundancies in the first set of data stored at a first location of a non-transitory computer readable medium, whereinthe existence of data redundancies is determined by calculating row differences between successive rows of the first set of data in a database table of a database system to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, anda second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data;
obtaining, with the processor, the second set of data that is a reduced version of the first set of data, whereinthe second set of data does not include the data redundancies determined in the first set of data; and
transmitting the second set of data to a client through a computer network.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention is directed to a method and mechanism for reducing the expense of data transmissions between a client and a server. According to an aspect of data prefetching is utilized to predictably retrieve information between the client and server. Another aspect pertains to data redundancy management for reducing the expense of transmitting and storing redundant data between the client and server. Another aspect relates to moved data structures for tracking and managing data at a client in conjunction with data redundancy management.
115 Citations
33 Claims
-
1. A computer-implemented process for increasing data storage efficiency, comprising:
-
identifying a first set of data; determining, using a processor, existence of data redundancies in the first set of data stored at a first location of a non-transitory computer readable medium, wherein the existence of data redundancies is determined by calculating row differences between successive rows of the first set of data in a database table of a database system to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, and a second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data; obtaining, with the processor, the second set of data that is a reduced version of the first set of data, wherein the second set of data does not include the data redundancies determined in the first set of data; and transmitting the second set of data to a client through a computer network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product that includes a volatile non-transitory computer-usable storage medium usable by a processor, the non-transitory computer-usable storage medium having stored thereon a sequence of instructions which, when executed by said processor, causes the processor to execute a set of acts for increasing the efficiency of data storage, the set of acts comprising:
-
identifying a first set of data; determining, using the processor, existence of data redundancies in the first set of data stored at a first location of a non-transitory computer readable medium, wherein the existence of data redundancies is determined by calculating row differences between successive rows of the first set of data in a database table of a database system to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, and a second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data; obtaining, with the processor, the second set of data that is a reduced version of the first set of data, wherein the second set of data does not include the data redundancies determined in the first set of data; and transmitting the second set of data to a client through a computer network. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A computer system comprising a server, the computer system configured to increase the efficiency of data storage at the server at least by executing a sequence of instructions to:
-
identify a first set of data; determine existence of data redundancies in the first set of data stored at a first location of a non-transitory computer readable medium, wherein the existence of data redundancies is determined by calculating row differences between successive rows of the first set of data in a database table of a database system to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, and a second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data; obtain, with a processor, the second set of data that is a reduced version of the first set of data, wherein the second set of data does not include the data redundancies determined in the first set of data; and transmit the second set of data to a client through a computer network. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A computer-implemented process for increasing data storage efficiency, comprising:
-
receiving a second set of data that is a reduced version of a first set of data from a server through a computer network; storing the second set of data at a first location in a non-transitory computer readable medium, wherein the second set of data does not include data redundancies comprised in the first set of data, the data redundancies are determined by calculating row differences between successive rows of the first set of data to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, and the second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data; and configuring, using a processor, a plurality of data elements associated with redundant data in the first set of data by pointing the plurality of data elements to a same data item in the second set of data such that the same data item is accessed for the plurality of data elements. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A computer program product that includes a non-transitory computer-usable storage medium usable by a processor, the non-transitory computer-usable storage medium having stored thereon a sequence of instructions which, when executed by the processor, causes the processor to execute a set of acts for increasing the efficiency of data storage, the set of acts comprising:
-
receiving a second set of data that is a reduced version of a first set of data from a server through a computer network; storing the second set of data at a first location in a non-transitory computer readable medium, wherein the second set of data does not include data redundancies comprised in the first set of data, the data redundancies are determined by calculating row differences between successive rows of the first set of data to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, and the second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data; and configuring, using the processor, a plurality of data elements associated with redundant data in the first set of data by pointing the plurality of data elements to a same data item in the second set of data such that the same data item is accessed for the plurality of data elements. - View Dependent Claims (31)
-
-
32. A computer system comprising:
- a processor;
a display device and/or a volatile or non-volatile computer-usable medium, wherein the system is configured to increase the efficiency of data storage at least by executing a sequence of instructions to;receive a second set of data that is a reduced version of a first set of data from a server through a computer network; store the second set of data at a first location in a non-transitory computer readable medium, wherein the second set of data does not include data redundancies comprised in the first set of data, the data redundancies are determined by calculating row differences between successive rows of the first set of data to generate a bitmap that is further stored at a second location in the non-transitory computer readable medium, and the second set of data is obtained by consulting the bitmap corresponding to changes between a first row and a second row of the first set of data; and configure, using the processor, a plurality of data elements associated with redundant data in the first set of data by pointing the plurality of data elements to a same data item in the second set of data such that the same data item is accessed for the plurality of data elements. - View Dependent Claims (33)
- a processor;
Specification