SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
1© Cloudera, Inc. All rights reserved.
Apache Kudu
Fast Analytics on Fast Data
Alan Silva acs@cloudera.com
Claudio Takamiya ct@cloudera.com
2© Cloudera, Inc. All rights reserved.
Alan Silva
Ficha criminal
• Cumpriu a primeira pena finalizando o seu
Bacharelado em Matemática;
• Reincidente, concluiu seu mestrado na UFSCar;
• Trabalhou com arquitetura e desenvolvimento em
algumas empresas de segurança da informação e
telecomunicações;
• Com o intuito de reduzir a pena, participou de
forma voluntária em alguns projetos opensource;
• Hoje atua como cúmplice direto na adoção de
projetos com Big Data em grandes organizações;
Silva
Alan
Senior Solutions Architect
3© Cloudera, Inc. All rights reserved.
Claudio Seidi Takamiya
Ficha criminal
• Cumpriu pena na Universidade de São Paulo -
Bacharelado em Ciência da Computação
• Solto por bom comportamento depois de 4 anos;
• Fez parte do grupo de Arquitetura da Telefonica –
Vivo.
• Realiza PoC nas empresas;
• Não coloca comentários em seu código;
Takamiya
Claudio
Senior Systems Engineer
4© Cloudera, Inc. All rights reserved.
5© Cloudera, Inc. All rights reserved.
Vendor Integration
BI/Analytics ETL Database OS/Cloud/
System
Management
Hardware
6© Cloudera, Inc. All rights reserved.
”Para quem só sabe usar
martelo, todo problema é
um prego”
(Abraham Maslow)
7© Cloudera, Inc. All rights reserved.
Apache Kudu
• Projeto licenciado e governado pela Apache Foundation (open source)
• Utiliza modelo estruturado de dados
• Baseado em tabelas
• Suas tabelas são divididas em tablets (que é o equivalente a partições)
• Sua arquitetura suporta uma distribuição dos dados de forma geografica, sistema
ativo/ativo
8© Cloudera, Inc. All rights reserved.
O que o Apache Kudu é?
STORAGE SYSTEM
for
TABLES
of
STRUCTURED DATA
Não é um SQL engine, nem um query
planner, nem um optimizer.
Sistema de armazenamento que
permite que você consiga recuperar
seus dados rapidamente de forma
randômica ou através de full scan e
altamente escalável.
A lógica de dados é apresentada ao
cliente como linhas e um conjunto
finito de colunas.
Armazenado em formato colunar, as
tabelas são particionadas sobre os
tablets que são gerenciados pelos
servidores de tablets. Os tablets são
replicados e gerenciados através do
conceito de consenso Raft.
As colunas são altamente tipadas
Numero finito de colunas
Remover e adicionar colunas apenas
por ALTER TABLE
9© Cloudera, Inc. All rights reserved.
Storage para Dados Analíticos Atualizáveis
Analítico simples em real-time e atualizações com Apache Kudu
Kudu: Storage para análises rápidas em “dados rápidos”
• Simplifica arquitetura para construir aplicações analíticas
real-time
• Projetada para a próxima geração de hardware para um
desempenho analítico superior através dos frameworks
• Engine de Armazenamento nativo para o Ecossistema
Hadoop
Flexibilidade da ferramenta adequada para cada caso de
uso em uma única plataforma
• Base de Dados analítco: Kudu + Impala
• Aplicações real-time simples com Kudu + Spark
Casos de Uso
• Dados de Séries Temporais
• Analítico de Dados de Maquinas (IoT)
• Relatórios Online (Online reporting)
FILESYSTEM
HDFS
NoSQL
HBASE
INGEST – SQOOP, FLUME, KAFKA
DATA INTEGRATION & STORAGE
SECURITY – SENTRY
RESOURCE MANAGEMENT – YARN
UNIFIED DATA SERVICES
BATCH STREAM SQL SEARCH MODEL ONLINE
DATA ENGINEERING DATA DISCOVERY & ANALYTICS DATA APPS
SPARK,
HIVE, PIG
SPARK IMPALA SOLR SPARK HBASE
COLUMNAR STORE
KUDU
10© Cloudera, Inc. All rights reserved.
O que o Kudu não é
• Não é uma interface SQL
• Somente a camada de armazenamento
• “BYOSQL” – Bring-your-own SQL
• Não é um sistema de arquivos
• Os dados devem ter estrutura tabular
• Não é uma aplicação que roda sobre o HDFS
• Não é um substituto do HDFS ou do HBase
• Sempre é necessário escolher qual a melhor forma de armazenamento para cada caso
• Cloudera continuará investindo nos três
11© Cloudera, Inc. All rights reserved.
Interfaces do Kudu
• APIs NoSQL-style
• Insert(), Update(), Upsert(), Update-Ignore(), Delete(), Scan()
• Java, C++, limited Python
• Integrações com MapReduce, Spark e Impala
• Sem acesso direto aos arquivos de tablet do Kudu
• Possui suporte a autenticação, autorização e encriptação
12© Cloudera, Inc. All rights reserved.
Características de Performance
Aproveita a CPU ao máximo
• Escrito em C++, utiliza instruções SIMD e possui compilação JIT com LLVM
A latência depende da capacidade do hardware
• Esperado respostas em milisegundos com SSDs e tecnologias futuras
Não possui garbage collection permitindo o gerenciamento de grandes
footprints de memória sem pausas
Bloom filters reduzindo a necessidade de vários acessos ao disco
13© Cloudera, Inc. All rights reserved.
HDFS
Fast Scans, Analítico
e Processamento de
Dados Armazenados
Atualizações
rápidas on-line
& Serviço de
dados
Armazenamento
(Active Archive)
Análises Rápidas
(em dados que mudam
muito rapidamente ou
atualizados
frequentemente)
Onde o Kudu se encaixa
Casos de uso que ficam entre HDFS e HBase são difíceis de gerenciar
Estático
Mudanças Rápidas
Atualizações
Frequentes
HBase
Append-Only
Real-Time
Arquitetura
Híbrida Complexa
Gap
Analítico
Rítmo das Análises
RítmodosDados
14© Cloudera, Inc. All rights reserved.
HDFS
Fast Scans, Analítico
e Processamento de
Dados Armazenados
Atualizações
rápidas on-line
& Serviço de
dados
Armazenamento
(Active Archive)
Análises Rápidas
(em dados que mudam
muito rapidamente ou
atualizados
frequentemente)
Onde o Kudu se encaixa
Casos de uso que ficam entre HDFS e HBase são difíceis de gerenciar
Estático
Mudanças Rápidas
Atualizações
Frequentes
HBase
Append-Only
Real-Time
Gap
Analítico
Rítmo das Análises
RítmodosDados
Cobertura
Aplicações Analíticas
Modernas geralmente
requerem fluxo
complexo de dados &
dificuldade de integrar
Hbase & HDFS
15© Cloudera, Inc. All rights reserved.
Em que situações o Kudu é indicado?
Uma combinação simultânea de leituras e escritas sequencias e randômicas
Consegue inserir dados de séries
temporais em real time? Quanto
demora a preparação da análise?
Os resultados saem em tempo hábil
para tomar alguma ação?
Consegue lidar com grandes
volumes de dados gerados por
máquinas? Tem ferramentas para
identificar ameaças? Seu sistema
consegue fazer machine learning?
Quão rápido você adiciona os seus
dados para seu banco de dados?
Você está enfrentando um tradeoff
entre a capacidade de realizar
análises amplas e a capacidade de
fazer atualizações? Você omite
dados?
Dados de Séries Temporais Analítico em Dados de Máquinas Online Reporting
16© Cloudera, Inc. All rights reserved.
Melhor forma de usar
Kudu se beneficia com a Integração com o ecossistema Hadoop
Spark – Stream Processing para Kudu
• Padrão aberto para processamento em stream;
• Eficaz em automação de processo de decisão e Machine
Learning;
• Casos de Usos: Dados de Séries Temporais & Machine Data
Analytics
Impala – High-Performance BI & SQL para Kudu
• Padrão aberto para queries SQL interativas;
• Capacidade de carga de trabalho de banco de dados analítico
com flexibilidade, escalabilidade e arquitetura aberta
• Casos de uso incluso: Online Reporting
18© Cloudera, Inc. All rights reserved.
”Hoje não vou dar, vou é
distribuir”
(Filme :Bruna Surfistinha, 2011)
19© Cloudera, Inc. All rights reserved.
Arquitetura do Kudu
Principais componentes
Kudu
• É um engine de armazenamento standalone
• Armazena dados ”tipados” em modelo tabular para
acessos rápidos
• Tabelas Kudu são tipicamente de terabytes ou petabytes
de tamanho
• O design do Kudu é para acesso randômico e queries
analíticas em dados estruturados:
✓ É possível realizar varreduras (scans), pesquisas
randômicas, e atualizações nos dados em tabelas.
• Os dados armazenados no Kudu são organizados em
tabelas:
✓ As tabelas são particionadas em pedaços menores
chamados de tablets
✓ Os tablets são armazenados nos servidores Kudu
Tablet
20© Cloudera, Inc. All rights reserved.
Arquitetura do Kudu
Formato colunar e Tipos Explícitos
Kudu
• Os tipos de dados em Kudu são explicitos:
✓ Diferente do estilo NoSQL ”tudo é byte”
✓ Possibilita o uso de codificações específicas por tipos
de colunas, ex: bit-packing para inteiros;
• Tipos explícitos facilita a disponibilização de metadados no
estilo SQL para outras ferramentas usadas em BI ou
ferramentas de exploração de dados
A B C
A1 B1 C1
A2 B2 C2
A3 B3 C3 A1 A2 A3 B1 B2 B3 C1 C2 C3
A1 B2 C1 A2 B2 C2 A3 B3 C3
Kudu: armazenamento baseado em colunas
Banco de dados relacional: armazenamento
baseado em linha
21© Cloudera, Inc. All rights reserved.
Arquitetura do Kudu
Acesso e Ingestão de Dados
• O Kudu possui conectores que suportam diversos engines
SQL:
✓ Apache Impala
✓ Spark SQL
• Junto com o Kudu é empacotado um componente Sink
para o Apache Flume
• Um conector Apache Sqoop para Kudu já está disponível
com um patch
Apache Impala
Conectores SQL
Sink
22© Cloudera, Inc. All rights reserved.
Modelando tabelas para Kudu
Critérios de um bom design
Critérios:
• Os dados devem ser distribuídos de forma que a leitura e a gravação
sejam espalhadas uniformemente entre os tablet servers
(Particionamento);
• Os tablets devem ter um crescimento a uma taxa uniforme e a carga
deve ser uniforme entre os tablets (Particionamento);
• Os ”scans” devem ler o mínimo de dados necessários para atender uma
query (Desenho da chave primária);
23© Cloudera, Inc. All rights reserved.
Seleção de Chave Primária
• Exemplo – Série Temporal:
• ”time” - timestamp
• ”series” - {region, server, metric}
(us-east.appserver01.loadavg, 2016-05-09T15:14:00Z)
(us-east.appserver01.loadavg, 2016-05-09T15:15:00Z)
(us-west.dbserver03.rss, 2016-05-09T15:14:30Z)
(us-west.dbserver03.rss, 2016-05-09T15:14:30Z)
(2016-05-09T15:14:00Z, us-east.appserver01.loadavg)
(2016-05-09T15:14:30Z, us-west.dbserver03.rss)
(2016-05-09T15:15:00Z, us-east.appserver01.loadavg)
(2016-05-09T15:14:30Z, us-west.dbserver03.rss)
(series, time) (time, series)
SELECT * WHERE series = ‘us-east.appserver01.loadavg’;
24© Cloudera, Inc. All rights reserved.
Particionamento — Por Range de Tempo (inserts)
Todas as inserções vão para a última partição
Big scans (entre um intervalo grande)
Podem ser paralelizados entre várias partições
25© Cloudera, Inc. All rights reserved.
Particionamento — Por Range de Séries
Inserções são distribuídas entre as partições
Scans ocorrem sobre uma única partição
26© Cloudera, Inc. All rights reserved.
Partições podem ser tornar desbalanceadas,
Resultando em hot spotting
Particionamento — Por Range de Séries
27© Cloudera, Inc. All rights reserved.
Particionamento — Por Hash de Séries (inserts)
Inserções são distribuídas entre as partições
O scan é sobre uma única partição
28© Cloudera, Inc. All rights reserved.
Particionamento — Por Hash de Séries
Com o tempo as partições crescem com
o tempo, e eventualmente serão
grandes demais para em um único
servidor.
29© Cloudera, Inc. All rights reserved.
Particionamento— Por Hash de Séries + Range de Tempo
Inserções podem ser distribuídas entre todas
as partições no último range de tempo.
Big scans (entre um intervalo grande de tempo)
pode ser paralelizado entre as partições
30© Cloudera, Inc. All rights reserved.
Beneficios do Kudu
Benefícios:
• Simplifica bastante a arquitetura da solução. Na Arquitetura Lambda a
ingestão dos dados é simplificada, pois não é necessária a materialização
de várias views;
• O acoplamento da aplicação Web é muito menor. Não é necessário a
criação de nenhuma tabela para uma nova visão (query) e pode usar o
SQL para realizar as consultas. Com o Hbase seria necessário usar a API
Java ou Thrift;
• O Kudu já está preparado para a próxima geração de Hardware, tirando
melhor proveito de SSD e Persistent Memory (3D Xpoint);
31© Cloudera, Inc. All rights reserved.
PRODUCER
KAFKA
Tópico Evento 1
Tópico Evento 2
Regra de Negócio
(Streaming)
Broker de
mensagens
Armazenamento Engine MPP
Exemplo: Caso de uso ideal para Kudu
Arquitetura sem Kudu – Analítico: Relatório Online
JDBC
Dashboard
Web
É Possível,
também...
32© Cloudera, Inc. All rights reserved.
Exemplo: Caso de uso ideal para Kudu
Arquitetura antes do Kudu – Analítico: Relatório Online
PRODUCER
KAFKA
Tópico Evento 1
Tópico Evento 2
Regra de Negócio
(Streaming)
Broker de
mensagens
Armazenamento Engine MPP
Dashboard
Web
JDBC
Batch Layer
Serving Layer
Speed Layer
Stream de
dados
Spark Stream
Processo
Stream
Incrementa as
viewsAdição de novos dados
View
1
View
2
View
3
Hbase (Real Time)
View
1
View
1
View
1
Impala (Parquet)
HDFS
Job Batch
(Spark - Transformação em
formato Parquet)
Processamento
Batch recorrente
merge
Spark
Query
Arquitetura
33© Cloudera, Inc. All rights reserved.
Exemplo: Caso de uso ideal para Kudu
Qual o desafio?
Complexidade:
• Vários componentes para
equilibrar;
• Forte acoplamento da
aplicação;
• Difícil manutenção.
34© Cloudera, Inc. All rights reserved.
Entendendo a complexidade
HBase
Alguns princípios para modelagem Hbase:
• Desenho da solução por caso de uso:
• Leitura, Gravação ou Ambos;
• Design de Schema é a combinação de:
• Design de chaves (linha e coluna);
• Segregação de dados em ”column families”;
• Escolha de compressão e tamanho de blocos;
• ”Denormalization, Duplication, and Intelligent Keys” - DDI
35© Cloudera, Inc. All rights reserved.
Entendendo a complexidade
HBase
Chave-Valor
Ignora Linhas
Ignora Store Files
Filtro
Chave
Desempenho
Aumenta a Cardinalidade
36© Cloudera, Inc. All rights reserved.
Entendendo a complexidade
HBase
ID CLIENTE
1 José
2 Luis
3 Hugo
Tabela: Clientes
ID LIVRO
1 Guerra dos Tronos: As crônicas do Fogo e Gelo
2 Senhor dos Anéis: A sociedade do Anel
3 O Hobbit
4 Harry Potter e a Câmara Sec..
Tabela: Livros
id Id_cli Id_livro data
1 1 2 15/07/2015
2 1 3 11/10/2016
3 2 1 22/03/2016
4 3 1 13/06/2017
5 3 4 11/09/2016
Tabela: Compras
key Id_cli Dt_livro:1 Dt_livro:2 Dt_livro:3 Dt_livro:4
1 1 15/07/2015 11/10/2016
2 2 22/03/2016
3 3 13/06/2017 11/09/2016
CF:f1
37© Cloudera, Inc. All rights reserved.
Entendendo a complexidade
HBase
Complicações:
• Dificuldade de criar um modelo que atenda todas as visões para o
relatório online;
• Para oferecer uma leitura rápida para aplicações Webs, ou análise dados
online, podemos usar jobs MapReduce para criar tabelas otimizadas
para leitura (dados desnormalizados);
• Novas visões podem exigir mudanças nos Jobs MapReduce;
• A aplicação Web (Relatório Online) está fortemente acoplado ao modelo
das tabelas do HBase.
38© Cloudera, Inc. All rights reserved.
Onde o Kudu se aplica?
Financeiro/Seguros
• Stream market data
• Detecção e Prevenção
de Fraude em tempo
Real
• Monitoração de Risco
Varejo
• Ofertas em Real Time
• Indicação de Ofertas
baseadas em localização
Setor Público
• Monitoração Geo-
espacial
• Detecção de Riscos e
Ameaças em Tempo Real
• Monitoração de Saúde
PúblicaServiços
• Monitoração Real-time
de consumo/ofertas
• Grid health monitoring
IoT & Indústrias
• Correlação e
Monitoração de sensores
em Tempo Real
• Manutenção Preditiva
• Garantia de Qualidade
na Manufatura
39© Cloudera, Inc. All rights reserved.
”You must unlearn what you
have learned”
(Filme: Start Wars – Episódio V, 1980-
Mestre Yoda)
40© Cloudera, Inc. All rights reserved.
PRODUCER
KAFKA
Tópico Evento 1
Tópico Evento 2
Regra de Negócio
(Streaming)
Broker de
mensagens
Armazenamento Engine MPP
Utilização do Kudu para Workload Analítico
Relatório Online
JDBC
Dashboard
Web
41© Cloudera, Inc. All rights reserved.
Por onde começar?
Usuários
Baixar o Kudu / VM de teste:
getkudu.io
Lista de discussão:
kudu-user@googlegroups.com
Artigo que mostra a
motivação do Kudu:
getkudu.io/kudu.pdf
Desenvolvedores
Contribuíndo com o Kudu:
github.com/cloudera/kudu (commits)
gerrit.cloudera.org (reviews)
issues.cloudera.org (KUDU JIRA)
Lista de desenvolvimento do
Kudu:
kudu-dev@googlegroups.com
Contribuições e Participações são sempre bem-vindas!
42© Cloudera, Inc. All rights reserved.
Obrigado!

