Informática Parte 11 Prof. Márcio Hunecke

Documentos relacionados
Informática Simulado Prof. Márcio Hunecke

Big Data Open Source com Hadoop

Informática Parte 10 Prof. Márcio Hunecke

Benjamin Bengfort Jenny Kim

APLICAÇÕES DE BIG DATA COM SPARK E PYTHON

PÓS-GRADUAÇÃO ANÁLISE DE BIG DATA

BUSINESS INTELLIGENCE E DATA WAREHOUSE. Big Data Conceitos, Técnicas, Ferramentas e Arquitetura. tutorpro.com.br cetax.com.br

Bruno Antunes da Silva UFSCar - Sorocaba

MBA ANALYTICS EM BIG DATA

Como criar seu ecossistema de dados com o Tableau no AWS

A NOVA EXPERIÊNCIA ANALÍTICA

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Data Warehouse ETL. Rodrigo Leite Durães.

Administração de Serviços de Redes. Introdução a Clusters. Prof. Dayvidson Bezerra Contato:

Nuvem e Virtualização Redes Programáveis

Governança e Big Data. Celso Poderoso

AVALIAÇÃO DE DESEMPENHO DE PROCESSAMENTO DISTRIBUÍDO EM LARGA ESCALA COM HADOOP

Agenda. O que é o Windows Admin Center? Características do Windows Admin Center. O que está em desenvolvimento. Apêndice: screenshots

Desenvolvimento de Aplicações Distribuídas

ADMINISTRAÇÃO DE BANCOS DE DADOS DO MICROSOFT SQL SERVER

CARACTERÍSTICAS Interface intuitiva. Em pouco tempo você está ambientado com o software;

BD e Cloud Gerenciamento de. Dados na Nuvem

GERAÇÃO DE ARQUIVOS DE SCRIPT EM PHP. Acadêmico: Leonardo Sommariva Orientador: Alexander Roberto Valdameri

Banco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr

Informática Parte 25 Prof. Márcio Hunecke

Entrega contínua: automatizar o pipeline de implantação

Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo

Informática Parte 23 Prof. Márcio Hunecke

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos

Conheça nossa solução Corporativa de Backup e Armazenamento

COMPONENTES CENTRAIS DO SISTEMA OPERACIONAL. Prof. Eduardo H. S. Oliveira

Arquiteturas. capítulo

Bancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.

Administradora de Consórcios. Uma nova era de treinamentos inicia agora.

Informática Parte 5 Prof. Márcio Hunecke

CASSANDRA: BANCO DE DADOS NÃO RELACIONAL DE ALTO DESEMPENHO

Informática. Cloud Computing e Storage. Professor Márcio Hunecke.

Arquitetura Orientada a eventos em ambientes complexos. Trilha - Microservices Globalcode Open4education

COMPUTAÇÃO EM NUVEM E PROCESSAMENTO MASSIVO DE DADOS Conceitos, tecnologias e aplicações

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 04: PROCESSAMENTO PARALELO: MULTICOMPUTADOR

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação.

Tipos de Clusters. Introdução. Introdução 21/03/12

Política de Privacidade Este aplicativo coleta alguns dados pessoais de seus usuários. Resumo

SIDs: ARQUITETURA DE SISTEMAS DISTRIBUÍDOS

Big Data. O que é Big Data! Como surgiu isso! Para que serve?!

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos

2 O armazenamento local e o compartilhamento de dados estão sob seu controle

MarkLogic Business Partner. O Que Há De Novo No MarkLogic 9

Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB

Especificação Técnica Sistema de Acesso

Introdução a Computação em Nuvem

Estruturas de Sistemas Operacionais

Rede de computadores Cliente- servidor. Professor Carlos Muniz

Universidade Federal da Paraíba CCEN Departamento de Informática Disciplina: Banco de Dados. Aula 1 Introdução a Banco de Dados

Executa em qualquer plataforma que possua o Java (JDK) da Oracle

