• 沒有找到結果。

An Adaptive Approach to Data Broadcasting in Mobile Information Systems

N/A
N/A
Protected

Academic year: 2021

Share "An Adaptive Approach to Data Broadcasting in Mobile Information Systems"

Copied!
10
0
0

加載中.... (立即查看全文)

全文

(1)An Adaptive Approach to Data Broadcasting in Mobile Information Systems∗ Ye-In Chang, Shih-Ying Chiu and Jun-Hong Shen Dept. of Computer Science and Engineering National Sun Yat-Sen University Kaohsiung, Taiwan, R.O.C E-mail: changyi@cse.nsysu.edu.tw. Abstract. features of the mobile wireless computing system, making it different from the traditional wired system [5, 22]: (1) asymmetry in communications; (2) frequent disconnections; (3) power limitations; (4) screen size. In the evolving field of mobile computing, there is a growing concern to provide mobile users with timely access to large amounts of information [12, 17]. Examples of such services include weather, high-way condition, traffic directions, news and stock quotes. Each MC will retrieve data pages via wireless information channels. The wireless channels consists of two distinct sets of channels: uplink channels (clients to servers) and downlink (servers to clients) channels. In the environment under consideration, the downstream communication capacity is relatively much greater than the upstream communication capacity. Such environments are, hence, called asymmetric communication environment [2]. In such asymmetric communication environments, using push-based systems is an efficient way to disseminate a large amount of information to MCs [20, 21, 25]. The push-based system repeatedly broadcasts data stream to unspecified clients via the downlink channel, and they access the data of interest in the broadcast stream [13]. In the push-based systems, the number of mobile clients which can simultaneously listen to the downlink channel can be almost scaled. Using of push-based systems not only can save the bandwidth of the uplink channel and but also can be scaled to any number of mobile clients who listen to the publishing report. To disseminate data via broadcasting, a server constructs a broadcast program and periodically transmits data according to the program [8, 9, 18]. The motivation for that work was teletext systems [4]. In [4], Ammar and Wong, using a stochas-. Broadcast data delivery rapidly becomes the choice for disseminating information to a massive user population. The main advantage of broadcast delivery is its scalability. Acharya et al.’s Broadcast Disks is one of well-known static algorithms for efficient broadcast delivery. However, based on Acharya et al.’s algorithm, some broadcast slots may be unused, which results in the waste of bandwidth and the increase of access time. Therefore, in this paper, we propose an efficient broadcast program, the adaptive approach, which prevents the occurrence of empty slots. The basic idea of the adaptive approach is to dynamically arrange the number of slots in each chunk on a disk so that it is impossible for empty slots to occur, where a chunk is the unit for broadcast from a disk per time. From the simulation results, our adaptive approach generates a smaller number of slots in a broadcast cycle and shorter mean access time than Acharya et al.’s algorithm. (keywords: broadcast disks, broadcast schedule, mobile information systems.). 1.. Introduction. Mobile computing has become a reality due to the convergence of two technologies: the appearance of powerful portable computers and the development of fast reliable networks [5, 19]. In the mobile wireless computing environment, there are two sets of entities: servers and mobile clients (MCs) [11]. In general, servers are powerful stationary machines with database systems, and MCs are portable computing devices, e.g., palmtop or laptop computers. There are some characteristic ∗ This. research was supported in part by the National Science Council of Republic of China under Grant No. NSC-89-2218-E-110-004 and National Sun Yat-Sen University.. 1.

