NOVA Information Management School

Big Data

Código

200144

Unidade Orgânica

NOVA Information Management School

Créditos

7.5

Professor responsável

Flávio Luís Portas Pinheiro

Língua de ensino

Português. No caso de existirem alunos de Erasmus, as aulas serão leccionadas em Inglês

Objectivos

Os Big Data não são mais que uma grande coleção de dados que é impossível de ser processada usando técnicas tradicionais de computação de dados. O Hadoop, por outro lado, pode ser definido como um framework completo que envolve várias ferramentas e técnicas. O curso fornece conhecimento aprofundado sobre Big Data e tecnologias Hadoop.
No final do curso, os alunos devem ser capazes de processar e analisar uma grande quantidade de dados heterogêneos para obter informações úteis sobre eles.

Pré-requisitos

Conhecimento básico de pelo menos uma linguagem de programação.

Conteúdo

O curso consiste em diferentes módulos:

- Introdução aos Big Data: desafios e motivações.

- Hadoop: a tecnologia Hadoop permite executar aplicativos em sistemas com milhares de hardware de commodities e também ajuda a lidar com dados enormes. Pode ser definido como um sistema de arquivos distribuídos que permite taxas rápidas de transferência de dados entre nós e também permite que o sistema funcione perfeitamente em caso de falha de um nó. Hadoop é uma tecnologia de computação preferida, especialmente para pequenas empresas que procuram alavancar análises para extrair informações uteis de dados importantes. Isto implica que muitos empregadores procuram contratar candidatos com conhecimento e experiência da tecnologia Hadoop. Este módulo do curso descreve a arquitetura Hadoop e suas vantagens em comparação com às técnicas tradicionais de análise de dados.

- MapReduce: MapReduce como um conceito é o coração de Hadoop. É um conceito de programação que permite ampla escalabilidade em vários servidores no cluster. MapReduce é uma parte de duas tarefas que o Hadoop executa. O MapReduce recebe um conjunto de dados e depois o converte em outro conjunto de dados. Aqui, os elementos individuais são divididos em pares de valores. Isso é conhecido como o trabalho do "map". A próxima função é reduzir o trabalho. Aqui leva a saída do "map" e, em seguida, combina estes pares de dados em um conjunto menor de pares. Portanto, assim como o nome indica o trabalho de redução é realizado somente após o trabalho do "map". No curso, a lógica do MapReduce será explicada e várias soluções para tarefas comuns serão apresentadas.

- Sqoop: O Sqoop é uma ferramenta Big Data, que possui a capacidade de extrair dados a partir de dados não-Hadoop e, em seguida, transforma os dados numa forma que é utilizável pelo Hadoop. Esses dados são posteriormente carregados no Hadoop Distributed File System. Este processo é conhecido como ETL, onde E significa Extract, T significa Transform e L significa Load. O Sqoop também tem a capacidade de obter dados do Hadoop e de uma IGNOREe de dados externa para uso em outros tipos de aplicativos.

- HIVE: a tecnologia Hadoop foi construída para organizar e armazenar enormes quantidades de dados de todas as formas, tamanhos e formatos. A Hive é usada pelos analistas de dados para pesquisar, resumir, explorar e analisar esses dados, depois transformá-lo em visão de negócio acionável. A Hive é definida como um sistema de data warehouse para o Hadoop. A tecnologia Hive foi desenvolvida pelo Facebook. Hive suporta linguagem de definição de dados (DDL), e linguagem de manipulação de dados (DML) e também funções definidas pelo usuário. Hive é usado para projetar estrutura em dados em grande parte não estruturados. Baseia-se nas operações Hadoop e MapReduce e é uma tecnologia "read-based".

- PIG: PIG é definido como uma linguagem de script de alto nível que é usada com o Hadoop. O PIG permite que os analistas de dados escrevam transformações de dados complexas e tornam isso possível mesmo para aqueles que não conhecem a linguagem de programação Java. A linguagem de script tipo SQL do PIG é conhecida como Pig Latin. Um dos principais benefícios do PIG é que o utilizador pode incorporar os scripts PIG em outros idiomas. Por isso, ele é usado como um componente para construir aplicativos maiores e mais complexos que solucionam problemas de negócios. PIG trabalha com os dados de muitas IGNOREes, que inclui dados estruturados e desestruturados e, posteriormente, armazena os resultados no sistema de arquivos de dados Hadoop.

Bibliografia

Hadoop: The Definitive Guide, Tom White.

Método de ensino

Aulas teóricas onde o professor apresentará as principais tecnologias no campo dos Big Data.

Após cada uma das aulas teóricas, os alunos deverão trabalhar numa tarefa prática.

Método de avaliação

Primeira época: dois testes durante o semestre (cada teste contribui com 50% para a nota final).

Segunda época: projeto (70%) e o grau dos mini testes da primeira época (30%).

Cursos