SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
Explorando o Paralelismo em Workflows Intensivos em
Dados com o Uso de Anotações Semânticas e
Informações sobre o Ambiente de Execução
Elaine N. Watanabe e Profa Dra Kelly R. Braghetto
Departamento de Ciência da Computação
Instituto de Matemática e Estatística
Universidade de São Paulo, São Paulo, Brasil
{elainew,kellyrb}@ime.usp.br
Escola Regional de Alto Desempenho de São Paulo - 2016
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Roteiro
1 Introdução
2 Estratégia Proposta para Paralelização
3 Experimentos e Resultados Obtidos
4 Considerações Finais
ERAD–SP 2016 2 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Workflows intensivos em dados
Objetivo
Contexto
Aplicação distribuída:
Workflows intensivos em dados
Plataforma de alto desempenho:
Nuvem
Gerenciamento de execução distribuída:
Sistema de Gerenciamento de
Workflows (SGWf)
Repositório de dados:
Bancos de dados
A
B C D
E
F
G
ERAD–SP 2016 3 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Workflows intensivos em dados
Objetivo
Objetivo
Criar um modelo para a execução paralela das atividades,
de maneira automática, a partir de:
anotações semânticas sobre o modelo do workflow
informações sobre o ambiente de execução
ERAD–SP 2016 4 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Anotações sobre o Tipo de Processamento
Anotações sobre Atributos dos Objetos de Dados
Reestruturação do workflow
Anotações sobre o Tipo de Processamento
Processamento por Objeto (PO):
indica que uma atividade processa cada objeto de dados de
entrada individualmente
Processamento por Grupo de Objetos (PG):
indica que uma atividade processa os objetos de dados de
entrada em grupos; os grupo são definidos por meio de
atributo(s) agrupador(es)
Estratégias para distribuição dos objetos de dados podem ser
aplicadas conforme as anotações sobre o tipo de processamento
ERAD–SP 2016 5 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Anotações sobre o Tipo de Processamento
Anotações sobre Atributos dos Objetos de Dados
Reestruturação do workflow
Anotações sobre Atributos dos Objetos de Dados
Seleção de Atributos (SA):
lista de atributos de um objeto de dados necessários
para uma atividade
Ordenação de Objetos (OO):
lista de atributos usados para a ordenação dos objetos de dados
As anotações sobre atributos permitem:
Definição de índices para ordenação
Seleção somente dos atributos necessários
ERAD–SP 2016 6 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Anotações sobre o Tipo de Processamento
Anotações sobre Atributos dos Objetos de Dados
Reestruturação do workflow
Reestruturação do workflow
...
... F_mF_1 F_2
E_n
G
A
B C D
E_1 E_2
ERAD–SP 2016 7 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Ambiente de Execução
Cenários avaliados
Resultados
Ambiente de execução
Total de objetos de dados manipulados: 5,8 milhões
Banco de dados Relacional: PostgreSQL
Banco de dados NoSQL: MongoDB
SGWf: Pegasus WMS
Plataforma de computação: Google Cloud
Total de execuções: 5 vezes
Nível de confiança: 95%
ERAD–SP 2016 8 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Ambiente de Execução
Cenários avaliados
Resultados
Arquitetura de um Cluster MongoDB
ERAD–SP 2016 9 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Ambiente de Execução
Cenários avaliados
Resultados
Cenários avaliados
Workflow SGBD Uso das
anotações
No
Partições
No
Réplicas
No Máq.
SGBD
No Nós
Execução
W-01 PostgreSQL Não 1 1 1 1
W-02 PostgreSQL Não 1 1 1 3
W-03∗ PostgreSQL Sim 1 1 1 3
W-04 MongoDB Não 1 1 1 1
W-05 MongoDB Não 1 1 1 3
W-06∗ MongoDB Sim 1 1 1 3
W-07 MongoDB Não 1 3 9 3
W-08∗ MongoDB Sim 1 3 9 3
W-09 MongoDB Não 3 3 15 9
W-10∗ MongoDB Sim 3 3 15 9
W-11∗ MongoDB Sim 3 3 15 9
∗
Cenário envolvendo o uso de anotações semânticas no workflow.
ERAD–SP 2016 10 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Ambiente de Execução
Cenários avaliados
Resultados
Makespan
0
1
2
3
4
5
6
7
8
9
10
W−01 W−02 W−03 W−04 W−05 W−06 W−07 W−08 W−09 W−10 W−11
Makespan(horas)
PostgreSQL(1Part−1Rp)
MongoDB(1Part−1Rp)
MongoDB(1Part−3Rp)
MongoDB(3Part−3Rp)
ERAD–SP 2016 11 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Ambiente de Execução
Cenários avaliados
Resultados
Custo monetário
0
5
10
15
20
25
30
35
W−01 W−02 W−03 W−04 W−05 W−06 W−07 W−08 W−09 W−10 W−11
Customonetário(emdólares)
PostgreSQL(1Part−1Rp)
MongoDB(1Part−1Rp)
MongoDB(1Part−3Rp)
MongoDB(3Part−3Rp)
ERAD–SP 2016 12 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Resultados
Estratégia proposta resultou em:
Redução de até 88,4% do makespan em um sistema NoSQL
Redução do makespan de até 74,4% e do custo financeiro de
até 10,35% em cenários com as mesmas configurações e
número de máquinas virtuais.
ERAD–SP 2016 13 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Trabalhos futuros
Definição de novas anotações e estratégias de paralelismo de
dados
Avaliação de outros sistemas NoSQL
Análise do impacto da leitura de réplicas de dados
Experimentos para identificar relação entre número de
partições e nós de execução
ERAD–SP 2016 14 / 16
Introdução
Estratégia Proposta para Paralelização
Experimentos e Resultados Obtidos
Considerações Finais
Muito obrigada!
elainew@ime.usp.br
Essa pesquisa foi financiada pela CAPES e pelo NAPSoL-PRP-USP.
Os autores agradecem também ao Google pelos créditos concedidos
para o uso de sua plataforma de nuvem.
ERAD–SP 2016 15 / 16
Bibliografia
Mohammad Islam et. al. Oozie: Towards a Scalable Workflow
Management System for Hadoop. Proceedings of the 1st ACM
SIGMOD Workshop on Scalable Workflow Execution Engines and
Technologie, p. 4:1–4:10, 2012.
C.L. Philip Chen and Chun-Yang Zhang. Data-intensive applications,
challenges, techniques and technologies: A survey on Big Data.
Information Sciences, v.275, p.314-347, 2014.
Douglas E. M. de Oliveira et. al. Avaliação da Localidade de Dados
Intermediários na Execução Paralela de Workflows BigData.
Proceedings of 30th Brazilian Symposium on Databases, p.29-40,
2015.
ERAD–SP 2016 16 / 16