(2) tic Markov Decision Process (MDP) formulation, concluded that the optimal schedule for a pushbased broadcast will be periodic. In a uniform broadcast program, all the objects are broadcast once in a broadcast cycle regardless of their access frequencies, as was done in Datacycle [6]. As a result, the average access time (the time elapsed from the moment a client requests for an object to the point when the desired object is download by the client) of an object will, on average, be half the time between successive broadcasts of the data file. On the contrary, a nonuniform broadcast program favors objects with higher access frequencies. Hence, in a broadcast cycle of a nonuniform broadcast, while all objects are broadcast, some will appear more often than others. The resulting effect is that objects that are more frequently broadcast will have a shorter access time than those are less frequently broadcast [23].. popular items and de-emphasize the less popular ones. In this way, one can establish a tradeoff between access time for high-priority data and that of the low-priority items. However, based on Acharya et al.’s approach, some broadcast slots may be unused, which results in the waste of bandwidth and the increase of access time. Therefore, in this paper, we propose an efficient broadcast program, the adaptive approach, in which the case of empty slots is impossible to occur. Based on our approach, not only there is no empty slots to occur in a broadcast cycle, but also the total number of slots in a broadcast cycle is smaller than Acharya et al.’s algorithm. From our performance analysis and simulation, we show that our adaptive approach generates a smaller number of slots in one broadcast cycle and shorter mean access time than Acharya et al.’s algorithm. The rest of paper is organized as follows. In section 2, we give a brief description of Acharya et al.’s algorithm and show an example of the empty slot problem in Acharya et al.’s algorithm. In section 3, we present our adaptive approach to avoid the occurrence of empty slots. In section 4, we study the performance of our adaptive approach, and make a comparison with Acharya et al.’s algorithm. Finally, section 5 gives the conclusion.. Over the past few years, a considerable number of studies has been conducted on efficient delivery on the wireless broadcast. For the uniform broadcast in which the same data item appears once in a broadcast cycle, mobile users may query a set of dependent data items in a query, not only one data item. According to [16], prior research work of dependent data broadcast can be categorized by the following two properties: (1) the number of broadcast channels considered, single or multiple channels, and (2) the constraint of the retrieval sequence of data items in each query, ordered, or unordered queries. Several studies in [14, 20] have been made on the broadcast schedule for unordered queries on the single broadcast channel. In [10], they concentrated on the broadcast schedule for ordered queries on the single broadcast channel. In [8, 16], they have studied the issue on data broadcast for unordered queries in a multi-channel mobile environment. Research work in [15] considered data broadcast for ordered queries on the multiple channels. For nonuniform broadcast in which data items are broadcast according to the access frequency, Acharya et al. [1] proposed Broadcast Disks in a single-channel mobile environment. Chang and Yang [7] solved the empty slot problem in Acharya et al.’s Broadcast Disks. The study in [22] focused on partitioning data with skewed access patterns into multiple broadcast channels.. 2.. Background. Acharya et al. have proposed the use of a periodic dissemination architecture in the context of mobile systems. They call the architecture Broadcast Disks [1, 3]. It can construct a memory hierarchy in which the highest level contains a few items and broadcasts them with high frequency while subsequent levels contain more and more items and broadcast them with less and less frequency. The architecture imposes a Multi-disk structure on the broadcast medium in a way that allows substantial flexibility in fitting the relative broadcast frequencies of data items to the access probabilities of a client population. The broadcast is created by assigning data items to different “disks” of varying sizes and speeds, and then multiplexing the disks on the broadcast channel. Items stored on faster disks are broadcast more often than items on slower disks. Given the amount of data pages D and the number of multiple disks S, the algorithm has the following steps:. Among those strategies for efficient broadcast delivery, Acharya et al.’s Broadcast Disks [3] is one of well-known static algorithms. It constructs a broadcast program which can emphasize the most. 1. Order the pages (= D) from the hottest (the most popular) one to the coldest one. 2. Partition these ordered pages (= D) into mul2.

(3) tiple disks (= S disks), where each range contains pages with similar access probabilities. 3. Choose the relative frequency Ri of broadcast for each disk i. For example, given two disks, if we choose R1 = 3, and R2 = 2, it means that disk 1 could be broadcast three times for every two times that disk 2 is broadcast.. HOT 1 2 3 4 5 6 7 8 9 101112 131415 COLD. Disks. 1 2. 3 4 5 6. K1. K2. Chunks. 1. 2. 3 4. C1,1 C1,2. 7 8 9 101112 13 14 15. K3. 5 6. E E. C2,1 C2,2 C2,3. 7 8. 9 10 1112 13 14 15 E. E E. C3,1 C3,2 C3,3 C3,4 C3,5 C3,6. Major Cycle. 4. Partition each disk into a number of smaller units, called chunks Cij , where Cij denotes the jth chunk in disk i. First, calculate L as the LCM (Least Common Multiple) of the relative frequencies. Then, split each disk i into N Ci = L/Ri chunks, where N Ci denotes the number of chunks in disk i. In the previous example, N C1 would be 2, while N C2 would be 3.. 1. 2. 1. 3 4. 3. C1,1 C2,1. 5. 6. 7 8. 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30. 7 8. 4. 2. 5 6. 9 10 1 E E 11 12 2. C3,1 C1,2. C2,2. C3,2. C1,1 C2,3. C3,3 C1,2. 3 4 13 14 1 C2,1. C3,4 C1,1. 5 6 15 E 2 C2,2. C3,5 C1,2. E E E E C2,3. C3,6. Minor Cycle. E. : Empty Slot. Figure 1: A broadcast program with 7 empty slots based on Acharya et al.’s algorithm. 5. Create the broadcast program by interleaving the chunks of each disk in the following manner:. of a chunk every time. The number of chunks on each disk can be different, but the number of slots in each chunk on a disk is the same. That is why empty slots may occur. In our approach, we can prevent the occurrence of empty slots as we dynamically arrange the number of slots in each chunk on a disk.. 01 for i := 1 to L 02 for j := 1 to S 03 begin 04 k := ((i − 1) mod N Cj ) + 1; 05 Broadcast chunk Cj,k ; 06 end;. By observing Acharya et al.’s algorithm, we find two interesting phenomena. One is that empty slots occur when Ki mod N Ci 6= 0, where Ki is the number of pages in disk i and N Ci is the number of chunks in disk i, and the other is that the number of slots in every chunk on a disk is always the same. Let N SCij be the number of slots in the jth chunk of disk i. When Ki mod N Ci 6= 0, N SCij is always equal to dKi /N Ci e. In this case, the total number of slots in disk i willP be greater than the number of pages in disk NC i ( j=1i N SCij > Ki ) and empty slots can occur. The basic idea of the adaptive PN Ci approach is to adjust N SCij such that j=1 N SCij = Ki . Therefore, finally, the total number of slots in a major cycle will be less than or equal to the one computed from Acharya et al.’s algorithm.. Figure 1 shows an example of a broadcast program generated by Acharya et al.’s algorithm, in which several empty slots can occur. Given D = 15 and S = 3, 15 pages are sorted from the hottest one to the coldest one. Next, these 15 pages are partitioned into 3 groups according to their relative frequencies. Let Ki denote the number of pages on disk i: K1 = 2, K2 = 4, and K3 = 9. Moreover, R1 = 3, R2 = 2, and R3 = 1. Then, these disks are split into chunks according to Step 4 of the algorithm. That is, L is 6, so we have N C1 = 2, N C2 = 3, and N C3 = 6. The resulting broadcast program consists of 6 minor cycles, and has a period of 30 slots with 7 empty slots. Note that the chunks of different disks can be of different sizes, but the size of chunks in a disk is fixed. Finally, the resulting broadcast consists of 6 minor cycles (containing one chunk from each disk) which is the LCM of the relative frequencies.. 3.. Database (pages). For the previous example shown in Figure 1, since we have K2 = 4 and N C2 = 3, resulting in K2 mod N C2 6= 0, two empty slots occur in disk 2. If we let the number of slots in both chunks 2 and 3 on disk 2 be one, i.e., C22 containing page 5 and C23 containing page 6, then there will be no empty slots on disk 2, where Cij denotes the jth chunk in disk i. That is, we can prevent the occurrence of empty slots by adopting different number of slots in each chunk on a disk.. The Adaptive Approach. In the multi-disks architecture of Acharya et al.’s algorithm, each disk will spin out one unit 3.

