Escola de Verão LNCC 2015 Jornada Ciência de...

18
2/5/15 1 Escola de Verão LNCC 2015 Jornada Ciência de Dados Fabio Porto ([email protected] ) LNCC – CCC - DEXL Lab http://dexl.lncc.br Gerência de Grandes Volumes de Dados– Parte II Parte III Como Usar !! Fábio Porto Introdução O processamento de grandes volumes de dados foi “recentemente” formulado como um problema de paralelismo. paralelismo de dados (processos embarassadamente paralelizáveis) tipico representante: modelo Map-Reduce sistemas de banco de dados paralelos Fábio Porto Jornada Ciência de Dados Estratégias Baseada em Busca Google é o grande ator Foco principal em busca por palavras chave Criação de enormes listas invertidas Termo -> lista de documentos que o contêm Sistemas de alto poder de processamento Dividir para conquistar: Agrupar os dados segundo algum critério Se possível criar índices em cada grupamento Processar cada grupo individualmente e agrupar as respostas

Transcript of Escola de Verão LNCC 2015 Jornada Ciência de...

Page 1: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

1  

Escola de Verão LNCC 2015 Jornada Ciência de Dados

Fabio Porto ([email protected]) LNCC – CCC - DEXL Lab http://dexl.lncc.br

Gerência de Grandes Volumes de Dados– Parte II

Parte III Como Usar !!

Fábio Porto

Introdução

l  O processamento de grandes volumes de dados foi “recentemente” formulado como um problema de paralelismo. –  paralelismo de dados (processos

embarassadamente paralelizáveis) l  tipico representante: modelo Map-Reduce l  sistemas de banco de dados paralelos

Fábio Porto

Jornada Ciência de Dados

Estratégias

l  Baseada em Busca –  Google é o grande ator –  Foco principal em busca por palavras chave –  Criação de enormes listas invertidas

l  Termo -> lista de documentos que o contêm

l  Sistemas de alto poder de processamento –  Dividir para conquistar:

l  Agrupar os dados segundo algum critério l  Se possível criar índices em cada grupamento l  Processar cada grupo individualmente e agrupar as

respostas

Page 2: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

2  

Fábio Porto

Aspectos do Problema

l  Modelos de Aplicação: –  Consultas a Bancos de Dados –  Processamento em workflows/dataflows –  Processos intensivos de CPU

l  Estratégia de gerência de Dados –  particionado –  distribuído –  centralizado –  replicado

Fábio Porto

Workflows, Dataflows e Consultas em Bancos de Dados

l  Workflows científicos – processamento de dados realizado como parte de um experimento científico

l  Nesta apresentação estaremos considerando processos automáticos, i.e., sem intervenção do usuário;

l  Topologia de um grafo direcionado, com ou sem ciclos, G=(N,E), onde N representa um conjunto de atividades e E a dependência entre as atividades espelhada na relação produtor/consumidor de dados;

l  Dataflows – generalização de workflows científicos para outros domínios de aplicação

l  Guarda o mesmo modelo; l  Pode incluir um pouco mais de conhecimento dos programas e dados, se

projetado com componentes internos à instituição; l  Consultas a BDs – processamento dados em função de uma

requisição externa (consulta ou atualização); l  Processamento inteiramente automático l  Expresso em linguagem de alto nível (SQL – ou variante) l  Topologia – arvore – profunda ou equilibrada l  Conhecimento dos dados (modelo e estatísticas) e da semântica das operações

(álgebra)

Fábio Porto

Modelo de Base Dataflows Big Data

Ativ. 1 Ativ. 2 … Ativ. k

Entrada

Saída Processamento

Fábio Porto

Máquina de Execução

l  Módulo de software responsável por receber a descrição do dataflow a ser executado; –  Realiza processos de preparação do ambiente –  Executa o dataflow requisitado –  Executa procedimentos finais

