<?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'>Asymptotic Miss Ratio of LRU Caching with Consistent Hashing</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>04/01/2018</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10095071</idno>
					<idno type="doi">10.1109/INFOCOM.2018.8485860</idno>
					<title level='j'>IEEE INFOCOM</title>
<idno></idno>
<biblScope unit="volume"></biblScope>
<biblScope unit="issue"></biblScope>					

					<author>Kaiyi Ji</author><author>Guocong Quan</author><author>Jian Tan</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[To efficiently scale data caching infrastructure to support emerging big data applications, many caching systems rely on consistent hashing to group a large number of servers to form a cooperative cluster. These servers are organized together according to a random hash function. They jointly provide a unified but distributed hash table to serve swift and voluminous data item requests. Different from the single least-recently-used (LRU) server that has already been extensively studied, theoretically characterizing a cluster that consists of multiple LRU servers remains yet to be explored. These servers are not simply added together; the random hashing complicates the behavior. To this end, we derive the asymptotic miss ratio of data item requests on a LRU cluster with consistent hashing. We show that these individual cache spaces on different servers can be effectively viewed as if they could be pooled together to form a single virtual LRU cache space parametrized by an appropriate cache size. This equivalence can be established rigorously under the condition that the cache sizes of the individual servers are large. For typical data caching systems this condition is common. Our theoretical framework provides a convenient abstraction that can directly apply the results from the simpler single LRU cache to the more complex LRU cluster with consistent hashing.]]></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>With the advent of cloud computing and emergence of big data, scale-out data caching systems are widely deployed and their horizontal scalability <ref type="bibr">[1]</ref> becomes increasingly important. As an effective solution, consistent hashing <ref type="bibr">[2]</ref> has been commonly used by key-value caching systems, e.g., Dynamo <ref type="bibr">[3]</ref>, Aerospike <ref type="bibr">[4]</ref>, <ref type="bibr">Memcached [5]</ref>, Redis <ref type="bibr">[6]</ref>. Using consistent hashing, a large number of servers are organized together to form a cooperative cluster. These servers jointly provide a unified but distributed hash table to serve swift and voluminous data item requests. Once a data item is hashed to one of the hosting servers, most key-value caching systems use the least-recently-used (LRU) caching algorithm, or its variations, e.g., LRU Clock <ref type="bibr">[7]</ref>, to decide which data items should be kept in its own individual cache space. These data caching systems play a critical role in optimizing the way information is delivered in Web services.</p><p>With consistent hashing, the total amount of cache spaces in the cluster can be easily expanded (scaled horizontally) through the addition of new cache servers. However, these individual cache spaces on different servers are not simply This work was supported by the National Science Foundation under Grant No. 1717060. added together to achieve an overall request miss ratio. Although LRU caching on a single server has already been extensively studied, theoretically characterizing the miss ratio of a LRU cluster organized by consistent hashing still remains an unexplored problem. One difficulty in analysis is that the data item requests are shuffled to a large number of servers according to a random hash function. This random hashing complicates the system behavior. Due to the fundamental role and predominant usage in practice, LRU caching with consistent hashing merits a deep investigation.</p><p>Characterizing the cache miss behavior of a cluster in such a complex setting not only helps resource planning but also improves the way a cache cluster is organized. To this end, we derive the asymptotic miss ratio of a LRU caching cluster with consistent hashing under the independent reference model (IRM) <ref type="bibr">[8]</ref>. Interestingly, these individual cache spaces on different servers, though isolated physically but logically connected through a hash function, can be effectively viewed as if they could be pooled together to form a single virtual LRU cache space. Interestingly, this virtual LRU cache has a equivalent cache size determined by the distribution of the random hash function. This equivalence can be established when the cache sizes of the individual servers are large. Our result provides a convenient abstraction that can rigorously relate the more complex LRU caching with consistent hashing to the relatively simpler single LRU cache. Based on this abstraction, many known results on a single LRU cache can be directly translated to a LRU cluster with consistent hashing. Specifically, we prove a characteristic time approximation, previously established for a single LRU cache, for a LRU cluster. Notably, the characteristic time approximation has the same form for almost all of the random hash functions. This result is not straightforward in view that the miss ratio of each of the server is a random variable conditional on the random hash function. However, the overall conditional asymptotic miss ratio of the cluster is always the same almost surely, depending on the probability distribution of the random hash function. Due to this equivalence, we comment that the engineering implications discussed in <ref type="bibr">[9]</ref> for a single LRU cache can also be extended to a LRU cluster.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Background</head><p>To put the analysis on a concrete basis, we first summarize the important features of consistent hashing and LRU caching.</p><p>1) Consistent hashing: Data items are usually organized in a key value pair, and the entire data are stored in the whole cluster as a distributed hash table according to keys. To Fig. <ref type="figure">1</ref>: Illustration of consistent hashing scale out the system horizontally, each server is maintained independent, e.g., by using consistent hashing <ref type="bibr">[2]</ref> to select a unique server for each key. The basic idea is to first hash the data items to a large number of partitions at random. These partitions form a ring, as illustrated in Fig. <ref type="figure">1</ref>. The physical servers, with a total number that is much smaller than the number of partitions, are also hashed to a subset of the partitions. A data item, after being hashed to a partition, will be stored on the server that is closest in the clockwise direction to its associated partition. For example, partitions A, B and C are all stored on server S 1 in Fig. <ref type="figure">1</ref>. Therefore, when the server locations are fixed, each server hosts a certain number of partitions that are determined by the hash function.</p><p>2) LRU caching: Each data item is hashed to one of the hosting servers. A cache replacement algorithm is needed to manage the cache space on an individual server. Due to the low cost of tracking access history, LRU caching algorithm has been widely used, e.g., for Memcached [5], <ref type="bibr">[10]</ref>. A data item is added to the cache after a client has requested it and failed. When the cache is full, the LRU caching algorithm evicts a data item that has not been used for the longest time in order to accommodate the newly requested one.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Contributions of this paper</head><p>(I) For a family H of hash functions under the Simple Uniform Hashing Assumption (SUHA) <ref type="bibr">[11]</ref>, we characterize the asymptotic miss ratio of data item requests on a cluster with consistent hashing. This asymptotic result, expressed as a conditional probability, holds almost surely for all random hash functions in H. It provides a new analytical framework to study LRU caching with consistent hashing by conditioning on the random hash function, which is an interesting feature that most existing asymptotic results do not have. (II) We rigorously establish a one-to-one equivalence between a cluster with consistent hashing and a single virtual LRU cache space with a proper size parametrized by the distribution of the random hash function. Conveniently, this equivalence translates the analytic results from the well-studied single server to the complex cluster with consistent hashing. Based on this equivalence, we prove the characteristic time approximation for a cluster to characterize the miss probability. (III) Extensive simulations show that our asymptotic results match with the empirical results accurately even for relatively small cache sizes.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. Related work</head><p>Consistent hashing has gained much popularity in recent years due to the increasing demand of processing large data sets on a scale-out infrastructure. It has been successfully used in a number of real-world applications, e.g., web caches <ref type="bibr">[12]</ref>, <ref type="bibr">[13]</ref>, peer-to-peer networks <ref type="bibr">[14]</ref> and distributed storage systems <ref type="bibr">[15]</ref>. Most theoretical studies on consistent hashing focus on characterizing the randomized partitioning algorithms to balance data allocation <ref type="bibr">[16]</ref>, memory sharing <ref type="bibr">[17]</ref> and perfect hashing <ref type="bibr">[18]</ref>. These algorithms are usually analyzed under SUHA. Some works circumvent this assumption using realistic hash functions through simulations <ref type="bibr">[19]</ref>, <ref type="bibr">[20]</ref>. However, none of these works investigate the miss probabilities of a cluster with consistent hashing.</p><p>There is a large body of work on the miss ratio of a single LRU server. Different methods have been proposed, e.g., approximation by iterative algorithms <ref type="bibr">[21]</ref>, mean field analysis <ref type="bibr">[22]</ref> and the characteristic time approximation <ref type="bibr">[23]</ref>, <ref type="bibr">[24]</ref>. To obtain insights, asymptotic results for Zipf's popularity distributions have been derived <ref type="bibr">[25]</ref>, <ref type="bibr">[26]</ref>, <ref type="bibr">[27]</ref>. The characteristic time approximation is also a common approach, which has been shown to be accurate in practical applications <ref type="bibr">[28]</ref>, <ref type="bibr">[29]</ref>. Its success has been supported by the analysis <ref type="bibr">[30]</ref>, <ref type="bibr">[31]</ref>. Nevertheless, these results cannot be directly extended to a cluster with consistent hashing.</p><p>Although single LRU caches have been studied in depth, characterizing the miss behavior of cache networks with general topologies remains difficult. Instead, some existing works, e.g., <ref type="bibr">[32]</ref>, <ref type="bibr">[33]</ref>, focus on offline optimization problems (e.g., content placement) in cache networks. Some specially structured cache networks (e.g., tree or line networks) have been studied <ref type="bibr">[34]</ref>, <ref type="bibr">[35]</ref> using a TTL-based eviction scheme. With consistent hashing, the cache network can be viewed as a one-hop network, which is the focus of this paper. II. MODEL DESCRIPTION Consider a cluster C with N servers {S 1 , S 2 , &#8226; &#8226; &#8226; , S N } organized by consistent hashing. Assume that the data item requests hosted on C can access an infinite number of distinct data items of unit size that are represented by a sequence</p><p>i , together with all requests that ask for d &#8226; i , are hashed to server m by the hash function H(&#8226;). Thus, a subsequence of data items, denoted by (d</p><p>To characterize the hash function H, we assume the Simple Uniform Hashing Assumption (SUHA) to facilitate the analysis. In practice, the ideal SUHA property is not feasible, and people resort to a (strongly) universal hash family <ref type="bibr">[36]</ref> or a k-independent hash family <ref type="bibr">[37]</ref> as approximations. Actually, it has been shown that 2-independent hash functions under mild conditions approximate truly random functions <ref type="bibr">[38]</ref>. Specifically, we consider a family of hash functions H = {h w (&#8226;), w = 1, 2, &#8226; &#8226; &#8226; }. Assume that, with H chosen from H uniformly at random, each data item d &#8226; i , i = 1, 2, &#8226; &#8226; &#8226; is dispatched also uniformly at random to one of the partitions.</p><p>Note that although H(&#8226;) is random, it becomes one of the deterministic hash function h w (&#8226;) once the random selection is completed. Using consistent hashing, the involved servers store the data items from mutually exclusive subsets of the partitions, as shown in Fig. <ref type="figure">1</ref>. Since the number of partitions assigned to each of the servers could be different, we can equivalently assume that each data item d &#8226; i is independently hashed to server S m , 1 &#8804; m &#8804; N with probability &#181; m by H(&#8226;). In other words, we have the following assumption.</p><p>Assume that the arrivals of the data item requests occur at time points {&#964; n , -&#8734; &lt; n &lt; +&#8734;}. Let J n be the index of the server for the request at time &#964; n . The event {J n = m} represents that the request at time &#964; n is processed on server S m . Denote by R n the requested data item at time &#964; n . Thus, the event</p><p>on server S m . In order to compute the miss ratio when the system reaches stationarity, we consider the request at time &#964; 0 . It has been shown <ref type="bibr">[26]</ref> that the miss ratio is equal to the probability that the data item requested by R 0 is not in the cache. For cluster C, define</p><p>Note that q (m) i</p><p>, i &#8805; 1 is a random sequence determined by the random hash function H. We assume that the data items</p><p>. This is a typical distribution that has been empirically observed in web pages <ref type="bibr">[39]</ref>, contentcentric network <ref type="bibr">[40]</ref>, and video systems <ref type="bibr">[41]</ref>. To simplify the analysis, this paper only considers a Zipf's distribution with &#945; &#8226; &gt; 1. For &#945; &#8226; &lt; 1, we can conduct a similar analysis based on existing results <ref type="bibr">[42]</ref>, <ref type="bibr">[43]</ref>, <ref type="bibr">[44]</ref>.</p><p>LRU is equivalent to the move-to-front (MTF) policy <ref type="bibr">[26]</ref>, <ref type="bibr">[45]</ref>, which sorts the data items in an increasing order of their last access time. When a data item is requested under MTF, it is moved to the first position of the list and all the other data items that were in front of this one increase their positions by one. Define C n to be the position of the data item requested by R n in the sorted list under MTF on the server that processes the request R n . Then, the miss probability of the requests on server S m with a cache size x m is given by P[C 0 &gt; x m J 0 = m, H], which is conditional on the random hash function H and the event that R 0 occurs on server S m , i.e., J 0 = m. Combining the miss ratios of the servers, we obtain the overall miss probability of the cluster C, conditional on H &#8712; H,</p><p>In the analysis, we assume</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>III. MAIN RESULTS</head><p>In this section, we first derive the miss ratio for each of the servers of the LRU cluster with consistent hashing conditional on the random hash function. Then, we show that these individual cache servers can be regarded as a single virtual LRU server with a proper cache size. This connection also proves the characteristic time approximation for a cluster.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Asymptotic miss ratio under random hashing</head><p>We derive the miss probabilities for the servers of the cluster by conditioning on the random hash function H. Note that H uniquely determines W m , 1 &#8804; m &#8804; N . The gamma function is given by &#915;</p><p>Theorem 1. Under the assumptions in Section II, we obtain, for all 1 &#8804; m &#8804; N , almost surely for all H, as x m &#8594; &#8734;,</p><p>which implies, almost surely for all H,</p><p>Proof. The proof is presented in Section VI-A.</p><p>This asymptotic result in (4) involves random variables W m , 1 &#8804; m &#8804; N that are determined by H. Interestingly, the overall asymptotic miss ratio of the whole cluster in (5) is independent of H since W m = 1/P[J 0 = m H]. These asymptotic results hold a.s. for all H. See Experiments in Section IV. If there is only one server in the cluster C, i.e., N = 1, Theorem 1 reproduces the results in <ref type="bibr">[25]</ref>, <ref type="bibr">[26]</ref> for a Zipf's distribution, e.g., Theorem 3 of <ref type="bibr">[26]</ref> on an asymptotic miss probability of a single LRU server. However, extending this result from a single server to a cluster is complicated. We discuss two main issues that cause the difficulty: 1) Theorem 3 of <ref type="bibr">[26]</ref> assumes a deterministic popularity distribution on a server. This condition is not satisfied in our model due to the random hash function; 2) the proofs of <ref type="bibr">[25]</ref>, <ref type="bibr">[26]</ref> cannot be used to prove the characteristic time approximation for a cluster. Because of these reasons, we use a different approach to derive the miss probability of a LRU cluster with consistent hashing, which also proves the characteristic time approximation for a cluster. Now, suppose that we have a single virtual LRU cache server of size x that serves the entire data item requests {R n }, which at the same time are also served on the cluster C. Based on Theorem 1, we establish an equivalence between the cluster C and the virtual LRU cache. Denote by P [C 0 &gt; x ] the miss probability of the virtual LRU cache conditional on H. Recall that the server S m has a cache capacity x m = b m x.</p><p>Theorem 2. Under the assumptions in Section II, we obtain, almost surely for all H,</p><p>where</p><p>Proof. The proof is presented in Section VI-B.</p><p>This theorem shows that the miss probability on the cluster C is asymptotically equal to the miss ratio of a LRU server with the cache size given by <ref type="bibr">(7)</ref>. Interestingly, as illustrated in Experiment 2, this asymptotic equivalence is accurate even when the cache size of each individual server of cluster C is relatively small. Using this connection, existing results and insights that have been established for a single server seem to be also true for a LRU cluster with consistent hashing. This could be useful for resource planning and cluster optimization.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Characteristic time approximation with consistent hashing</head><p>The characteristic time approximation <ref type="bibr">[24]</ref> has been widely used in estimating the miss ratio of a LRU server. Based on Theorem 2, we derive the characteristic time approximation for a cluster.</p><p>Theorem 1 shows that, although the miss ratio of each server is random, determined by H, the overall asymptotic miss ratio of the cluster is independent of H. This interesting result motivates us to define the characteristic time approximation for the cluster C as</p><p>where x is given by ( <ref type="formula">7</ref>) and t C is the unique solution of the equation</p><p>Theorem 3. Under the assumptions of Theorem 2, we have, almost surely for all H,</p><p>Proof. The proof is presented in Section VI-C.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>IV. SIMULATIONS</head><p>In this section, we conduct extensive simulations using C++ to verify the main results in Section III. Notably, all simulations match with our theoretical results even for relatively small cache sizes.</p><p>Experiment 1. This experiment verifies Theorem 1. Consider a cluster of 100 heterogeneous servers {S 1 , S 2 , &#8226; &#8226; &#8226; , S 100 } that have distinct cache sizes and different hashing probabilities. The server S m , 1 &#8804; m &#8804; 100 has a cache capacity x m = (1 + 0.1z m ) x with z m selected uniformly at random from [-0.5, 0.5]. Thus, x is the average cache size across all of the servers. Recall that &#181; m is the probability that a data item is hashed to server S m . Let &#181; m = </p><p>Set the total number of data items M = 10 7 , and the popularity distribution</p><p>For each x &#8712; {40, 60, 80, 100, 120, 140, 160, 180, 200}, we first simulate 10 8 requests to ensure that the entire system reaches stationary, and then 10 9 more requests to compute the empirical miss probabilities of the cluster C and the individual servers. To verify (4), we need to show that it holds for all 1 &#8804; m &#8804; 100. To visualize the results, we only plot the miss probabilities of five servers {S 11 , S 30 , S 61 , S 71 , S 96 } in Fig. <ref type="figure">2</ref>. The empirical results match well with the the theoretical results by (4) and (5) even when x is small. Experiment 2. This experiment verifies the equivalence between the cluster C and a virtual LRU cache described in Theorem 2, by using the same setting as in Experiment 1. We Fig. <ref type="figure">3:</ref> [Left] Miss ratios of the cluster C, a virtual LRU cache and the characteristic time approximation. [Right] The probability to hash a request to server S m conditional on H demonstrate the accuracy of the characteristic time approximationin, which also verifies Theorem 3. By computing <ref type="bibr">(7)</ref>, we obtain the equivalent size of the virtual LRU caching space x = 91.1784x. For the characteristic time approximation of the cluster C, we use a binary search to find the solution t C of the equation &#8734; i=1 (1-e -q &#8226; i t C ) = 91.1784x and then calculate the miss probability by <ref type="bibr">(8)</ref>. It can be shown from the left figure in Fig. <ref type="figure">3</ref> that the empirical results match well with the theoretical results for the miss probabilities of the virtual LRU caching server and the cluster C even for x = 40. In addition, the characteristic time approximation (8) provides an accurate estimation of the miss ratio of the cluster C. Experiment 3. This experiment moves beyond the assumptions of this paper and considers a realistic setting. Thus, we cannot explicitly compute the equivalent virtual cache size by Theorem 2. However, we still demonstrate an equivalence between the cluster C and a virtual cache. We set &#945; &#8226; = 0.8 and use a 2-independent hash function <ref type="bibr">[38]</ref>. For a cluster of 100 servers {S 1 , S 2 , &#8226; &#8226; &#8226; , S 100 } described in Experiment 1, we hash each server to one of 2000 partitions using the 2independent hash function h a,b (S i ) = N i = ((a &#215; i + b) mod p) mod 2000, where a, b are chosen from {1, 2, &#8226; &#8226; &#8226; , p} uniformly at random with a large prime p = 15881. Using the same hash function, each data item d &#8226; i is hashed to one of these partitions. The data items from partition k are stored on the server that has an index arg min i {N i : N i &#8805; k} if the set {i : N i &#8805; k} = &#8709; and arg min i {N i } otherwise. We set the total number of data items M = 10 4 , and the </p><p>For the virtual LRU caching space, we find the equivalent x = 70.0212x. It can be shown from Fig. <ref type="figure">4</ref> that the empirical miss ratios of the cluster C and the virtual LRU cache match very well.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>V. CONCLUSION</head><p>Driven by the trend to scale out caching systems for processing big data, LRU caching with consistent hashing has been widely deployed. We develop a theoretical framework to investigate the miss ratio of a LRU cluster for a family of hash functions satisfying the Simple Uniform Hashing Assumption (SUHA). We derive a close-form asymptotic miss probability that holds almost surely for all of the random hash functions from this family. This result also establishs a oneto-one equivalence between a LRU cluster and a single virtual LRU server. provides a convenient abstraction to understand the LRU cluster using the insights obtained from a LRU server. Based on this connection, we also prove the characteristic approximation for a cluster with consistent hashing.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>VI. PROOFS</head><p>This section contains the proofs of our main theorems.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A. Proof of Theorem 1</head><p>We rely on the following Lemma 1 to prove Theorem 1. To this end, we use Lemmas 5, 6 and 7 to study the three quantities in Lemma 1, i.e., q i /q i+1 , &#934;(&#8226;) and T (x). Specifically, we first note that the variables I (m) k , k &#8805; 1 can be regarded as the indices of data items on server S m and show that 1 &#8804; q (m)</p><p>in Lemma 5. Then, we prove that the functional relationship</p><p>and q (m)</p><p>&#8734; and Borel-Cantelli lemma, we prove that Theorem 1 holds almost surely for all H &#8712; H.</p><p>Lemma 1 is a direct consequence of Theorem 1 in <ref type="bibr">[9]</ref>. Let the data item popularity distribution on a server be (q i , i &#8805; 1). Consider the following functional relationship</p><p>Define an increasing function</p><p>with an inverse T &#8592; (x). We say that f (x) g(x) as x &#8594; &#8734; if lim sup x&#8594;&#8734; f (x)/g(x) &#8804; 1; f (x) g(x) has a complementary definition.</p><p>Proof. The proof is based on Theorem 1 in <ref type="bibr">[9]</ref>; see the technical report <ref type="bibr">[46]</ref> for the details.</p><p>We introduce some necessary definitions. Define mutually independent Bernoulli random variables {X</p><p>, which represents the number of data items hashed to server S m from (d</p><p>. We quote the Bernstein's inequality in Lemma 2, and establish the following Lemma 3 to estimate Y (m) k , which will be used to estimate</p><p>Lemma 2 (Theorem 2.8 in <ref type="bibr">[47]</ref>). For independent random variables</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>)</head><p>Lemma 3. There exist n 0 &#8712; N + and c 0 &gt; 0 such that for &#8704; n &gt; n 0 ,</p><p>Noting that E[(Z</p><p>Applying <ref type="bibr">(12)</ref> for the random variable</p><p>and using ( <ref type="formula">14</ref>) and ( <ref type="formula">15</ref>), we have, there exist n i1 &#8712; N + and v &gt; 0 such that for &#8704; n &gt; n i1 ,</p><p>In the meanwhile, applying <ref type="bibr">(12)</ref> for -Y</p><p>which, in conjunction with <ref type="bibr">(16)</ref>, implies, for n &gt; n i1</p><p>Using <ref type="bibr">(18)</ref> and a union bound, we obtain, for &#8704;n &gt; n i1</p><p>There exist n i2 and c 0 &gt; 0 such that &#8734; n exp(-x 1/3 v)dx &lt; c 0 /n 2 holds for n &gt; n i2 . Using <ref type="bibr">(19)</ref> and letting n 0 max{n i1 n i2 }, we finish the proof.</p><p>We establish the following lemma 4 to estimate q (m)</p><p>, which is used to estimate &#934;m (z) and the ratio q (m)</p><p>Proof. Define events B k {q (m)</p><p>Next, we will show that B k and C k are equivalent.</p><p>Since both q (m) i and q &#8226; i are non-increasing with respect to i, the event B k implies,</p><p>Moreover, based on the definition of</p><p>Combining ( <ref type="formula">21</ref>) and ( <ref type="formula">22</ref>) yields B k &#8838; C k . On the other side, the event</p><p>k and using a union bound, we obtain,</p><p>There exist a large integer n 1 and a constant c</p><p>which, in conjunction with <ref type="bibr">(23)</ref>, completes the proof.</p><p>We use the following Lemma 5 to estimate q (m)</p><p>The proof is straightforward by using Lemma 4. Lemma 5. For any q &gt; 0, there exists n 2 &gt; n 1 such that, for all n &gt; n 2</p><p>where the constant c 1 is the same as in Lemma 4.</p><p>Proof. Define an event D k q (m)</p><p>k , and hence the complement</p><p>Using a similar approach to Lemma 4, we obtain</p><p>and for all n &gt; n 1</p><p>which, togehter with <ref type="bibr">(23)</ref>, we obtain</p><p>which implies</p><p>Using q &#8226; k-k 1/2 +1 /q &#8226; k+ k 1/2 &#8594; 1, we finish the proof. Next, we establish the following lemma to estimate the functional relationship between</p><p>and q (m)</p><p>based on Lemma 3 and Lemma 4. Lemma 6. For p &gt; 0, there exists n 3 &gt; max{n 0 , n 1 } and c 2 &gt; 0 such that, for all n &gt; n 3 ,</p><p>where</p><p>Combining <ref type="bibr">(20)</ref> and <ref type="bibr">(27)</ref>, we obtain, for n &gt; n 1</p><p>Noting that {d</p><p>Combining <ref type="bibr">(29)</ref> and Lemma 3, we obtain, for n &gt; n 0 ,</p><p>Combining <ref type="bibr">(30)</ref> and <ref type="bibr">(31)</ref>, we have, there exist constants &#964; 1,k , &#964; 2,k satisfying lim k&#8594;&#8734; &#964; 1,k , &#964; 2,k &#8594; 1 such that, for n &gt; n 0 ,</p><p>Combining ( <ref type="formula">26</ref>) and ( <ref type="formula">28</ref>) implies, for n &gt; max{n 0 , n 1 },</p><p>where constants &#948; 1,k , &#948; 2,k &#8594; 1 as k &#8594; &#8734;. Using a union bound to ( <ref type="formula">32</ref>) and ( <ref type="formula">33</ref>), we obtain, for n &gt; max{n 0 , n 1 },</p><p>which, together with <ref type="bibr">(34)</ref>, completes the proof.</p><p>To use Lemma 1, we define</p><p>We now derive an approximation of T m (&#8226;) using Lemma 7.</p><p>On the proof, we first rewrite random variable</p><p>. For W m1 , using Lemma 4, we show that for n large enough, W m2 &#8776; c(n)  <ref type="bibr">(35)</ref> and obtain the estimation <ref type="bibr">(41)</ref>. By noting that the bound in (41) is independent of the hashing function H, unconditional on {H(d &#8226; i ), 1 &#8804; i &#8804; n}, we finish the proof. Lemma 7. For any 2 &gt; 0, there exists x 0 &gt; 0, such that for all x &#8805; x 0 ,</p><p>where c 3 is a positive constant.</p><p>Proof. For n x = x &#963; with &#963; &lt; &#945; -1 0 , we define</p><p>nx+1 , which, together with ( <ref type="formula">18</ref>) and (31), we obtain, for &gt; 0, there exists a large x 1 &gt; 0 such that for all x &gt; x 1</p><p>where</p><p>and &#957; is the same constant as in <ref type="bibr">(18)</ref>. Noting W m = 1/(W m1 + W m2 ) and using ( <ref type="formula">35</ref>) and ( <ref type="formula">37</ref>), we have</p><p>where</p><p>and I 2 is defined by replacing (1 -</p><p>x } be an event that the first n x data items are hashed to servers S m1 , . . . , S mn x . Let</p><p>= 0 otherwise. Thus, without changing the expression of T m (x), we assume 0 &lt; W m q &#8226; i &lt; 1 for all i &#8805; 1. Note that p i &#8594; W m q &#8226; i as n x &#8594; &#8734;. Then, for n x large enough and conditional on M nx , we have p i &#8764; c 1 /i &#945;&#8226; and 0 &lt; p i &lt; 1, where the constant c 1 = c &#8226; /(W m1 + (1 -)K(n x )). Similar to the derivation of Lemma 3, applying Lemma 2 to</p><p>x ) x -1/&#945;&#8226; X (m) i and using Lemma 1 in <ref type="bibr">[9]</ref>, we obtain, for &#8704; 1 &gt; 0, there exists a large x 2 such that for all x &gt; x 2 ,</p><p>where W 1-= W m1 + (1 -)K(n x ) and c 4 is a positive constant. A similar result holds for I 2 by replacing (1 -) and c 4 in <ref type="bibr">(40)</ref> with (1 + ) and c 5 , respectively. Recalling the definition <ref type="bibr">(35)</ref> and conditional on the event M nx , we have I 1 &#8804; n x , which, in conjunction with n x &lt; x &#963; and &#963; &lt; 1/&#945; &#8226; , implies that lim x&#8594;&#8734; I 1 /x 1 &#945;&#8226; = 0. Then, conditional on M nx , we have for &#8704; 2 &gt; 1 , there exists a sufficiently large x 3 such that for all x &gt; x 3 ,</p><p>which, using <ref type="bibr">(38)</ref> and <ref type="bibr">(40)</ref> and a union bound, implies that for all x &gt; x 4 max{x 1 , x 2 , x 3 },</p><p>where W 1+ = W m1 + (1 + )K(n x ) and c 3 is a positive constant related to c 4 , c 5 and &#957;. Note that 1-c 3 /n 2 on the right side of ( <ref type="formula">41</ref>) is independent of M nx and W 1+ , W 1-&#8594; W m as x &#8594; &#8734;. Thus, for x large enough, unconditional on M nx and passing 1 , &#8594; 0, we obtain <ref type="bibr">(36)</ref>. Now, we use Lemmas 1, 5, 6 and 7 to prove Theorem 1 by applying the Borel-Cantelli lemma.</p><p>Proof of Theorem 1. For the two bounds proved in Lemma 5 and Lemma 6, it is easy to verify that &#8734; n=1 (2c 1 + c 2 ) /n 2 &lt; &#8734;, which, by the Borel-Cantelli lemma, implies that, almost surely for each H &#8712; H, there exists a finite n H , such that for all n &gt; n H , we have 1 &#8804; q (m)</p><p>, where &#934;m is defined in Lemma 6. Now, note that x in Lemma 7 represents the cache size, which also takes integer values. For the bound in Lemma 7, we have &#8734; x=1 c 3 /x 2 &lt; &#8734;, which, by Borel-Cantelli lemma, implies that, almost surely for each H &#8712; H, there exists a finite x H , such that for all x &gt; x H , we have (1 -</p><p>These two facts, using Lemma 1 and passing q , p , 2 &#8594; 0, implies that, almost surely for all H,</p><p>which finishes the proof of Theorem 1.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>B. Proof of Theorem 2</head><p>Proof. By Theorem 1, the miss ratio of cluster C satisfies</p><p>which holds almost surely for all H. Noting that q &#8226; i &#8764; c &#8226; /i &#945;&#8226; and using Theorem 3 of <ref type="bibr">[26]</ref>, we can obtain</p><p>, which, in conjunction with (7), yields (6).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>C. Proof of Theorem 3</head><p>We first show that if q &#8226; i &#8764; c &#8226; /i &#945;&#8226; , then, as x &#8594; &#8734;,</p><p>The proof is presented in the technical report <ref type="bibr">[46]</ref>. Combining <ref type="bibr">(42)</ref> and Theorem 2 yields Theorem 3.</p></div></body>
		</text>
</TEI>