EasyAzure. EasyAzure. Guia do programa. Ingram Micro Brasil. Versão 1.7

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

Introdução ao Desenvolvimento de

Características de Sistemas Distribuídos

Algoritmos e Programação

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Os dados pessoais podem ser livremente fornecidos pelo usuário, ou coletados automaticamente quando se utiliza este aplicativo.

Aula 05. Infraestrutura de TI: hardware e software Pearson. Todos os direitos reservados.

Queries em Big Data: o poder dos bancos de dados baseados em GPU. Tiago Vinícius linkedin.com/in/viniremigio/

Instalando Apache Solr no Mac OSX

5 Infraestrutura de TI

Desenvolvimento de Aplicações Distribuídas

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Redundância de com cliente Zimbra em CentOS

Características de Sistemas Distribuídos

Replicando dados para o Kafka com o Oracle GoldenGate DBA Brasil 4.0 #DB4BRASIL

O que é um sistema distribuído?

Transcrição:

Escriturário Informática Parte 11 Prof. Márcio Hunecke

Informática FERRAMENTAS DE INGESTÃO DE DADOS (SQOOP 1.4.6, FLUME 1.7.0, NIFI 1.3.0 E KAFKA 0.11.0) Visão geral sobre os quatro componentes Fazem parte do Ecossistema Hadoop. Baseados em Software Livre. Com escalabilidade horizontal (para melhor desempenho, basta adicionar mais computadores). Soluções distribuídas (usam diversos computadores). Trabalham com grande volume de dados. Sqoop Sqoop é um aplicativo de interface de linha de comando para a transferência de dados entre bancos relacionais e Hadoop. Sqoop oferece suporte a cargas incrementais de uma única tabela ou uma consulta SQL (parte de uma tabela), bem como trabalhos salvos que podem ser executados várias vezes para importar atualizações feitas em um banco de dados desde a última importação. As importações também podem ser usadas para preencher tabelas em Hive ou HBase. As exportações podem ser usadas para colocar dados do Hadoop em um banco de dados relacional. Sqoop tem o nome do SQL + Hadoop. Sqoop tornou-se um projeto Apache em março de 2012. www.acasadoconcurseiro.com.br 3