l  Serviços associados –  Controle transacional –  Tolerância à falha –  Gerência de dados de proveniência –  Mecanismos de autenticação

Page 3: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

3  

Fábio Porto

Modelo de Execução

l  Determina as características não funcionais de uma execução de dataflows –  Tem como restrições

l  O ambiente de execução disponível : –  Centralizado, disco compartilhado, sem

compartilhamento, em memória, etc.. l  Mecanismos de escalonamento de atividades l  Característica dos dados :

–  Cadeia de DNA; rede complexa, etc… l  Modelos de sincronização entre tarefas :

–  Síncrono, assíncrono

Fábio Porto Elementos do Modelo de Execução

l  Modelo Iterador –  Sincroniza o processamento de cada unidade de

dados pelos operadores; –  Cada operador implementa a interface iterator:

open, getnext, close [Grafe 1993]; –  Permite execução centralizada, distribuída e

paralela l  Outros modelos

–  Ativação [Bouganim et al.1996] l  Estratégias de paralelismo

–  Intra-operator, inter-operator –  Independente (bushy)

Fábio Porto

Jornada Ciência de Dados

l  Modelo MapReduce: –  Modelo originário de linguagens funcionais –  Escala para milhares de núcleos de

processamento –  Cada processamento atua sobre parte dos dados

Fábio Porto

Jornada Ciência de Dados

Hadoop: uma implementação de software livre para MapReduce

split0 split1

split2

splitm

worker1

worker2

worker2

…. workerm

worker1

worker2

worker2

…. workerR

(M pieces, De 16M a 64M)

Master

Mappers Reducers

Read() Local write

remote read

Output 1

Output 2

Output r

Page 4: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

4  

MapReduce Ecosistema

Jornada Big Data 2014

Fábio Porto

Cenário

Big Dataset

HDFS

Hadoop/MR

ingestão

HBase HIve

Oozie

Fábio Porto

Ecosistema Google MapReduce

Jornada Big Data 2014

Dremel Evenflow Evenflow Dremel

MySQL gateway

Sawzall

MapReduce/GFS BigTable

Chubby

store data

Process data

ingest data

serve data

high level domain language co

lumn

stora

ge

dataflows

coordinator

fonte:www.cloudera.com

Fábio Porto

Ecosistema Facebook MapReduce

Jornada Big Data 2014

HiPal Evenflow Evenflow Hive

Scribe Hive

HADOOP /HDFS HBase

Zookeeper

store data

Process data

ingest data

serve data

high level domain language co

lumn

stora

ge

dataflows

coordinator

Page 5: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

5  

Fábio Porto

Ecosistema Yahoo MapReduce

Jornada Big Data 2014

Oozie oozie HCatalog

Data Highway

Pig&Hive

HADOOP HBase

Zookeeper

store data

Process data

ingest data

serve data

high level domain language

dataflows

coordinator

Fábio Porto

Sqoop

l  Ferramenta para carga de dados no Hadoop a partir de comandos SQL sobre fontes JDBC; –  linha de comando; –  Gera “writables” para uso com Hadoop;

Jornada Big Data 2014

Fábio Porto

HBase

l  armazenamento baseado em coluna l  Baseado em BigTable (Google) l  Construido sobre HDFS l  arquitetura distribuida em clusters l  Suporte multi-TB datasets l  (Key-value) look-up l  gerenciamento transacional limitado

Jornada Big Data 2014

Fábio Porto

HBase

l  sistema para grande volume de dados –  100s GB a PBs

l  Apenas I/O sequencial em escrita l  Linguagem não é SQL l  Api (get, put, scan) todos por chave l  indices em chave primária (clustered) l  Acesso randomico aos dados

–  apesar de ser construido sobre HDFS Jornada Big Data 2014

Page 6: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

6  

Fábio Porto

Hive

l  uma ferramenta que provê uma interface SQL (HiveQL) sobre arquivos em HDFS