(4) 3.1.. Assumptions. 2. Pi : the ith page in a decreasing order of demand frequency, 1 ≤ i ≤ D;. This paper focuses on wireless broadcast environment. Some assumptions should be restricted in order to make our work feasible [11]. These assumptions include:. 3. S: the number of disks; 4. Ri : the relative frequency of disk i, 1 ≤ i ≤ S;. 1. The client population and their access patterns do not change. This implies that the content and the organization of the broadcast program remains static.. 5. L: the least common multiple of Ri , 1 ≤ i ≤ S, i.e., L = LCM (R1 , R2 , ..., RS ); 6. Ki : the PS number of pages in disk i, 1 ≤ i ≤ S, and i=1 Ki = D;. 2. Data is read-only; there are no pages updated either by the clients or at the servers.. 7. N Ci : the number of chunks in disk i, and N Ci = L/Ri , 1 ≤ i ≤ S;. 3. Clients make no use of their upstream communications capability and retrieve required data items from the broadcast; they provide feedback to servers and there is no prefetching.. 8. N SCij : the number of slots in the jth chunk in disk i, 1 ≤ j ≤ N Ci , 1 ≤ i ≤ S; 9. Cij : the jth chunk in disk i, 1 ≤ i ≤ S.. 4. Clients are simple and without a great amount of memory; there is no cache scheme on the clients.. 10. Oijk : the kth slot of the jth chunk in disk i, 1 ≤ i ≤ S.. 5. When a client switches to the public channel, it can retrieve data pages immediately. The delay for hardware/software preparation to begin monitoring the broadcast channel is so short to be ignored.. The proposed algorithm is processed as follows: 1. Order the pages from the hottest (most popular) one to the coldest one. 2. Partition the list of pages into multiple disks (= S disks), provided with Ki < Ki+1 , 1 ≤ i < S, where each range contains pages with similar access probabilities.. 6. The broadcast infrastructure is reliable; each item transmitted by the server is always received correctly by each clients. 7. A query result contains only one page.. 3. Choose the relative frequency Ri of broadcast for each disk i, provided with Ri > Ri+1 , 1 ≤ i < S.. 8. The server broadcasts pages over a single channel. All clients retrieve data pages from this single channel.. 4. Partition each disk into a number of smaller units, called chunks Cij , where Cij denotes the jth chunk in disk i. First, calculate L as the LCM (Least Common Multiple) of the relative frequencies. Then, split each disk i into N Ci = L/Ri chunks, where N Ci denotes the number of chunks in disk i.. 9. The length of each page is fixed. This assumption makes the time slots of each page are equal. 10. The number of pages (Ki ) in a disk i has to be greater than or equal to the number of chunks (N Ci ) in a disk i. That is, the condition, Ki > N Ci , must be satisfied.. 3.2.. 5. Call Procedure Partition to decide the number of slots in every Cij , called N SCij , where N SCij denotes the number of slots of the jth chunk in disk i.. The Algorithm. Now, we present the proposed algorithm which partitions D pages into S broadcast disks such that no empty slot occurs. In the proposed algorithm, the following variables are used:. 6. Create the broadcast program by interleaving the chunks of each disk following the same way as Step 5 in Acharya et al.’s BD algorithm.. 1. D: the number of pages; 4.