Realiza apenas a função de MAP (não faz Reduce) e pode conectar em qualquer banco de dados relacional compatível com o padrão de mercado JDBC (Java Database Connectivity) e as tarefas de importação ou importação podem ser automatizadas com o uso de Jobs (tarefas agendadas). Normalmente os dados importados para o Hadoop (HDFS) são divididos com base na chave primária e em quatro partes, chamadas de mappers (da palavra Map). A importação de dados é realizada através do comando: Outros comandos do Sqoop: import-all-tables export eval list-tables list-databases Fluxo de dados de importação de um banco de dados relacional (tabela 4 www.acasadoconcurseiro.com.br

Banco do Brasil - TI (Escriturário) Informática Márcio Henecke Visão do sistema de arquivos HDFS após importação de dados. Flume Apache Flume é um serviço distribuído, confiável e disponível via linha de comando para coletar eficientemente, agregar e mover grandes quantidades de dados de log. Tem uma arquitetura simples e flexível baseada em fluxos de dados de streaming (dados contínuos, que vão chegando com o passar do tempo). É robusto e tolerante a falhas com mecanismos de confiabilidade ajustáveis e muitos mecanismos de failover e recuperação. Ele usa um modelo de dados extensível simples que permite a aplicação analítica online (OLAP), colocando dados em memória (Memory Channel) para depois enviar ao HDFS. O Flume é muito utilizado para coletar e transformar e armazenar os dados não estruturados, como os gerados pelas redes sociais. Já vem com agentes para as redes sociais Facebook e Twitter. Comando utilizado para coletar e agregar em tempo real os dados do Twitter: Flume-ng agent n TwitterAgent c conf f path/flume.conf. www.acasadoconcurseiro.com.br 5

Fluxo de dados do Flume para agregação de dados. Ideia inicial do Flume - coletar eventos de servidores de internet (Web Servers). NiFi Apache NiFi (abreviação de Niagara Files) é um projeto de software da Apache Software Foundation utilizado no navegador e projetado para automatizar o fluxo de dados entre sistemas de software. É baseado no "Niagara Files" software previamente desenvolvido pela NSA em software livre. Com seus fluxos, é possível realizar roteamento, transformação e mediação lógica de dados. 6 www.acasadoconcurseiro.com.br

Banco do Brasil - TI (Escriturário) Informática Márcio Henecke O software é baseado no modelo de programação em fluxos e oferece recursos que incluem a capacidade de operar em clusters, segurança usando criptografia TLS, extensibilidade (os usuários podem escrever seu próprio software para estender suas habilidades) e recursos de usabilidade aprimorados como um portal que pode ser usado para visualizar e modificar o comportamento visualmente. O desenvolvimento de software e suporte comercial é oferecido atualmente pela Hortonworks. Fluxo simples para exportar eventos de um arquivo para HDFS Processos: GetFile e PutHDFS. NiFi é um programa em Java que roda em uma máquina virtual Java. Seus principais componentes são: Web Server componente baseado em HTTP usado para controlar visualmente o software e monitorar os eventos. Também é possível verificar o histórico de cada processo. Flow Controller serve como o cérebro do NiFi. Controla a execução, agenda e alocação de recursos. Extensions vários plug-ins que permitem ao NIFI interagir com vários tipos de sistemas. FlowFile repository usado pelo NiFi para manter e controlar o status do fluxo em tempo real. Content repository repositório por onde os dados processados passam. Provenance repository mantém informações sobre a origem dos dados. Fluxo complexo desenvolvido com o Nifi www.acasadoconcurseiro.com.br 7

Kafka Apache Kafka é uma plataforma de software Open-Source de processamento de fluxo desenvolvido pela Apache Software Foundation escrito em Scala e Java. O projeto tem como objetivo fornecer uma plataforma de baixa latência unificada e de alta produtividade para a manipulação de dados em tempo real. Sua camada de armazenamento é essencialmente uma fila de mensagens massivamente escalável arquitetada como um log de transações distribuída, tornando-o altamente valioso para as infraestruturas corporativas processarem dados de streaming. Além disso, Kafka se conecta a sistemas externos (para importação de dados/exportação) via Kafka Connect e fornece Kafka streams, uma biblioteca de processamento Java Stream. A primeira versão do Kafka foi criada pela equipe de TI do LinkedIn, que necessitava coletar informações (logs) de todos seus servidores sendo que nenhuma ferramenta de mercado atendia a necessidade pelo grande volume de dados. É uma plataforma de streaming com três recursos essenciais: Publicar e assinar fluxos de registros, semelhante a uma fila de mensagens ou sistema de mensagens corporativas. Armazenar fluxos de registros de maneira durável e tolerante a falhas. Processar fluxos de registros à medida que ocorrem. Principais componentes: Producer Aplicação externa que envia mensagens para Kafka. Cluster Conjunto de servidores Kafka / Zookeeper. Topic Item a ser coletado na aplicação (producer). Partition Armazenamento dos dados. Pode ser criada uma ou mais partições para cada Topic. Consumer Aplicação que lê ou recebe os dados do Kafka. 8 www.acasadoconcurseiro.com.br

Banco do Brasil - TI (Escriturário) Informática Márcio Henecke Resumo Sqoop Transferência de dados de banco de dados relacionais para HDFS. Flume Coleta e Agregação de dados streaming (Twitter) ou Logs (dados não estruturados) para HDFS. NiFi Ferramenta Web para criar processos automatizados de coleta de dados. Kafka Coleta e Agregação de Logs para HDFS. www.acasadoconcurseiro.com.br 9