Mais conteúdo relacionado

Semelhante a Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotações Semânticas e Informações sobre o Ambiente de Execução

Planode Aula
Planode AulaPlanode Aula
Planode Aulasofteam
 
Ambiente de recomendação de índices para bancos de dados MySQL
Ambiente de recomendação de índices para bancos de dados MySQLAmbiente de recomendação de índices para bancos de dados MySQL
Ambiente de recomendação de índices para bancos de dados MySQLEduardo Weiland
 
R: a alternativa ao SPSS e ao NVivo em software livre
R: a alternativa ao SPSS e ao NVivo em software livreR: a alternativa ao SPSS e ao NVivo em software livre
R: a alternativa ao SPSS e ao NVivo em software livreLuis Borges Gouveia
 
Análise de performance usando as estatísticas do PostgreSQL
Análise de performance usando as estatísticas do PostgreSQLAnálise de performance usando as estatísticas do PostgreSQL
Análise de performance usando as estatísticas do PostgreSQLMatheus de Oliveira
 
Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009Fabrízio Mello
 
TDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosTDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosAmbiente Livre
 
sapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdfsapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdfMarcosYamashita3
 
ERRC-2014
ERRC-2014ERRC-2014
ERRC-2014LARCC
 
Avaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebula
Avaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebulaAvaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebula
Avaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebulaLARCC
 
