Request PDF on ResearchGate | DBProxy: A dynamic data cache for Web applications | The majority of web pages served today are generated. The majority of web pages served today are generated dynamically, usually by an application server querying a back-end database. To enhance the scalability. In this paper, we describe DBProxy, an edge-of-network semantic data cache for web applications. DBProxy is designed to adapt to changes in the workload in a.
|Published (Last):||25 May 2009|
|PDF File Size:||20.8 Mb|
|ePub File Size:||15.98 Mb|
|Price:||Free* [*Free Regsitration Required]|
Skip to main content. Log In Sign Up. Nevertheless, it seems to be handling dynamic web pages due to their strong inadequate when it comes to caching dynamic web dependency on the back-end site infrastructure.
In application programs jsp, asp etc stored in the back- order to overcome these drawbacks we present end site infrastructure. These programs usually connect Applocations Dynamic Objects Manager Proxya new to back-end databases; hence, dynamic web page Proxy architecture that enables front-end web caching creation assumes the existence of both an application for dynamically generated web pages. Instead of program and back-end content. We discuss the new challenges ddbproxy issues request of a dynamic web page depends on client- raised by this approach, with special emphasis on the defined input parameters.
Serving such a request using caching and manipulation of different types of web a cache could be possible only if a cached dynamic objects at a front-end caching point. Even in that case, the creation of 1. Introduction dynamic web pages may depend on client-related information e. Thus, Proxy caching is a commonly accepted different calls to the same application with the same methodology used to reduce Internet traffic, decrease parameters may produce different output.
Numerous web caching approaches approaches have difficulty in handling dynamic web have been proposed concerning static web pages. In order to overcome these obstacles we believe that Web caching techniques can be characterized as front-end web caching approaches should be based on back-end or front-end. Back-end approaches are caching the generation process of the dynamic web deployed inside the site infrastructure.
They can pages and not the pages themselves. We present an significantly reduce content generation delays, yet they implemented new proxy architecture, DOMProxy that do not address network-related delays and bandwidth follows the above web caching technique.
In addition, consumption issues. On the other hand, front-end we discuss new challenges and issues raised by this approaches concern caching outside the site approach, with special emphasis on the caching dtnamic infrastructure, e.
One use of the Cache Applets approach is presented in , where the proxy 2. Related Work is enhanced with the ability to perform query caching. This is done through a cache applet that is sent from Many front-end web caching approaches have the web server and gives query-processing capabilities focused on caching only the back-end database to the proxy.
Finally, in , the Dynamic Content content. Semantic Data the proxy. Caching  is a solution that defines ways on how a The majority of previously reported front-end client proxy is able to cache the query results that a caching approaches handle only the data content that back-end database server produces by exploiting the dynamic web pages include.
An edge-of-network process of a dynamic web page is performed by semantic data cache, DBProxy, is proposed in ; application programs, the existence of an edge DBProxy can be considered as an improvement of application server communicating with the edge Semantic Data Caching because it supports more types database cache is a prerequisite for the implementation of transactional web queries and at the same time of these approaches.
This results to low scalability and proposes a sophisticated algorithm for the consistency transparency of the front-end caching point, and of the cached objects. Furthermore, the Proxy-Caching therefore attention should be given to approaches that Framework presented in  can be considered as a are based on caching of the whole generation process simplified version of Semantic Data Caching: This is exactly the focus of our exploits the semantics of queries expressed through proposal, the DOMProxy approach.
HTML forms in order to achieve traditional passive query matching or active query matching. The DOMProxy Approach In a different direction, in  and  database caching is done by using materialized views, DOMProxy is a proxy-caching architecture for replication techniques and distributed query execution.
The key feature of DOMProxy is In  a full-fledged database server that is co-located the ability to cache the generation process of dynamic with the application server is proposed as a solution to web pages instead of the pages themselves.
Caching caching data from the back-end server. It tries to the generation process of a dynamic web page amounts perform an on-demand caching operation by to caching the components that compose it. This is because it Our proposed architecture deals only with caching caches only one of the components used in the of the applications and the query results that are sent as dynamic web pages generation process.
Without the a response from the back-end DBMS.
DBProxy: A dynamic data cache for Web applications
Approaches like [5, 9, 7] try to overcome this process of a dynamic web page. Forward or Standard proxy.
More specifically, Cache Application Programs. Caching application Applets  are basically software modules written in programs is dhnamic for producing dynamic web Java, attached to the dynamic documents and sent as pages on request. As the server responds, we attach web page starts with the use of the Application all the information applicattions proxy needs in order to fetch the Manager.
The Application Manager is programs produce. The generation process of a dynamic application objects that are cached in the proxy. Hence, the Fetching is done through the Network Manager, which important question that arises is which of these objects is described below.
There are two approaches that can Data Manager. The Data Manager controls the be followed regarding caching of database-related storage and manipulation of the cached data objects. The first one includes caching and The kernel of the Data Manager is an implementation manipulating the query results that application of Semantic Data Caching .
Each data object programs use. This approach is suitable for creating a represents a single query, the unit with the lowest more scalable and transparent caching architecture acche granularity in our data manipulation approach. Similar with confined abilities as far as database content queries are grouped in query classes, which are manipulation is concerned.
The second approach represented by different semantic spaces depending on suggests the usage of full-fledged database caching their FROM clause, meaning that simple queries over techniques e. This approach the same base table are stored in the same semantic creates more powerful and efficient database caching space.
Likewise, in case wfb join queries, semantic dynaic however, it depends strongly on the spaces are defined by the set of base tables in the back-end database and is therefore limited in terms of FROM clause and the join conditions.
J-GLOBAL – Japan Science and Technology Agency
Due to the fact that a proxy must be as scalable and as independent as possible Db;roxy uses the first approach of query result caching. We proceed now to describe the details of the DOMProxy architecture and csche modules. As mentioned earlier, DOMProxy is composed of two main components: DOM consists of six main components presented bellow.
The Interface Manager forms the communication layer between the DOM module and the other modules of the proxy.
DOMProxy should maintain the associations between the applications and Figure 1: DOMProxy Architecture the cacye dynamic web pages they produce. In the general case, tuples of a query result are be served by this application, c the back-end URL of points in this n-dimensional space; therefore input the original application, and d the back-end URL gor queries are represented by sets of regions. Due to the the Data Provider.
The Dynamic Applicatios Directory is fact that the majority of the queries served in web also responsible for deciding if an HTTP request that applications nowadays are eynamic Select-Project-Join corresponds to a dynamic web page can be satisfied by SPJ queries without negation or disjunctions, in our the DOM.
An example of patterns that the applications can serve. An input query server. Also, the semantic region that describes R already cached semantic space. In order to check if a and its corresponding tuples is added to the new weg is already cached in the corresponding corresponding semantic space and cache table semantic space, the Data Manager creates the semantic respectively. This is done through the Network dimensions of the semantic space. Finally, for each Manager, which requests the needed objects as they are semantic space, only the attributes selected from the defined from the Application Manager and Data various queries that arrive to the proxy are cached, i.
Replacement and Consistency Manager. Two example queries and consistency policy for the DOM component. PK This section discusses other issues related to proxy These two queries are represented by the same caching for dynamic content.
These issues arise semantic space, defined by the join of R, S over R. This semantic space will have a single caching approach, i.
DOMProxy: Enabling Dynamic-Content Front-end Web Caching | Timos Sellis –
Tuples according to their type or their granularity level. A, key feature of our approach raises interesting R. Data Object Caching The Data Manager caches only the data that are necessary for answering the requested queries. There are cases where groups of these queries present high semantic locality, hence creating frequently requested semantic spaces with high probability to be accessed in the near future.
For such areas of semantic spaces we Figure 2: This way, we can create more checks if the semantic space that this query belongs to complete semantic spaces, leading to higher cache hit is already cached.
If this is the case, the Data Manager rates. Following the or eliminating dimensions of semantic spaces as the definitions of , dbpeoxy Q denote the constraint formula workload changes dynamically.
As far as semantic regions and semantic spaces 4. We believe that a weight-based algorithm that different levels of granularity. Specifically, regarding will take under consideration these parameters, along data-objects, three different levels of granularity are with standard ones like size and retrieval cost will be identified as cachf in Figure 3.
DBProxy: A dynamic data cache for Web applications – Semantic Scholar
The semantic regions the most suitable solution. On the other hand, at the and their corresponding cached data define the lowest third level of granularity that concerns whole granularity level. The corresponding data are grouped databases, a fata and simple replacement policy according to their semantic description and compose like LRU or LFU will be more suitable.
The details and semantic spaces, which comprise the second level of alternatives of replacement policy schemes is a subject granularity as explained earlier in Section 3. The of our current research. Cooperative Proxy Caching databases. In general, it is and temporal and spatial locality; temporal locality used for high client population and geographical refers to applicarions use of the same regions in the data space dispersion.
This distribution can be applicaions based for a proxy architecture like DOMProxy, a on various parameters including cached pages URL, customizable replacement approach with dynamic popularity and others.
To be more As mentioned, DOMProxy uses a grouping-oriented specific, the replacement policy must be able to change caching approach based either to the different nature of dynamically its granularity and therefore its eviction- the cached objects application and data objects or to criteria according to workload characteristics and the their semantic description semantic regions, semantic appkications storage capacity.
This approach presupposes the sets, databases. Moreover, it has the ability to define existence of a set forr criteria according to which the the existent dependencies among the cached objects replacement granularity and eviction-criteria will regardless of their granularity level.
For instance, additionally to other factors, a distribution method can be based also on their spatial locality. Alternatively, data objects can be grouped, hence distributed, based on their corresponding back-end database. The implementation of our approach is based on the front-end caching of the applications and the database content that is used for Figure 3: Levels of granularity in data caching dynqmic creation of the web pages.