• Sonuç bulunamadı

BOURNEMOUTH BOYUN AĞRISI ANKETİ

6. SONUÇ ve ÖNERİLER

4.1 Introduc~ao

Sistemas de cache s~ao amplamente utilizados na WWW atual. Como vimos no captulo 2, prover bons resultados em HR e BHR s~ao objetivos desejados porem contraditorios em sua implementac~ao, devido ao per l da carga WWW. Os valores de HR e BHR obtidos pelos caches da Web s~ao resultados das escolhas feitas pelas polticas de reposic~ao, que de nem uma unica regra para classi car todos os arquivos e decidir quais ser~ao descartados.

A caracterizac~ao por classes baseadas em tamanho, apresentada no captulo 3, mostrou enormes diferencas entre as classes em termos de numero de requisic~oes, numero de bytes requisitados, concentrac~ao e localidade de refer^encias. Considerando esta diversidade na carga, di cilmente o estabelecimento de uma unica regra e su ciente para (i) alcancar

objetivos contraditorios e (ii) tratar a diversidade e a variabilidade, observados na carac-

terizac~ao das cargas, tendo em vista a preservac~ao da localidade. Em resumo, uma regra unica n~ao e su ciente para atender a objetivos divergentes. Portanto, um modelo con - guravel seria vantajoso pois permitiria aos administradores de cache adequarem o sistema as suas necessidades. Esta e a motivac~ao para a investigac~ao de alternativas.

Este captulo apresenta o modelo PART, que e um modelo desenvolvido para organizar o espaco de sistemas de cache cujos arquivos apresentem grande variabilidade nos seus tamanhos. O modelo PART e de nido e seus objetivos s~ao discutidos. O espaco de soluc~oes que o PART disp~oe e revelado atraves de um modelo de otimizac~ao. Este modelo quanti ca o impacto da variabilidade do tamanho dos arquivos no desempenho de sistemas de cache. Finalmente, o desempenho do modelo e discutido e s~ao indicadas diretrizes para escolha dos seus par^ametros.

Este captulo apresenta tambem a relac~ao matematica entre as metricas HR e BHR. Atraves desta relac~ao podemos fazer gra cos denominados \mapas de desempenho" do cache que mostram em um unico gra co o desempenho em termos de HR e BHR. Os mapas de desempenho podem ser utilizados para comparar modelos de ger^encia de espaco com

caches particionados e n~ao particionados e para orientar a busca por melhor desempenho nas metricas HR e BHR.

4.2 De nic~ao de Cache Particionado

Esta e uma proposta de organizac~ao do espaco disponvel no cache considerando a grande variabilidade no tamanho dos objetos candidatos ao armazenamento. A proposta e dividir o espaco do cache em partic~oes. Cada partic~ao e dedicada ao armazenamento de documentos cujos tamanhos pertencema um intervalo. Cada intervalo de ne uma classe de documentos. As classes s~ao em numero igual ao numero de partic~oes e cobrem todos os tamanhos possveis de documentos sem sobreposic~ao.

Formalmente, seja um cache de tamanho T dividido em n partic~oes de tamanhos T i,

1  i  n, n~ao necessariamente iguais, P

i=n i=1

T i =

T. Seja I o intervalo dos tamanhos

possveis de documentos e t j, 0

 j < n, n tamanhos (numeros inteiros) de nidos neste

intervalo tal que t j

< t

j+1 para todo 0

 j < n ?1. Alem disso, t

0 = 1. Ent~ao cada

partic~aoi, 1i<n, recebe documentos de tamanhot

d tal que t j?1 t d <t j, e a partic~ao n recebe documentos de tamanho t

d  t

n?1. As classes s~ao delimitadas pelos valores t

j,

conforme mostra a gura 4.1.

Substituic~oes de documentos s~ao feitas apenas entre documentos de uma mesma classe. Este modelo n~ao permite nem a retirada de um documento pequeno para a inserc~ao de um documento grande nem a retirada de um documento grande para a inserc~ao de um documento pequeno. Em resumo, n~ao e possvel fazer substituic~ao entre documentos de tamanhos extremos. n-1 ... 1 2 ... n 1 0 2

classe 1 classe 2 classe n

Cache Particionado

I

t t t t

Figura4.1: Partic~ao do cache e classi cac~ao dos documentos

A proposta apresentada coloca a quest~ao da ger^encia do espaco dos caches em um novo patamar de discuss~ao. Ate agora o espaco do cache foi considerado unico para todos os documentos, isto e, os documentos concorriam pelo mesmo espaco independente do seu tamanho. A utilizac~ao do espaco era de nida pela poltica de reposic~ao. A proposta de dividir o espaco em partic~oes que armazenem classes de documentos de tamanho similar

desdobra a ger^encia de espaco de caches em dois campos: a organizac~ao do espaco e a poltica de substituic~ao.

4.3 Justi cativa para o Modelo PART

4.3.1 Por que particionar por tamanho?

Vamos de nir o \estado do cache" como sendo o conjunto de documentos presentes no cache mais a lista ordenada destes documentos. A regra para ordenac~ao e dada pela poltica de reposic~ao. Por exemplo, a poltica LRU gera uma lista LRU. A poltica LFU gera uma lista (ou umheap) cuja chave de ordenac~ao e o numero de acessos a cada objeto. A lista e atualizada a cada requisic~ao. A atualizac~ao consiste na reordenac~ao da lista em caso dehit