l  Suporta Select, JOIN, Group By,Filter etc. l  Características em suporte a grande

datasets -  definição de colunas para particionamento

-  Hive é uma alternativa a banco de dados para queries com análises (UDF) que varrem a base e realizam agregações

-  Permite criação de visões Jornada Big Data 2014

Fábio Porto

Hadoop- Hive architecture

Jornada Big Data 2014

Cliente (jobs Hive)

HiveDWH MapReduce Hadoop HDFS

SQL

Fábio Porto

Hive Modelo de Dados l  Tabelas

–  colunas tipadas (int, float, string, boleano) –  mas tb. list, map

l  Partições –  otimizam a estrutura de tabelas para acesso

l  range-partition por data

–  são armazenadas em subdiretórios de tabelas em HDFS

l  Buckets –  particionamento por intervalos

Jornada Big Data 2014

Fábio Porto

Usando

l  create table foo(id int, msg string); row format delimited fields terminated by format lines terminated by ‘\n’ l  Load data local inpath ‘mydata’ into table foo; l  select * from from Limit 10;

Jornada Big Data 2014

Page 7: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

7  

Fábio Porto

Comparativo Modelo de dados

Tempo real

MR linguagens de consulta

escalabilidade +1000 nos

Distribuição

HBASE orientado a coluna

sim Não NoSQL Sim Distruido sobre HDFS /chave ordenada

MapReduce

chave/valor

não Sim N.A. Sim Particionamento HDFS

Hive Relacional não Sim HiveQL Sim particionamento HDFS

SGBDR Relacional sim Não SQL Não Particionamento horizontal

Fábio Porto

Oozie

l  gerenciador de workflows para gerenciar jobs Hadoop;

l  dataflows na forma de DAG l  Os nós são ações:

–  Pig, Hive, ações Java; –  encadeamento de eventos; –  ações HDFS

Jornada Big Data 2014

Fábio Porto

Jornada Big Data 2014

MapReduce Framework

l  References: –  Jeffrey Dean, Sanjay Ghemawat, “MapReduce:Simplified

Data Processing on Large Clusters”, OSDI 2004; –  Ralf Lammel, “Google’s MapReduce Programming Model -

Revisited”,SCP –  Jaliya Ekanayake, Shrideep Pallickara, Geoffrey Fox, “MapReduce for Data intensive Scientific Analyses”,IV Int’l Conf. on eScience

–  Azza Abouzeid, Kamil Bajda-Pawlikowski, et al, “HadoopDB: An Architectural Hybrid of MapReduce and DBMS Technology for Analytical Workloads”, VLDB, 2009.

Fábio Porto

Jornada Big Data 2014

Introduction

l  MapReduce is a programming model based on functional programming

l  Implemented in a framework for ease adoption of highly parallel environments

l  It is a batch data processing system –  not real time

l  Users concentrate on the implementation of functions Map and Reduce;

l  Map and Reduce work on very large lists of anything: web pages, records in a DB

Page 8: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

8  

Fábio Porto

Programming Model

l  Users implement interface of two functions: –  map (in_key, in_value) -> (inter_key, inter_value)

list –  reduce (inter_key, inter_value list) -> (out_key, out_value) list

Jornada Big Data 2014

Fábio Porto

Jornada Big Data 2014

map

(key1, values)

(key2, values)

(key3, values)

shuffle

(key1, values)

(key1, values)

(key1, values)

Reduce Final (key, values)

Let map (k, v) = foreach char c in v: emit (k,c) (“A”, “cats”) -> (“A”, “c”), (“A”,”a”), (“A”,”t”), (“A”,”s”)

