## Projeto Big Data turma 419 ![](https://i.imgur.com/dBNsFcL.png) # Projeto final do Modulo de Big Data # Data de Entrega: 09/11/2020 email: lucasmartins.cloud@gmail.com # Proposta: Fazer análise dos resultados de partidas de futebol existentes no arquivo result.csv O dataset foi retirado do desafio existente no kaggel. https://www.kaggle.com/martj42/international-football-results-from-1872-to-2017 | Campo Arquivo | Campo Hive | Tipo | Descrição | |----------------|----------------------|---------|------------------------------------------------------------------------| | date | Data | date | quando jogo ocorreu | | home_teamName | equipe_mandante | string | equipe da casa | | away_teamName | equipe_visitante | string | equipe visitante | | home_scoreHome | gol_equipe_mandante | int | pontuação equipe da casa | | away_scoreAway | gol_equipe_visitante | int | pontuação equipe visitante | | tournamentName | torneio | string | torneio | | cityCity | cidade | string | onde o jogo aconteceu | | countryCountry | pais | string | onde a partida ocorreu | | neutralTRUE | fora_pais | boolean | se o jogo ocorreu fora do país da equipe da casa, FALSE caso contrário | # Passos: 1- Importar o arquivo result.csv para o HDFS 2 - Criar uma tabela no Hive com o nome de resultado, onde seja possível realizar consultas no arquivo result.csv. O nome das colunas devem respeitar o tipo e a nomenclatura informada acima. Executar uma query simples no HUE retornando as 5 primeiras linhas da tabela criada. 3 - Realizar análise utilizando Spark: AJUDA: copiar o hive-site.xml para o conf do Spark. ``` sudo cp /etc/hive/conf/hive-site.xml /etc/spark/conf/ ``` AJUDA: Para ler a tabela Hive e criar o dataframe, utilize o script abaixo: ``` from pyspark.sql import HiveContext h = HiveContext(sc) df = h.sql("select * from default.resultado") ``` Após a criação do dataframe, responda as questões abaixo. * a - quantos registro existem no dataframe * b - quantas equipes únicas mandantes existem no dataframe * c - quantas vezes as equipes mandantes saíram vitoriosas * d - quantas vezes as equipes visitantes saíram vitoriosas * e - quantas partidas resultaram em empate * f - a partir de um dataframe, crie uma tabela no Hive com o nome de partida_pais com o * total de partida em cadas país * g - utilizando o hive e a tabela partida_pais, em qual país teve mais partidas. O que enviar: * 1 - Print do ls com o arquivo no HDFS (hdfs.jpeg) * 2 - Um arquivo chamado tabela.txt com o DDL de criação da tabela no HIVE. * 3 - Print da query executada no HUE com os 5 primeiros registros da tabela (hue.jpeg) * 4 - Um arquivo chamado resposta.txt com as respostas das 7 perguntas * 5 - Um arquivo analise.py com os comandos executados para a análise no Spark. **hive-site.xml** ``` <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!-- Hive Configuration can either be stored in this file or in the hadoop configuration files --> <!-- that are implied by Hadoop setup variables. --> <!-- Aside from Hadoop setup variables - this file is provided as a convenience so that Hive --> <!-- users do not have to edit hadoop configuration files (that may be managed as a centralized --> <!-- resource). --> <!-- Hive Execution Parameters --> <property> <name>hive.execution.engine</name> <value>spark</value> <description> Chooses execution engine. </description> </property> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://127.0.0.1/metastore?createDatabaseIfNotExist=true</value> <description>JDBC connect string for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hive</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>cloudera</value> </property> <property> <name>hive.hwi.war.file</name> <value>/usr/lib/hive/lib/hive-hwi-0.8.1-cdh4.0.0.jar</value> <description>This is the WAR file with the jsp content for Hive Web Interface</description> </property> <property> <name>datanucleus.fixedDatastore</name> <value>true</value> </property> <property> <name>datanucleus.autoCreateSchema</name> <value>false</value> </property> <property> <name>hive.metastore.uris</name> <value>thrift://127.0.0.1:9083</value> <description>IP address (or fully-qualified domain name) and port of the metastore host</description> </property> </configuration> ```