{"id":14977272,"url":"https://github.com/manuparra/taller_sparkr","last_synced_at":"2025-07-17T21:39:09.067Z","repository":{"id":79159446,"uuid":"72356858","full_name":"manuparra/taller_SparkR","owner":"manuparra","description":"Taller SparkR para las Jornadas de Usuarios de R","archived":false,"fork":false,"pushed_at":"2016-11-21T23:00:58.000Z","size":269,"stargazers_count":12,"open_issues_count":0,"forks_count":18,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-05T20:02:02.300Z","etag":null,"topics":["artificial-intelligence","bigdata","data-analysis","data-mining","hdfs","ipynb","machine-learning-algorithms","r","rstudio","spark","sparklyr","sparkr"],"latest_commit_sha":null,"homepage":null,"language":"HTML","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/manuparra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-10-30T15:14:19.000Z","updated_at":"2019-12-03T06:18:18.000Z","dependencies_parsed_at":null,"dependency_job_id":"3f66a552-e71a-41b4-99f0-7ee65a01fc92","html_url":"https://github.com/manuparra/taller_SparkR","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/manuparra/taller_SparkR","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuparra%2Ftaller_SparkR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuparra%2Ftaller_SparkR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuparra%2Ftaller_SparkR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuparra%2Ftaller_SparkR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/manuparra","download_url":"https://codeload.github.com/manuparra/taller_SparkR/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manuparra%2Ftaller_SparkR/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265663406,"owners_count":23807467,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["artificial-intelligence","bigdata","data-analysis","data-mining","hdfs","ipynb","machine-learning-algorithms","r","rstudio","spark","sparklyr","sparkr"],"created_at":"2024-09-24T13:55:23.346Z","updated_at":"2025-07-17T21:39:09.044Z","avatar_url":"https://github.com/manuparra.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Taller de \"Procesamiento masivo de datos con SparkR\"\n================\n\n  * [Taller de \"Procesamiento masivo de datos con SparkR\"](#taller-de-procesamiento-masivo-de-datos-con-sparkr)    \n    * [Imparte el taller](#imparte-el-taller)\n    * [Objetivos](#objetivos)\n    * [Contenido](#contenido)\n  * [Material del taller](#material-del-taller)\n    * [Descarga de la Máquina Virtual VirtualBox: All-in-one](#descarga-de-la-máquina-virtual-virtualbox-all-in-one)\n    * [Inicio del entorno de trabajo en la Máquina Virtual](#inicio-del-entorno-de-trabajo-en-la-máquina-virtual)\n    * [Entornos de trabajo disponibles](#entornos-de-trabajo-disponibles-)\n      * [Jupyter](#jupyter)\n      * [RStudio](#rstudio)\n    * [Taller práctico: Unidades de trabajo](#taller-práctico)\n\n\n\n\n\n![Spark+R](https://sites.google.com/site/manuparra/home/SparkRlogo.png)\n\n## VIII Jornadas Usuarios de R, Albacete (España) el 17-18 de noviembre de 2016\n\n![Jornadas_R_Albacete](https://sites.google.com/site/manuparra/home/jornadas_R_albacete.png)\n\n\n## Imparte el taller:\n\n\n\u003cimg src=\"https://sites.google.com/site/manuparra/home/manuparra.jpg\"\u003e\n\nManuel Jesús Parra Royón  \u003ca href=\"mailto:manuelparra@decsai.ugr.es\"\u003emanuelparra@decsai.ugr.es\u003c/a\u003e  \n\nPhD student. BigData time series data mining.\n\n\u003ca href=\"http://sci2s.ugr.es/\"\u003eDepartamento de Ciencias de la Computación e Inteligencia Artificial.\u003c/A\u003e\n\n\u003ca href=\"http://sci2s.ugr.es/dicits/\"\u003eDistributed Computational Intelligence and Time Series Laboratory \u003c/A\u003e\n\n\u003ca href=\"http://www.ugr.es\"\u003eUniversidad de Granada\u003c/a\u003e\n\n\n\n\n\n## Objetivos\n\nLos objetivos del taller de SparkR son los siguientes:\n\n* Conocer la problemática del procesamiento masivo de datos.\n* Fijar concepto y práctica sobre uso R sobre Spark para el procesado masivo de datos.\n* Instalar y configurar el sistema completo para poder trabajar con R y Spark.\n* Trabajar con datos masivos (filtrado, agregado, transformaciones), procesar datasets masivos son SparkSQL, etc..\n* Analizar datasets con las librerías de Machine Learning de los paquetes SparkR y sparklry\n* Utilizar herramientas para visualizar los datos de datasets masivos.\n\n\n## Contenido\n\nEn el taller de procesamiento masivo de datos con SparkR veremos lo siguiente:\n\n1.- Introducción al procesamiento de datos masivos.\n    Breve introducción al procesamiento de datos, el problema de trabajar con grandes conjuntos de datos, Hadoop,Motivación de Spark, características, etc...\u003cBR\u003e\n\n2.- **Notas sobre R, Spark y SparkR**\u003cBR\u003e\n    Introducción a R, motivación de R para datos 'pequeños' y datos 'grandes', Spark y sus características, biblioteca de SparkR para análisis de datos masivos con R.\u003cBR\u003e\n\n3.- **Instalación de las herramientas necesarias para el taller**\u003cBR\u003e\n    Veremos todas las herramientas necesarias para poder trabajar con el entorno de SparkR, así como la instalación y puesta en marcha de toda la infraestructura necesaria para el taller. Inicio del entorno de trabajo habitual para trabajar en el taller.\u003cBR\u003e\n\n4.- **Entorno de trabajo del taller**\u003cBR\u003e\n    Detalles del manejo del entorno de trabajo con JupyterNotebooks y Spark + R\u003cBR\u003e\n\n5.- **Inicio del entorno de trabajo**\u003cBR\u003e\n    Flujo de trabajo con Spark + R\u003cBR\u003e\n\n6.- **Primeros pasos con SparkR**\u003cBR\u003e\n    Trabajo con ejemplos de uso de Spark + R \u003cBR\u003e\n\n7.- **Lectura y Escritura de datos con SparkR**\u003cBR\u003e\n    Trabajo con fuentes de datos, y tipos de conjuntos de datos, CSV, JSON, Parquet, ... Lectura y Escritura. Esquemas, y breve trabajo con SparkSQL. \u003cBR\u003e\n\n8.- **Operaciones y procesado de SparkDataFrames**\u003cBR\u003e\n    Trabajamos y procesamos conjuntos de datos masivos con SparkSQL y funciones de agregación, filtrado, selección, etc. Usamos flujos de trabajo con magrittr. Revisamos la funcionalidad completa de la biblioteca de SparkR.\u003cBR\u003e\n\n9.- **Minería de datos con la biblioteca de SparkR**\u003cBR\u003e\n    Aplicamos las técnicas de minería de datos y Machine Learning que proporciona SparkR: GLM, KMeans, NaiveBayes y AFT.\u003cBR\u003e\n\n10.- **Minería de datos con la biblioteca sparklyr**\u003cBR\u003e\n    Utilizamos la funcionalidad de la biblioteca ``sparklyr`` para procesar conjuntos de datos. Aplicamos los métodos de minería de datos y otras operaciones.\u003cBR\u003e\n\n11.- **Visualización de datos**\u003cBR\u003e\n    Visualización de datos masivos con la herramienta Zeppelin (beta) y ``spark.ggplot2``.\n\n# Material del taller\n\n## Descarga de la Máquina Virtual VirtualBox: All-in-one\n\nLa máquina virtual para el Taller completo contiene todas las herramientas necesitas para el desarrollo del trabajo, por lo tanto es la opción más sencilla para poder empezar y ponerse manos a la obra con el taller.\n\n\nDescargar la máquina virtual del taller: https://drive.google.com/file/d/0ByPBMv-S_GMEakRCVVRTejZKVm8/view?usp=sharing (aprox: 4 GB)\n\n\nLos datos de acceso a la Máquina Virtual son:\n\n\tusuario: root\n\tclave: sparkR\n\n**Requisitos necesarios para trabajar con la Máquina Virtual:**\n\n* Tener instalado VIRTUALBOX, disponible en: https://www.virtualbox.org/wiki/Downloads\n* Disponer de al menos 2GB de RAM para la Máquina Virtual\n* El PC debe ser de 64bits y contar con al menos 4GB de RAM (2GB para la MVirtual y otros 2GB para el PC)\n* Compatible con Windows, Mac OSX y Linux\n\n\n## Inicio del entorno de trabajo en la Máquina Virtual\n\nDentro de la Máquina Virtual es necesario ejecutar los siguientes comandos antes de trabajar en el taller:\n\n1 Arrancamos el entorno de Spark:\n\n```\n\t/usr/local/spark/sbin/start-all.sh\n```\n\n2 Arrancamos JupyterNotebook:\n\n```\n\tjupyter notebook --notebook-dir=/root/TallerSparkR --no-browser --port=8888 --ip=0.0.0.0\n```\n\n## Entornos de trabajo disponibles :\n\nHay 2 entornos de trabajo disponibles para trabajar con la Máquina Virtual en SparkR.\n\n### Jupyter\n\nPara usar SparkR desde Jupyter Notebooks, accede desde tu navegador a:\n\n```\n  http://localhost:25980\n```\n\n![JupyterNotebook](https://sites.google.com/site/manuparra/home/jupyter.jpg)\n\n\n### RStudio\n\nPara usar SparkR desde RStudio, accede desde tu navegador a:\n\n```\n  http://localhost:8787\n```\n\nEl usuario por defecto es: ```test``` y la clave: ```test```\n\n![RStudio](https://sites.google.com/site/manuparra/home/rstudio.jpg)\n\nPara trabajar con SparkR desde RStudio, es necesario indicar al principio de los scripts en R:\n\n```\n# Biblioteca y ruta absoluta a SparkR\n.libPaths(c(file.path(\"/usr/local/spark/\",\"R/lib/\"),.libPaths()))\nlibrary(SparkR)\n```\n\n\n## Taller práctico.\n\nPuedes empezar el taller práctico (PARTE 2) tanto desde Jupyter como RStudio, siguiendo los siguientes enlaces a la documentación: \n\n* Parte 1. Teoría: [Presentación del taller](../../blob/master/Parte%201.%20S00.%20Presentacion%20del%20Taller.ipynb), \n[Procesamiento masivo de datos](../../blob/master/Parte%201.%20S01.%20Procesamiento%20de%20datos%20masivos.ipynb), \n[R+Spark+SparkR](../../blob/master/Parte%201.%20S02.%20R%20%2B%20Spark%20%2B%20Datos%20Masivos.ipynb), \n[Instalación de las herramientas](../../blob/master/Parte%201.%20S03.%20Instalacion%20de%20las%20herramientas%20para%20el%20Taller%20de%20SparkR.ipynb), \n[Entorno de trabajo](../../blob/master/Parte%201.%20S04.%20Entorno%20de%20trabajo%20para%20el%20taller.ipynb)\n\n* [Parte 2. S01. Inicio del entorno de trabajo](../../blob/master/Parte%202.%20S01.%20Inicio%20del%20entorno%20de%20trabajo%20con%20SparkR.ipynb)\n\n* [Parte 2. S02. Primer ejemplo con SparkR](../../blob/master/Parte%202.%20S02.%20Primer%20ejemplo%20con%20SparkR.ipynb)\n\n* [Parte 2. S03. Lectura y Escritura de datos en SparkR](../../blob/master/Parte%202.%20S03.%20Lectura%20y%20escritura%20de%20datos%20con%20SparkR.ipynb)\n\n* [Parte 2. S04. Operaciones con SparkDataFrames](../../blob/master/Parte%202.%20S04.%20Operaciones%20con%20SparkDataFrames.ipynb)\n\n* [Parte 2. S05. Minería de datos y Machine Learning con SparkR](../../blob/master/Parte%202.%20S05.%20Mineria%20de%20datos%20y%20Machine%20Learning%20con%20SparkR.ipynb)\n\n* [Parte 2. S06. Minería de datos y Machine Learning con sparklyr](../../blob/master/Parte%202.%20S06.%20Mineria%20de%20datos%20y%20Machine%20Learning%20con%20sparklyr.ipynb)\n\n* [Parte 2. S07. Visualización de datos masivos con SparkR y Zeppelin](../../blob/master/Parte%202.%20S07.%20Visualizacion%20dinamica%20de%20datos%20con%20SparkR.ipynb)\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanuparra%2Ftaller_sparkr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanuparra%2Ftaller_sparkr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanuparra%2Ftaller_sparkr/lists"}