Let map (k, v) = if (isPrime(v): emit (k,c) (“foo”, 7) -> (“foo”, 7), (“test”,”8”)-> {}

Fábio Porto

Example Reduce

Jornada Big Data 2014

Let reduce (k, vals) sum=0 foreach int v in vals: sum+=v emit (k,sum) (“A”, [42,100,312]) -> (“A”, 454) (“B”, [12,6,-2]) -> (“B”, 16)

Fábio Porto

Distribuição do arquivo em blocos e splits

bloco1 bloco2 bloco3

linha1

linha2

linha3

linha4

linha5

linha6

64MB

Page 9: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

9  

Fábio Porto

b

Atribuição à nós e Maps

linha1

linha2

linha3

Nó 1

M1

M2

M3

bloco1

Fábio Porto

Zoon In

split

M1

fileInputFormat

Key,value

linha

Classe Mapper

Classe InputFileFormat

Fábio Porto

What is its big thing?

Jornada Big Data 2014

Data locality

Large Amount of input data

node1 node 2 Node 3

slice of input

slice of input

slice of input

each function map mapper will run on each node over the set of data at that node

Fábio Porto

Execution Model

Jornada Big Data 2014

mapping process

Node 1

mapping process

Node 2

mapping process

Node 3

Reduce process

Node 1

Reduce process

Node 2

Reduce process

Node 3

Page 10: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

10  

Fábio Porto

Key to MapReduce

l  Map() functions run in parallel, each over a partition of the dataset;

l  Reduce() functions run in parallel, each working on a range of keys

l  A Reduce phase only starts when the complete Map phase has finished

Jornada Big Data 2014

Fábio Porto

MapReduce Model (Conta palavras)

Jornada Big Data 2014

input

Hoje ta quente quente lago hoje lago quente

hoje ta quente

quente lago

hoje lago quente

splitting Hoje, 1

ta, 1

quente, 1

quente, 1

lago, 1

Hoje, 1

lago, 1

quente, 1

mapping Hoje, 1

Hoje, 1

ta, 1

quente, 1

quente, 1

lago, 1

lago, 1

quente, 1

shuffling reducing

Hoje, 2

lago, 2

quente, 3

ta, 1

Final Result

Hoje, 2 lago, 2 quente, 3 ta, 1

Fábio Porto

Combining Phase

l  operates between Map and Reduce, within the Map node over map output

l  executes a short version of Reduce l  saves data transfer l  possible in distributive functions l  ex:

–  max (max(1,57, 32), max(3,56,93))

Jornada Big Data 2014

Fábio Porto

Jornada Big Data 2014

Map and Reduce l  Interface:

–  Map(key1,value1) -> list (key2,value2) –  Reduce(key2,list<value2>)-> list(value2)

l  Map and Reduce are functions written by the user according to application;

l  Map: takes a <key1,value1> pair; key and value are of any datatype, and produces a list of intermediate key2,value2 pairs;

l  The framework groups the output of Map by the value of key2, producing a list of associated value2;

l  The Reduce function takes the pair <key2, list<value2>> and produces its output;

Page 11: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

11  

Fábio Porto

Jornada Big Data 2014

General view (Google Implementation)

split0 split1

split2

splitm

worker1

worker2

worker2

…. workerm

worker1

worker2

worker2

…. workerR

(M pieces, De 64M a 128M)

Master

Mappers Reducers

Read() Local write

remote read

Output 1

Output 2

Output r

Fábio Porto

Jornada Big Data 2014

Process l  Initially, the MR framework splits the input into M partitions of

fixed size; l  It initializes the Master node; l  The master node creates M+R workers and assign then Maps

and Reduce functions, accordingly; l  Each Map reads its partition of the input and generates in

memory its output; l  Periodically a process reads the buffer and groups the output

values by key. It then writes the output to one of the R partitions, informing the master about its complete status and the partition addresses;

l  Finally, the Reduce reads each of its partitions and iterates over the keys, producing the results that are written to the output file.

Fábio Porto

Jornada Big Data 2014

Fault Tolerance

l  Master keeps record of worker status (idle, in-progress, completed)

l  It pings workers periodically l  It worker ping times-out, it is considered as

dead and all completed work is re-scheduled to another node;

Fábio Porto

Jornada Big Data 2014

Task Granularity

l  M and R much larger than the number of workers machines; l  Google defines M in terms of the size of the input partition

(between 64M and 128M), and R a small multiple of the number of workers machine;

l  Reducers are in small number as they produce each an output file

Page 12: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

12  

Fábio Porto

Jornada Big Data 2014

Partitioning of Intermediate results

l  Intermediate results produced by Map are re-partitioned into “R” fragments;

l  Default partitioning function is: –  Hash(key) mod |R|; –  More semantically meaningful partition desired, if

possible

Fábio Porto

HDFS – Hadoop File System

l  Baseado no GFS da Google l  Dados são replicados através do cluster

(defaut 3 vezes); l  suporta datasets até PBs l  gravação no final do arquivo l  arquivos (grava-uma-vez), majoritariamente

leitura l  Leitura sequencial l  Suporta clusters não confiáveis

Jornada Big Data 2014

Fábio Porto

HDFS características

l  arquivos são armazenados em blocos (default 64MB) maiores que a maioria dos FSs

l  Cada bloco replicado em, pelo menos, 3 nós de dados;

l  Um ponto de falha (NameNode), Mestre único coordena todos os nós de dados

l  Não aplica caching de dados

Jornada Big Data 2014

Fábio Porto

máquina cliente

Arquitetura

Jornada Big Data 2014

Aplicação cliente HDFS

API HDFS

HDFS view

Rede

HDFS NameNode

HDFS DataNode

HDFS DataNode

Page 13: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

13  

Fábio Porto

NameNode e dataNode

Jornada Big Data 2014

Metadados: /user/aaron/foo -> 1,2,4 /user/aaron/bar -> 3,5

NameNode: apenas metadados

2 4

1 5

5 2

3 4

1

3

DataNodes: armazena blocos de arquivos

Fábio Porto

Metadados

l  Um nó armazena todas as informações de metadados: –  nomes de arquivos, localizações dos blocos nos

DataNodes l  Mantido inteiramente na memória

–  bastante memória na máquina abrigando o NameNode

l  Blocos mantidos no sistema de arquivos local

Jornada Big Data 2014

Fábio Porto

Jornada Big Data 2014

Summing-up

l  MapReduce proposes a simple interfaces with robust framework to support parallelization of applications with huge number of data entities;

l  Processes an iteration over keys; l  The framework has been implemented by Goggle,

apache(Hadoop) l  The main exported elements are pairs of Key, value l  Deals with fault tolerance of workers but not that of master l  No application based optimization is possible due to lack of

function implementation semantics; l  File based

Fábio Porto

Hadoop(Google MapReduce) - Weaknesses

l  No expressive query language –  Expressive query language allow developers to

formulate high-level tasks l  No optimization based on function semantics l  No semantic-based partitioning strategy

–  Semantic-based partitioning foster parallelization and data access according to application characteristics

Page 14: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

14  

Fábio Porto

HadoopDB - a step in between [Abouzeid09]

l  Offers parallelism and fault tolerance as Hadoop, with SQL queries pushed-down to postgreSQL DBMS;

l  Pushed-down queries are implemented as Map-reduce functions;

l  Data are partitioned through nodes. –  Partitioning information stored in the catalog –  Distributed through the N nodes

Fábio Porto

HadoopDB architecture

Task Tracker

Database DataNode

Node 1

Task Tracker

Database DataNode

Node 2 Task Tracker

Database DataNode

Node n

MapReduce Framework

SMS Planner

SQL query

Catalog

Fábio Porto

Example

a)

