EP1522031A2

System and method for caching data for a mobile application

Abstract

This record has no abstract on file.

Term

Term ended

Projected expiry passed 25 June 2023, 3.2 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

43 claims: 8 independent, 35 dependent

  1. 1
    Claims of equivalent WO 2004010305 A2 What Is Claimed Is:1. A method of facilitating the caching of data from a data source, on a mobile computing device coupled to the data source with a discontinuously available communication link, comprising: configuring a cache table within a database on the mobile computing device, wherein said cache table includes: access parameters comprising a first set of columns of a dataset on a data source;and result columns comprising a second set of columns of the dataset distinct from the first set of columns of the dataset;generating one or more instances of said cache table within the database, wherein each said cache table instance comprises a set of rows, wherein each said row comprises: an argument, said argument comprising a value for each column of the access parameters;and a result set comprising a value for each column of the result columns, wherein each row in a set of rows comprises the same argument.
  2. 16
    A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of facilitating the caching of data, from a data source, on a mobile computing device coupled to the data source with a less than continuously available communication link, the method comprising:configuring a cache table within a database on the mobile computing device, wherein said cache table includes: access parameters comprising a first set of columns of a dataset on a data source;and result columns comprising a second set of columns of the dataset distinct from the first set of columns of the dataset;generating one or more instances of said cache table within the database, wherein each said cache table instance comprises a set of rows, wherein each said row comprises: an argument, said argument comprising a value for each column of the access parameters;and a result set comprising a value for each column of the result columns, wherein each row in a set of rows comprises the same argument.
  3. 17
    A method of facilitating data caching on a mobile computing device discontinuously coupled to a data server, the method comprising:identifying one or more logical data tables on the data server;for each logical data table, maintaining a table data processor configured to provide access to the logical table from the mobile computing device;receiving an argument at the data server from the mobile computing device, wherein the argument comprises values for one or more columns of a first logical table;identifying a set of rows of the first logical table, wherein each row in the set of rows contains the argument;filtering the set of rows, wherein said filtering comprises: excluding any rows that have not been modified since a last time the argument was received from the mobile computing device;and removing from the rows the one or more columns corresponding to the argument;and returning to the mobile computing device, in response to the argument, the filtered set of rows.
  4. 18
    A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of facilitating data caching on a mobile computing device discontinuously coupled to a data server, the method comprising:identifying one or more logical data tables on the data server;for each logical data table, maintaining a table data processor configured to provide access to the logical table from the mobile computing device;receiving an argument at the data server from the mobile computing device, wherein the argument comprises values for one or more columns of a first logical table;identifying a set of rows of the first logical table, wherein each row in the set of rows contains the argument;filtering the set of rows, wherein said filtering comprises: excluding any rows that have not been modified since a last time the argument was received from the mobile computing device;and removing from the rows the one or more columns corresponding to the argument;and returning to the mobile computing device, in response to the argument, the filtered set of rows.
  5. 19
    A method of caching data on a mobile computing device, wherein the mobile computing device is comiectable to a data source via a discontinuously available wireless link, comprising:receiving a first operation involving a first set of data cached on a mobile computing device;determining whether said first set of data is valid;if said first set of data is invalid, determining whether said discontinuously available wireless link is available;if said first set of data is invalid and said less than continuously available wireless link is unavailable, determining whether said first set of data is usable;and retrieving an update for said first set of data from the data source only if: said first set of data is invalid;and said less than continuously available wireless link is available.
  6. 27
    A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method of caching data on a mobile computing device, wherein the mobile computing device is connectable to a data source via a discontinuously available wireless link, the method comprising:receiving a first operation involving a first set of data cached on a mobile computing device;determining whether said first set of data is valid;if said first set of data is invalid, determining whether said less than continuously available wireless link is available;if said first set of data is invalid and said discontinuously available wireless link is unavailable, determining whether said first set of data is usable;and retrieving an update for said first set of data from the data source only if: said first set of data is invalid;and said less than continuously available wireless link is available.
  7. 28
    A database for caching data on a mobile device, the database comprising:a cache table defined by: a set of access parameters corresponding to a first set of attributes of a data source accessible through a wireless communication connection;and a second set of attributes of the data source;wherein the database is discontinuously connected to the central data source through the wireless communication connection;and one or more instances of said cache table, wherein each said cache table instance comprises: an argument, said argument comprising a unique set of values for said access parameters;and a result set comprising values for said second set of attributes;and for each said cache table instance, information for determining a period of time during which said result set is usable on the mobile device.
  8. 35
    A system for caching data on a mobile computing device connectable to a central data source through a wireless link, comprising:a database configured to selectively operate in either of an on-line mode and an off-line mode with respect to a central data source;within the database, a cache table defined by: a set of access parameters corresponding to a first set of attributes of the data source;and a second set of attributes of the central data source;within the database, one or more instances of said cache table, wherein each said cache table instance comprises: an argument comprising a value for each of said access parameters;and a set of results, wherein each said result comprises a value for each of said second set of attributes of the data source;and for each said cache table instance, information for determining whether said result set is usable. 6. The system of claim 35, wherein said information for a first result set of a first cache table instance comprises one or more of: a response-date parameter configured to indicate when said first result set was last provided to the database from the data source;a last-modified-date parameter configured to indicate when said first result set was last modified at the data source;a time-to-live parameter configured to indicate a first period of time during which said first result set is valid, wherein said first result set is usable if said first result set is valid;and a staleness parameter configured to indicate a second period of time, starting at the expiration of said first period of time, during which said first result set may be usable.
  9. 39
    40. A system for caching data on a mobile computing device, wherein the mobile computing device is configured for connection to a central data source on a discontinuous basis, the system comprising:a cache table configured to cache data, from the central data source, on the mobile computing device;one or more entries in said cache table, each said entry comprising a set of data from the central data source;for each entry in said cache table, a validity parameter for determining a period of time during which said set of data is valid;for each entry in said cache table, a usability parameter for determining whether said set of data is usable after said period of time during which said set of data is valid;and a communication module configured to connect the mobile computing device to the central data source on a less than continuous basis.