{"id":1255,"date":"2018-09-17T06:21:07","date_gmt":"2018-09-17T06:21:07","guid":{"rendered":"https:\/\/lisdatasolutions.sidnpre.com\/2018\/09\/17\/big-data-paralelizacion-de-datos-con-apache-spark\/"},"modified":"2022-08-01T15:46:42","modified_gmt":"2022-08-01T15:46:42","slug":"big-data-paralelizacion-de-datos-con-apache-spark","status":"publish","type":"post","link":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/","title":{"rendered":"Big Data: paralelizaci\u00f3n de datos con Apache Spark"},"content":{"rendered":"

Apache Spark<\/strong> es un software que se encarga de distribuir o paralelizar los datos<\/strong> a la hora de analizarlos.<\/p>\n

Hoy en d\u00eda se habla mucho de la paralelizaci\u00f3n de los datos en diferentes m\u00e1quinas para procesar la informaci\u00f3n m\u00e1s r\u00e1pido<\/strong>, \u00bfpero realmente que es eso? Paralelizar los datos en diferentes m\u00e1quinas no es m\u00e1s que dividir los datos en archivos m\u00e1s peque\u00f1os. Estos archivos m\u00e1s peque\u00f1os son enviados cada uno a una m\u00e1quina diferente. De esta forma, cada m\u00e1quina procesar\u00e1 una peque\u00f1a parte del fichero inicial en lugar de analizar el fichero completo.<\/p>\n

\"spark<\/p>\n

Si tenemos el siguiente archivo: consumos.csv con 2 columnas, la primera indica la hora a la que se recogieron los datos y la segunda indica el consumo de KW\/h. Este fichero tiene 10 momentos diferentes en las que se han recogido los datos. Creamos un cl\u00faster con Spark<\/strong> como vemos en la siguiente figura:<\/p>\n

\"Spark<\/p>\n

Una de las m\u00e1quinas es la encargada de controlar las operaciones, que recibe el nombre de m\u00e1ster, y las otras dos m\u00e1quinas comunicadas con el m\u00e1ster, reciben el nombre de trabajadores. Si mandamos hallar la suma de KW\/h a nuestro cl\u00faster, que procede de la siguiente forma:<\/p>\n

    \n
  1. Divide el fichero consumos.csv en 2 ficheros, particion1.csv y particion2.csv, cada uno de ellos de 5 filas<\/li>\n
  2. Manda a una m\u00e1quina del cl\u00faster el fichero particion1.csv y a la otra el fichero particion2.csv<\/li>\n
  3. Cada m\u00e1quina del cl\u00faster hace la suma de la segunda columna y devuelve el resultado al master<\/li>\n
  4. Una vez que el master ha recibido los resultados de cada m\u00e1quina, suma las dos cantidades recibidas<\/li>\n
  5. Spark devuelve la suma total de la columna de los consumos.<\/li>\n<\/ol>\n

    Ahora bien, si queremos hallar la media del consumo, cada m\u00e1quina devuelve la suma como ha hecho antes y, tambi\u00e9n, devuelve el n\u00famero de filas que ten\u00eda el fichero que ha analizado. En nuestro ejemplo, se actuar\u00eda de la siguiente forma:<\/p>\n

      \n
    1. La m\u00e1quina que procesa el fichero particion1.csv devolver\u00eda una suma de consumos de 0.981 y el n\u00famero de filas que ha analizado: 5<\/li>\n
    2. La m\u00e1quina que procesa el fichero particion2.csv devolver\u00eda una suma de consumos de 0.864 y el n\u00famero de filas que ha analizado: 5.<\/li>\n
    3. La m\u00e1quina master, suma el n\u00famero de filas que env\u00eda cada m\u00e1quina y suma cada una de las sumas que recibe de cada una de las m\u00e1quinas y hace la siguiente divisi\u00f3n:<\/li>\n<\/ol>\n

      \"spark<\/p>\n

      Veamos de manera gr\u00e1fica c\u00f3mo calcular\u00eda la media de los consumos:<\/p>\n

      \"spark<\/p>\n

      Concluimos por lo tanto la simplicidad y velocidad que nos aporta Spark ante un problema de grandes dimensiones. Divide y vencer\u00e1s!<\/p>\n

      COMPARTE ESTE POST<\/h4>\n","protected":false},"excerpt":{"rendered":"

      Apache Spark es un software que se encarga de distribuir o paralelizar los datos a la hora de analizarlos. Hoy en d\u00eda se habla mucho de la paralelizaci\u00f3n de los datos en diferentes m\u00e1quinas para procesar la informaci\u00f3n m\u00e1s r\u00e1pido, \u00bfpero realmente que es eso? Paralelizar los datos en diferentes m\u00e1quinas no es m\u00e1s que […]<\/p>\n","protected":false},"author":1,"featured_media":1256,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[111,28],"tags":[],"acf":[],"yoast_head":"\nBig Data: paralelizaci\u00f3n de datos con Apache Spark | LIS Data Solutions<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Big Data: paralelizaci\u00f3n de datos con Apache Spark | LIS Data Solutions\" \/>\n<meta property=\"og:description\" content=\"Apache Spark es un software que se encarga de distribuir o paralelizar los datos a la hora de analizarlos. Hoy en d\u00eda se habla mucho de la paralelizaci\u00f3n de los datos en diferentes m\u00e1quinas para procesar la informaci\u00f3n m\u00e1s r\u00e1pido, \u00bfpero realmente que es eso? Paralelizar los datos en diferentes m\u00e1quinas no es m\u00e1s que […]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/\" \/>\n<meta property=\"og:site_name\" content=\"LIS Data Solutions\" \/>\n<meta property=\"article:published_time\" content=\"2018-09-17T06:21:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-01T15:46:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lisdatasolutions.com\/wp-content\/uploads\/2022\/07\/Spark-master-.-trabajador.png\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"315\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"desarrollosidn\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"desarrollosidn\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/\",\"url\":\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/\",\"name\":\"Big Data: paralelizaci\u00f3n de datos con Apache Spark | LIS Data Solutions\",\"isPartOf\":{\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/#website\"},\"datePublished\":\"2018-09-17T06:21:07+00:00\",\"dateModified\":\"2022-08-01T15:46:42+00:00\",\"author\":{\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/#\/schema\/person\/efc177f77ed679fc6d57f9392c113fea\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\/\/www.lisdatasolutions.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Big Data: paralelizaci\u00f3n de datos con Apache Spark\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/#website\",\"url\":\"https:\/\/www.lisdatasolutions.com\/es\/\",\"name\":\"LIS Data Solutions\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.lisdatasolutions.com\/es\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/#\/schema\/person\/efc177f77ed679fc6d57f9392c113fea\",\"name\":\"desarrollosidn\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.lisdatasolutions.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/96038480525a012688d34b483f879f8d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/96038480525a012688d34b483f879f8d?s=96&d=mm&r=g\",\"caption\":\"desarrollosidn\"},\"sameAs\":[\"https:\/\/www.lisdatasolutions.com\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Big Data: paralelizaci\u00f3n de datos con Apache Spark | LIS Data Solutions","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/","og_locale":"es_ES","og_type":"article","og_title":"Big Data: paralelizaci\u00f3n de datos con Apache Spark | LIS Data Solutions","og_description":"Apache Spark es un software que se encarga de distribuir o paralelizar los datos a la hora de analizarlos. Hoy en d\u00eda se habla mucho de la paralelizaci\u00f3n de los datos en diferentes m\u00e1quinas para procesar la informaci\u00f3n m\u00e1s r\u00e1pido, \u00bfpero realmente que es eso? Paralelizar los datos en diferentes m\u00e1quinas no es m\u00e1s que […]","og_url":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/","og_site_name":"LIS Data Solutions","article_published_time":"2018-09-17T06:21:07+00:00","article_modified_time":"2022-08-01T15:46:42+00:00","og_image":[{"width":600,"height":315,"url":"https:\/\/www.lisdatasolutions.com\/wp-content\/uploads\/2022\/07\/Spark-master-.-trabajador.png","type":"image\/png"}],"author":"desarrollosidn","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"desarrollosidn","Tiempo de lectura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/","url":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/","name":"Big Data: paralelizaci\u00f3n de datos con Apache Spark | LIS Data Solutions","isPartOf":{"@id":"https:\/\/www.lisdatasolutions.com\/es\/#website"},"datePublished":"2018-09-17T06:21:07+00:00","dateModified":"2022-08-01T15:46:42+00:00","author":{"@id":"https:\/\/www.lisdatasolutions.com\/es\/#\/schema\/person\/efc177f77ed679fc6d57f9392c113fea"},"breadcrumb":{"@id":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.lisdatasolutions.com\/es\/blog\/big-data-paralelizacion-de-datos-con-apache-spark\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.lisdatasolutions.com\/es\/"},{"@type":"ListItem","position":2,"name":"Big Data: paralelizaci\u00f3n de datos con Apache Spark"}]},{"@type":"WebSite","@id":"https:\/\/www.lisdatasolutions.com\/es\/#website","url":"https:\/\/www.lisdatasolutions.com\/es\/","name":"LIS Data Solutions","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lisdatasolutions.com\/es\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.lisdatasolutions.com\/es\/#\/schema\/person\/efc177f77ed679fc6d57f9392c113fea","name":"desarrollosidn","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.lisdatasolutions.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/96038480525a012688d34b483f879f8d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/96038480525a012688d34b483f879f8d?s=96&d=mm&r=g","caption":"desarrollosidn"},"sameAs":["https:\/\/www.lisdatasolutions.com\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/posts\/1255"}],"collection":[{"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/comments?post=1255"}],"version-history":[{"count":1,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/posts\/1255\/revisions"}],"predecessor-version":[{"id":3855,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/posts\/1255\/revisions\/3855"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/media\/1256"}],"wp:attachment":[{"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/media?parent=1255"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/categories?post=1255"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lisdatasolutions.com\/es\/wp-json\/wp\/v2\/tags?post=1255"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}