Buscar

BIG DATA MAPA MENTAL

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Ecossistema Hadoop
Segurança
Interação de Dados
Inteligência
Busca
Gráficos
Execução de Jobs
Serialização
Sistema de Arquivos
Armazenamento de Dados
Transferência de Dados
Operação e Desenvolvimento
Knox
Sentry
Hive
Spark
Pig
Storm
Mahout
Drill
Lucene
Blur
Giraph
MapReduce
Yarn
Avro
Trevni
Thrift
HDFS
HBase
Cassandra
Flume
Sqoop
Kafka
Falcon
Ooozie
Zookeeper
Ambari
Whirr
Crunch
Solução open-source de alta performance , para coordenação
e gestão de serviços em aplicações distribuídas. É uma
espécie de guardião do Zoo.
É um serviço de coordenação distribuída para gerenciar
grandes conjuntos de hosts (clusters).
Resolve o problema de coordenação e gestão com sua
arquitetura simples.
Permite que o desenvolvedor se concentre na lógica do
aplicativo principal sem se preocupar com a natureza
distribuída do aplicativo.
Mais tarde se tornou um padrão para organização dos
serviços do Hadoop, HBase e outras estruturas distribuídas.
Por exemplo: o HBase usa o zookeeper para acompanhar o
estado de dados distribuídos através de cluster.
Proporciona um ponto comum de acesso a uma ampla
variedade de objetos utilizados em ambientes de cluster.
Sistema de agendamento de workflow usado para gerenciar
principalmente os Jobs do MapReduce.
Apoia vários tipos de trabalhos Hadoop (Java Map-Reduce,
streaming Map-Reduce, Pig, Hive e Sqoop) e Jobs
específicas do sistema (programas java e scripts shell).
Permite usuários definir uma serie de Jobs escritos em
diferentes linguagens – Map Reduce, Pig e Hive – e
inteligentemente liga-los um ao outro.
É um data warehouse que funciona com Hadoop e
MapReduce.
É um sistema de armazenamento de dados para hadoop que
facilita a agregação dos dados para relatórios e análise de
grandes conjuntos de dados (BigData).
Permite consultas sobre os dados usando linguagem sQL-
Like, chamada HiveQL (HQL).
Provê capacidade de tolerância a falhas para armazenamento
de dados e depende do MapReduce para execução.
Permite conexões JDBC/ODBC e por isso é facilmente
integrado a outras ferramentas de inteligência de negócio
como Tableau, Microstrategy, Microsoft Power Bi.
É orientado a batch e possui alta latência para execução de
queries.
Assim como Pig, gera Jobs MapReduce que executam no
cluster Hadoop.
Foi desenvolvimento pelo facebook.
Hive é sistema para gestão e query de dados não
estruturados, em formato estruturado. Utiliza MapReduce
(para execução) e HDFS (para armazenamento e pesquisa
de dados).
HQL suporta os conceitos básicos de SQL.
Importar e exportar dados de
bancos de dados relacionais.
É possível importar tabelas
individuais ou bancos de
dados inteiros para o HDFS e
o desenvolvedor pode
determinar que colunas ou
linhas serão importadas.
Sqoop = SQL-to-Hadoop
Permite transformar os dados no Hadoop sem
desenvolvimento adicional.
Também gera classes java através das quais pode interagir
com os dados importados.
Usa Jdbc para conectar com os bancos de dados relacionais.
Permite criar diretamente tabelas no Hive e suporta
importação incremental.
Ferramenta utilizada para analisar grandes conjuntos de
dados que representam fluxos de dados.
Podemos realizar todas as operações de manipulação de
dados no Hadoop usando Apache Pig.
Para escrever programas de análise de dados, Pig oferece
uma linguagem de alto nível conhecido como Pig latin.
Para analisar os dados usando Apache Pig, os
programadores precisam escrever scripts usando linguagem
Pig Latin.
Tem um componente conhecido como Pig Engine que aceita
scripts PigLatin como entrada e converte esses scripts em
Jobs MapReduce.
Bancos de dados orientado a coluna construído sobre o sistema
de arquivos Hadoop. .É o banco oficial do Hadoop
É semelhante ao Big Table do Google, projetado para
fornecer acesso aleatório rápido a grandes quantidades de
dados.
Aproveita a tolerância a falhas fornecida pelo sistemas de
arquivos do Hadoop (HDFS).
Os dados podem ser armazenados no HDFS diretamente ou
através do HBase.
É um tipo de banco de dados NoSQL e utiliza o modelo
Cada valor é identificado por uma
chave.
 Key-