(5) 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18. From Step 1 to Step 4, the adaptive approach decides the value of Ki , Ri , L, and N Ci . In Step 5, we calculate N SCij by processing the Partition procedure as shown in Figure 2. Note that in Acharya et al.’s algorithm, for a certain disk i, N SCij always equals dKi /N Ci e, 1 ≤ j ≤ N Ci . In the Partition procedure, if (Ki mod N Ci ) = 0, then we have N SCij = dKi /N Ci e = bKi /N Ci c, 1 ≤ j ≤ N Ci . In this case , the result of N SCij is the same as that of the Acharya et al.’s algorithm. If (Ki mod N Ci ) 6= 0, then we need to adjust N SCij to an appropriate value such that PN C i j=1 N SCij = Ki and N SCij ≥ N SCi(j+1) , 1 ≤ j < N Ci . Basically, Ki can be divided into two groups in the following ways, if bKi /N Ci c = dKi /N Ci e − 1, i.e., Ki mod N Ci 6= 0, where dKi /N Ci e = b and (Ki mod N Ci ) = a: Ki = bKi /N Ci c × N Ci + (Ki mod N Ci ) = (dKi /N Ci e − 1) × N Ci + (Ki mod N Ci ) = (b − 1) × N Ci + a = (b − 1) × a + (b − 1) × (N Ci − a) + a Pa PN C i Pa = j=1 (b − 1) + j=a+1 (b − 1) + j=1 1 Pa PN Ci = j=1 ((b − 1) + 1) + j=a+1 (b − 1) Pa PN C i = j=1 b + j=a+1 (b − 1).. Procedure P artition; begin for i := 1 to S do begin if (Ki mod N Ci = 0) then for j := 1 to N Ci do N SCij := Ki div N Ci else begin a := Ki mod N Ci ; b := d NKCi i e; for j := 1 to a do N SCij := b; for j := (a + 1) to N Ci do N SCij := b − 1; end; end; end; Figure 2: The Partition procedure. group is from the first chunk to the third chunk, while the second group is from the fourth chunk to the sixth chunk. Therefore, for j = 1 to 3, we have N SC3j = b = dK3 /N C3 e = 2; in the meanwhile, for j = 4 to 6, we have N SC3j = b − 1 = dK3 /N C3 e − 1 = 1. Finally, the resulting broadcast program consists of 6 minor cycles, and has a period of 23 slots without any empty slot. As compared with the result based on Acharya et al.’s algorithm shown in Figure 1, the size of each minor cycle in our adaptive approach is not the same and is always less than or equal to that in Acharya et al.’s algorithm, and no empty slots can occur. Obviously, as compared with Acharya et al.’s algorithm, the total number of slots in a broadcast cycle in our adaptive approach, which can be computed by summing the size of all minor cycles, is less than or the same as that in Acharya et al.’s algorithm. Therefore, the expected mean access time in our adaptive approach will also be shorter than or equal to that in Acharya et al.’s algorithm, which will also be verified by the performance study as discussed later.. Therefore, for a certain disk i, there are two possible values of N SCij , i.e., dKi /N Ci e or dKi /N Ci e − 1. That is, we can divide these N Ci chunks into two groups: one is from the first chunk to the ath chunk, and the other is from the (a + 1)th chunk to the last chunk. The number of slots in each chunk in the first group equals b, while the number of slots in the other group equals (b − 1). Therefore, there will be no empty slots in each chunk. For the same input data, S = 3 and D = 15, as shown in Figure 1, Figure 3 shows the result based on our adaptive approach, in which no empty slots occur. First, we order these 15 pages from the hottest one to the coldest one. Second, we partition these 15 pages into 3 disks and let K1 = 2, K2 = 4, and K3 = 9. Third, given R1 = 3, R2 = 2, and R3 = 1, we have L = LCM (3, 2, 1) = 6. Fourth, we figure out that N C1 = L/R1 = 2, N C2 = L/R2 = 3 and N C3 = L/R3 = 6. Fifth, we call the Partition procedure to decide the number of slots in every chunk on each disk, i.e., to decide the value of N SCij . Take disk 3 as an example, we have N C3 = d6/1e = 6 chunks. Therefore, we let a = (K3 mod N C3 ) = 9 mod 6 = 3 and partition these 6 chunks into two groups. The first. 4.. Performance Study. In this section, we study the performance of our complementary approach and make a comparison with Acharya et al.’s algorithm. Our experiments were performed on a PentiumIII 733 MHz, 128 MB of main memory, running Windows ME. 5.