Select Year(SalesDate), Sum(revenue) From Sales Group by year(salesDate)

FileSink Operator

Map

Table partitioned by year(SalesDate) b)

Select Year(SalesDate), Sum(revenue) From Sales Group by year(salesDate)

Reduce Sink Operator

Map

no partitioning by year(SalesDate)

Group by Operator

Sum Operator

FileSink Operator

Reduce

Select year(SalesDate),sum(revenue) From Sales Group by year(salesDate)

Fábio Porto

Pig Latin - an high-level language alternative to SQL

l  The use of high-level languages such as SQL may not please scientific community;

l  Pig Latin tries to give an answer by providing a procedural language where primitives are Relational albegra operations;

l  Pig Latin: A not-so-foreign language for data processing, Christopher Olson, Benjamin Reed et al., SIGMOD08;

Page 15: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

15  

Fábio Porto

Example l  Urls (url, category, pagerank) l  In SQL

–  Select category, avg (pagerank) from urls where pagerank > 0.2 group by category having count(*) > 106 l  In PIG

–  Groupurls = FILTER urls by Pagerank > 0.2; –  Groups= Group good-urls by category; –  Big-group=FILTER groups BY count(good_urls) > 106

–  Output = FOREACH big-groups GENERATE category, avg(good_urls_pagerank);