value (chave/valor). 
Chaves e valores são do tipo Byte/Array.
Valores são armazenados por ordem de acordo com a chave.
No HBase as tabelas não possuem schemas.
O objetivo é armazenar tabelas realmente grandes, com
bilhões de dados.
Possui 2 tipos de Nodes: máster e RegionServer:
É um serviço que basicamente permite enviar dados diretamente
para o HDFS. Permite mover grandes quantidades de dados.
Funciona em ambiente distribuído para coletar, agregar e mover
grandes quantidades de dados de forma eficiente.
Possui arquitetura simples e flexível baseada em streaming
(fluxo constante) de dados.
O modelo de dados do flume permite que ele seja utilizado em
aplicações analíticas online.
Também pode ser utilizado em infraestrutura de TI. Agentes são
instalados em servidores web, servidores de aplicação ou
aplicativos mobile, para coletar e integrar os dados com Hadoop,
para análise online.
Biblioteca opensource de algoritmos de aprendizado de
maquina, escalável e com foco em clustering, classificação e
sistemas de recomendação.
É dedicado ao Machine Learning.
Utiliza os principais algoritmos de clustering, testes de regressão
e modelagem estatística e os implementa usando o modelo
MapReduce.
Sistema para gerenciamento de fluxos de dados em tempo real,
gerados a partir de websites, aplicações e sensores.
Funciona como uma espécie de “Sistema Nervoso Central” que
coleta dados de alto volume como por exemplo a atividade de
usuários (cliques), logs, cotações de ações, ... e torna estes
dados disponíveis como um fluxo em tempo real para o
consumo por outras aplicações.
Foi feito para servir como repositório central de fluxos de dados.
integração de dados: forma de transportar os dados entre os
diversos sistemas.
baixa latência: necessidade de enriquecer a analise
diminuindo a latência (tempo de espera).
Não faz mais sentido falar apenas em dados armazenados em
tabelas, linhas e colunas.
O volume de dados é tao grande , que os dados precisam ser
vistos como realmente são: um fluxo constante, que precisa ser
analisado em tempo real.
Framework para provisionamento, gestão e monitoramento de
clusters HADOOP.
Sistema gerenciador de clusters hadoop.
 = Yet Another Resource NegotiatorYARN