Sistemas distribuidos java_8
Sistemas distribuidos java_8Sistemas distribuidos java_8
Sistemas distribuidos java_8Luiz Malmonge
 
Modelagem Analítica para uso em Dados de Atividades Complementares
Modelagem Analítica para uso em Dados de Atividades ComplementaresModelagem Analítica para uso em Dados de Atividades Complementares
Modelagem Analítica para uso em Dados de Atividades ComplementaresProf. Dr. Leandro Augusto
 
Ferramentas Lean na Optimização da Linha de Prensagem
Ferramentas  Lean na Optimização da Linha de PrensagemFerramentas  Lean na Optimização da Linha de Prensagem
Ferramentas Lean na Optimização da Linha de PrensagemCLT Valuebased Services
 
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas WebUtilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas WebJoel Pinho Lucas
 
IN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).ppt
IN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).pptIN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).ppt
IN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).pptRafael Rodrigues de Souza
 

Semelhante a Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotações Semânticas e Informações sobre o Ambiente de Execução (20)

Planode Aula
Planode AulaPlanode Aula
Planode Aula
 
Ambiente de recomendação de índices para bancos de dados MySQL
Ambiente de recomendação de índices para bancos de dados MySQLAmbiente de recomendação de índices para bancos de dados MySQL
Ambiente de recomendação de índices para bancos de dados MySQL
 
R: a alternativa ao SPSS e ao NVivo em software livre
R: a alternativa ao SPSS e ao NVivo em software livreR: a alternativa ao SPSS e ao NVivo em software livre
R: a alternativa ao SPSS e ao NVivo em software livre
 
Dados espaciais em R (2020)
Dados espaciais em R (2020)Dados espaciais em R (2020)
Dados espaciais em R (2020)
 
Análise de performance usando as estatísticas do PostgreSQL
Análise de performance usando as estatísticas do PostgreSQLAnálise de performance usando as estatísticas do PostgreSQL
Análise de performance usando as estatísticas do PostgreSQL
 
Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009
 
TDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativosTDC2017 - Misturando dados com Pentaho para insights mais significativos
TDC2017 - Misturando dados com Pentaho para insights mais significativos
 
Sap Solution Manager
Sap Solution ManagerSap Solution Manager
Sap Solution Manager
 
sapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdfsapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdf
 
ERRC-2014
ERRC-2014ERRC-2014
ERRC-2014
 
Avaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebula
Avaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebulaAvaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebula
Avaliação e Comparação do Desempenho das Ferramentas OpenStack e OpenNebula
 
Gestao de tempo v4.0
Gestao de tempo v4.0Gestao de tempo v4.0
Gestao de tempo v4.0
 
Sistemas distribuidos java_8
Sistemas distribuidos java_8Sistemas distribuidos java_8
Sistemas distribuidos java_8
 
Apres pco (2)
Apres pco (2)Apres pco (2)
Apres pco (2)
 
Programação Orientada por Objectos - Aula 1
Programação Orientada por Objectos - Aula 1Programação Orientada por Objectos - Aula 1
Programação Orientada por Objectos - Aula 1
 
Modelagem Analítica para uso em Dados de Atividades Complementares
Modelagem Analítica para uso em Dados de Atividades ComplementaresModelagem Analítica para uso em Dados de Atividades Complementares
Modelagem Analítica para uso em Dados de Atividades Complementares
 
Ferramentas Lean na Optimização da Linha de Prensagem
Ferramentas  Lean na Optimização da Linha de PrensagemFerramentas  Lean na Optimização da Linha de Prensagem
Ferramentas Lean na Optimização da Linha de Prensagem
 
ERP Metodologia Implantacao
ERP Metodologia ImplantacaoERP Metodologia Implantacao
ERP Metodologia Implantacao
 
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas WebUtilizando Machine Learning e Java para classificar o conteúdo de páginas Web
Utilizando Machine Learning e Java para classificar o conteúdo de páginas Web
 
