uso de map reduce no processamento de joins sobre dados ... · utilizam a localiza˘c~ao obtida por...
TRANSCRIPT
Uso de Map Reduce no Processamento de Joins SobreDados Espaciais em Arvores R-Tree Distribuıdas
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues
Instituto de Informatica – Universidade Federal de Goias (UFG)Goiania – GO – Brazil
{thborges,vsacramento}@gmail.com
August 3, 2009
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 1 / 19
LBS (Location Based Services)
“Servicos Baseados em Localizacao sao servicosque levam em consideracao a localizacao do usuariopara entregar, de forma interativa, informacoes com
valor agregado ao mesmo” 1
Utilizam a localizacao obtida por GPS, triangulacaoAgrega informacao a localizacao
Seguranca, TransitoProximidade de amigosMeios de locomocaoAnuncios de produtos, servicos
Entrega esta informacao ao usuario1Mohapatra, D. e Suma, S. Survey of location based wireless services. ICPWC 2005.
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 2 / 19
Previsoes Gartner
Gartner Says Enterprise Mobile PhonesWill Replace Desktop Phones in NorthAmerica by 2011 2
“Enterprises in North America will be supporting more mobile phonesthan desktop phones by 2011, according to Gartner, Inc. Gartneranalysts said that although most users will still also have a desktopphone, mobile phones will become more prevalent and replace desktopvoice hardware to become the primary device.”
2Gartner, Fevereiro/2009. www.gartner.com/it/page.jsp?id=874012Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 3 / 19
Previsoes Gartner
Gartner’s eight mobile technologies towatch in 2009 and 2010 3
Location sensing: “...in the future, location will be a keycomponent of contextual applications. Location sensing will alsoenhance systems, such as mobile presence and mobile socialnetworking. ... Organizations delivering business or consumerapplications should explore the potential of location sensing; however,exploiting it may create new privacy and security challenges.”
3Gartner, Janeiro/2009. www.gartner.com/it/page.jsp?id=867012Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 4 / 19
Previsoes Gartner
Next big wave of mobile apps will be LBS:Gartner analyst 4
“Customers will be able to search for stores within a 40 mile radius oftheir current location, salesmen will be able to search for nearbypotential clients and access their past buying habits and retailers willbe able to offer Web-based specials to nearby consumers, all viamobile.”
4Mobile Marketer, Agosto/2008.www.mobilemarketer.com/cms/news/research/1490.html
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 5 / 19
Classes de Aplicacoes LBS
Emergencia medica
Acidente de automoveis
Rastreamento de criancas
Seguranca pessoal
Assistencia em rodovias
Rastreamento de ativos
Rastreamento de veıculos
Amigos proximos
Localizador de restaurantes proximos
Busca de produtos nas proximidades
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 6 / 19
Exemplo de Aplicacao LBS
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 7 / 19
Desafios para Aplicacoes LBS
Precisao do GPS depende da quantidade de satelitesvisıveis
Privacidade e Seguranca
Notificacoes em momentos indesejados
Respostas em tempo real para o usuario
Processamento de grande quantidade deinformacoes
Atender a uma grande quantidade de usuarios
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 8 / 19
Objetivo
Midleware para auxiliar a construcaodessas aplicacoes LBSUtilizando:
R-TreesJoins EspaciaisMap-Reduce
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 9 / 19
R-Tree
Proposta em 1984 por Antonin Guttman
Estrutura de dados semelhante a arvore B+
Para indexar dados geoespaciaisVarias variantes propostas na literatura
R*-TreeR0-TreeSD-RTree
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 10 / 19
R-Tree
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 11 / 19
Joins Espaciais
Combinacao de entradas de dois conjuntos de objetosgeoespaciais (R , S)
J = {(r , s) | r ∈ R , s ∈ S , r ∩ s 6= ∅}O que podem conter os conjuntos R e S :
Areas de Preservacao Ambiental e AnimaisAnuncios Geoespaciais e UsuariosParques de determinada CidadeLocalizacao de Pessoas X Rede Social = Amigosproximos
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 12 / 19
Joins e Paralelismo
Join e uma operacao nao linear, complexa
Paralelizar e uma boa solucao!
Como dividir o processamento?Dividir o espaco mapeado
Bom para arquiteturas shared-disk, shared-memCusto de comunicacao altoRuim para arquitetura distribuıda
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 13 / 19
Map-Reduce
Modelo de Programacao para grandes conjuntos dedados
Automatiza a execucao distribuıda de algoritmos
Qualquer algoritmo? Nao!
Somente os que podem ser escritos com funcoesMap/Reduce
As mesmas funcoes de Linguagem Funcionais, masdistribuıdas
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 14 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
Dados armazenados localmente ou no HDFS, no formato Key/Value
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
Ha uma classe que entende o formato de armazenamento: Reader
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
Ela alimenta um Spliter, que ira dividir o problema
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
Com base nas chaves (Ano), o problema e divido em dois
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
Os dados chegam no Reduce agrupados pela Chave (Ano)
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
E feita a operacao em cada um deles (Maior temperatura)
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Exemplo de MapReduce: Temperatura Maxima no Ano
Key Value
Ano Temp
2007 10
2007 11
2007 10
2008 15
2008 16
2008 15.5
8>>>>>>>>>>>>>>>>>>>>><>>>>>>>>>>>>>>>>>>>>>:
9>>>>>>>>>>>>>>>>>>>>>=>>>>>>>>>>>>>>>>>>>>>;
TemperatureReader
Map
Key Value
2007 10
2007 11
2007 10
Key Value
2008 15
2008 16
2008 15.5
Reduce
[2007, (10,11,10)]
[2008, (15,16,15.5)]
Key Value
2007 11
2008 16
TemperatureWriter
A resposta e calculada e pode ser armazenada pelo Writer
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 15 / 19
Processamento de Joins com Map-Reduce
Dividir a R-Tree por nos, na construcao/atualizacao
Cada no vai para um computador
Fator de replicacao: Cada no esta em mais de umcomputador
Balanceador leva nos co-localizados de arvoresdiferentes para um mesmo computador
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 16 / 19
Exemplo de Join com Map-Reduce
1 2
3 4 5 6
7 8 9 10 11 12 13 14
1 2
3 4 5 6
7 8 9 10 11 12 13 14
Join Nıvel 0
2 12 2
Join Nıvel 1
5 66 65 4
Join Nıvel 2
11 913 1312 1011 1014 13
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 17 / 19
Exemplo de Join com Map-Reduce
1 2
3 4 5 6
7 8 9 10 11 12 13 14
1 2
3 4 5 6
7 8 9 10 11 12 13 14
Join Nıvel 0
2 12 2
Join Nıvel 1
5 66 65 4
Join Nıvel 2
11 913 1312 1011 1014 13
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 17 / 19
Exemplo de Join com Map-Reduce
1 2
3 4 5 6
7 8 9 10 11 12 13 14
1 2
3 4 5 6
7 8 9 10 11 12 13 14
Join Nıvel 0
2 12 2
Join Nıvel 1
5 66 65 4
Join Nıvel 2
11 913 1312 1011 1014 13
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 17 / 19
Exemplo de Join com Map-Reduce
1 2
3 4 5 6
7 8 9 10 11 12 13 14
1 2
3 4 5 6
7 8 9 10 11 12 13 14
Join Nıvel 0
2 12 2
Join Nıvel 1
5 66 65 4
Join Nıvel 2
11 913 1312 1011 1014 13
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 17 / 19
Conclusao
Extensa revisao da literatura
Cenario escolhido implica em distribuicao
Divisao a cada join nao e possıvel devido a TempoReal
Aprofundar pesquisa e definir metodo de Replicacaopara Balanceamento de Carga
Implementar R-Tree distribuıda
Implementar Map-Reduce em Hadoop
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 18 / 19
Duvidas?
Uso de Map Reduce no Processamento de Joins SobreDados Espaciais em Arvores R-Tree Distribuıdas
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues
Instituto de Informatica – Universidade Federal de Goias (UFG)Goiania – GO – Brazil
{thborges,vsacramento}@gmail.com
August 3, 2009
Thiago Borges de OliveiraVagner Jose do Sacramento Rodrigues (Instituto de Informatica – Universidade Federal de Goias (UFG) Goiania – GO – Brazil {thborges,vsacramento}@gmail.com )Uso de Map Reduce no Processamento de Joins Sobre Dados Espaciais em Arvores R-Tree DistribuıdasAugust 3, 2009 19 / 19