Fábio Porto

Pig Latin

l  Program is a sequence of steps –  Each step executes one data transformation

l  Optimizations among steps can be dynamically generated, example: –  1) spam-urls= FILTER urls BY isSpam(url); –  2) Highrankurl = FILTER spam-url BY pagerank >

0.8; 1 2 2 1

Fábio Porto

Summing-up

l  HadoopDB extends Hadoop with expressive query language, supported by DBMSs

l  Keeps Hadoop MapReduce framework l  Queries are mapped to MapReduce tasks l  For scientific applications is a question to be

answered whether or not scientists will enjoy writing SQL queries

l  Algebraic like languages may seem more natural (eg. Pig Latin)

Fábio Porto

HQOOP -Parallelizing Pushed-down Scientific Workflows

l  Partition of data across cluster nodes –  Partitioning criteria

l  Spatial (currently used and necessary for some applications) l  Random (possible in SkyMap) l  Based on query workload (Miguel Liroz-Gestau’s Work)

l  Process the workflow close to data location –  Reduce data transfer

l  Use Apache/Hadoop Implementation to manage parallel execution l  Widely used in Big Data processing; l  Implements Map-Reduce programming paradigm; l  Fault Tolerance of failed Map processes;

l  Use QEF as workflow Engine –  Implements Mapper interface –  Run workflows in Hadoop seamlessly;

2/5/15 LIneA - HQOOP 60

Page 16: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

16  

Fábio Porto

Perspective

Data distribution

Query Distribution

Workflow Parallelization

HadoopDB+Hive

Qserv+ Wkfw Engine

Orchestration layer, MapReduce

HQOOP

2/5/15 LIneA - HQOOP 61

Uma Aplicação BD + M/R

Fábio Porto

Orchestration Layer at LIneA Portal

2/5/15 LIneA - HQOOP 63

Spatial partitioning Catalog DB

Fábio Porto

2/5/15 LIneA - HQOOP 64

Page 17: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

17  

Fábio Porto

Resulting Image

2/5/15 LIneA - HQOOP 65

Fábio Porto

Integrated architecture

2/5/15 LIneA - HQOOP 66

act1

Act 2

act3

act1

Act 2

act3

act1

Act 2

act3

DB1 DB2 DB3

Final Result

Workflow engine Workflow engine Workflow engine

Fábio Porto

HDFS+M/R

Fábio Porto

BD Centralizado + M/R

Page 18: Escola de Verão LNCC 2015 Jornada Ciência de Dadosdexl.lncc.br/seminarios/JornadaBigData-Parte-II-2015.pdf · – Google é o grande ator ... HDFS Hadoop/MR ingestão HBase HIve

2/5/15  

18  

Fábio Porto

BD Distribuido + MR

Fábio Porto

BD particionado + MR

Fábio Porto

Resultados