Patent ID: 8849793

Claim:
A data-proxy device for providing distributable middleware data proxy, the device comprising: a transparent application server-connection manager operative to exchange application server data with at least one application server which requests data via database query requests, the application server-connection manager being further operative to return data responses to the application server, wherein the application server connection manager communicates with the application server using a communication protocol used by the application server; a request analyzer for analyzing database query requests from said at least one application server; a data-retrieval/command-execution module for executing said database query requests; a database-connection manager operative to exchange database data between at least one database server and the data-retrieval/command-execution module, the database-connection manager being further operative to provide an application interface to execute commands in or retrieve data from the at least one database server; a RAM memory functioning as a cache-memory pool for storing data items from said at least one database server; a cache-policy module for determining cache criteria for storing said data items in said cache-memory pool; and a data-consistency invalidation module configured to determine for removal invalidated data items based on invalidation criteria related to a relevance of the data items stored in the cache-memory pool; and predefine a list of data change triggers based on dependencies between database objects, tables, triggers, stored procedures, foreign keys, and database metadata in at least one database server; and parse an analysis of query-string context, wherein said data-retrieval/command-execution module is operative to carry out at least one of: returning data from the cache-memory pool to the application server connection manager; executing a query in the database server and returning the database response to the application server connection manager; identifying data change triggers from the database query request and from a list of data change triggers predefined by the data consistency invalidation module for detecting data changes; activating triggers for detecting said invalidated data items; and launching triggers for invalidating cached data from the cache-memory pool.