Mais conteúdo relacionado

Mais procurados

Otimizando e reduzindo custos na Nuvem da AWS
Otimizando e reduzindo custos na Nuvem da AWSOtimizando e reduzindo custos na Nuvem da AWS
Otimizando e reduzindo custos na Nuvem da AWSAmazon Web Services LATAM
 
Windows Admin Center
Windows Admin CenterWindows Admin Center
Windows Admin CenterFabio Hara
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensAlessandro Binhara
 
Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...
Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...
Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...Ricardo Ferreira
 
Melhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSMelhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSAmazon Web Services LATAM
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA CareerMarcus Vinicius Miguel Pedro
 
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)Caio Candido
 
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...Ricardo Ferreira
 
Explorando o poder do banco de dados com Amazon Aurora
Explorando o poder do banco de dados com Amazon AuroraExplorando o poder do banco de dados com Amazon Aurora
Explorando o poder do banco de dados com Amazon AuroraAmazon Web Services LATAM
 
Bancos de dados analíticos open source
Bancos de dados analíticos open sourceBancos de dados analíticos open source
Bancos de dados analíticos open sourceMatheus Espanhol
 
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovar
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovarLiberte-se dos bancos de dados comerciais para economizar, crescer e inovar
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovarAmazon Web Services LATAM
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Marcos William Valentini
 
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços MóveisQConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços MóveisEiti Kimura
 
Exadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesExadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesLuis Marques
 

Mais procurados (20)

Otimizando e reduzindo custos na Nuvem da AWS
Otimizando e reduzindo custos na Nuvem da AWSOtimizando e reduzindo custos na Nuvem da AWS
Otimizando e reduzindo custos na Nuvem da AWS
 
Windows Admin Center
Windows Admin CenterWindows Admin Center
Windows Admin Center
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvens
 
Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...
Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...
Blueprints & Patterns de Arquitetura para Sistemas que Escalam Linearmente (p...
 
Melhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSMelhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWS
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
 
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
 
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
 
Seu primeiro aplicativo de Big Data
Seu primeiro aplicativo de Big DataSeu primeiro aplicativo de Big Data
Seu primeiro aplicativo de Big Data
 
Sql server 2019 big data cluster
Sql server 2019 big data clusterSql server 2019 big data cluster
Sql server 2019 big data cluster
 
Explorando o poder do banco de dados com Amazon Aurora
Explorando o poder do banco de dados com Amazon AuroraExplorando o poder do banco de dados com Amazon Aurora
Explorando o poder do banco de dados com Amazon Aurora
 
Construindo um Data Lake na AWS
Construindo um Data Lake na AWSConstruindo um Data Lake na AWS
Construindo um Data Lake na AWS
 
Bancos de dados analíticos open source
Bancos de dados analíticos open sourceBancos de dados analíticos open source
Bancos de dados analíticos open source
 
Rodando SAP na AWS
Rodando SAP na AWSRodando SAP na AWS
Rodando SAP na AWS
 
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovar
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovarLiberte-se dos bancos de dados comerciais para economizar, crescer e inovar
Liberte-se dos bancos de dados comerciais para economizar, crescer e inovar
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
 
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços MóveisQConSP 2014 - Cassandra no Desenvolvimento  de Aplicações para  serviços Móveis
QConSP 2014 - Cassandra no Desenvolvimento de Aplicações para serviços Móveis
 
Exadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das PartesExadata - O Todo é maior que a soma das Partes
Exadata - O Todo é maior que a soma das Partes
 
Hadoop
HadoopHadoop
Hadoop
 
Bancos de Dados gerenciados na nuvem AWS
Bancos de Dados gerenciados na nuvem AWSBancos de Dados gerenciados na nuvem AWS
Bancos de Dados gerenciados na nuvem AWS
 

Semelhante a TDC2017 | POA Trilha BigData - Utilizando o Apache Kudu como Workload Analítico

TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...tdc-globalcode
 
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...Amazon Web Services LATAM
 
IntroduçãO Ao Desenvolvimento Web 2
IntroduçãO Ao Desenvolvimento Web   2IntroduçãO Ao Desenvolvimento Web   2
IntroduçãO Ao Desenvolvimento Web 2Maurício Linhares
 
Stream de dados e Data Lake com Debezium, Delta Lake e EMR
Stream de dados e Data Lake com Debezium, Delta Lake e EMRStream de dados e Data Lake com Debezium, Delta Lake e EMR
Stream de dados e Data Lake com Debezium, Delta Lake e EMRCicero Joasyo Mateus de Moura
 
Melhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingMelhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingDaniel Checchia
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational DatabasesMarcus Vinicius Miguel Pedro
 
3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdfDimas Francisco
 
Tesi Dados Final
Tesi Dados FinalTesi Dados Final
Tesi Dados Finaljcaroso
 
CPBSB 2022 - Big Data e Machine Learning na Prática Construindo um Data Lake...
CPBSB 2022 - Big Data e  Machine Learning na Prática Construindo um Data Lake...CPBSB 2022 - Big Data e  Machine Learning na Prática Construindo um Data Lake...
CPBSB 2022 - Big Data e Machine Learning na Prática Construindo um Data Lake...Cicero Joasyo Mateus de Moura
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de DadosDeep Tech Brasil
 
Case RDStation: Construindo DataLakes com Apache Hadoop em cloud agnóstica
Case RDStation: Construindo DataLakes com Apache Hadoop em cloud agnósticaCase RDStation: Construindo DataLakes com Apache Hadoop em cloud agnóstica
Case RDStation: Construindo DataLakes com Apache Hadoop em cloud agnósticaAlessandro Binhara
 
Keynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsKeynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsHoracio Ibrahim
 
Azure Fundamentals (Intensivão Azure)
Azure Fundamentals (Intensivão Azure)Azure Fundamentals (Intensivão Azure)
Azure Fundamentals (Intensivão Azure)Resource IT
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídosluanrjesus
 
O Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdfO Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdfSergio Tavares Coutinho
 
Transição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e EstratégiasTransição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e EstratégiasDenodo
 

Semelhante a TDC2017 | POA Trilha BigData - Utilizando o Apache Kudu como Workload Analítico (20)

TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
TDC2017 | São Paulo - Trilha BigData How we figured out we had a SRE team at ...
 
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
 
IntroduçãO Ao Desenvolvimento Web 2
IntroduçãO Ao Desenvolvimento Web   2IntroduçãO Ao Desenvolvimento Web   2
IntroduçãO Ao Desenvolvimento Web 2
 
Stream de dados e Data Lake com Debezium, Delta Lake e EMR
Stream de dados e Data Lake com Debezium, Delta Lake e EMRStream de dados e Data Lake com Debezium, Delta Lake e EMR
Stream de dados e Data Lake com Debezium, Delta Lake e EMR
 
Melhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud ComputingMelhores práticas para Arquitetura em Cloud Computing
Melhores práticas para Arquitetura em Cloud Computing
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
 
3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf3a Web Aula - Gestão de Tecnologia da Informação.pdf
3a Web Aula - Gestão de Tecnologia da Informação.pdf
 
Tesi Dados Final
Tesi Dados FinalTesi Dados Final
Tesi Dados Final
 
Streaming architecture with big data clusters
Streaming architecture with big data clustersStreaming architecture with big data clusters
Streaming architecture with big data clusters
 
CPBSB 2022 - Big Data e Machine Learning na Prática Construindo um Data Lake...
CPBSB 2022 - Big Data e  Machine Learning na Prática Construindo um Data Lake...CPBSB 2022 - Big Data e  Machine Learning na Prática Construindo um Data Lake...
CPBSB 2022 - Big Data e Machine Learning na Prática Construindo um Data Lake...
 
[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados[DTC21] André Marques - Jornada do Engenheiro de Dados
[DTC21] André Marques - Jornada do Engenheiro de Dados
 
Case RDStation: Construindo DataLakes com Apache Hadoop em cloud agnóstica
Case RDStation: Construindo DataLakes com Apache Hadoop em cloud agnósticaCase RDStation: Construindo DataLakes com Apache Hadoop em cloud agnóstica
Case RDStation: Construindo DataLakes com Apache Hadoop em cloud agnóstica
 
Keynote nuvem estaleiro_ics
Keynote nuvem estaleiro_icsKeynote nuvem estaleiro_ics
Keynote nuvem estaleiro_ics
 
Azure Fundamentals (Intensivão Azure)
Azure Fundamentals (Intensivão Azure)Azure Fundamentals (Intensivão Azure)
Azure Fundamentals (Intensivão Azure)
 
Trabalho de sgbd
Trabalho de sgbdTrabalho de sgbd
Trabalho de sgbd
 
Aws for Developers
Aws for DevelopersAws for Developers
Aws for Developers
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
 
O Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdfO Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdf
 
Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0
 
Transição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e EstratégiasTransição para a nuvem: Desafios e Estratégias
Transição para a nuvem: Desafios e Estratégias
 

Mais de tdc-globalcode

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadetdc-globalcode
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...tdc-globalcode
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucessotdc-globalcode
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPAtdc-globalcode
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinotdc-globalcode
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...tdc-globalcode
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicestdc-globalcode
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publicatdc-globalcode
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#tdc-globalcode
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocustdc-globalcode
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?tdc-globalcode
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golangtdc-globalcode
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QAtdc-globalcode
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciatdc-globalcode
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Servicetdc-globalcode
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETtdc-globalcode
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8tdc-globalcode
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...tdc-globalcode
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#tdc-globalcode
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Coretdc-globalcode
 

Mais de tdc-globalcode (20)

TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidadeTDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
TDC2019 Intel Software Day - Visao Computacional e IA a servico da humanidade
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
 
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de SucessoTDC2019 Intel Software Day - ACATE - Cases de Sucesso
TDC2019 Intel Software Day - ACATE - Cases de Sucesso
 
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPATDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
TDC2019 Intel Software Day - Otimizacao grafica com o Intel GPA
 
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVinoTDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
TDC2019 Intel Software Day - Deteccao de objetos em tempo real com OpenVino
 
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
TDC2019 Intel Software Day - OpenCV: Inteligencia artificial e Visao Computac...
 
TDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devicesTDC2019 Intel Software Day - Inferencia de IA em edge devices
TDC2019 Intel Software Day - Inferencia de IA em edge devices
 
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca PublicaTrilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
Trilha BigData - Banco de Dados Orientado a Grafos na Seguranca Publica
 
Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#Trilha .Net - Programacao funcional usando f#
Trilha .Net - Programacao funcional usando f#
 
TDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case EasylocusTDC2018SP | Trilha Go - Case Easylocus
TDC2018SP | Trilha Go - Case Easylocus
 
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
TDC2018SP | Trilha Modern Web - Para onde caminha a Web?
 
TDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em GolangTDC2018SP | Trilha Go - Clean architecture em Golang
TDC2018SP | Trilha Go - Clean architecture em Golang
 
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QATDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
TDC2018SP | Trilha Go - "Go" tambem e linguagem de QA
 
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendenciaTDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
TDC2018SP | Trilha Mobile - Digital Wallets - Seguranca, inovacao e tendencia
 
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR ServiceTDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
TDC2018SP | Trilha .Net - Real Time apps com Azure SignalR Service
 
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NETTDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
TDC2018SP | Trilha .Net - Passado, Presente e Futuro do .NET
 
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
TDC2018SP | Trilha .Net - Novidades do C# 7 e 8
 
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
TDC2018SP | Trilha .Net - Obtendo metricas com TDD utilizando build automatiz...
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#
 
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net CoreTDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor  em .Net Core
TDC2018SP | Trilha .Net - Crie SPAs com Razor e C# usando Blazor em .Net Core
 

Último

Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxLuizHenriquedeAlmeid6
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?Rosalina Simão Nunes
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniCassio Meira Jr.
 
Gerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalGerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalJacqueline Cerqueira
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSilvana Silva
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfmirandadudu08
 
Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Susana Stoffel
 
Prova uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfProva uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfArthurRomanof1
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasCassio Meira Jr.
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxkarinedarozabatista
 

Último (20)

Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptxSlides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
Slides Lição 4, CPAD, Como se Conduzir na Caminhada, 2Tr24.pptx
 
E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?E agora?! Já não avalio as atitudes e valores?
E agora?! Já não avalio as atitudes e valores?
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
 
Gerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalGerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem Organizacional
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptx
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdf
 
Regência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdfRegência Nominal e Verbal português .pdf
Regência Nominal e Verbal português .pdf
 
Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.Família de palavras.ppt com exemplos e exercícios interativos.
Família de palavras.ppt com exemplos e exercícios interativos.
 
Prova uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdfProva uniasselvi tecnologias da Informação.pdf
Prova uniasselvi tecnologias da Informação.pdf
 
Habilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e EspecíficasHabilidades Motoras Básicas e Específicas
Habilidades Motoras Básicas e Específicas
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
 

TDC2017 | POA Trilha BigData - Utilizando o Apache Kudu como Workload Analítico

  • 1. 1© Cloudera, Inc. All rights reserved. Apache Kudu Fast Analytics on Fast Data Alan Silva acs@cloudera.com Claudio Takamiya ct@cloudera.com
  • 2. 2© Cloudera, Inc. All rights reserved. Alan Silva Ficha criminal • Cumpriu a primeira pena finalizando o seu Bacharelado em Matemática; • Reincidente, concluiu seu mestrado na UFSCar; • Trabalhou com arquitetura e desenvolvimento em algumas empresas de segurança da informação e telecomunicações; • Com o intuito de reduzir a pena, participou de forma voluntária em alguns projetos opensource; • Hoje atua como cúmplice direto na adoção de projetos com Big Data em grandes organizações; Silva Alan Senior Solutions Architect
  • 3. 3© Cloudera, Inc. All rights reserved. Claudio Seidi Takamiya Ficha criminal • Cumpriu pena na Universidade de São Paulo - Bacharelado em Ciência da Computação • Solto por bom comportamento depois de 4 anos; • Fez parte do grupo de Arquitetura da Telefonica – Vivo. • Realiza PoC nas empresas; • Não coloca comentários em seu código; Takamiya Claudio Senior Systems Engineer
  • 4. 4© Cloudera, Inc. All rights reserved.
  • 5. 5© Cloudera, Inc. All rights reserved. Vendor Integration BI/Analytics ETL Database OS/Cloud/ System Management Hardware
  • 6. 6© Cloudera, Inc. All rights reserved. ”Para quem só sabe usar martelo, todo problema é um prego” (Abraham Maslow)
  • 7. 7© Cloudera, Inc. All rights reserved. Apache Kudu • Projeto licenciado e governado pela Apache Foundation (open source) • Utiliza modelo estruturado de dados • Baseado em tabelas • Suas tabelas são divididas em tablets (que é o equivalente a partições) • Sua arquitetura suporta uma distribuição dos dados de forma geografica, sistema ativo/ativo
  • 8. 8© Cloudera, Inc. All rights reserved. O que o Apache Kudu é? STORAGE SYSTEM for TABLES of STRUCTURED DATA Não é um SQL engine, nem um query planner, nem um optimizer. Sistema de armazenamento que permite que você consiga recuperar seus dados rapidamente de forma randômica ou através de full scan e altamente escalável. A lógica de dados é apresentada ao cliente como linhas e um conjunto finito de colunas. Armazenado em formato colunar, as tabelas são particionadas sobre os tablets que são gerenciados pelos servidores de tablets. Os tablets são replicados e gerenciados através do conceito de consenso Raft. As colunas são altamente tipadas Numero finito de colunas Remover e adicionar colunas apenas por ALTER TABLE
  • 9. 9© Cloudera, Inc. All rights reserved. Storage para Dados Analíticos Atualizáveis Analítico simples em real-time e atualizações com Apache Kudu Kudu: Storage para análises rápidas em “dados rápidos” • Simplifica arquitetura para construir aplicações analíticas real-time • Projetada para a próxima geração de hardware para um desempenho analítico superior através dos frameworks • Engine de Armazenamento nativo para o Ecossistema Hadoop Flexibilidade da ferramenta adequada para cada caso de uso em uma única plataforma • Base de Dados analítco: Kudu + Impala • Aplicações real-time simples com Kudu + Spark Casos de Uso • Dados de Séries Temporais • Analítico de Dados de Maquinas (IoT) • Relatórios Online (Online reporting) FILESYSTEM HDFS NoSQL HBASE INGEST – SQOOP, FLUME, KAFKA DATA INTEGRATION & STORAGE SECURITY – SENTRY RESOURCE MANAGEMENT – YARN UNIFIED DATA SERVICES BATCH STREAM SQL SEARCH MODEL ONLINE DATA ENGINEERING DATA DISCOVERY & ANALYTICS DATA APPS SPARK, HIVE, PIG SPARK IMPALA SOLR SPARK HBASE COLUMNAR STORE KUDU
  • 10. 10© Cloudera, Inc. All rights reserved. O que o Kudu não é • Não é uma interface SQL • Somente a camada de armazenamento • “BYOSQL” – Bring-your-own SQL • Não é um sistema de arquivos • Os dados devem ter estrutura tabular • Não é uma aplicação que roda sobre o HDFS • Não é um substituto do HDFS ou do HBase • Sempre é necessário escolher qual a melhor forma de armazenamento para cada caso • Cloudera continuará investindo nos três
  • 11. 11© Cloudera, Inc. All rights reserved. Interfaces do Kudu • APIs NoSQL-style • Insert(), Update(), Upsert(), Update-Ignore(), Delete(), Scan() • Java, C++, limited Python • Integrações com MapReduce, Spark e Impala • Sem acesso direto aos arquivos de tablet do Kudu • Possui suporte a autenticação, autorização e encriptação
  • 12. 12© Cloudera, Inc. All rights reserved. Características de Performance Aproveita a CPU ao máximo • Escrito em C++, utiliza instruções SIMD e possui compilação JIT com LLVM A latência depende da capacidade do hardware • Esperado respostas em milisegundos com SSDs e tecnologias futuras Não possui garbage collection permitindo o gerenciamento de grandes footprints de memória sem pausas Bloom filters reduzindo a necessidade de vários acessos ao disco
  • 13. 13© Cloudera, Inc. All rights reserved. HDFS Fast Scans, Analítico e Processamento de Dados Armazenados Atualizações rápidas on-line & Serviço de dados Armazenamento (Active Archive) Análises Rápidas (em dados que mudam muito rapidamente ou atualizados frequentemente) Onde o Kudu se encaixa Casos de uso que ficam entre HDFS e HBase são difíceis de gerenciar Estático Mudanças Rápidas Atualizações Frequentes HBase Append-Only Real-Time Arquitetura Híbrida Complexa Gap Analítico Rítmo das Análises RítmodosDados
  • 14. 14© Cloudera, Inc. All rights reserved. HDFS Fast Scans, Analítico e Processamento de Dados Armazenados Atualizações rápidas on-line & Serviço de dados Armazenamento (Active Archive) Análises Rápidas (em dados que mudam muito rapidamente ou atualizados frequentemente) Onde o Kudu se encaixa Casos de uso que ficam entre HDFS e HBase são difíceis de gerenciar Estático Mudanças Rápidas Atualizações Frequentes HBase Append-Only Real-Time Gap Analítico Rítmo das Análises RítmodosDados Cobertura Aplicações Analíticas Modernas geralmente requerem fluxo complexo de dados & dificuldade de integrar Hbase & HDFS
  • 15. 15© Cloudera, Inc. All rights reserved. Em que situações o Kudu é indicado? Uma combinação simultânea de leituras e escritas sequencias e randômicas Consegue inserir dados de séries temporais em real time? Quanto demora a preparação da análise? Os resultados saem em tempo hábil para tomar alguma ação? Consegue lidar com grandes volumes de dados gerados por máquinas? Tem ferramentas para identificar ameaças? Seu sistema consegue fazer machine learning? Quão rápido você adiciona os seus dados para seu banco de dados? Você está enfrentando um tradeoff entre a capacidade de realizar análises amplas e a capacidade de fazer atualizações? Você omite dados? Dados de Séries Temporais Analítico em Dados de Máquinas Online Reporting
  • 16. 16© Cloudera, Inc. All rights reserved. Melhor forma de usar Kudu se beneficia com a Integração com o ecossistema Hadoop Spark – Stream Processing para Kudu • Padrão aberto para processamento em stream; • Eficaz em automação de processo de decisão e Machine Learning; • Casos de Usos: Dados de Séries Temporais & Machine Data Analytics Impala – High-Performance BI & SQL para Kudu • Padrão aberto para queries SQL interativas; • Capacidade de carga de trabalho de banco de dados analítico com flexibilidade, escalabilidade e arquitetura aberta • Casos de uso incluso: Online Reporting
  • 17. 18© Cloudera, Inc. All rights reserved. ”Hoje não vou dar, vou é distribuir” (Filme :Bruna Surfistinha, 2011)
  • 18. 19© Cloudera, Inc. All rights reserved. Arquitetura do Kudu Principais componentes Kudu • É um engine de armazenamento standalone • Armazena dados ”tipados” em modelo tabular para acessos rápidos • Tabelas Kudu são tipicamente de terabytes ou petabytes de tamanho • O design do Kudu é para acesso randômico e queries analíticas em dados estruturados: ✓ É possível realizar varreduras (scans), pesquisas randômicas, e atualizações nos dados em tabelas. • Os dados armazenados no Kudu são organizados em tabelas: ✓ As tabelas são particionadas em pedaços menores chamados de tablets ✓ Os tablets são armazenados nos servidores Kudu Tablet
  • 19. 20© Cloudera, Inc. All rights reserved. Arquitetura do Kudu Formato colunar e Tipos Explícitos Kudu • Os tipos de dados em Kudu são explicitos: ✓ Diferente do estilo NoSQL ”tudo é byte” ✓ Possibilita o uso de codificações específicas por tipos de colunas, ex: bit-packing para inteiros; • Tipos explícitos facilita a disponibilização de metadados no estilo SQL para outras ferramentas usadas em BI ou ferramentas de exploração de dados A B C A1 B1 C1 A2 B2 C2 A3 B3 C3 A1 A2 A3 B1 B2 B3 C1 C2 C3 A1 B2 C1 A2 B2 C2 A3 B3 C3 Kudu: armazenamento baseado em colunas Banco de dados relacional: armazenamento baseado em linha
  • 20. 21© Cloudera, Inc. All rights reserved. Arquitetura do Kudu Acesso e Ingestão de Dados • O Kudu possui conectores que suportam diversos engines SQL: ✓ Apache Impala ✓ Spark SQL • Junto com o Kudu é empacotado um componente Sink para o Apache Flume • Um conector Apache Sqoop para Kudu já está disponível com um patch Apache Impala Conectores SQL Sink
  • 21. 22© Cloudera, Inc. All rights reserved. Modelando tabelas para Kudu Critérios de um bom design Critérios: • Os dados devem ser distribuídos de forma que a leitura e a gravação sejam espalhadas uniformemente entre os tablet servers (Particionamento); • Os tablets devem ter um crescimento a uma taxa uniforme e a carga deve ser uniforme entre os tablets (Particionamento); • Os ”scans” devem ler o mínimo de dados necessários para atender uma query (Desenho da chave primária);
  • 22. 23© Cloudera, Inc. All rights reserved. Seleção de Chave Primária • Exemplo – Série Temporal: • ”time” - timestamp • ”series” - {region, server, metric} (us-east.appserver01.loadavg, 2016-05-09T15:14:00Z) (us-east.appserver01.loadavg, 2016-05-09T15:15:00Z) (us-west.dbserver03.rss, 2016-05-09T15:14:30Z) (us-west.dbserver03.rss, 2016-05-09T15:14:30Z) (2016-05-09T15:14:00Z, us-east.appserver01.loadavg) (2016-05-09T15:14:30Z, us-west.dbserver03.rss) (2016-05-09T15:15:00Z, us-east.appserver01.loadavg) (2016-05-09T15:14:30Z, us-west.dbserver03.rss) (series, time) (time, series) SELECT * WHERE series = ‘us-east.appserver01.loadavg’;
  • 23. 24© Cloudera, Inc. All rights reserved. Particionamento — Por Range de Tempo (inserts) Todas as inserções vão para a última partição Big scans (entre um intervalo grande) Podem ser paralelizados entre várias partições
  • 24. 25© Cloudera, Inc. All rights reserved. Particionamento — Por Range de Séries Inserções são distribuídas entre as partições Scans ocorrem sobre uma única partição
  • 25. 26© Cloudera, Inc. All rights reserved. Partições podem ser tornar desbalanceadas, Resultando em hot spotting Particionamento — Por Range de Séries
  • 26. 27© Cloudera, Inc. All rights reserved. Particionamento — Por Hash de Séries (inserts) Inserções são distribuídas entre as partições O scan é sobre uma única partição
  • 27. 28© Cloudera, Inc. All rights reserved. Particionamento — Por Hash de Séries Com o tempo as partições crescem com o tempo, e eventualmente serão grandes demais para em um único servidor.
  • 28. 29© Cloudera, Inc. All rights reserved. Particionamento— Por Hash de Séries + Range de Tempo Inserções podem ser distribuídas entre todas as partições no último range de tempo. Big scans (entre um intervalo grande de tempo) pode ser paralelizado entre as partições
  • 29. 30© Cloudera, Inc. All rights reserved. Beneficios do Kudu Benefícios: • Simplifica bastante a arquitetura da solução. Na Arquitetura Lambda a ingestão dos dados é simplificada, pois não é necessária a materialização de várias views; • O acoplamento da aplicação Web é muito menor. Não é necessário a criação de nenhuma tabela para uma nova visão (query) e pode usar o SQL para realizar as consultas. Com o Hbase seria necessário usar a API Java ou Thrift; • O Kudu já está preparado para a próxima geração de Hardware, tirando melhor proveito de SSD e Persistent Memory (3D Xpoint);
  • 30. 31© Cloudera, Inc. All rights reserved. PRODUCER KAFKA Tópico Evento 1 Tópico Evento 2 Regra de Negócio (Streaming) Broker de mensagens Armazenamento Engine MPP Exemplo: Caso de uso ideal para Kudu Arquitetura sem Kudu – Analítico: Relatório Online JDBC Dashboard Web É Possível, também...
  • 31. 32© Cloudera, Inc. All rights reserved. Exemplo: Caso de uso ideal para Kudu Arquitetura antes do Kudu – Analítico: Relatório Online PRODUCER KAFKA Tópico Evento 1 Tópico Evento 2 Regra de Negócio (Streaming) Broker de mensagens Armazenamento Engine MPP Dashboard Web JDBC Batch Layer Serving Layer Speed Layer Stream de dados Spark Stream Processo Stream Incrementa as viewsAdição de novos dados View 1 View 2 View 3 Hbase (Real Time) View 1 View 1 View 1 Impala (Parquet) HDFS Job Batch (Spark - Transformação em formato Parquet) Processamento Batch recorrente merge Spark Query Arquitetura
  • 32. 33© Cloudera, Inc. All rights reserved. Exemplo: Caso de uso ideal para Kudu Qual o desafio? Complexidade: • Vários componentes para equilibrar; • Forte acoplamento da aplicação; • Difícil manutenção.
  • 33. 34© Cloudera, Inc. All rights reserved. Entendendo a complexidade HBase Alguns princípios para modelagem Hbase: • Desenho da solução por caso de uso: • Leitura, Gravação ou Ambos; • Design de Schema é a combinação de: • Design de chaves (linha e coluna); • Segregação de dados em ”column families”; • Escolha de compressão e tamanho de blocos; • ”Denormalization, Duplication, and Intelligent Keys” - DDI
  • 34. 35© Cloudera, Inc. All rights reserved. Entendendo a complexidade HBase Chave-Valor Ignora Linhas Ignora Store Files Filtro Chave Desempenho Aumenta a Cardinalidade
  • 35. 36© Cloudera, Inc. All rights reserved. Entendendo a complexidade HBase ID CLIENTE 1 José 2 Luis 3 Hugo Tabela: Clientes ID LIVRO 1 Guerra dos Tronos: As crônicas do Fogo e Gelo 2 Senhor dos Anéis: A sociedade do Anel 3 O Hobbit 4 Harry Potter e a Câmara Sec.. Tabela: Livros id Id_cli Id_livro data 1 1 2 15/07/2015 2 1 3 11/10/2016 3 2 1 22/03/2016 4 3 1 13/06/2017 5 3 4 11/09/2016 Tabela: Compras key Id_cli Dt_livro:1 Dt_livro:2 Dt_livro:3 Dt_livro:4 1 1 15/07/2015 11/10/2016 2 2 22/03/2016 3 3 13/06/2017 11/09/2016 CF:f1
  • 36. 37© Cloudera, Inc. All rights reserved. Entendendo a complexidade HBase Complicações: • Dificuldade de criar um modelo que atenda todas as visões para o relatório online; • Para oferecer uma leitura rápida para aplicações Webs, ou análise dados online, podemos usar jobs MapReduce para criar tabelas otimizadas para leitura (dados desnormalizados); • Novas visões podem exigir mudanças nos Jobs MapReduce; • A aplicação Web (Relatório Online) está fortemente acoplado ao modelo das tabelas do HBase.
  • 37. 38© Cloudera, Inc. All rights reserved. Onde o Kudu se aplica? Financeiro/Seguros • Stream market data • Detecção e Prevenção de Fraude em tempo Real • Monitoração de Risco Varejo • Ofertas em Real Time • Indicação de Ofertas baseadas em localização Setor Público • Monitoração Geo- espacial • Detecção de Riscos e Ameaças em Tempo Real • Monitoração de Saúde PúblicaServiços • Monitoração Real-time de consumo/ofertas • Grid health monitoring IoT & Indústrias • Correlação e Monitoração de sensores em Tempo Real • Manutenção Preditiva • Garantia de Qualidade na Manufatura
  • 38. 39© Cloudera, Inc. All rights reserved. ”You must unlearn what you have learned” (Filme: Start Wars – Episódio V, 1980- Mestre Yoda)
  • 39. 40© Cloudera, Inc. All rights reserved. PRODUCER KAFKA Tópico Evento 1 Tópico Evento 2 Regra de Negócio (Streaming) Broker de mensagens Armazenamento Engine MPP Utilização do Kudu para Workload Analítico Relatório Online JDBC Dashboard Web
  • 40. 41© Cloudera, Inc. All rights reserved. Por onde começar? Usuários Baixar o Kudu / VM de teste: getkudu.io Lista de discussão: kudu-user@googlegroups.com Artigo que mostra a motivação do Kudu: getkudu.io/kudu.pdf Desenvolvedores Contribuíndo com o Kudu: github.com/cloudera/kudu (commits) gerrit.cloudera.org (reviews) issues.cloudera.org (KUDU JIRA) Lista de desenvolvimento do Kudu: kudu-dev@googlegroups.com Contribuições e Participações são sempre bem-vindas!
  • 41. 42© Cloudera, Inc. All rights reserved. Obrigado!