Esse desafio consiste na criação de dois projetos.
🔹 Etapas
🔹 Banco de Dados MySQL e o SGBD MySQL Workbench
🔹 Instalação do jupyter notebook
🔹 Execução
🔹 Diagrama entidade e relacionamento
🔹 Script para Criação das estruturas das Tabelas
🔹 Etapas
🔹 Execução
Uma rede de supermercado precisa criar uma forma de conhecer melhor o seu público-alvo como tudo, indo desde as compras realizadas aos produtos mais vendidos, permitindo que a empresa possa tomar decisões mais assertivas. Dessa forma, a empresa precisa criar um processo de Big Data para ajudar nessa análise. O projeto consiste em extrair, transformar e armazenar os dados (ETL), e criar modelos de Machine Learning com o objetivo de determinar o perfil de clientes de uma rede de supermercados. Todos os dados gerados são fictícios e apenas para a realização do projeto.
O processo para alcançar o objetivo desejado consiste nas seguintes etapas:
- Coletar dados fictícios das seguintes fontes:
- compras.xls - dados das compras realizadas pelos clientes em arquivo excel
- clientes.json - dados dos clientes em arquivo JSON
- estados.txt - dados de estados dos clientes em arquivo txt
- https://profleandrolessa.wordpress.com/exercicio-de-coleta-de-dados/ - dados de produtos armazenados na web
- Criar estrutura de armazenamento usando banco de dados MySQL
- Verificar se há dados ausentes e corrigí-los
- Criar algoritmo de clusterização K-Means para o agrupamento dos dados
- Criar visualização para os dados processados
Antes de executar o projeto, é preciso atender algumas condições para que o projeto funcione corretamente:
- Instalar o MySQL Community Server e o MySQL Workbench na máquina local
- Criar um ambiente virtual
- Instalar o Jupyter Notebook na máquina local
- Instalar os pacotes necessários conforme instruções contidas no script do projeto criado no jupyter notebook
OBS: a forma de instalação desses pacotes pode mudar conforme o seu sistema operacional.
Para criar as estruturas de tabelas para armazenar os dados das compras, clientes, produtos e estados, foi utilizado o Banco de Dados relacional MySQL. Para usá-lo baixar instalar seguindo as instruções no link abaixo, dependendo do sistema operacional:
https://dev.mysql.com/downloads/mysql/
Além do servidor, é preciso instalar também o MySQL Workbench usado como o SGBD (Sistema Gerenciador de Banco de Dados), contido no link abaixo:
https://dev.mysql.com/downloads/workbench/
Um ambiente virtual é necessário para criar um ambiente isolado específico para o projeto onde vai ser instalado todos os pacotes que ele precisar. Caso não tenha o pacote virtualenv, que é para criação de ambientes virtuais, instalado, será preciso instalá-lo com os seguintes comandos:
- Executar
pip install virtualenv
no terminal do linux para instalar o pacote virtualenv - Executar
virtualenv -p python3 /path/to/directory
, onde /path/to/directory é o diretório onde será criado o ambiente virtual - Ativar o ambiente virtual com o comando
. /path/to/directory/bin/activate
Para instalar o Jupyter notebook onde será criado e processado os códigos do projeto, executar os seguintes passos:
pip install jupyter notebook
para instalar o pacote do jupyter notebookpython -m ipykernel install --user --name /path/to/directory
para informar para o jupyter que o kernel vai ser instalado no ambiente virtual criado
Para realizar o projeto foi usado um jupyter notebook instalado na máquina local Ubuntu 20.04 usando a linguagem Python.
Primeiro, é necessário baixar o arquivo do notebook do Projeto 1 e os datasets usados contido na pasta input. Depois é só executar o comando jupyter notebook
no diretório contendo o notebook baixado para abrí-lo, seguir cada passo descrito no notebook, fazendo os ajustes necessários quanto ao local de armazenamento do dataset, do arquivo gerado, e dos dados de conexão para acessar o banco MySQL.
O diagrama de modelagem relacional criado no banco MySQL encontra-se no arquivo diagrama_compras_supermercado. Basta baixar e fazer o upload dele para o MySQL Workbench para gerar o modelo.
Para criar as tabelas a partir do diagrama entidade e relacionamento feito, foi gerado o script tabelas_compras_supermercado. Basta baixá-lo, fazer o carregamento dele no MySQL Workbench e executar o script para gerar as tabelas.
Após realizarem a implantação de todas as etapas do processo de Big Data, os analistas identificaram a necessidade de entender melhor a relação entre os produtos adquiridos pelos clientes. O objetivo do projeto é encontrar padrões ocultos nos dados de vendas dos produtos de uma rede de supermercado de forma que possa auxiliar na tomada de decisão e criar promoções, saber melhor em quais prateleiras disponibilizar os produtos no supermercado, por exemplo. O projeto será implementado em uma POC (modelo de teste) usando os dados de vendas de produtos de uma outra rede de supermercado antes de aplicar o modelo nos dados de produção do supermercado.
O projeto consiste na realização das seguintes etapas:
- Coletar dados do dataset mercado.csv
- Analisar os dados coletados
- Tratar os dados
- Avaliar se há dados ausentes e corrigí-los
- Identificar os itens mais frequentes
- Criar regras de associação dos produtos
Antes de executar o projeto, é preciso atender algumas condições para que o projeto funcione corretamente:
- Criar um ambiente virtual
- Instalar o Jupyter Notebook na máquina local
- Instalar os pacotes necessários conforme instruções contidas no script do projeto criado no jupyter notebook
O passo a passo para criar um ambiente virtual e instalar o jupyter notebook encontra-se no tópico de mesmo nome do Projeto 1.
OBS: a forma de instalação desses pacotes pode mudar conforme o seu sistema operacional.
Para realizar o projeto foi usado um jupyter notebook instalado na máquina local Ubuntu 20.04 usando a linguagem Python.
Primeiro, é necessário baixar o arquivo do notebook do Projeto 2 e o dataset mercado.csv. Depois é só executar o comando jupyter notebook
no diretório contendo o notebook baixado para abrí-lo, seguir cada passo descrito no notebook, fazendo os ajustes necessários quanto ao local de armazenamento do dataset.