(6) Database (pages). HOT 1 2 3 4 5 6 7 8 9 101112 131415 COLD. Disks. 1 2. 3 4 5 6. K1. K2. Chunks. 1. 2. S 3 4. 7 8 9 101112 13 14 15. K3. 3 4. C1,1 C1,2. Table 2: Relative frequencies (( ): LCM). 5. 6. C2,1 C2,2 C2,3. 7 8. 9 10 1112. 13. 14. 2. 1. 3 4. 3. C1,1 C2,1. 5. 6. 7. 8. 7 8. 2. 5. 9 10 1. 4. 9. 15. relative frequencies are 9, 5, and 1 for disks 1, 2, and 3, respectively. Table 2 shows examples of the relative frequencies and their LCM when ∆ = 4 and 5. Moreover, when we simulate the process of Acharya et al.’s algorithm, we need to decide the values of Ki ’s, which can be decided based on the Zipf distribution [3, 23]. The Zipf distribution is typically used to model nonuniform access patterns [3]. The Zipf distribution can be expressed (1/i)θ , 1 ≤ i ≤ M , where θ is a as pi = PM θ. 10 11 12 13 14 15 16. 6 11 12 2. C3,1 C1,2 C2,2 C3,2 C1,1 C2,3 C3,3. 17 18 19 20. 3 4 13 1. C1,2 C2,1. 21 22 23. 5 14 2. 6 15. C3,4 C1,1 C2,2 C3,5 C1,2 C2,3 C3,6. Minor Cycle. E. : Empty Slot. Figure 3: A broadcast program based on the adaptive approach. j =1. the the the the the the the. number of disks number of distinct pages to be broadcast number of pages in disk i relative frequency of disk i broadcast shape parameter Zipf factor for partition size Zipf factor for frequency of access. 4.1.. (1/j). parameter named access skew coefficient or Zipf factor and M ∈ N . Different values of θ yield different Zipf distribution. When θ = 0, we have the uniform distribution. When θ = 1, we have the highly nonuniform Zipf distribution. That is, it produces access patterns that become increasingly skewed as θ increases—the probability of accessing any page numbered i is proportional to (1/i)θ . For example, when M = 3, θ = 1, we have 3 2 6 , p2 = 11 , and p3 = 11 . Therefore, Ki in p1 = 11 Acharya et al.’s algorithm can be decided based on the Zipf -like distribution as follows [3, 23]:. Table 1: Parameters used in the simulation S D Ki Ri ∆ θ γ. ∆=5 1, 6, 11 (66) 1, 6, 11, 16 (528). C3,1 C3,2 C3,3 C3,4 C3,5 C3,6. Major Cycle. 1. ∆=4 1, 5, 9 (45) 1, 5, 9, 13 (585). (. 1. Ki = D × PS−i+1 S. The Simulation Model. The parameters used in the model are shown in Table 1. S is the number of disks in the broadcast program, and D is the number of distinct pages to be broadcast. Ki is the number of pages in disk i; therefore, the sum of Ki over P all i is equal to S D, where 1 ≤ i ≤ S (i.e., D = j =1 Ki ). Ri is the relative frequency of disk i, where 1 ≤ i ≤ S. When we simulate the process of Acharya et al.’s algorithm, we need to decide the values of Ri ’s, which can be dependent on ∆. That is, ∆ is a factor used to measure the relative frequencies of broadcast of each disk. Using ∆, the frequency of broadcast Ri of each disk i, can be computed relative to RS , the broadcast frequency of the slowest disk (disk S) as follows [3, 23]: Ri RS = (S − i)∆ + 1, and RS = 1, 1 ≤ i ≤ S. When ∆ is zero, the broadcast is flat: all disks spin at the same speed. As ∆ is increased, the speed differentials among the disks increase. For example, for a 3-disk broadcast, when ∆ = 4, the. j =1. )θ. (1/j)θ. .. Here, K1 has the fewest pages, K2 has the next fewest pages, and KS has the most number of pages. When we consider the demand frequency of data access for page i (denoted by DF Pi ), we also apply the Zipf distribution with a Zipf factor γ. Here, we partition the pages into regions (= number of disks) of Ki pages each, where 1 ≤ i ≤ S, and we assume that the probability of accessing any page within a region is uniform; that is, the Zipf distribution is applied to these regions [3]. Therefore, we model the demand frequency of access of the ith disk (DF Di ) using the Zipf distribution as follows: γ DF Di = PS(1/i) γ , j=1. (1/j). where γ is the Zipf factor of the Zipf distribution. In this case, the first disk (K1 ), which has the least number of records, is the most frequently accessed, the second disk (K2 ) is next, and so 6.

(7) on. Since each page w in disk i has the same demand frequency DF Pw , we have DF Pw = DF Pi , i ≤ i ≤ S. Two performance measures are considered in this comparison:. Similar to the Acharya et al.’s algorithm, T S in the adaptive algorithm can be calculated by summing the total number of slots in each minor cycle, that is: PL T S = m=1 M Sm PL PS = m=1 ( p=1 N SCp,q ), where q = ((m − 1) mod N Cp ) + 1. For instance, for the example shown in Figure 3, the total number of a broadcast cycle is: P6 T S = m=1 M Sm = M S1 +M S2 +M S3 +M S4 +M S5 +M S6 =5+4+4+4+3+3 = 23.. 1. The total number of slots in one broadcast cycle. 2. The mean access time (or the expected time delay) which equals multiply the probability of access for each page i (DF Pi ) with the expected delay for that page (EDPi ) and sum the results, where EDPi denotes the average expected delay time for page i in disk k with the relative frequency = Rk .. 4.2.. We can find that in the adaptive approach, the size of each minor cycle is either equal to or less than that of Acharya et al.’s algorithm. Obviously, T S in the adaptive approach is always less than or equal to that in Acharya et al.’s algorithm. The mean access time (denoted by AccessT ) is calculated by multiplying the probability of access for each page a (DF Pa ) with the expected delay for that page (EDPa ) and summing the results. PD That is, AccessT = a=1 EDPa × DF Pa . For each page a, we let Oijk to represent the page arranged in the kth slot of the jth chunk in the ith disk. For instance, for the example shown in Figure 3, page 6 is in the first slot of the third chunk in the second disk, so we use O231 to denote it. Page Oijk will occur Ri times in a major cycle 0 and occur respectively in the (j + LCM Ri × Z) th m minor cycle, where 0 ≤ Z ≤ (Ri − 1). Let MOijk represent the minor cycle where the mth occurrence of page Oijk and it can be computed as follows. MOmijk = j + LCM Ri × (m − 1) .. Performance Analysis. For the total number of slots (denoted by T S) in one broadcast cycle, it can be computed by summing the total number of slots in each minor cycle (denoted by M Sm , the mth minor cycle ). There are L minor cycles in a major cycle. Let the size of a minor cycle be denoted by M Sm , 1 ≤ m ≤ L. Based on the Acharya et al.’s algorithm, the size each minor cycle is the same, Pof S i.e., M Sm = i=1 N Si , 1 ≤ m ≤ L, where N Si denotes the number of slots in a chunk of disk i, 1 ≤ i ≤ S. Therefore, PL T S = m=1 M Sm PL P S = m=1 i=1 N Si PS = L × i=1 N Si . However, in the adaptive algorithm, the size of each minor cycle is different and can be computed as follows. PS M Sm = p=1 N SCp,q , where q = ((m − 1) mod N Cp ) + 1, 1 ≤ p ≤ S, 1 ≤ m ≤ L.. For instance, for the example shown in Figure 3, page O231 occurs two times in a major cycle. First, it occurs in the MO1 231 th minor cycle. Then, it occurs in the MO2 231 th minor cycle, where MO1 231 = 3 + 26 × (1 − 1) = 3, and MO2 111 = 3 + 62 × (2 − 1) = 6. Let SNOmijk represent the corresponding sequence number of the mth occurrence of page Oijk . PMOm −1 Pi−1 M Sp + p=1 N SCp,q + k, SNOmijk = p=1ijk where q = ((MOmijk − 1) mod N Cp ) + 1. For instance, for the example shown in Figure 3, the two corresponding sequence numbers of page O231 are:. For instance, for the example shown in Figure 3, the number of slots in the first minor cycle is different from that in the second minor cycle. For the first minor P3cycle: M S1 = p=1 N SCp,q = N SC1,1 + N SC2,1 + N SC3,1 = 1+2+2 = 5. For the second P3minor cycle: M S2 = p=1 N SCp,q = N SC1,2 + N SC2,2 + N SC3,2 =1+1+2 = 4.. 7.

