US2016125029A1PendingUtilityA1

Intelligent caching for enterprise resource planning reporting

Assignee: INSIGHTSOFTWARE COM INTERNATPriority: Oct 31, 2014Filed: Oct 31, 2014Published: May 5, 2016
Est. expiryOct 31, 2034(~8.3 yrs left)· nominal 20-yr term from priority
Inventors:Andreas Damm
G06F 17/3048G06F 17/30457H04L 67/1097G06F 17/30864H04L 67/2842H04L 67/568G06F 16/24539G06F 16/9535G06F 16/24552
32
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

This disclosure describes systems, methods, and apparatus for ERP reporting using a cache server to cache previous query results. Query latency is further reduced by routing queries and responses to queries through the cache server rather than via direct communication between a querying device and a server hosting the database. This is done by moving a driver for interfacing with the database to the server hosting the database, thus avoiding slow protocol communications between this driver and the database when such communications occur over a WAN. A custom driver is also designed to interface with the cache server and control routing of queries and responses through the cache server. Further, a cache server is selected that enables queries to be passed straight to the server hosting the database rather than the query device having to pass these queries to the database.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A database reporting system configured to communicate with a database via a cache server, the database reporting system comprising:
 a query application server configured to couple to a cache server via a local area network;   a database server configured to couple to the cache server and configured to receive a query from the cache server when a query result for the query is not found in the cache server, the database server further configured to return the query result to the cache server, the database server comprising:
 a database to which the query is made by the database server when the query result is not found in the cache server; 
 a query server having a database-specific driver configured to make the query to the database and receive the query result from the database, the query server configured to pass the query result back to the query application server via the cache server, the query server further configured to cache the query result in the cache server; and 
 one or more network connections configured for coupling to the cache server and configured to pass the query from the cache server to the query server and pass the query result from the query server to the cache server. 
   
     
     
         2 . The database reporting system of  claim 1 , wherein the query server is further configured to instruct the cache server to cache one or more dependencies of the query results. 
     
     
         3 . The database reporting system of  claim 1 , further comprising a query device coupled to the query application server and including a graphical user interface for displaying the query result to a user. 
     
     
         4 . The database reporting system of  claim 1 , wherein the query application server includes a cache server interfacing driver. 
     
     
         5 . The database reporting system of  claim 1 , wherein the query application server is configured to communicate with the cache server at a driver layer but not at an application layer. 
     
     
         6 . The database reporting system of  claim 1 , wherein the one or more network connections include a wide area network. 
     
     
         7 . A database reporting system configured to communicate with a database via a cache server, the database reporting system comprising:
 a query application server configured to couple to a cache server;   a database server having:
 a database; 
 a query server; 
 a database-specific driver specific to the database; 
 a first network inference configured to enable a first network connection between the database server and the cache server, the first network interface configured to receive queries from the cache server and to return query results to the cache server for caching; 
 a second network interface configured to enable a second network connection between the database server and the query application, the second network interface configured to return the query results to the query application server via the cache server. 
   
     
     
         8 . The database reporting system of  claim 7 , wherein the query application server includes a cache server interfacing driver configured to interface with the cache server. 
     
     
         9 . The database reporting system of  claim 7 , wherein the query application server is on a local area network, the local area network configured to include the cache server. 
     
     
         10 . The database reporting system of  claim 7 , wherein the first network connection includes a wide area network. 
     
     
         11 . The database reporting system of  claim 7 , further comprising a query device coupled to the query application server and including a query application graphical user interface configured to present the query results to a user. 
     
     
         12 . A method for operating a database reporting system where queries and query results pass through a cache server, the method comprising:
 passing a query from a query application server to a cache server;   receiving an indication that the cache server does not have a query result for the query;   instructing the cache server to pass the query to a query server of a database server;   querying a database of the database server;   receiving a query result from the database; and   passing the query result to the query application server via the cache server and also caching the query result in the cache server.   
     
     
         13 . The method of  claim 12 , wherein the querying is performed by the query server. 
     
     
         14 . The method of  claim 13 , wherein the querying and the second receiving are performed by a database-specific driver configured to interface with the database. 
     
     
         15 . The method of  claim 13 , further comprising instructing the cache server to cache one or more dependencies of the query result. 
     
     
         16 . The method of  claim 15 , wherein the one or more dependencies of the query result include a dependency of the query result to a table of the database. 
     
     
         17 . The method of  claim 15 , further comprising monitoring the database for changes in data and invalidating a cached search result in a cache of the cache server when the cached search result corresponds to or depends from the data that has changed in the database. 
     
     
         18 . The method of  claim 13 , further comprising adding a cache server interfacing driver to the query application server without modifying an application layer of the query application server. 
     
     
         19 . The method of  claim 13 , wherein caching functionality is enabled at a driver layer rather than an application layer. 
     
     
         20 . The method of  claim 13 , wherein the query server receives the query from the cache server via a wide area network 
     
     
         21 . The method of  claim 20 , wherein the query server passes the query result to the cache server via the wide area network. 
     
     
         22 . The method of  claim 21 , wherein the query server passes the query result to the query application server via the wide area network and a local area network configured to couple the query application server and the cache server.

Join the waitlist — get patent alerts

Track US2016125029A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.