• Nenhum resultado encontrado

Nesta seção descrevemos os resultados obtidos nas execuções com os arcabouços de pro- cessamento de big data Hadoop e Spark.

Antes de descrevermos os resultados obtidos na comparação das execuções entre o Hadoop e o Spark, primeiro iremos descrever as aplicações utilizadas dentro desses ar- cabouços de processamento de big data. A primeira é a aplicação de cálculo do Pi. A aplicação estima o valor do Pi utilizando o método quasi-Monte Carlo. Alguns pontos são gerados de maneira randômica em um quadrado com um círculo dentro. Então, os pontos de dentro e fora do círculo são contados e os cálculos necessários para o cálculo do Pi são realizados [1].

A segunda é a aplicação de contagem de palavras (word count ). A aplicação analisa um arquivo de texto e conta com qual frequência uma determinada palavra aparece no texto. O arquivo é quebrado em outros arquivos menores pelo nó mestre (VM Master ) que são enviados para os nós clientes (VMs Workers) realizarem a análise e devolverem a quantidade de palavras contadas ao nó mestre (VM Master ).

Outra aplicação utilizada para validar o nosso modelo foi a aplicação de ranqueamento de páginas (Page rank ). O algoritmo de ranqueamento de páginas (Page rank ) fornece uma distribuição de probabilidade usada para representar a probabilidade de uma pessoa clicar aleatoriamente em links e chegar a uma determinada página [24]. Essa aplicação é desenvolvida para ser executada utilizando os recursos de análise adotados pelo Spark, por isso não a comparamos com o Hadoop.

O cálculo do Pi no arcabouço de processamento de big data Hadoop levou aproxima- damente 12 segundos para ser concluído. O nó mestre (VM Master ) dividiu o processo em 50 maps, cada map contendo 1000 pontos.

Já no arcabouço de processamento de big data Spark, o cálculo do Pi levou aproxima- damente 13 segundos para ser concluído. A quantidade de maps e o número de pontos por map são os mesmos da execução com o Hadoop.

Para a aplicação de contagem de palavras (word count ) nós utilizamos arquivos de texto simples, no formato txt, nos tamanhos 5, 10, 25, 50 e 100 gigabytes (Gbs).

Antes que os arquivos possam ser analisados pelo Hadoop e pelo Spark, primeiro eles precisam ser copiados para o sistema de arquivos distribuído do Hadoop (HDFS ). Essa cópia demanda um certo tempo, quanto maior o arquivo, maior o tempo necessário para ser copiado para o HDFS.

A Tabela 7.4 exibe os tempos médios aproximados (em minutos) para realizar a cópia dos arquivos para o HDFS. Os tempos computados foram para arquivos de tamanhos 5, 10, 25, 50 e 100 Gbs. A nuvem privada mostrou um desempenho ligeiramente melhor (um minuto) para realizar a cópia para o HDFS de arquivos pequenos, entre 5 e 10 Gb. No entanto, a nuvem híbrida (que possui mais recursos computacionais) obteve melhor desempenho ao copiar os arquivos de 25, 50 e 100 Gbs para o HDFS.

Após os arquivos terem sido completamente transferidos para o HDFS, as aplicações Hadoop e Spark passam a ter acesso aos dados para serem analisados. A Tabela 7.5 exibe os resultados aproximados (em minutos) para as execuções da aplicação de contagem de

Tabela 7.4: Tempos médios de cópia (aproximado) dos arquivos para o HDFS (em minutos).

Ambiente Tamanho do arquivo (Gbs)

5 10 25 50 100

Nuvem Privada 2 6 20 41 77 Nuvem Híbrida 3 7 17 36 60

palavras (word count ) no Hadoop e no Spark.

A primeira linha da Tabela 7.5 exibe os tempos médios aproximados (em minutos) para as execuções dos arquivos de 5, 10, 25, 50 e 100 Gbs na aplicação de contagem de palavras com o Hadoop, no cenário onde somente as máquinas virtuais localizadas na nuvem privada foram utilizadas para as execuções da análise.

A segunda linha da Tabela 7.5 fornece os tempos médios aproximados (em minutos) para as execuções dos mesmos arquivos na aplicação de contagem de palavras com o Hadoop, porém agora no cenário de nuvem híbrida. A máquina virtual do nó mestre (VM Master ), que é responsável pela gerência dos clusters criados no Hadoop permanece na nuvem privada. A Figura 7.2 exibe o gráfico de execução comparando o Hadoop com o Spark para esse cenário com intervalo de confiança de 90%.

A terceira linha da Tabela 7.5 exibe os tempos médios aproximados (em minutos) para as execuções dos arquivos de 5, 10, 25, 50 e 100 Gbs na aplicação de contagem de palavras com o Spark, no cenário onde somente as máquinas virtuais do cluster localizadas na nuvem privada foram utilizadas para as execuções das análises.

A quarta linha da Tabela 7.5 fornece os tempos médios aproximados (em minutos) para as execuções dos mesmos arquivos na aplicação de contagem de palavras com o Spark no cenário de nuvem híbrida. No entanto, a versão do Spark, utilizada no nosso trabalho, não permite combinar recursos provenientes de diferentes faixas de IPs para um mesmo cluster. A máquina virtual do nó mestre (Master ) possui dois IPs de faixas diferentes, um proveniente da rede virtual da nuvem privada e outro proveniente da rede virtual da nuvem pública. Com isso, nós configuramos o cluster da nuvem híbrida contendo somente a máquina virtual do nó mestre (VM Master ) na nuvem privada e os nós clientes (VMs Workers) localizados na nuvem pública. A Figura 7.2 exibe o gráfico de execução comparando o Hadoop com o Spark para esse cenário com intervalo de confiança de 90%. Após as rodadas de execuções, o desempenho da aplicação de contagem de palavras word count se mostrou melhor quando executada pelo Hadoop na plataforma de nuvem híbrida, como podemos observar na Figura 7.2.

Tabela 7.5: Tempos médio de execução (aproximados) da aplicação de contagem de palavras (word count ) para Hadoop e Spark (em minutos).

Ambiente Tamanho do arquivo (Gb)

5 10 25 50 100

Nuvem Privada (Hadoop) 47 115 262 570 1381 Nuvem Híbrida (Hadoop) 19 37 91 183 380

Nuvem Privada (Spark ) 25 45 109 213 431 Nuvem Híbrida (Spark ) 19 36 89 207 391

0 50 100 150 200 250 300 350 400 0 10 20 30 40 50 60 70 80 90 100

Execution time (minutes)

File size (Gb)

Spark Hadoop

Figura 7.2: Tempos médios de execução da aplicação de contagem de palavras word count no Hadoop e no Spark na nuvem híbrida.

A Figura 7.3 exibe os tempos médios das execuções da aplicação de ranqueamento de páginas (Page rank ) com intervalo de confiança de 90%. Novamente nesse cenário, a aplicação de ranqueamento de página do Spark utiliza uma máquina virtual como nó mestre (VM Master ) na nuvem privada e as máquinas virtuais com os nós clientes (VMs Workers) estão localizados na nuvem pública, formando o cluster na nuvem híbrida.

0 100 200 300 400 500 600 700 0 10 20 30 40 50 60 70 80 90 100

Execution time (minutes)

File size (Gb)

Figura 7.3: Tempos de execução da aplicação de Page Rank no Spark.

Documentos relacionados