ou na inserc~ao com possibilidade de retirada em caso de miss. Nos sistemas tradicionais, o estado do cache e alterado a uma taxa de apenas uma modi cac~ao por requisic~ao feita ao cache. Cada inserc~ao envolve no maximo uma retirada. Portanto o estado do cache muda lentamente, e quase estacionario, e a correlac~ao entre o estado do cache no passado imediato e no futuro imediato e alta.

A forma de implementac~ao da reposic~ao nos caches da Web permite a ocorr^encia de uma alterac~ao signi cativa no estado do cache, que chamaremos decache disruption, como resultado de uma unica inserc~ao. Esta alterac~ao acontece quando a chegada de um docu- mento grande implica na retirada de centenas ou milhares de documentos menores. Diante desta chegada, o estado do cache e consideravelmente alterado. O conjunto de objetos e a lista s~ao diminudos de centenas ou milhares de documentos em uma unica operac~ao cujo objetivo e abrir espaco para o objeto grande. Esta alterac~ao ocorre devido a variabilidade nos tamanhos dos documentos e ao fato de que, nestas polticas, n~ao ha nenhuma relac~ao entre o tamanho dos documentos que s~ao armazenados e o tamanho dos documentos que s~ao retirados do cache. Num regime estavel, o cache forma seu working set e as mudancas devem ser gradativas e lentas, com a menor alterac~ao possvel. A retirada em massa de documentos devido a uma unica requisic~ao e prejudicial a preservac~ao do estado do cache e a efetividade das polticas.

E importante considerar tambem a frequ^encia de ocorr^encia de documentos grandes, que pode gerar um evento de cache disruption. Considerando a distribuic~ao de Pareto com = 1:3 e media igual a 13 Kbytes para representar a cauda da distribuic~ao dos

tamanhos dos documentos, temos que 0.05% dos arquivos ter~ao tamanho igual ou maior do que 106. Se um sistema de cache atende a 200 requisic~oes por segundo ent~ao a cada

cinco segundos havera uma requisic~ao para um arquivo grande. Admitindo uma frac~ao de

hitsde 50% para esta faixa de tamanhos, teremos um evento decache disruptiona cada dez segundos. Apenas para comparac~ao, numa distribuic~ao exponencial com a mesma media a probabilidade de ocorrer uma observac~ao de valor igual ou maior do que 106 e 10?33.

O particionamento por tamanho, proposto pelo PART, elimina a possibilidade de troca entre documentos de tamanhos extremos. Isto evita duas situac~oes indesejadas: o cache disruption e a retirada de um documento muito grande (por ser o primeiro na lista de

substituic~oes) diante da chegada de um documento pequeno, liberando espaco maior do que o necessario.

Com o particionamento o estado do cache passa a ser constitudo por diversas listas de objetos, uma para cada partic~ao. No cache particionado n~ao ha um numero grande de objetos envolvidos nas substituic~oes. N~ao ha alterac~ao abrupta no estado do cache. A transic~ao lenta entre os estados do cache e fator importante para a maximizac~ao do desempenho da poltica.

Alem disso, para o cache, o tamanho e uma caracterstica intrseca do documento. Se ha uma mudanca no tamanho de um documento isto signi ca que o mesmo foi alterado e deve ser novamente requisitado ao servidor. O cache faz esta veri cac~ao de consist^encia e considera o documento desatualizado caso haja alterac~ao de tamanho. O mesmo n~ao acontece com outras caractersticas do documento como frequ^encia, por exemplo.

4.3.2 Objetivos do PART

Nas implementac~oes dos caches da WWW atual, n~ao ha nenhuma poltica que tenha como objetivo obter bom desempenho nas duas metricas, HR e BHR. Tambem n~ao ha, nas polticas conhecidas, variaveis que permitam ajustar o algoritmo para obter melhor desem- penho em termos de HR e BHR em func~ao de mudancas na carga ou das necessidades de usuarios e administradores. A pratica usual e estabelecer um limite superior de tamanho para os arquivos que podem ser armazenados no cache. Esta estrategia gera um aumento no HR e uma diminuic~ao no BHR. Para uma mudanca signi cativa de desempenho a opc~ao e a troca da poltica de substituic~ao. O modelo PART vem preencher uma lacuna na ger^encia de espaco dos caches da WWW que e exatamente a possibilidade de con gu- rar o sistema para obter bom desempenho individual em HR ou BHR ou encontrar um ponto de equilbrio no desempenho de ambas as metricas, sem precisar trocar de poltica de reposic~ao a cada ajuste.

O PART divide o espaco de soluc~oes (as possveis escolhas de objetos das polticas de reposic~ao) em grupos com potenciais diferentes para otimizar HR e BHR permitindo a explorac~ao das potencialidades dos grupos. Com a utilizac~ao do PART e possvel fazer ajustes nos para encontrar o limite de desempenho em termos de uma das metricas ou encontrar uma soluc~ao de compromisso que pode ser individual para cada cache, privile- giando o HR ou o BHR. O PART fornece a exibilidade necessaria a experimentac~ao e adequac~ao do cache a sua carga de trabalho, tornando-o com isso mais efetivo.

4.4 Caractersticas do Modelo PART

O particionamento do cache apresenta varias caractersticas que s~ao discutidas a seguir. O PART reaproxima o problema de cache na WWW do problema de cache tradicional porque elimina a variabilidade extrema dos tamanhos nas substituic~oes, permitindo apenas trocas entre objetos de tamanho similar.

Benzer Belgeler