|
gildot |
|
| |
| Google Clustering - Quantidade melhor que Qualidad | | | | Contribuído por BladeRunner em 22-05-03 10:39 do departamento googlanços | | | | | | | Killer Tomato escreve "Um bom exemplo de que quantidade pode ser melhor do que qualidade. Transcrevendo - "Amenable to extensive parallelization, Google’s web search application lets different queries run on different processors and, by partitioning the overall index, also lets a single query use multiple processors. To handle this workload, Google’s architecture features clusters of more than 15,000 commodity class pcs with fault-tolerant software. This architecture achieves superior performance at a fraction of the cost of a system built from fewer, but more expensive, high-end servers. " É so ver em PHPEverywhere. É um pdf muito interessante." | | | | | | < Entrevista com o pai da Ethernet | A influência dos télélés nos hábitos sociais > | | gildot Login | | | Referências | | |
Esta discussão foi arquivada. Não se pode acrescentar nenhum comentário. | | | O primeiro comentário que faço é o seguinte: Onde é que eles metem 15 mil PCs ? Ok, eles estão distribuídos geograficamente, mas mesmo assim tratam-se de cerca de mil máquinas por site, o que não deixa de ser muita máquina. Eu acho estranho no PDF não haver uma comparação de custos com os Blades, que julgo serem as peças de hardware mais apropriadas para estes cenários, visto que reduzem o espaço necessário. Cumps, Miguel Albano If Spam was Money...then I'd be filthy Rich... But I'm not, so why try to sell me anything ?!? |
| | | | | Blade ou tower é uma questão de como montas no server. A questão de fundo do artigo é mais que tipo de processadores e que arquitectura de software + sistema montar. Tal como eles dizem no artigo, a aplicação deles é extremamente paralelizável. Isto é, não te interessa muito saber o que eu procuro no google, e não me interessa muito saber o que tu procuras no Google, interessa-nos é que as nossas buscas sejam rápidas. Ora o que eles dizem é que para a aplicação deles é mais barato utilizar uma arquitectura que emule (eles de facto têm racks como é óbvio - isso vem descrito no artigo) muitos pcs interligados do que ter "meia dúzia" de servers muito grandes. Isto porque o que eles gastam é capacidade de processamento e os servidores grandes são caros e em termos de capacidade de processamenteo desactualizam-se depressa. Também referem que podem aplicar esta aproximação porque a fiabilidade do sistema deles é suportada por software e não por hardware. O artigo é muito interessante para quem queira preceber como é que o Google funciona em termos de sistemas (não os algoritmos utilizados para fazer as buscas). -Sab "Um mundo melhor é deixado como um exercício para o leitor, Paul Graham" |
| | | | A questão de fundo do artigo é mais que tipo de processadores e que arquitectura de software + sistema montar. Cumprimentos Mario Valente |
| | | | Uma coisa que não é conhecida em relação ao google é que o hardware é custom, inclusivé a motherboard é desenhada por eles. Isto permite-lhes optimizar as máquinas para serem substituídas rapidamente. O melhor exemplo que tenho é o facto de as fontes de alimentação estarem seguras com velcro, de forma a facilitar a substituição... |
| | | | Eh entao verdade que eles nao se dao ao trabalho de arranjar avarias e simplesmente jogam fora as maquinas com problemas? |
| | | | O segundo comentário tem a ver com esta expressão tão usada como Clustering. Ora, se não estou em erro, um Cluster é um conjunto de máquinas interligadas entre si com a principal função de garantirem Availability. Geralmente partilha uma unidade de Storage, de forma a que quando uma das máquinas vai abaixo a outra possa assumir rapidamente as suas funções. Podem estar ambas activas, e neste caso funcionam igualmente como uma Farm. Agora, uma Farm, que se baseia sempre em conceitos de Load Balacing, é um conjunto de máquinas, todas elas independentes, que podem ou não partilhar uma storage comum, mas cujo objectivo é aumentar de forma significante a performance, já que duas máquinas com um processador são sempre mais rápidas que uma só máquina com dois processadores. Cumps, Miguel Albano If Spam was Money...then I'd be filthy Rich... But I'm not, so why try to sell me anything ?!? |
| | | | | AFAIK, existe ainda um outro tipo de Clusters que são usados para processamento distribuido.. e que necessitam de um ponto central de storage para guardar resultados. A noção que tenho é que há clusters "fail-over" (os que descreves) e clusters para processamento...
Of course, I could be wrong... |
| | | | Claro...existem várias formas de se usar um Cluster, o que acontece é que a definição de um Cluster não muda. Não deixam de ser máquinas ligadas entre si, o que já não acontece numa Farm, onde geralmente é um equipamento destinado a Load Balacing que efectua a escolha do nó. Agora, também se pode usar um conjunto de máquinas para processamento sem que seja efectivamente um Cluster...poderá ser apenas uma Farm. Miguel Albano If Spam was Money...then I'd be filthy Rich... But I'm not, so why try to sell me anything ?!? |
| | | | Onde e' que foste buscar a ideia que duas maquinas UP sao sempre mais rapidas que uma maquina DP ? o problema da frase e' o "sao sempre". que como e' obvio.. nao sao.. basta ver a performance de uma aplicacao com threads. ou de aplicacoes com partilha de dados.. e' que dois CPUs a partilhar um BUS de .. digamos .. (por baixo) 1GB/sec sao sempre mais rapidos a comunicar do que dois CPUs a partilhar uma rede tcp/ip c/ placas GIGABIT... para ja' nao falar.. de que sai mais barato comprar um dual athlon do que comprar DOIS athlon + placas gigabit. tu tens clusters nao pk duas maquinas sao mais rapidas que uma com dois cpus.. mas porque maquinas com MUITOS cpus sao muito mais caras que MUITAS maquinas normais, e a diferenc,a de prec,o e' maior que a diferenc,a de performance. :) mas naturalmente um sistema multi processador e' mais rapido que varios sistemas uni-processadores interligados.. visto que os interfaces de comunicacao dentro de uma maquina so' sao sempre mais rapidos que os interfaces de comunicac,ao entre varias maquinas. Alias, se isto nao fosse verdade.. porque raio e' que a SGI, IBM, SUN, HP, entre outros andavam a perder tempo e dinheiro a fazer servidores com dezenas de processadores?!? clustering e' uma maneira de fazeres super computacao mais barata... porque o melhor mesmo era sistemas com MUITOS cpus... Quanto, 'a definicao de cluster vs farm, como se caracterizam coisas como BeoWolfs, sistemas Mosix, etc? sao sistemas de clusters.. ou sao farms? sempre ouvi falar(sempre li) beowolf cluster, openmosix cluster, e nao beowolf farm, openmosix farm. alem disso... epa.. isto e' uma cena que sai no IEEE, considero-a uma fonte fiavel, onde viste essa definicao de farm vs cluster ?
Miguel F. M. de Sousa Filipe handle: m3thos More Human than Human. |
| | | | clustering e' uma maneira de fazeres super computacao mais barata... porque o melhor mesmo era sistemas com MUITOS cpus... Se te resolve o problema a um custo menor, então a solução é melhor. Os sistemas multiprocessador oferecem melhor interligação entre CPU à custo por CPU muito superior. Se a performance do software não estiver muito dependente da interligação entre CPUs, um cluster é a melhor solução porque ter permite resolver mais depressa o teu problema com o dinheiro que podes gastar. Se não for o caso, é melhor gastares o dinheiro noutra arquitectura.. Remember to be the Killer, not the Victim! (Nuklear Girl) |
| | | | | | Ah! A liberdade da informação! |
| |
|