Foi introduzida na versão 2.0 do hadoop para melhorar a
implementação do MapReduce, mas suporta outros paradigmas
de computação distribuída.
Fica entre a camada de aplicação e a camada de
armazenamento. Sua função é gerenciar o cluster. Uma das
principais funções é garantir que os algoritmos de
processamento de dados distribuídos, utilizem de forma eficiente
os recursos do Cluster.
Funciona através de 2 serviços:
resource manager (1 por cluster)
node manager (que é executado em todos os nodes do
cluster)
Também é possível usar o SPARK sobre o YARN, que o método
mais conveniente de usar o SPARK, quando existe um Cluster
Hadoop.
Existem 2 modos de executar o SPARK com o YARN: YARN cliente mode.
YARN cluster mode.
Basicamente, Spark é uma engine de computação,
responsável por agendar, distribuir e monitorar aplicações
de diversas tarefas de processamento através de diferentes
servidores em cluster.
É significamente mais veloz que o Hadoop MapReduce e vem
ganhando popularidade.
Utiliza Hadoop (HDFS) como base, mas pode ser usado com
Cassandra, HBase e MongoDB.
Pode ser usado também com linguagens Python, R e Scala.
É um projeto open-source, mantido por desenvolvedores e foi
criado em 2009 quando trabalhavam com MapReduce e
perceberam ineficiência na execução de computação iterativa.
Por esta razão Spark foi concebido com objetivo de ser veloz
tanto no processamento de queries como de algoritmos, além
de processamento em memória e eficiente na recuperação de
falhas.
• Velocidade: Pode ser 100x mais rápido que o Hadoop em
memória e 10x em disco.
• Facilidade de uso: Aplicações podem ser escritas em Scala,
Java e Python.
• Generalidade: Combina SQL Streaming e análise complexa,
além do uso de ferramentasde alto nível como Spark SQL,
MLlib para Machine Learning, GraphX e Spark Streaming.
• Integração com Hadoop: Executa sobre o YARN cluster
manager e permite leitura e escrita de dados no HDFS.
Benefícios:
1- Facilidade de uso: é possível desenvolver APIs de alto nível
em java, Scala, Python e R, que permite focar apenas no
conteúdo a ser computado, sem se preocupar com
configurações de baixo nível e extremamente técnicas
2- Velocidade: Spark é veloz, permitindo o uso iterativo e
processamento rápido de algoritmos complexos. Velocidade é
importante no processamento de grandes conjuntos de dados e
pode fazer a diferença entre analisar dados de forma iterativa ou
aguardar vários minutos para o fim de cada processamento.
Com Spark o processamento é feito em memória.
3- Uso Geral: permite o uso de diferentes tipos de computação,
como processamento de linguagem SQL (SQL Spark),
processamento de texto, machine learning(MLlib) e
processamento gráfico (GraphX).
O Apache Storm se tornou o padrão para processamento em
tempo real distribuído e permite processar grandes quantidades
de dados.
Foi desenvolvimento em Java.
Foi criado para processar grandes quantidades de dados em
ambientes tolerantes a falhas e escaláveis.
Basicamente, o Storm é um framework para dados streaming
(Fluxo contínuo de dados) e possui uma alta taxa de ingestão de
dados.
A gestão do estado do cluster, é feita através do Zookeeper.
É simples e pode-se executar todos os tipos de manipulação de
dados em tempo real, em paralelo.
É um dos líderes em Real-Time Analytics.
Principais benefícios:
é open-source, robusto e amigável
tolerante a falhas, flexível, confiável e suporta diversas
linguagens de programação
processa dados em tempo-real
storm é incrivelmente veloz
Soluções Comerciais
AWS EMR
Amazon Web Services Elastic MapReduce
Foco em consultas de mapeamento/redução.
Cloudera
Fundada por engenheiros do Yahoo!, Google e Facebook.
Usa 100% produtos opensource:
1. Hadoop
2. Pig
3. Hive
4. HBase
5. Sqoop
HortonWorks
HDP-Hortonworks Data Plataform
[Ambari]
MAPR
PivotalHd
Microsoft Azure HDiNSIGHT
Apache Spark
Spark Framework
Spark core
Spark SQL
Spark Streaming
MLib
GraphX
Arquitetura Storm:
Master Node
Coordenação do Cluster
Supervisor
WorkerNode
É um banco de dados NoSQL, livremente distribuído, de alta
performance, extremamente escalável e tolerante a falha.
Ele foi concebido com a premissa que falha de sistema ou de
hardware sempre ocorrem.
Foi inicialmente desenvolvido pelo Facebook, como uma
combinação do BigTable (Google) and Dynamo Data Store
(Amazon).
É usado para armazenar gigantescas quantidades de dados
(BigData), de forma rápida.
Também funciona muito bem quando se faz necessário a
pesquisa de dados de forma indexada.
É voltado para trabalhar em clusters, sendo totalmente
escalável. Novos nodes podem ser adicionados, à medida que
os dados crescem.
É ainda uma excelente solução quando se necessita de alta
performance para leitura e escrita.
Algumas empresas/websites que usam Cassandra: eBay,
GitHub, GoDaddy, Instagram, Netflix, Reddit, CERN, Comcast,
entre outras.
https://coggle.it/

Outros materiais