<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>Fresh Caching for Dynamic Content</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>2021</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10281962</idno>
					<idno type="doi"></idno>
					<title level='j'>Infocom</title>
<idno></idno>
<biblScope unit="volume"></biblScope>
<biblScope unit="issue"></biblScope>					

					<author>B Abolhassani</author><author>J Tadrous</author><author>A Eryilmaz</author><author>E Yeh</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[We introduce a framework and provably-efficient schemes for 'fresh' caching at the (front-end) local cache of content that is subject to 'dynamic' updates at the (back-end) database. We start by formulating the hard-cache-constrained problem for this setting, which quickly becomes intractable due to the limited cache. To bypass this challenge, we first propose a flexible time-based-eviction model to derive the average system cost function that measures the system's cost due to the service of aging content in addition to the regular cache miss cost. Next, we solve the cache-unconstrained case, which reveals how the refresh dynamics and popularity of content affect the optimal caching. Then, we extend our approach to a soft-cache-constrained version, where we can guarantee that the cache use is limited with arbitrarily high probability. The corresponding solution reveals the interesting insight that 'whether to cache an item or not in the local cache?' depends primarily on its popularity level, whereas 'how long the cached item should be held in the cache before eviction?' depends primarily on its refresh rate. Moreover, we investigate the cost-cache saving tradeoffs and prove that substantial cache gains can be obtained while also asymptotically achieving the minimum cost as the database size grows.]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>I. INTRODUCTION</head><p>The recent advances in the development of capable smart wireless devices and mobile internet services have resulted in rapidly escalating levels of data traffic over cellular networks. This surging data demand is depleting the limited spectrum resources for wireless transmission, especially over the wireless connection between the base stations and the end-users. Consequently, wireless resources are becoming scarce due to the tremendous development of throughputhungry applications including video streaming and online gaming <ref type="bibr">[1]</ref>. Thus, more sophisticated resource management strategies are needed to meet the growing demand <ref type="bibr">[2]</ref>.</p><p>One possible solution for tackling this problem is to cache popular contents at the users' site to reduce the total response time to data requests. Content Distribution Networks (CDNs) utilize a large mesh of caches to deliver content from locations closer to the end users <ref type="bibr">[3]</ref>, <ref type="bibr">[4]</ref>. Existing caching strategies rely on the assumption of static (or quasi-static) nature of the stored content <ref type="bibr">[5]</ref>, <ref type="bibr">[6]</ref>. In many real-world scenarios, such as news updates in social networks and system state updates in cyber-physical networks, the data content is subject to updates at various rates, which render the older versions of the content less useful <ref type="bibr">[7]</ref>. Hence, there is a growing need to develop new caching strategies that account for the refresh characteristics and ageing costs of content for efficient dynamic-content distribution.</p><p>Broadly speaking, there are two classes of caching policies for studying the system performance: timer-based, i.e., Time-To-Live (TTL) <ref type="bibr">[8]</ref>, <ref type="bibr">[9]</ref> and non-timer-based caching policies. In the latter case, the strongly coupled nature of the eviction policies render exact analysis difficult. In contrast, a TTL cache policy associates each content with a timer upon placement in the cache. The content is then evicted once the timer expires, independent of other cached contents. Due in part to analytical tractability <ref type="bibr">[8]</ref>, <ref type="bibr">[10]</ref>, TTL caches have been widely employed since the early days of the internet with the Domain Name System (DNS) being an important application <ref type="bibr">[11]</ref>. Recently, TTL caching strategies have received renewed attention, mainly because they enable a general analytical approach which is used to model replacementbased caching policies such as Least Recently Used (LRU) <ref type="bibr">[12]</ref>.</p><p>Using the TTL cache refresh framework for dynamic content, <ref type="bibr">[13]</ref> proposes two metrics to measure the cached content freshness: age of synchronization (AoS) and age of information (AoI). Most existing research regarding the freshness of the local cache focus on the AoI metric which was first examined in the 1990s in studies on real-time databases <ref type="bibr">[14]</ref>, <ref type="bibr">[15]</ref>.</p><p>The problem of refreshing cache contents from an AoI perspective was first formulated in <ref type="bibr">[16]</ref>, where a remote server generates multiple files and transmits them to a local cache. The authors assume that each file has its own request popularity, a factor that affects how often the server should update the file contained in cache. The objective is to minimize the average AoI <ref type="bibr">[17]</ref>. In <ref type="bibr">[18]</ref>, the authors formulate the AoI problem for a system with random transmission and service processes. They show that the age decreases with increasing service rate. Nevertheless, this comes at the cost of increased waste in the resources spent on obsolete packets <ref type="bibr">[19]</ref>. Najm et al. <ref type="bibr">[20]</ref> analyze the average age and average peak of AoI under the gamma distributed service time. Sun et al. <ref type="bibr">[21]</ref> study how to optimally manage the freshness of information using AoI metric and under a general age penalty function to show that a zero-wait policy does not always minimize the age. Kam et al. <ref type="bibr">[22]</ref> propose a dynamic model in which the rate of requests depends on the popularity and the freshness of information to minimize the number of missed packet requests.</p><p>While AoI is a meaningful metric for measuring the freshness of content in some systems, there are many realworld scenarios where a content does not lose its value simply because time has passed since it was put into the cache. These types of dynamic contents include news and social network updates where the users prefer to have the most fresh version but so long as there is no new update, that content is considered to be the most fresh version. In this work, we use a new freshness metric called Age-of-Version (AoV) which counts the integer difference between the versions at the database and the local cache. We also introduce a new cost function for dynamic content caching which captures both the cost due to the miss event and the cost due to content freshness <ref type="bibr">[23]</ref> which grows with the AoV metric. Moreover, our model extends the traditional caching paradigm to allow for varying generation dynamics of content, and calls for new designs that incorporate these dynamics into its decisions.</p><p>In particular, we propose a freshness-driven caching model for dynamic content, which accounts for the update rate of data content and provides an analysis of the average operational cost for both the constrained and unconstrained cache sizes. We aim to reveal the effect of popularity and refresh rate on the optimal caching policies. Our contributions, along with the organization of the paper, are as follows.</p><p>&#8226; In Section II, we present a tractable caching model for serving dynamic content to end users from a back-end source and formulate the general problem. &#8226; In Section III, we attack the generally intractable problem for the special and insightful case when there is no cache constraint, i.e., all items can be stored in the cache. We characterize the optimal caching decision and explicitly identify the optimal holding time of each item in terms of its popularity and its refresh rate, which reveals the balance between the fetching cost of a fresh update and the ageing cost of serving an old version. &#8226; In Section IV, we return to the general cost minimization problem under high-probability, and an associated average cache size constraints to propose an asymptotically optimal caching solution. The solution reveals the interesting fact that, for fresh caching of dynamic content, one should select the items to cache based on their popularities, while determining the holding times of the cached items based on their refresh rates. &#8226; In Section V, we contrast the operational cost and average cache occupancy of the constrained cache with their  The results show that the asymptotically optimal solution presented in Section IV can yield significant cache savings by discarding static items that are not sufficiently popular, and using the limited cache space efficiently for sufficiently popular dynamic and static items. Finally, we conclude the work in Section VI.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>II. SYSTEM MODEL</head><p>We consider the generic hierarchical setting depicted in Fig. <ref type="figure">1</ref>, whereby: the (limited) local cache serves a user population that makes requests of content according to a popularity distribution; while the back-end database receives updates to update the content with different rates. Next, we will provide the details of this generic model, followed by the goal of our work. Demand Dynamics: We assume that a set N of N unitsize data items (with dynamically changing content) is being served to a user population by the hierarchical caching system in Fig. <ref type="figure">1</ref>. In particular, requests arrive to the local cache according to a Poisson process<ref type="foot">foot_0</ref> with rate &#946; &#8805; 0, which captures the request intensity of the user population. An incoming request targets data item n &#8712; N with probability p n . Accordingly, the probability distribution p = (p n ) N n=1 captures the popularity profile of the data items. Generation Dynamics: At the database, each data item may receive updates to replace its previous content. We assume that data item n receives updates according to a Poisson process with rate &#955; n &#8805; 0. Note that &#955; n = 0 encapsulates the traditional case of static content that never receives an update. We denote the vector &#955; = (&#955; n ) N n=1 as the collection of update rates for the database. Age Dynamics: Since the data items are subject to updates at the database, the same items in the local cache may be older versions of the content. To measure the freshness of local content, we define the age &#8710; n (t) &#8712; {0, 1, . . .} at time t of a cached content for item n as the number of updates that the locally available item n has received in the database since it has been most recently cached. We name this freshness metric as the Age-of-Version (AoV), since it counts the integer difference between the versions at the database and the local cache. Fig. <ref type="figure">2</ref> illustrates an example evolution of &#8710; n (t) for data item n under an arbitrary holding and eviction policy. At the instant t n,i , the local cache refreshes its content of data item n for the i th time. This item remains in the local cache for a duration of &#964; n,i &#8712; R + units of time. In this sample path, the item is evicted from the local cache at time instance t n,i = t n,i + &#964; n,i . During the phase t &#8712; [t n,i , t n,i ), the AoV &#8710; n (t) of item n grows according to a Poisson process with rate &#955; n , as governed by the aforementioned generation dynamics. At the eviction instant t n,i , the &#8710; n (t) drops to zero by default since the next request for the item that arrives after a random duration (denoted as R n,i+1 in the figure) will be serving a fresh update from the database.</p><p>Within the subsequent evictions t n,i and t n,i+1 of the item n, we refer to: the phase (t n,i , t n,i + R n,i+1 ] as the miss phase, since the incoming request is not in the local cache and must be fetched from the database at a higher cost; and the phase (t n,i + R n,i+1 , t n,i+1 ] as the hit phase, since the incoming request is served from the local cache, but possibly with a positive AoV value &#8710; n (t). Fetching and Ageing Costs: Now that we have the dynamics defined, we can introduce the key operational and performance costs associated with our caching system. On the operational side, we denote the cost of fetching an item from the database to the local cache by c f &gt; 0. On the performance side, we assume that serving an item n from the local cache with age &#8710; n (t) incurs a freshness/age cost of c a &#215; &#8710; n (t) for some c a &#8805; 0, which grows linearly<ref type="foot">foot_1</ref> with the AoV metric. This ageing cost measures the growing discontent of the user for receiving an older version of the content she/he demands. Problem Statement: Our broad objective in this work is to develop efficient caching and eviction strategies for the above setting that optimally balance the tradeoff between the cost of frequently updating local content and the cost of providing aged content to the users. In particular, we are interested in provably cost-minimizing caching-and-eviction strategies that account for both the demand and the generation dynamics in order to optimally utilize a possibly limited cache space B &#8712; [0, &#8734;] at the local cache. We can express this goal generically as</p><p>where C &#960; represents the mean of the combined fetching and ageing cost of the system, and X &#960; n (t) &#8712; {0, 1} is the indicator that item i is in the local cache under the operation of a feasible policy &#960;. In its full generality, the feasible policy space &#928; can contain any policy that decides on its fetching and eviction decisions at time t with the knowledge of the cache content until time t and the generation/demand dynamics<ref type="foot">foot_2</ref> (&#955;, &#946;, p), but not the ages {&#8710; n (t)} n (since that information depends on the updates occurring at the backend database). Outline of our Approach and Results: The generic problem in (1) falls under the scope of Partially Observable Markov Decision Processes (POMDP), and quickly becomes intractable <ref type="bibr">[24]</ref>. Even formulating the problem explicitly, let alone solving it, becomes practically impossible. Therefore, a more productive approach is needed to attack this problem in order to develop algorithms and principles with performance guarantees. In this work, we propose such an approach whereby we: (i) first study the unconstrained version of the problem where B = &#8734; in Section III, which reveals how the caching and eviction decisions must depend on the generation and demand dynamics; and then (ii) extend our approach to a constrained version in Section IV, where we can guarantee that the B &lt; &#8734; cache limit can be satisfied with arbitrarily high probability as the database size N increases. This approach is not only productive in designing of policies with asymptotically optimal and cachespace efficient, but also reveals new and explicit metrics (cf. Theorems 1 and 2) for easily measuring the importance of content in terms of its popularity and refresh rates. Throughout the paper, we use cache to refer to the cache size available in the local server.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>III. OPTIMAL CACHING FOR DYNAMIC CONTENT</head><p>WITHOUT CACHE CONSTRAINTS In this section, we attack the generally intractable problem in (1) for the special and insightful case when there is no cache constraint, i.e., B = &#8734;. The characterization of the optimal caching decision in this section under this unconstrained setting will not only yield interesting insights about the impact of the generation dynamics, but will also form the basis of our approach to handling the cache-constrained case with high probability guarantees in Section IV.</p><p>We start by noting that the relaxation of the constraint decouples the problem into finding the optimal fetching and eviction decisions for each data item n independently. This is obvious once we note that the contribution of each item to the average cost is independent of the others. This motivates us in this setting to focus on a space of policies T with random holding times, defined next.</p><p>Definition 1 (Policy Space T ): T denotes the space of policies with random holding times, where a policy &#964; &#8712; T is defined by N (non-negative-valued) random variables (&#964; n ) N n=1 , representing the holding times of the items after their last fetching. In particular, the policy &#964; = (&#964; n ) N n=1 operates as follows for each item n &#8712; N : (i) if item n is not in the local cache when it is requested at time t, a fresh version of it is fetched from the database (at cost c f ) and served to the user; (ii) at the time of fetching item n into the local cache, a random holding time is generated (independently from previous realization of holding times) with respect to the distribution of &#964; n , and item n is held in the queue for the duration of the generated &#964; n value, at which time it is evicted from the local cache; (iii) if item n is in the local cache when it is requested at time t, it is served (with age-of-version cost of c a &#8710; n (t)) to the user.</p><p>The space T takes advantage of the decoupling of the caching decisions between items as well as possesses the flexibility to adapt to different generation and demand dynamics of data items. The next lemma explicitly characterizes the average cost and average cache size of such a policy &#964; &#8712; T in terms of the first and second moments of the holding time distributions of the policy &#964; .</p><p>Lemma 1: Let C(&#964; ) and B(&#964; ), respectively, denote the average cost and the average cache occupancy when the policy &#964; &#8712; T is implemented for the caching system without cache constraints at the local cache. Then,</p><p>where (&#955;, &#946;, p) are the system model parameters (cf. Section II) and (&#964; n ) n are the random variables describing the policy &#964; (c.f. Definition 1).</p><p>Proof. The average system cost utilizing the local cache to serve the requests comprises two main terms. Average fetching cost associated with requests that are not in the cache after a miss event. And, average freshness cost associated with requests that are served from the cache after a hit event, in which case an ageing/freshness cost is incurred due to the fact that the cached content may not be the most fresh version. Then the average cost C(&#964; ) under the policy &#964; &#8712; T can be expressed as:</p><p>where &#8710; n (&#964; ) is the time average age of the data item n served from the local cache when the policy &#964; &#8712; T is implemented. Based on Renewal Reward Theorem, we have:</p><p>where A n,i is the area shown in Fig. <ref type="figure">2</ref> and the last equality comes from the fact that:</p><p>and N n (t) is a Poisson process with parameter &#955; n which is independent of &#964; n,i . Then noting that</p><p>gives us the result. We omit the indices i for convenience.</p><p>Next, let us denote the steady-state hit probability under the caching policy &#964; as h n (&#964; n ) = P ( Xn (&#964; ) = 1), where Xn is the limiting distribution of X n (t) that is the indicator of whether item n is in the local cache at time t or not (cf.</p><p>(1)). Using the illustration of Fig. <ref type="figure">2</ref>, it is easy to confirm that the hit probability for content n can be expressed as:</p><p>where R n is the interarrival time between requests of item n. Since requests for item n arrive at the cache according to a Poisson process with rate &#946;p n , we have E[R n ] = 1 &#946;pn . Then, substituting in (5), we get the cost expression of (2).</p><p>Using the hit probability given in ( <ref type="formula">5</ref>) and noting that</p><p>The explicit characterization of the cost under Lemma 1 allows us to pose the problem of finding the cost minimizing policy in this setting as:</p><p>where the minimization is performed over all distributions for the holding times (&#964; n ) n with non-negative ranges, and the tuple (&#955;, &#946;, p) indicates that the solution is a function of these system parameters. For brevity, we will occasionally omit these parameters and refer to the optimal cost as C * , and later on we will also use C * (N ) when we study the scaling of the performance as the database size N grows.</p><p>The following theorem fully solves <ref type="bibr">(6)</ref>. Theorem 1: Policy &#964; * &#8712; T that solves ( <ref type="formula">6</ref>) is given by:</p><p>where D = {n &#8712; N | &#955; n &gt; 0} , and S = {n &#8712; N | &#955; n = 0} = N \D are, respectively, the set of dynamic and static data items. Then, the corresponding optimal average cost is given by:</p><p>Also, the average cache occupancy under &#964; * is given by:</p><p>Proof. First we show that the average system cost given in ( <ref type="formula">2</ref>) is minimized when the variable &#964; n is a constant, &#8704;n. For a random variable &#964; n with expectation E[&#964; n ], in order to minimize the cost, the second moment 2 which is a constant random variable. In calculating <ref type="bibr">(2)</ref> we assumed that steady state distribution exists for the given random variable &#964; n . Now we verify it for the constant random variable &#964; n .</p><p>Lemma 2: For a constant random variable &#964; n , Bernoulli process (X n (t), t &#8805; 0) has a steady state distribution and its average is given by <ref type="bibr">(5)</ref>. Proof. According to Fig. <ref type="figure">2</ref>, for data item n, define a new random variable</p><p>&#946;pn . Based on the instances of random variable Z n , define S q n = q i=1 Z n,i = q i=1 (R n,i + &#964; n ) to be the time of the q th renewal when the data item n enters the cache for the q th time. Let W (t) be the number of times that data item n has evicted from the cache up to time t. Blackwell's renewal theorem states that for any fixed</p><p>which shows the existence of the steady state distribution. Therefore the random process (X n (t), t) has a steady state distribution with its average given by the above equation.</p><p>The cost minimization problem for the unconstrained cache can thus be expressed as:</p><p>The objective function has the form of quadratic over linear ratio, which is convex. Using KKT conditions gives the optimal solution for &#964; * in <ref type="bibr">(7)</ref>. Substituting &#964; * in (2) gives the optimal of (8).</p><p>To prove the optimal average cache occupancy substituting the optimal solution <ref type="bibr">(7)</ref> in the definition of average cache occupancy given in Lemma 1 and noting that &#964; * n = &#8734;, &#8704;n &#8712; S, we obtain n&#8712;S &#946;pn&#964; * n 1+&#946;pn&#964; * n = |S| which completes the proof.</p><p>Theorem 1, under the unconstrained cache setting, provides some useful insights about the nature of the optimal caching strategy for dynamic content: (i) we see that the cost minimizing policy &#964; * selects a fixed holding time for each item n rather than any other random choice; (ii) more interestingly, (7) explicitly characterizes the optimal holding time of each dynamic item n in terms of its popularity p n and its refresh rate &#955; n in order to strike the optimal balance between the fetching cost of a fresh update and the ageing cost of serving an old version; (iii) less interestingly, we also see that any static item is cached forever under this unconstrained setting since it is never necessary to update it once it is fetched; and (iv) it explicitly characterizes the average cache occupancy of &#964; * in terms of system parameters.</p><p>In the next section, we will build upon this foundation to return to a soft-constrained version of the problem (1).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>IV. ASYMPTOTICALLY-OPTIMAL CACHING FOR DYNAMIC CONTENT WITH CACHE CONSTRAINTS</head><p>Returning the general cost minimization problem given in (1), the instantaneous cache size constraint with B &lt; &#8734; entails a dependence between the optimizing items holding time. With such a dependence the optimization (1) suffers from the curse of dimensionality and has no tractable solution. In this section, we bypass this challenge by replacing the deterministic-constraint N n=1 X &#960; n (t) &#8804; B, at all times t, to a probabilistic-constraint where cache size limit has to be met with (arbitrarily) high probability over time. In particular let us introduce the following probabilistic version of <ref type="bibr">(6)</ref>:</p><p>for any arbitrarily small &#948; &gt; 0, where Xn (&#964; ) is the steadystate fraction of time that item n is held in the cache under policy &#964; . Such probabilistic approaches to solving deterministic problems are used increasingly frequently and fruitfully in learning and optimization domains. Solving this high-probability variation of the hard problem, in turn, provides a means to operate the original system efficiently with arbitrarily high probability. Despite its softer statistical form, solving <ref type="bibr">(10)</ref> is still complicated by the need to design with guarantees in the tail distribution of its cache use. To tackle this challenge, we, in turn, pose the following average-cache-constrained problem with a flexible choice of cache size bound B &#8712; [0, &#8734;) :</p><p>where B(&#964; ) is the average cache occupancy under the policy &#964; that is explicitly characterized in <ref type="bibr">(3)</ref>. We note that this problem is non-convex since the constraint set {&#964; : B(&#964; ) &#8804; B} is non-convex. Nevertheless, the approach in the rest of the section is to first solve the non-convex problem <ref type="bibr">(11)</ref> for any given B, and then choose a particular B as a function of the given B &lt; &#8734; and &#948; &gt; 0 in order to guarantee the probabilistic constraint in <ref type="bibr">(10)</ref>. Accordingly, we first provide the solution of (11) in the next theorem. Theorem 2: Policy &#964; * = (&#964; * n ) n &#8712; T that solves ( <ref type="formula">11</ref>) is given by deterministic &#964; * n &#8805; 0, &#8704;n, and &#945; * &#8805; 0 satisfying:</p><p>where [z] + = max(0, z), and</p><p>where D and S are, respectively, the set of dynamic and static data items defined in Theorem 1.</p><p>Proof. In the proof of Theorem 1, we showed that in order to minimize the cost, the random variable &#964; n should be a constant. Also, Lemma 2 shows that for such a constant random variable &#964; n , the Bernoulli process (X n (t)) t has a steady-state distribution whose average is given by <ref type="bibr">(5)</ref>. Therefore the assumptions to calculate the average cost and average cache occupancy given in ( <ref type="formula">2</ref>) and (3) hold and the optimization problem <ref type="bibr">(11)</ref> can be rewritten as:</p><p>This is not a convex optimization problem. However, we take the following approach to solve it. Define the feasible set F B as:</p><p>which is a non-convex set. Then the cost optimization problem ( <ref type="formula">11</ref>) can be expressed as:</p><p>For any optimization problem min &#964; &#8712;F C(&#964; ) as it is given in <ref type="bibr">[25]</ref>, if all the following hold: 1) Slater condition, 2) non degeneracy assumption for &#8704;&#964; &#8712; F , 3</p><p>Lemma 3: Optimization problem ( <ref type="formula">14</ref>) satisfies all the above four necessary conditions. Proof. (Lemma 3) Please refer to Appendix A.</p><p>Therefore, the non-trivial KKT solution to the problem ( <ref type="formula">14</ref>) would be a global minimizer. Such a solution can be expressed as:</p><p>where &#945; * &#8805; 0 and &#956; * n &#8805; 0 are the optimal Lagrange multipliers which satisfy all the following KKT conditions:</p><p>Accordingly, for dynamic data items, n &#8712; D, with &#955; n &gt; 0, we have:</p><p>while for static data items, n &#8712; S, with &#955; = 0, we have: The form of the optimal solution in ( <ref type="formula">12</ref>) reveals the interesting insights that, for dynamic content n &#8712; D: whether to cache an item depends on whether it is sufficiently popular (in particular, whether p n &#8822; &#945; * &#946;c f ); and how long a cached item will remain in the cache before eviction depends on its refresh rate &#955; n as characterized in <ref type="bibr">(12)</ref>. It can also be seen that, for the same system parameters (&#955;, &#946;, p), as the average cache limit B decreases, then the optimal &#945; * that solves ( <ref type="formula">12</ref>)-( <ref type="formula">13</ref>) will increase. Then, for both static and dynamic content, the popularity threshold &#945; * /(&#946;c f ) for caching or not caching the content increases to make sure only sufficiently popular items are cached. Now that we solved the average-cache-constrained problem <ref type="bibr">(11)</ref>, we are ready to connect it to the probabilistic problem <ref type="bibr">(10)</ref> with the following proposition.</p><p>Proposition 1: For any finite B &gt; 0 and arbitrarily small &#948; &gt; 0, there exits</p><p>&#8804; &#948; , such that the solution &#964; * (&#948;) of ( <ref type="formula">11</ref>) for B = B(&#948;) satisfies</p><p>Proof. (Proposition 1) Notice that Xn (&#964; ), &#8704;n &#8712; N are independent Bernoulli random variables. We define a new random variable Y N (&#964; ) = N n=1 Xn (&#964; ), which is the sum of N independent Bernoulli random variables and is known to have a Poisson Binomial distribution. Also using the linear property of expectation and given that E[ Xn (&#964; )] = h n (&#964; ), we have:</p><p>.</p><p>For the random variable Y N with Poisson Binomial distribution, using the Chernoff bound we have:</p><p>Then to guarantee P (Y N &#8804; B) &#8805; 1 -&#948;, we have:</p><p>Proposition 1 provides an explicit means of using the tractable problem <ref type="bibr">(11)</ref> to find efficient feasible solutions to the problem <ref type="bibr">(10)</ref>. To glean an insight on the structure of B(&#948;), suppose that m = 1 and &#948; = e -B/e , which is very small for sufficiently large B. Then, we have B(&#948;) = Be -1 .</p><p>In the next section, we will study the cost and cache occupancy performance merits of the proposed approximate optimization of (10) for large databases, which is commonly the case in content distribution networks. In particular, we will introduce the variable 0 &#8804; m(N ) &#8804; N as the number of most popular items that will remain in the cache after being fetched for the optimized holding times from <ref type="bibr">(12)</ref>. The remaining N -m(N ) items will never be cached, i.e., will only be fetched and served upon a user request and not cached. Then we will examine the cost-cache trade-off for this proposed strategy to show its desirable characteristics.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>V. COST AND CACHE SPACE PERFORMANCE ANALYSIS</head><p>To establish the performance merits or the proposed approximate solution (&#964; * , &#945; * ) given in ( <ref type="formula">12</ref>) and ( <ref type="formula">13</ref>), we contrast the operational cost and average cache occupancy of the approximate problem <ref type="bibr">(11)</ref> with its counterpart of the unconstrained problem <ref type="bibr">(6)</ref> in the asymptotic regime as the number of data items, N , grows.</p><p>We expose the dependence of the relevant quantities on N to highlight its impact on the analysis as follows. We denote the optimal cost and average cache occupancy of (6), respectively, by C * (N ) and B * (N ), whereas the cost and average cache occupancy of the proposed approximate problem <ref type="bibr">(11)</ref> are denoted by C &#945;(N ) and B &#945;(N ), where the superscript &#945; indicates the dependence of these values to the &#945; parameter that is optimized in ( <ref type="formula">12</ref>) and ( <ref type="formula">13</ref>) for a given cache bound. Here, &#945; &#8805; 0 is a flexible parameter that allows us to explore the tradeoff between the cost and the cache occupancy. Note that C * (N ) = C * (&#955;, &#946;, p) in ( <ref type="formula">8</ref>) and B * (N ) = B(&#964; * ) in ( <ref type="formula">9</ref>). In addition,</p><p>where (&#964; &#945;, &#945;) satisfies ( <ref type="formula">12</ref>) and ( <ref type="formula">13</ref>) for a given &#945; &#8805; 0 with the appropriate choice of B &#945; as the corresponding cache limit in <ref type="bibr">(10)</ref>.</p><p>As the number of data items N grows, both the set of static items, S, and/or the set of dynamic items, D, grow in size accordingly, yet at different rates with N . Nevertheless, by the definition of D in Theorem 1, we can guarantee a minimum content update rate &#955; min &gt; 0 for all the items n &#8712; D for any number of data items N . That is, &#955; min = inf n&#8712;D &#955; n &gt; 0, &#8704;n &#8712; N .</p><p>Further, for any given &#945; &#8805; 0, we define the set of popular items in the approximate problem <ref type="bibr">(11)</ref>, P &#945;, as</p><p>to contain all the items that should be held in the cache after being fetched from the back-end database since (12) implies:</p><p>It is worth noting that, if &#945; = 0, then P &#945; = N and all data items are considered popular which collapses to the case of the unconstrained cached size optimization <ref type="bibr">(6)</ref>. The last step before stating the asymptotic gains of the proposed policy is to divide the set of static items into two disjoint subsets. A subset S &#945; of static items that are popular, i.e., S &#945; = S &#8745;P &#945;, and a subset S &#945; = S -S &#945; of static unpopular items.</p><p>The following theorem jointly establishes the asymptotic optimality of the proposed approximate policy together with characterizing the cost-cache size trade off.</p><p>Theorem 3: For a given &#945; &#8805; 0, consider the policy &#964; &#945; that solves <ref type="bibr">(10)</ref> for a corresponding average cache bound B &#945; and average cost C &#945;. Let m(N ) = |P &#945;| denote the number of sufficiently popular items that will be cached under &#964; &#945; policy.</p><p>then: lim</p><p>), the rate of convergence is at least:</p><p>the average cache saving is lower bounded by:</p><p>and the average cache occupancy B&#945; (N ) is bounded by:</p><p>Proof. Without loss of generality, assume that p 1 &#8805; p 2 &#8805; &#8226; &#8226; &#8226; &#8805; p N &gt; 0. Since m(N ) = |P &#945;| and according to the definition of the set of popular items P &#945; given in ( <ref type="formula">15</ref>), we will have &#945; &#8804; &#946;c f p m(N ) for any given &#945; where p m(N ) is the probability of the m(N ) th most popular item. Using the expressions for &#964; * n and &#964; &#945; n given in ( <ref type="formula">7</ref>) and ( <ref type="formula">12</ref>) respectively, for dynamic data items we can show that:</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Since &#964; *</head><p>n &#8805; &#964; &#945; n , &#8704;n &#8712; N , applying Taylor series to average cost of the data item n will give us the following inequality:</p><p>The Lagrangian function L(&#964; &#945; n , &#945;, &#956;) of (10) takes the form:</p><p>where &#945; &#8805; 0 and &#956;n &#8805; 0, &#8704;n &#8712; {1, 2, ..., N } are Lagrange multipliers. Note that since &#964; &#945; n &gt; 0, &#8704;n &#8804; m(N ), we have that &#956;n = 0, &#8704;n &#8804; m(N ). Using the fact that &#964; &#945; n is a nontrivial KKT point for a given &#945; &#8804; &#946;c f p m(N ) and setting the derivative of Lagrangian function to zero, we have:</p><p>Apply <ref type="bibr">(17)</ref> to each popular dynamic data item n &#8712; D &#8745; P &#945;:</p><p>and apply it to each unpopular dynamic item n &#8712; D -P &#945;:</p><p>where the second inequality comes from the fact that p n (p m(N ) -p n ) &#8804; 1 4 p 2 m(N ) . For popular static items n &#8712; S &#945;, we have &#964; * n = &#964; &#945; n = &#8734; according to <ref type="bibr">(7)</ref> and ( <ref type="formula">12</ref>) respectively. Therefore, we have Cn (&#964; &#945; n ) = C * n = 0, &#8704;n &#8712; S &#8745; P &#945;. For unpopular static items n &#8712; S &#945;, &#964; * n = &#8734; according to <ref type="bibr">(7)</ref> and according to <ref type="bibr">(16)</ref> we have &#964; &#945; n = 0. This gives C * n = 0 and Cn (&#964; &#945; n ) = &#946;p n c f based on the average cost function given in <ref type="bibr">(2)</ref>. Therefore,</p><p>Thus, the total average system cost is upper-bounded as:</p><p>&#955;min . Also, for unpopular static items we have p n &#8804; p m(N ) , &#8704;n &#8712; S &#945;. Therefore we have that n&#8712;S &#945; p n &#8804; p m(N ) |S &#945;|. Finally, since we assumed that items are ordered based on their popularity and p m(N ) is the probability of m(N ) th most popular item, so p m(N ) &#8804; 1 m(N ) . This gives us:</p><p>In order to make sure that the upper bound vanishes as N increases, we need <ref type="foot">4</ref> to have m(N ) = min(&#969;( &#8730; N ), &#969;(|S &#945;|)). This proves (i). To prove (ii), note that m(N ) = min(&#969;( &#8730; N ), &#969;(|S &#945;|)) is equivalent to b &gt; min( 1 , a 2 ). Then the convergence rate of the upper bound becomes:</p><p>which demonstrates the smallest rate of convergence on the average cost. On the other hand, since m(N ) is the number of most popular items that we choose to cache while discarding all the other unpopular ones, we can show that:</p><p>where B &#945;(N ) is the average cache occupancy under the proposed strategy. On the other hand, for the unconstrained cache system, we have:</p><p>Since P &#945; -S &#8838; D and &#964; * n &#8805; &#964; &#945; n &#8805; 0, &#8704;n &#8712; N , we have that: Recall the average cache occupancy defined in (3) and note that according to <ref type="bibr">(16)</ref> for unpopular items we have &#964; &#945; n = 0, &#8704;n / &#8712; P &#945;. Also, according to Theorem 2, for static popular items we have &#964; &#945; n = &#8734;, &#8704;n &#8712; S &#945;. This gives:</p><p>where |P &#945; -S| = m(N ) -|S &#945;| &#8805; 0. Using the solution given in ( <ref type="formula">12</ref>), we have:</p><p>Now, using the fact that:</p><p>we can show that the second term in the right side of ( <ref type="formula">18</ref>) is lower-bounded by:</p><p>, where the second inequality comes from the fact that</p><p>&#955;min . Substituting the results gives the upper bound on the average cache occupancy completing part (ii) of the proof.</p><p>Theorem 3 reveals the potential of our proposed caching strategy which chooses items for caching based on their popularity and then incorporates the update rate of contents to decide how long each item should remain in the cache before eviction. Our proposed caching strategy completely discards the unpopular items, static or dynamic. More specifically, not caching the unpopular static items yields a very large gain on the cache saving side at a marginal loss on the average system cost side.</p><p>Theorem 3 shows that while the proposed strategy is asymptotically optimal for large data base sizes, it can also result in massive cache savings. This reveals that a cache size that grows with the rate of popular static items can achieve the same performance of having unconstrained cache size with the data base size being very large. As such, increasing the cache size beyond the threshold which is given as an upper bound in Theorem 3 will not reduce the average system cost for large data base sizes.</p><p>In the special scenario where the static items are unpopular for the given popularity measure &#945;, i.e., S &#8745; P &#945; = &#966;, Theorem 3 reveals that a bounded cache size of &#946;c f ca&#955;min can be asymptotically optimal and achieve the same average cost of a system with unconstrained cache size, even if the database size grows to infinity. Specifically, our proposed strategy is asymptotically optimal while massively reducing the cache occupancy to a constant cache size which does not grow with N .</p><p>Notice that the average cache occupancy for the unconstrained cache is not necessarily bounded by the order of popular static items. Not only does our proposed caching scheme achieve the same average cost of the system with unconstrained cache asymptotically but it also maintains a cache size which does not grow linearly with N . In other words, intelligently choosing the items to cache is a critical factor to optimize the average system cost in dynamic caching. If the popularity of static items is low, then caching only dynamic items considerably reduces the system's cost and attains remarkable cache space savings.</p><p>According to Theorem 3, m(N ) determines the trade off between how much cache storage is saved and how fast the cost converges to the optimal. Larger m(N ) will result in a faster convergence but a smaller cache saving gain. To make this trade-off more clear through an example, consider a set of items with Zipf(1) popularity distribution and assume &#955; = 1 100 is equal for all the dynamic items. Consider m(N ) = N b , 0 &lt; b &#8804; 1 to be the number of most popular items that will be considered for caching and also assume |S &#945;| = N 0.5 is the number of static items which are not in the popular set. According to Theorem 3, the sufficient condition for asymptotic optimality is b &gt; 1  2 . For such a choice of m(N ) we, investigate the trade-off. We adopt the percentage cost reduction of our proposed caching strategy for the constrained cache to the optimal solution derived for the unconstrained cache as our performance metric. Such metric is defined as: Cost Reduction(%) = 100 &#215; C &#945;(N ) -C * (N )</p><p>This percentage is depicted in Fig. <ref type="figure">3</ref> as a function of cache saving for different values of N . According to the figure, and as expected from Theorem 3, for any choice of m(N ) = N b with b &gt; 1 2 as N increases from 1000 to 10000, the proposed cost for the constrained cache converges to the optimal cost for an unconstrained cache size. The x-axis shows the amount of cache saving for the proposed strategy compared to the optimal average cache size for the unconstrained case. The figure illustrates that, as N increases, the cache saving also increases, while the cost of the proposed policy converges to the optimal cost. This behavior demonstrates the potential of our proposed asymptotic strategy in massive cache savings. In addition, as m(N ) increases, the rate of convergence increases at the expense of having smaller savings in the cache size, as predicted by our theoretical result. In other words, smaller m(N ) result in bigger cache saving but with a slower convergence rate in cost. This is exactly the trade-off that theorem 3 revealed for the proposed asymptotic strategy. In this work, we have proposed and investigated an increasingly important caching scenario for serving dynamically changing content. We introduced the age-of-version metric to capture the served content's freshness and track the number of stale versions per content. We have addressed the problem of developing optimal caching strategies for minimizing the system's cost which is shaped by a combination of the service cost of fetching fresh content directly from a back-end database and the aging cost of cached, potentially older, content from a front-end cache. In the scenario of constrained cache size, our analysis have revealed the interesting fact that the optimal caching strategy allocates cache space to items based solely on their popularity, while the content update rate is what determines the content holding time in the cache. Moreover, we have explored the trade-off between the cost minimization and cache savings gain of our design. In particular, not only the cost of our proposed strategy converge asymptotically to the optimal strategy as the number of data items grows, but can also reduce the cache occupancy substantially, as fully characterized by our analysis and illustrated with numerical results.</p></div><note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0"><p>Accordingly, we assume that the system evolves in continuous time.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1"><p>While this linearity assumption is meaningful as a first-order approximation to ageing cost and facilitates simpler expressions in the analysis, it can also be generalized to convex forms to extend this basic framework.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_2"><p>In practice, these parameters can be learned over time. Here, we assume their knowledge so that we can focus on their impact on the performance.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_3"><p>f (n) = &#969;(g(n)) means that for any real constant c &gt; 0, &#8707;n 0 &#8805; 1 : f (n) &gt; cg(n) &#8805; 0, &#8704;n &#8805; n 0 .</p></note>
		</body>
		</text>
</TEI>