(8) P3−1 P2−1 SNO1 231 = p=1 M Sp + p=1 N SCp,q + k = (M S1 + M S2 ) + N SC1,1 + 1 = (5 + 4) + 1 + 1 = 11. P6−1 P2−1 SNO2 231 = p=1 M Sp + p=1 N SCp,q + k = (M S1 + M S2 + M S3 + M S4 + M S5 ) +N SC1,2 + 1 = (5 + 4 + 4 + 4 + 3) + 1 + 1 = 22.. Table 3: The parameters and their default settings P arameter S D ∆ θ γ. Let SPOnijk denote the nth distance between the same page Oijk in a major cycle and it can be computed as follows. When n 6= Ri , SPOnijk =. Table 4: ∆ = 4, Ri = (S − i) × 4 + 1, 1 ≤ i ≤ S S 3 4. (n+1). i = TS− SNOijk −SNOnijk . When n = Ri , SPORijk i SNORijk + SNO1 ijk . Finally, we have EDPOijk PR k = (1/T S) × m=1 ((SPOmijk − 0.5)+ m (SPOijk − 1 − 0.5) + ...+ (SPOmijk − (SPOmijk − 1) − 0.5)) P Rk = (1/T S) × m=1 (SPOmijk 2 /2) PRk −1 = (1/T S) × ( m=1 ((SNOm+1 − SNOmijk )2 /2)+ ijk. Adaptive 40144 53874. BD 40203 54991. T W S of BD 59 1117. M ax. T W S 115 2016. obviously, the total number of slots in the adaptive approach is less than that in Acharya et al.’s algorithm. When ∆ = 4 and 5, the detailed simulation results about the total number of slots in one broadcast cycle in the adaptive approach and Acharya et al.’s algorithm for 1000 executions are shown in Tables 4 and 5, respectively, where Adaptive denotes the adaptive approach, BD denotes the Acharya et al.’s broadcast disk approach, T W S of BD denotes the total number of wasted slots in Acharya et al.’s broadcast disk approach, and M ax. T W S denotes the maximum number of wasted slots in Acharya et al.’s broadcast disk approach. From the results, we show that our adaptive approach always generates a smaller number of slots than Acharya et al.’s algorithm. As ∆ is increased, the total number of slots is increased in both the adaptive approach and Acharya et al.’s algorithm. As S is increased, the total number of slots and the percentage of the total number of wasted slots are also increased in both the adaptive approach and Acharya et al.’s algorithm. When S = 4 and ∆ = 4, up to 2016 slots are empty among 54991 slots in Acharya et al.’s algorithm. (Note that as shown in Table 2, when ∆ = 4, it has the maximum value of LCM among the cases of ∆ = 4 and 5, since each Ri can not be divided by each other. But considering the results shown in Tables 4 and 5, a test sample with the maximum LCM (∆ = 4) does not generate the maximum number of slots in one broadcast cycle; the maximum number of slots in one broadcast cycle occurs in the case of ∆ = 5.) A comparison of the mean access time (in terms. i + SNO1 ijk )2 /2). (T S − SNORijk. Take page O231 (page 6) as an example, we have EDPO231 P2−1 = (1/23) × (( m=1 (SNOm+1 − SNOm231 )2 /2)+ 231 2 1 2 (23 − SNO231 + SNO231 ) /2) = (1/23) × ((SNO2 231 − SNO1 231 )2 /2+ (23 − SNO2 231 + SNO1 231 )2 /2) = (1/23) × ((22 − 11)2 /2 + (23 − 22 + 11)2 /2) = (1/23) × (102 /2 + 122 /2) = 1/23) × (100/2 + 144/2) = 5.304.. 4.3.. Def ault value 3..4 10000..11000 4..5 0.8 0.9. Simulation Results. In this simulation, we let θ = 0.8, γ = 0.9. We consider 12 test samples which include the combinations of S = 3 and 4 and ∆ = 4 and 5, respectively, for a fixed D that is a random value between 10000 and 11000 to assure that Ki ≥ N Ci . For each test sample, we compute the average result for 1000 values of D. The parameters and their default settings are shown in Table 3. The total number of slots in a major cycle equals summing the total number of slots in each minor cycle. In the Acharya et al.’s algorithm, cycle equals M S PSeach minor PS the size of i e). However, in the (= i=1 N Si = i=1 d Ki ×R L adaptive algorithm, the size of each minor cycle either equals M S or is less than M S. Therefore, 8.

(9) simulation, we have shown that our adaptive approach generates a smaller number of slots in one broadcast cycle and shorter mean access time than Acharya et al.’s algorithm. In an environment where different clients may listen to different number of broadcast channels, the schedules on different broadcast channels should be coordinated so as to minimize the access time for most clients [24]. Therefore, how to design efficient broadcast programs for the case of broadcasting over multiple channels is one of the possible future research directions.. Table 5: ∆ = 5, Ri = (S − i) × 5 + 1, 1 ≤ i ≤ S S 3 4. Adaptive 47555 64716. BD 47644 65705. T W S of BD 88 988. M ax. T W S 179 1750. Table 6: A comparison of the mean access time: Adaptive vs. BD S 3 4. Adaptive ∆=4 ∆=5 2536.971 2888.545 2010.891 2311.529. BD ∆=4 ∆=5 2540.726 2893.961 2052.620 2346.846. References [1] S. Acharya, M. Franklin, S. Zdonik, and R. Alonso, “Broadcast Disks: Data Management for Asymmetric Communications Environments,” Proc. of ACM SIGMOD Int. Conf. on Management of Data, pp. 199–210, 1995.. of the time units) in the Acharya et al.’s algorithm and the adaptive approach for 1000 executions is shown in Table 6. From this result, we show that the mean access time in our adaptive approach is always smaller than or equal to that in Acharya et al.’s algorithm. As S is increased, the access time is decreased in both the adaptive approach and Acharya et al.’s algorithm. As ∆ is increased, the access time is increased in both the adaptive approach and Acharya et al.’s algorithm. When S = 4 and ∆ = 4, our adaptive approach can save 42 time units as compared with Acharya et al.’s algorithm. When S = 4 and ∆ = 5, our adaptive approach can save 35 time unit as compared with Acharya et al.’s algorithm.. 5.. [2] S. Acharya, M. Franklin, and S. Zdonik, “Dissemination-Based Data Delivery Using Broadcast Disks,” Personal Comm., Vol. 2, No. 6, pp. 50–60, Dec. 1995. [3] S. Acharya, M. Franklin, and S. Zdonik, “Prefetching from a Broadcast Disk,” Proc. of the 12th IEEE Int. Conf. on Data Eng., pp. 276–285, 1996. [4] M. H. Ammar and J. W. Wong, “On the Optimality of Cyclic Transmission in Teletext Systems,” IEEE Trans. on Communications, Vol. 35, No. 1, pp. 68–73, Jan. 1987.. Conclusion. [5] D. Barbara, “Mobile Computing and Database—A Survey,” IEEE Trans. on Knowledge and Data Eng., Vol. 11, No. 1, pp. 108–117, 1999.. Acharya et al. have proposed the use of a periodic dissemination architecture in the context of mobile systems, called Broadcast Disks. This strategy can construct a memory hierarchy in which the highest level contains a few items and broadcasts them with high frequency while subsequent levels contain more and more items and broadcast them with less and less frequency. In this way, one can establish a trade-off between access time for high-priority data and that of the low-priority items. However, based on Acharya et al.’s approach, some broadcast slots may be unused, which results in the waste of bandwidth and the increase of access time. In this paper, we have presented an adaptive approach to prevent the occurrence of the empty slots. Although there is a constraint, Ki ≥ N Ci , the proposed approach guarantees no empty slots, which can save bandwidth. From our performance analysis and. [6] T. F. Bowen, G. Gopal, G. Herman, T. Hickey, K. C. Lee, W. H. Mansfield, J. Raitz and A. Weinrib, “The Datacycle Architecture,” CACM, Vol. 35, No. 12, pp. 71–81, Dec. 1992. [7] Y. I. Chang and C. N. Yang, “A Complementary Approach to Data Broadcasting in Mobile Information Systems,” Data and Knowledge Eng., Vol. 40, No. 2, pp. 181–194, Feb. 2002. [8] Y. I. Chang and S. Y. Chiu, “A Hybrid Approach to Query Sets Broadcasting Scheduling for Multiple Channels in Mobile Information Systems,” Journal of Information Science and Eng., Vol. 18, No. 5, pp. 641–666, Sept. 2002. 9.

