SBBD 2016
Abstract: Applications that analyze large volumes of data are often modeled as interconnected activities (workflows) and executed on high-performance platforms. Data partitioning and replication can make the activities parallelizable. However, to define a model that results in an efficient use of the platform is not trivial. This work proposes semantic annotations to characterize the data processing in workflows activities, in order to automatically create strategies to parallelize the execution. In experiments with a workflow that handles 5.8 millions of data objects in a NoSQL system, the parallelism obtained from the annotations has reduced the makespan by 88.4% and the financial cost by 10.4%.
Full paper available on: http://sbbd2016.fpc.ufba.br/sbbd2016/sbbd/sbbd_s028.pdf
Uso de Anotações Semânticas para Exploração de Paralelismo em Workflows Intensivos em Dados
1. Departamento de Ciência da Computação
Instituto de Matemática e Estatística
Universidade de São Paulo
Elaine Watanabe
elainew@ime.usp.br
Kelly Braghetto
kellyrb@ime.usp.br
Uso de Anotações Semânticas para
Exploração de Paralelismo em
Workflows Intensivos em Dados
2. Motivação
Dilúvio de
Dados
Áreas científica
e de negócios
Workflows
Intensivos em
Dados
Ambientes
distribuídos
NoSQL
Sistemas de
Gerenciamento
de Workflows
Automação da
execução
Atividades são
caixas-pretas
3. Workflow Sist. Gerenc. de Workflows
Nó de Submissão
Escalonador
Nós de Execução
Repositório
de Dados
4. Nem sempre é um especialista em
computação paralela e distribuída
USUÁRIO
Define o paralelismo na descrição
do workflow
NoSQL
9. A
B C D
E
G
F
PROCESSAMENTO POR
GRUPO DE OBJETOS
(L)
Indica que a atividade processa os
objetos de entrada em grupos definidos
pelo(s) atributo(s) agrupador(es) em L
10. A
B C D
E
G
F
Indica os atributos L dos objetos de
entrada serão processados
SELEÇÃO DE
ATRIBUTOS
(L)
11. A
B C D
E
G
F
Informa que os objetos devem ser
ordenados por L
ORDENAÇÃO DE
OBJETOS
(L)
12. Modifica o workflow e o banco de
dados conforme as anotações e
informações sobre o ambienteSciWonC-Dataflow
Toolkit
13. A
B C D
...
...
G
E2
E1 En
F2 Fm
F1
PROCESSAMENTO POR
OBJETO
Criação de n réplicas da
atividade, sendo n o total
de nós de execução
14. A
B C D
...
...
G
E2
E1 En
F2 Fm
F1
PROCESSAMENTO POR
GRUPO DE OBJETO
(L)
Criação de m réplicas,
sendo m o mínimo entre o
total de grupos e o total de
nós de execução
17. Workflow avaliado
➔ 5,8 milhões de objetos de dados
➔ Identificação dos tipos de eventos em um
cluster do Google que consumiram mais
memória e CPU
Dados disponíveis em: https://git.io/vPG6w
18. A
B C D
E
G
F
ORDENAÇÃO DE OBJETOS
("id")
SELEÇÃO DE ATRIBUTOS
("event type", "memory request", "cpu request")
ORDENAÇÃO DE OBJETOS
("id")
SELEÇÃO DE ATRIBUTOS
("event type", "ratio cpu memory")
PROC. POR GRUPO DE OBJETO
("event type")
PROCESSAMENTO POR OBJETO
19. 11 cenários avaliados, centralizados
e distribuídos
Nível de confiança dos resultados: 95%
22. Tempo Total da Execução
(em horas)
* indica que o workflow foi modificado pelo método proposto
MONGODB (3P - 3Rp)
MONGODB (1P - 3Rp)
POSTGRES (1P - 1Rp)
MONGODB (1P - 1Rp)
23. Custo Monetário da Execução
(em dólares)
* indica que o workflow foi modificado pelo método proposto
MONGODB (3P - 3Rp)
MONGODB (1P - 3Rp)
POSTGRES (1P - 1Rp)
MONGODB (1P - 1Rp)
24. Redução de até 88,4% do tempo
total de execução e, em cenários com a
mesma infraestrutura, redução do custo
monetário de até 10,4%
Considerações Finais
25. Contribuições
● Método que combina anotações semânticas e
informações do ambiente de execução para aumentar, de
forma automática, o paralelismo no acesso aos dados na
execução de workflows
● Anotações que não dependem de conhecimento de
programação paralela e que melhoram o tempo e o custo
monetário da execução dos workflows
26. Muito obrigada!
Agradecimentos à CAPES e ao NAPSoL-PRP-USP pelo
financiamento a esta pesquisa e ao Google pelos créditos
concedidos para uso de sua plataforma de nuvem
Disponível em:
http://git.io/v6sTV