quinta-feira, 6 de setembro de 2012

Redes sociais e sistemas distribuídos

Existe alguma correlação entre estes dois assuntos: redes sociais e sistemas distribuídos?
Eis uma questão interessante.
Alguém se arrisca a comentar e discutir?

5 comentários:

  1. Este comentário foi removido pelo autor.

    ResponderExcluir
  2. Concordo com você Amarildo,visto o anuncio do Facebook algum tempo atrás de um novo datacenter na Carolina do Norte. As redes sociais dispõe de um S.O distribuido que trabalha concomitamente em diversos datacenters em diferentes lugares.

    ResponderExcluir
  3. Dos comentários anteriores, podemos extrair que:
    - os sistemas que suportam as redes sociais devem dispor de uma grande capacidade de processamento para atender o grande número de usuários que as utilizam e, principalmente, as situações de pico;
    - as arquiteturas mais prováveis para esta situação seriam aquelas oferecidas por sistemas distribuídos: clusters de processamento, grades de computadores ou sistemas de computação em nuvem.

    Alguém poderia comprovar ou contestar isto com fatos reais relacionados ao Facebook, Twitter, LinkedIn, Orkut, etc?

    ResponderExcluir
  4. O Facebook é a rede que detém a maior fatia do mercado de publicidade direta, correspondente a 64,69% dos investimentos nas redes sociais. Tal porcentagem é muito maior do que às correspondentes a outras redes sociais famosas, como o LinkedIn, que possui apenas 0,4%, e o Twitter, com 1,11%,
    praticamente empatado com o MySpace (1,10%).
    A Teoria de Grafos é muito utilizada pois:
    - Alta capacidade representacional
    - Simplicidade
    - Fácil Visualização
    Redes Sociais se Utilizam, geralmente, de ligações
    NÃO DIRECIONAIS Isto se reflete no sistema de adição de contatos ao seu perfil. Se as ligações fossem do tipo direcionais poderia acontecer de um perfil A ter um perfil B adicionado a seu perfil, mas a recíproca não ser necessariamente válida (como ocorre no Twitter - follow). Um sistema distribuído que se preze deve possuir certas características, dentre as quais podemos destacar:
    Escalabilidade;
    Abertura;
    Concorrência;
    Transparência;
    O termo escalabilidade, para um sistema distribuído, indica quanto é a habilidade de manipular uma porção crescente de trabalho de forma uniforme que este sistema possui, ou o quão preparado este está para crescer Em sistemas distribuídos, abertura é a capacidade que o sistema possui de interagir com outros serviços de outros sistemas abertos, sendo, no mínimo, independente da heterogeneidade do ambiente, como hardware, linguagens, etc.
    As operações que as redes sociais ofereciam há alguns anos eram limitadas a colocar fotos, adicionar amigos, entrar num grupo de amigos ou deixar comentários. Hoje, no facebook, por exemplo, podemos integrar o twitter ou as entradas do blogspot. Também podemos integrar os favoritos do youtube no twitter, e por consequência no facebook.
    A execução concorrente é uma característica intrínseca de um sistema distribuído, em que os processos disputam pelos recursos compartilhados, o que requer certa sincronização.
    Em redes sociais, é de extrema importância preocupar-se com a concorrência de recursos, visto que milhares de pessoas podem estar acessando o web site ao mesmo tempo.
    Em sistemas distribuídos, existem vários tipos de transparências, dentre as quais podemos destacar: de acesso (esconde diferenças na representação dos dados e em como um recurso), de localização (esconde onde um recurso se localiza), migração (esconde o fato de que um recurso pode se mover para outro local), persistência (esconde se um recurso está na memória ou em disco) etc.
    É fácil ver que a característica de transparência se faz presente nas redes sociais. De fato, essa característica encontra-se na Internet: ela nos da a impressão de que tudo é um único sistema.

    ResponderExcluir
  5. "9.5% de todo o tráfego da Internet passa pelos servidores do Facebook, maior que o trafego de dados passado pelo Google. O Facebook tem mais de 690 milhões de pageviews por mês. São adicionados mais de 100 milhões de fotos pelos usuários do Facebook todos os dias. Os usuários do Facebook compartilham mais de 30 bilhões de informações ou pedaços de conteúdo por mês."

    Agora imaginem se em datas comemorativas como o Natal ou Ano Novo por exemplo, todos os usuários do facebook resolvam felicitar os amigos e a maior parte deles ao mesmo tempo... Neste caso, é preciso estar preparado para uma carga de mensagens superior ao de costume diário, ou então apenas os primeiros usuários teriam suas mensagens publicadas e os demais não... Não sei atualmente pois não tenho mais conta no Twitter, mas no início era frequente a mensagem de excesso de carga, isso antes de ser possível integrar as postagens com outras redes sociais. Alguem sabe dizer se ficou pior com essa integração das postagens, ou se melhorou?

    Em todo caso, devido ao grande número de usuários, sistemas robustos são necessários para suportar a demanda de acessos e dados que são transferidos todos os dias. Dessa maneira, acabam contribuindo com a criação e aperfeiçoamento de novas tecnologias para armazenamento e controle de dados em sistemas distribuídos.

    ResponderExcluir