Analisando propostas

Exercício Big Data com Apache Spark

Publicado em 19 de Outubro de 2024 dias na TI e Programação

Sobre este projeto

Aberto

Preciso que seja resolvido 7 etapas de um exercício sobre Big Data usando Apache Spark e seja explicado em um vídeo como foi feito e porque foi feito de tal maneira, e também explicando aspectos conceituas de big data.

1 Desenvolver aplicações utilizando as bibliotecas do Apache Spark RDD e Spark SQL

Selecione três conjuntos de dados de sua escolha (um no formato csv, um em json e outro em orc) de fontes abertas, como dados do dados abertos gob.Br, github, uci machine learning repository ou o kaggle. Carregue e manipule esses dados no Apache Spark utilizando Spark RDD ou Spark SQL. Siga os passos abaixo:

Leia os três conjuntos de dados em Spark.
Exiba o schema dos dados lidos.
Realize uma contagem de registros de cada conjunto de dados.
Selecione colunas específicas de cada conjunto e exiba os valores.

2 Operações com Spark RDD

Utilizando Spark RDD em Python, realize as seguintes operações com um conjunto de dados fictício:

vendas = [('produto1', 150), ('produto2', 200), ('produto3', 50), ('produto4', 120), ('produto1', 100)]

Realize as seguintes operações:

Liste todos os elementos do RDD.
Use map para calcular um desconto de 10% sobre os valores das vendas.
Conte quantas vezes cada produto aparece.
Calcule a soma total das vendas por produto usando reduceByKey.
Filtre os produtos com valor de venda acima de 100.
Salve o resultado em um arquivo .json.

3 Processamento de Dados com Spark SQL

Utilizando o conjunto de dados Wine Quality (disponível em UCI Machine Learning Repository em https://archive.ics.uci.edu/dataset/186/wine+quality), realize as seguintes operações:

Carregue os dados no Spark como um DataFrame.
Exiba o schema completo dos dados.
Selecione apenas as colunas fixed acidity, residual sugar e quality.
Crie uma tabela temporária e, em SQL, faça as seguintes consultas:
Liste os vinhos com quality maior ou igual a 7.
Calcule a média de residual sugar para vinhos com quality maior que 5.
Liste os diferentes valores da coluna quality.
4 Spark Streaming com JSON

Crie uma aplicação de Spark Structured Streaming que leia em tempo real arquivos CSV, simulando um fluxo de dados de transações financeiras:

Cada linha do CSV contém: id_transacao, valor, data, status.
Leia esses arquivos em intervalos de 2 segundos.
Filtre e exiba as transações com valores superiores a 1.000.
Faça um agrupamento por status (aprovado, pendente, cancelado) e conte o número de transações para cada status.
Exiba os resultados no console.

5 Pré-processamento de Dados com Spark

Utilize o conjunto de dados Bike Sharing (disponível no Kaggle em https://www.kaggle.com/c/bike-sharing-demand/data) para as operações a seguir:

Carregue os dados no Spark.
Substitua os valores ausentes na coluna temp pela mediana dos valores.
Crie uma nova coluna rentabilidade, que é o valor de cnt dividido pela soma de temp e hum (umidade).
Use StringIndexer para transformar a coluna categórica season.
Use VectorAssembler para combinar as colunas rentabilidade, season_indexed, temp e hum em uma nova coluna chamada features.
6 Análise Exploratória de Dados com Python e Spark

Usando o dataset Movies Dataset do Kaggle disponível em https://www.kaggle.com/datasets/rounakbanik/the-movies-dataset:

Realize uma análise exploratória utilizando PySpark.
Verifique se existem valores ausentes e remova-os.
Calcule e exiba as estatísticas descritivas das colunas budget, revenue, e runtime.
Use Matplotlib para gerar um gráfico de dispersão (scatter plot) que compare o orçamento (budget) com a receita (revenue).
Converta o DataFrame do Pandas para um DataFrame do Spark e salve o resultado em disco ou em um banco de dados NoSQL (por exemplo, MongoDB).

7 Aplicação de Modelos de Machine Learning com Spark ML

Utilizando o conjunto de dados Loan Prediction (disponível no Kaggle em https://www.kaggle.com/datasets/ninzaami/loan-predication), siga as etapas abaixo:

Faça o pré-processamento do conjunto de dados (exclusão de nulos e transformação de colunas categóricas com StringIndexer).
Separe o conjunto de dados em 80% para treino e 20% para teste.
Aplique o algoritmo de classificação DecisionTreeClassifier para prever a probabilidade de um empréstimo ser aprovado (Loan_Status).
Exiba a acurácia do modelo, além de outras métricas, como a matriz de confusão.
Utilize também o modelo Gradient-Boosted Trees e compare o desempenho entre os dois modelos.
Antes de fazer sua entrega, reúna todos os arquivos relativos ao seu at em um único arquivo no formato pdf. Utilize seu próprio nome para nomear o arquivo, identificando também o teste correspondente, como no exemplo: Nome_sobrenome_DR4_AT.pdf.

Categoria TI e Programação
Subcategoria Data Science
Tamanho do projeto Pequeño
Isso é um projeto ou uma posição de trabalho? Um projeto
Disponibilidade requerida Conforme necessário

Prazo de Entrega: 31 de Outubro de 2024

Outro projetos publicados por A.