(10) [9] Y. I. Chang and W. H. Hsieh, “An Efficient Scheduling Method for Query-Setbased Broadcasting in Mobile Environments,” Proc. of IEEE the 2nd Int. Workshop on Mobile Distributed Computing, pp. 478–483, 2004.. Replication over Multiple Broadcast Channels in Wireless Environments,” IEEE Trans. on Knowledge and Data Eng., Vol. 17, No. 3, pp. 311–325, March 2005. [19] J. Juran, A. R. Hurson, N. Yijaykrishnan and S. Kim, “Data Organization and Retrieval on Parallel Air Channels: Performance and Energy Issues,” Wireless Networks, Vol. 10, No. 2, pp. 183–195, March 2004.. [10] Y. C. Chehadeh, A. R. Hurson and M. Kavehrad, “Object Organization on a Single Broadcast Channel in the Mobile Computing Enviorment,” Multimedia Tools and Applications, Vol. 9, No. 1, pp. 69–94, July 1999. [11] C. C. Chen, “Compression-based Broadcast Data for Reducing Access Time in Wireless Environment,” Proc. of 1999 National Computer Symp., Vol. 3, pp. 539–546, 1999.. [20] G. Lee and S. C. Lo, “Broadcast Data Allocation for Efficient Access of Multiple Data Items in Mobile Environments,” Mobile Networks and Applications, Vol. 8, No. 4, pp. 365– 375, Aug. 2003.. [12] M. S. Chen, K. L. Wu and P. S. Yu, “Optimizing Index Allocation for Sequential Data Broadcasting in Wireless Mobile Computing,” IEEE Trans. on Knowledge and Data Eng., Vol. 15, No. 1, pp. 161–173, Jan./Feb. 2003.. [21] S. C. Lo and A. L. P. Chen, “An Adaptive Access Method for Broadcast Data Under an Error-Prone Mobile Environment,” IEEE Trans. on Knowledge and Data Eng., Vol. 12, No. 4, pp. 609–620, July/Aug. 2000.. [13] Y. D. Chung and M. H. Kim, “QEM: A Scheduling Method for Wireless Broadcast Data,” Proc. of the 6th Int. Conf. on Database Systems for Advanced Applications, pp. 135– 142, 1999.. [22] W. C. Peng, J. L. Huang, and M. S. Chen, “Dynamic Leveling: Adaptive Data Broadcasting in a Mobile Computing Environment,” Mobile Networks and Applications, Vol. 8, No. 4, pp. 355–364, Aug. 2003.. [14] Y. D. Chung, S. H. Bang and M. H. Kim, “An Efficient Broadcast Data Clustering Method for Multipoint Queries in Wireless Information Systems,” The Journal of Systems and Software, Vol. 64, No. 3, pp. 173–181, Dec. 2002.. [23] K. L. Tan, J. X. Yu, and P. K. Enk, “Supporting Range Queries in a Wireless Environment with Nonuniform Broadcast,” Data and Knowledge Eng., Vol. 29, No. 2, pp. 201–221, Feb. 1999.. [15] J. L. Huang, M. S. Chen and W. C. Peng, “Broadcasting Denpendent Data for Ordered Queries Without Replication in a MultiChannel Mobile Environment,” Proc. of the 19th Int. Conf. on Data Eng., pp. 692–693, 2003.. [24] N. H. Vaidya and S. Hameed, “Scheduling Data Broadcast in Asymmetric Communication Environments,” Wireless Networks, Vol. 5, No. 3, pp. 171–182, May 1999. [25] X. Yang and A. Bouguettaya, “Adaptive Data Access in Broadcast-Based Wireless Enivornments,” IEEE Trans. on Knowledge and Data Eng., Vol. 17, No. 3, pp. 326–338, March 2005.. [16] J. L. Huang and M. S. Chen, “Dependent Data Broadcasting for Unordered Queries in a Multiple Channel Mobile Evironment,” IEEE Trans. on Knowledge and Data Eng., Vol. 16, No. 9, pp. 1143–1156, Sept. 2004. [17] T. Imielinski and S. Viswanathan, and B.R. Badrinath, “Data on Air: Organization and Access,” IEEE Trans. on Knowledge and Data Eng., Vol. 9, No. 3, pp. 353–371, May/June, 1997. [18] S. Jung, B. Lee and S. Pramanik, “A TreeStructured Index Allocation Method with 10.

(11)

參考文獻

相關文件

In this paper, we evaluate whether adaptive penalty selection procedure proposed in Shen and Ye (2002) leads to a consistent model selector or just reduce the overfitting of

Other advantages of our ProjPSO algorithm over current methods are (1) our experience is that the time required to generate the optimal design is gen- erally a lot faster than many

Students are asked to collect information (including materials from books, pamphlet from Environmental Protection Department...etc.) of the possible effects of pollution on our

Table 3 Numerical results for Cadzow, FIHT, PGD, DRI and our proposed pMAP on the noisy signal recovery experiment, including iterations (Iter), CPU time in seconds (Time), root of

The Method of Shared Concern: A Positive Approach to Bullying in Schools.. Victoria:

The Method of Shared Concern: A Positive Approach to Bullying in Schools3. Victoria:

January/Kindergarten%20space.html.. More than one way: An approach to teaching that supports playful learning. Project Zero: A Pedagogy of Play working paper .Retrieved

Data larger than memory but smaller than disk Design algorithms so that disk access is less frequent An example (Yu et al., 2010): a decomposition method to load a block at a time