IN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).ppt
IN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).pptIN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).ppt
IN1008 Aspectos de Qualidade na Modelagem de Dados Monica Rafael (1).ppt
 

Mais de Elaine Naomi

Design de aplicações orientadas a objeto
Design de aplicações orientadas a objetoDesign de aplicações orientadas a objeto
Design de aplicações orientadas a objetoElaine Naomi
 
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a diaSobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a diaElaine Naomi
 
Hacking Evening - Liskov Substitution Principle
Hacking Evening - Liskov Substitution PrincipleHacking Evening - Liskov Substitution Principle
Hacking Evening - Liskov Substitution PrincipleElaine Naomi
 
Code Smells: o que eles dizem sobre seu código?
Code Smells: o que eles dizem sobre seu código?Code Smells: o que eles dizem sobre seu código?
Code Smells: o que eles dizem sobre seu código?Elaine Naomi
 
Guru SP: Decodificando o code review
Guru SP: Decodificando o code reviewGuru SP: Decodificando o code review
Guru SP: Decodificando o code reviewElaine Naomi
 
Bootcamp de Rails - CaquiCoders Meetup
Bootcamp de Rails - CaquiCoders MeetupBootcamp de Rails - CaquiCoders Meetup
Bootcamp de Rails - CaquiCoders MeetupElaine Naomi
 
GURU SP - Design de aplicações orientadas a objeto
GURU SP - Design de aplicações orientadas a objetoGURU SP - Design de aplicações orientadas a objeto
GURU SP - Design de aplicações orientadas a objetoElaine Naomi
 
TDC SP 2019 - Decodificando o code review
TDC SP 2019 - Decodificando o code reviewTDC SP 2019 - Decodificando o code review
TDC SP 2019 - Decodificando o code reviewElaine Naomi
 
Além da programação funcional com Elixir e Erlang
Além da programação funcional com Elixir e ErlangAlém da programação funcional com Elixir e Erlang
Além da programação funcional com Elixir e ErlangElaine Naomi
 
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?Elaine Naomi
 
Dealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginnersDealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginnersElaine Naomi
 
Um Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em DadosUm Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em DadosElaine Naomi
 
O que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidasO que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidasElaine Naomi
 
Introdução ao MongoDB
Introdução ao MongoDBIntrodução ao MongoDB
Introdução ao MongoDBElaine Naomi
 
Workflows científicos
Workflows científicosWorkflows científicos
Workflows científicosElaine Naomi
 
Algoritmos para economia de energia no escalonamento de workflows em nuvens c...
Algoritmos para economia de energia no escalonamento de workflows em nuvens c...Algoritmos para economia de energia no escalonamento de workflows em nuvens c...
Algoritmos para economia de energia no escalonamento de workflows em nuvens c...Elaine Naomi
 

Mais de Elaine Naomi (17)

Design de aplicações orientadas a objeto
Design de aplicações orientadas a objetoDesign de aplicações orientadas a objeto
Design de aplicações orientadas a objeto
 
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a diaSobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
 
Hacking Evening - Liskov Substitution Principle
Hacking Evening - Liskov Substitution PrincipleHacking Evening - Liskov Substitution Principle
Hacking Evening - Liskov Substitution Principle
 
Code Smells: o que eles dizem sobre seu código?
Code Smells: o que eles dizem sobre seu código?Code Smells: o que eles dizem sobre seu código?
Code Smells: o que eles dizem sobre seu código?
 
Guru SP: Decodificando o code review
Guru SP: Decodificando o code reviewGuru SP: Decodificando o code review
Guru SP: Decodificando o code review
 
Bootcamp de Rails - CaquiCoders Meetup
Bootcamp de Rails - CaquiCoders MeetupBootcamp de Rails - CaquiCoders Meetup
Bootcamp de Rails - CaquiCoders Meetup
 
GURU SP - Design de aplicações orientadas a objeto
GURU SP - Design de aplicações orientadas a objetoGURU SP - Design de aplicações orientadas a objeto
GURU SP - Design de aplicações orientadas a objeto
 
TDC SP 2019 - Decodificando o code review
TDC SP 2019 - Decodificando o code reviewTDC SP 2019 - Decodificando o code review
TDC SP 2019 - Decodificando o code review
 
Além da programação funcional com Elixir e Erlang
Além da programação funcional com Elixir e ErlangAlém da programação funcional com Elixir e Erlang
Além da programação funcional com Elixir e Erlang
 
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
 
Dealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginnersDealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginners
 
Um Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em DadosUm Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em Dados
 
O que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidasO que é BIG DATA e como pode influenciar nossas vidas
O que é BIG DATA e como pode influenciar nossas vidas
 
Introdução ao MongoDB
Introdução ao MongoDBIntrodução ao MongoDB
Introdução ao MongoDB
 
Workflows científicos
Workflows científicosWorkflows científicos
Workflows científicos
 
Algoritmos para economia de energia no escalonamento de workflows em nuvens c...
Algoritmos para economia de energia no escalonamento de workflows em nuvens c...Algoritmos para economia de energia no escalonamento de workflows em nuvens c...
Algoritmos para economia de energia no escalonamento de workflows em nuvens c...
 
Qt Apresentação
Qt ApresentaçãoQt Apresentação
Qt Apresentação
 

Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotações Semânticas e Informações sobre o Ambiente de Execução

  • 1. Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotações Semânticas e Informações sobre o Ambiente de Execução Elaine N. Watanabe e Profa Dra Kelly R. Braghetto Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo, São Paulo, Brasil {elainew,kellyrb}@ime.usp.br Escola Regional de Alto Desempenho de São Paulo - 2016
  • 2. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Roteiro 1 Introdução 2 Estratégia Proposta para Paralelização 3 Experimentos e Resultados Obtidos 4 Considerações Finais ERAD–SP 2016 2 / 16
  • 3. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Workflows intensivos em dados Objetivo Contexto Aplicação distribuída: Workflows intensivos em dados Plataforma de alto desempenho: Nuvem Gerenciamento de execução distribuída: Sistema de Gerenciamento de Workflows (SGWf) Repositório de dados: Bancos de dados A B C D E F G ERAD–SP 2016 3 / 16
  • 4. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Workflows intensivos em dados Objetivo Objetivo Criar um modelo para a execução paralela das atividades, de maneira automática, a partir de: anotações semânticas sobre o modelo do workflow informações sobre o ambiente de execução ERAD–SP 2016 4 / 16
  • 5. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Anotações sobre o Tipo de Processamento Anotações sobre Atributos dos Objetos de Dados Reestruturação do workflow Anotações sobre o Tipo de Processamento Processamento por Objeto (PO): indica que uma atividade processa cada objeto de dados de entrada individualmente Processamento por Grupo de Objetos (PG): indica que uma atividade processa os objetos de dados de entrada em grupos; os grupo são definidos por meio de atributo(s) agrupador(es) Estratégias para distribuição dos objetos de dados podem ser aplicadas conforme as anotações sobre o tipo de processamento ERAD–SP 2016 5 / 16
  • 6. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Anotações sobre o Tipo de Processamento Anotações sobre Atributos dos Objetos de Dados Reestruturação do workflow Anotações sobre Atributos dos Objetos de Dados Seleção de Atributos (SA): lista de atributos de um objeto de dados necessários para uma atividade Ordenação de Objetos (OO): lista de atributos usados para a ordenação dos objetos de dados As anotações sobre atributos permitem: Definição de índices para ordenação Seleção somente dos atributos necessários ERAD–SP 2016 6 / 16
  • 7. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Anotações sobre o Tipo de Processamento Anotações sobre Atributos dos Objetos de Dados Reestruturação do workflow Reestruturação do workflow ... ... F_mF_1 F_2 E_n G A B C D E_1 E_2 ERAD–SP 2016 7 / 16
  • 8. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Ambiente de Execução Cenários avaliados Resultados Ambiente de execução Total de objetos de dados manipulados: 5,8 milhões Banco de dados Relacional: PostgreSQL Banco de dados NoSQL: MongoDB SGWf: Pegasus WMS Plataforma de computação: Google Cloud Total de execuções: 5 vezes Nível de confiança: 95% ERAD–SP 2016 8 / 16
  • 9. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Ambiente de Execução Cenários avaliados Resultados Arquitetura de um Cluster MongoDB ERAD–SP 2016 9 / 16
  • 10. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Ambiente de Execução Cenários avaliados Resultados Cenários avaliados Workflow SGBD Uso das anotações No Partições No Réplicas No Máq. SGBD No Nós Execução W-01 PostgreSQL Não 1 1 1 1 W-02 PostgreSQL Não 1 1 1 3 W-03∗ PostgreSQL Sim 1 1 1 3 W-04 MongoDB Não 1 1 1 1 W-05 MongoDB Não 1 1 1 3 W-06∗ MongoDB Sim 1 1 1 3 W-07 MongoDB Não 1 3 9 3 W-08∗ MongoDB Sim 1 3 9 3 W-09 MongoDB Não 3 3 15 9 W-10∗ MongoDB Sim 3 3 15 9 W-11∗ MongoDB Sim 3 3 15 9 ∗ Cenário envolvendo o uso de anotações semânticas no workflow. ERAD–SP 2016 10 / 16
  • 11. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Ambiente de Execução Cenários avaliados Resultados Makespan 0 1 2 3 4 5 6 7 8 9 10 W−01 W−02 W−03 W−04 W−05 W−06 W−07 W−08 W−09 W−10 W−11 Makespan(horas) PostgreSQL(1Part−1Rp) MongoDB(1Part−1Rp) MongoDB(1Part−3Rp) MongoDB(3Part−3Rp) ERAD–SP 2016 11 / 16
  • 12. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Ambiente de Execução Cenários avaliados Resultados Custo monetário 0 5 10 15 20 25 30 35 W−01 W−02 W−03 W−04 W−05 W−06 W−07 W−08 W−09 W−10 W−11 Customonetário(emdólares) PostgreSQL(1Part−1Rp) MongoDB(1Part−1Rp) MongoDB(1Part−3Rp) MongoDB(3Part−3Rp) ERAD–SP 2016 12 / 16
  • 13. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Resultados Estratégia proposta resultou em: Redução de até 88,4% do makespan em um sistema NoSQL Redução do makespan de até 74,4% e do custo financeiro de até 10,35% em cenários com as mesmas configurações e número de máquinas virtuais. ERAD–SP 2016 13 / 16
  • 14. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Trabalhos futuros Definição de novas anotações e estratégias de paralelismo de dados Avaliação de outros sistemas NoSQL Análise do impacto da leitura de réplicas de dados Experimentos para identificar relação entre número de partições e nós de execução ERAD–SP 2016 14 / 16
  • 15. Introdução Estratégia Proposta para Paralelização Experimentos e Resultados Obtidos Considerações Finais Muito obrigada! elainew@ime.usp.br Essa pesquisa foi financiada pela CAPES e pelo NAPSoL-PRP-USP. Os autores agradecem também ao Google pelos créditos concedidos para o uso de sua plataforma de nuvem. ERAD–SP 2016 15 / 16
  • 16. Bibliografia Mohammad Islam et. al. Oozie: Towards a Scalable Workflow Management System for Hadoop. Proceedings of the 1st ACM SIGMOD Workshop on Scalable Workflow Execution Engines and Technologie, p. 4:1–4:10, 2012. C.L. Philip Chen and Chun-Yang Zhang. Data-intensive applications, challenges, techniques and technologies: A survey on Big Data. Information Sciences, v.275, p.314-347, 2014. Douglas E. M. de Oliveira et. al. Avaliação da Localidade de Dados Intermediários na Execução Paralela de Workflows BigData. Proceedings of 30th Brazilian Symposium on Databases, p.29-40, 2015. ERAD–SP 2016 16 / 16