{"id":2198,"date":"2016-03-23T07:42:12","date_gmt":"2016-03-23T07:42:12","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2198"},"modified":"2019-05-07T02:00:47","modified_gmt":"2019-05-07T09:00:47","slug":"getting-started-with-couchbase-and-spark-on-apache-zeppelin","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/","title":{"rendered":"Primeros pasos con Couchbase y Spark en Apache Zeppelin"},"content":{"rendered":"<p>Mientras estaba en <a href=\"https:\/\/www.jdays.se\/\">JDays<\/a> en Gotemburgo, asist\u00ed a una presentaci\u00f3n sobre <a href=\"https:\/\/zeppelin.incubator.apache.org\/\">Apache Zeppelin<\/a>. Es un cuaderno basado en web que permite el an\u00e1lisis interactivo de datos. Ya soporta muchos int\u00e9rpretes como Spark, Markdown, Angular, Elastic y m\u00e1s. Realmente est\u00e1 bien integrado con Spark. Y Couchbase tiene un <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/4.1\/connectors\/spark-1.0\/spark-intro.html\">Conector de chispa<\/a>. Y como la gente detr\u00e1s de Zeppelin sab\u00eda que los usuarios de Spark querr\u00edan usar sus propias dependencias, lo hicieron realmente f\u00e1cil. F\u00e1cil en el sentido de que no tienes que escribir un plugin. Pero tienes que tener la \u00faltima versi\u00f3n.<\/p>\n<h2>Construir Apache Zeppelin<\/h2>\n<p>\u00daltima versi\u00f3n, es decir, creada a partir de las fuentes m\u00e1s recientes (aunque hay que admitir que no es \"tan\" f\u00e1cil...). Bastante simple de construir, sin embargo, clonar el <a href=\"https:\/\/github.com\/apache\/incubator-zeppelin\/\">repo<\/a>Aseg\u00farese de tener las dependencias correctas (git, jdk, npm, libfontconfig, maven) y luego dentro del repositorio escriba <code>mvn clean package -DskipTests -Pbuild-distr<\/code>. Esto construir\u00e1 el conjunto, ahora ser\u00eda un buen momento para tomar un caf\u00e9 (o tal vez jugar con el nuevo <a href=\"https:\/\/www.couchbase.com\/blog\/es\/couchbase-4.5-developer-preview-couchbase-fts\/\">b\u00fasqueda de texto completo<\/a> en Couchbase 4.5 si a\u00fan no lo ha hecho).<\/p>\n<p>Al final usted debe tener la distribuci\u00f3n construida forma fuente bajo <code>.\/zeppelin-distribution\/target\/zeppelin-0.6.0-incubating-SNAPSHOT\/zeppelin-0.6.0-incubating-SNAPSHOT\/<\/code>. Ahora para ejecutarlo simplemente escribe <code>.\/zeppelin-distribution\/target\/zeppelin-0.6.0-incubating-SNAPSHOT\/zeppelin-0.6.0-incubating-SNAPSHOT\/bin\/zeppelin-daemon.sh start<\/code>. Si vas a https:\/\/localhost:8080\/ deber\u00edas ver algo como esto:<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/startzeppelin.png\" \/><\/p>\n<h2>A\u00f1adir la dependencia de Couchbase Spark Connector<\/h2>\n<p>Ahora el objetivo es a\u00f1adir la dependencia correcta al int\u00e9rprete de Spark. Un int\u00e9rprete es la pieza de c\u00f3digo para transformar el contenido de un pad en otra cosa. As\u00ed que repasa el <strong>Int\u00e9rprete<\/strong> . Aqu\u00ed deber\u00eda ver la lista de int\u00e9rpretes disponibles. Deber\u00edas poder editar el int\u00e9rprete Spark simplemente haciendo clic en editar.<\/p>\n<p>En este punto hay dos cosas que hacer. El primer paso obligatorio es a\u00f1adir la dependencia al conector Spark de Couchbase. El segundo es a\u00f1adir una propiedad para acceder al cubo de muestras de cerveza.<\/p>\n<p>En Propiedades, a\u00f1ada <code>com.couchbase.bucket.beer-muestra<\/code> como nombre y algo como valor. Parece que hay un error en este momento que le proh\u00edbe a\u00f1adir una nueva propiedad vac\u00eda. Puedes ed<span style=\"line-height: 1.6em;\">m\u00e1s tarde.<\/span><\/p>\n<p>En Dependencias, a\u00f1ada <code>com.cou<\/code><code style=\"font-size: 13px; line-height: 1.6em;\">chbase.client:spark-connector_2.10:1.1.0<\/code><span style=\"line-height: 1.6em;\"> en artefacto. No olvides hacer clic en los botones +.<\/span><\/p>\n<p><img decoding=\"async\" style=\"line-height: 20.8px; opacity: 0.9;\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/zeppelinconfdone.png\" \/><\/p>\n<h2>Empezar a escribir Spark Pads<\/h2>\n<p>Estamos en un estado en el que podemos empezar a leer o escribir datos desde Couchbase. Siempre importo la muestra de cerveza, por alguna raz\u00f3n. As\u00ed que lo que podemos hacer es empezar a leer desde all\u00ed. Podemos crear f\u00e1cilmente un DataFrame para todos los documentos de cerveza. Por defecto el m\u00e9todo read.couchbase leer\u00e1 del bucket por defecto. As\u00ed que para asegurarnos de que leemos de la muestra de cerveza creamos una simple opci\u00f3n Map que contiene el par k\/v bucket\/muestra de cerveza. Adem\u00e1s, para asegurarnos de que s\u00f3lo obtenemos Beer y no brewery, podemos a\u00f1adir un filtro en el campo type. Estas son las dos primeras l\u00edneas que tienes que escribir en el pad para obtener un DataFrame que contenga todos los documentos de cerveza. Luego, si quieres usarlo con Spark SQL, todo lo que tienes que hacer es crear una tempTable a partir de ese DataFrame.<\/p>\n<p>Para ello, pulse <strong>Cuaderno<\/strong> y <strong>Crear nueva nota<\/strong>. Entonces deber\u00edas ver un pad vac\u00edo donde puedes empezar a escribir algo de c\u00f3digo Scala. Tambi\u00e9n puedes copiar\/pegar lo siguiente (pero recuerda que copiar\/pegar es malo).<\/p>\n<pre><code>import org.apache.spark.sql.sources.EqualTo\r\nimport com.couchbase.spark.sql._\r\n\r\nval options = Map(\"bucket\" -&gt; \"beer-sample\")\r\nval dataFrame = sqlc.read.couchbase(schemaFilter = EqualTo(\"type\", \"beer\"), options)\r\ndataFrame.registerTempTable(\"beer\")\r\n<\/code><\/pre>\n<p>Si ejecuta este p\u00e1rrafo, a\u00f1adir\u00e1 otra almohadilla de seguimiento. Por defecto el int\u00e9rprete es <code>1TP1Parque<\/code>. Si quieres usar otro int\u00e9rprete, inicia la almohadilla con su nombre. Aqu\u00ed quiero ejecutar consultas SQL de Spark. As\u00ed que empezar\u00e9 el pad con <code>%sql<\/code>. En lugar de interpretar c\u00f3digo Scala Spark como antes, interpreta directamente consultas Spark SQL.<\/p>\n<pre><code>%sql\r\nselect abv, count(1) value\r\nfrom beer \r\ngroup by abv\r\norder by abv\r\n<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/zeppelinfirsttab.png\" \/><\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/zeppelinpiechart.png\" \/><\/p>\n<p>Si miras el diagrama, ver\u00e1s que hay muchos valores que no son necesariamente \u00fatiles. Algunas cervezas tienen un valor 0 por defecto para el abv, otras tienen un abv rid\u00edculamente alto. Podemos filtrar todo eso:<\/p>\n<pre><code>%sql\r\nselect abv, count(1) value\r\nfrom beer where abv &gt; 0 and abv &lt; 15\r\ngroup by abv\r\norder by abv\r\n<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/zeppelinpiechart2.png\" \/><\/p>\n<p>Ligeramente mejor, pero a\u00fan tenemos muchos valores de abv diferentes, as\u00ed que podemos redondear as\u00ed:<\/p>\n<pre><code>%sql\r\nselect round(abv,0) roundABV, count(1) value\r\nfrom beer where abv &gt; 0 and abv &lt; 15 \r\ngroup by abv\r\norder by abv\r\n<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/zeppelinpiechart2.png\" \/>Esto empieza a ser m\u00e1s f\u00e1cil de leer. Agrup\u00e9moslos por categor\u00edas y eliminemos al mismo tiempo las categor\u00edas vac\u00edas:<\/p>\n<pre><code>%sql\r\nselect category, round(abv,0) roundABV, count(1) value\r\nfrom beer where abv &gt; 0 and abv &lt; 15 and category != \"\"\r\ngroup by abv, category\r\norder by abv\r\n<\/code><\/pre>\n<p><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2016\/march\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/zeppelinfinalchart.png\" \/><\/p>\n<p>Hay por supuesto muchas otras cosas que puedes hacer con Zeppelin pero esto deber\u00eda ser suficiente para empezar con Couchabse. Si quieres saber m\u00e1s sobre Zeppelin, puedes consultar su documentaci\u00f3n <a href=\"https:\/\/zeppelin.incubator.apache.org\/docs\/latest\/\">aqu\u00ed<\/a>Tambi\u00e9n tienen algunos buenos <a href=\"https:\/\/www.youtube.com\/watch?v=J6Ei1RMG5Xo\">v\u00eddeos<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>While I was at JDays in G\u00f6teborg, I attended a presentation about Apache Zeppelin. It&#8217;s a web-based notebook that enables interactive data analytics. It already supports many interpreters like Spark, Markdown, Angular, Elastic and more. It really is well integrated [&hellip;]<\/p>","protected":false},"author":49,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1815,1816],"tags":[1610,1609],"ppma_author":[9023],"class_list":["post-2198","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices-and-tutorials","category-couchbase-server","tag-spark","tag-zeppelin"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Couchbase and Spark on Apache Zeppelin - The Couchbase Blog<\/title>\n<meta name=\"description\" content=\"Learn more about what you can do with Zeppelin but this should be enough to get you started with Couchabse. You can check out the documentation and videos.\" \/>\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.couchbase.com\/blog\/es\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting Started with Couchbase and Spark on Apache Zeppelin\" \/>\n<meta property=\"og:description\" content=\"Learn more about what you can do with Zeppelin but this should be enough to get you started with Couchabse. You can check out the documentation and videos.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-03-23T07:42:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-05-07T09:00:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2022\/11\/couchbase-nosql-dbaas.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1800\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Laurent Doguin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ldoguin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"unstructured.io\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\"},\"author\":{\"name\":\"Laurent Doguin\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e\"},\"headline\":\"Getting Started with Couchbase and Spark on Apache Zeppelin\",\"datePublished\":\"2016-03-23T07:42:12+00:00\",\"dateModified\":\"2019-05-07T09:00:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\"},\"wordCount\":717,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"keywords\":[\"spark\",\"zeppelin\"],\"articleSection\":[\"Best Practices and Tutorials\",\"Couchbase Server\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\",\"name\":\"Couchbase and Spark on Apache Zeppelin - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2016-03-23T07:42:12+00:00\",\"dateModified\":\"2019-05-07T09:00:47+00:00\",\"description\":\"Learn more about what you can do with Zeppelin but this should be enough to get you started with Couchabse. You can check out the documentation and videos.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Getting Started with Couchbase and Spark on Apache Zeppelin\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e\",\"name\":\"Laurent Doguin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/12929ce99397769f362b7a90d6b85071\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g\",\"caption\":\"Laurent Doguin\"},\"description\":\"Laurent is a nerdy metal head who lives in Paris. He mostly writes code in Java and structured text in AsciiDoc, and often talks about data, reactive programming and other buzzwordy stuff. He is also a former Developer Advocate for Clever Cloud and Nuxeo where he devoted his time and expertise to helping those communities grow bigger and stronger. He now runs Developer Relations at Couchbase.\",\"sameAs\":[\"https:\/\/x.com\/ldoguin\"],\"honorificPrefix\":\"Mr\",\"birthDate\":\"1985-06-07\",\"gender\":\"male\",\"award\":[\"Devoxx Champion\",\"Couchbase Legend\"],\"knowsAbout\":[\"Java\"],\"knowsLanguage\":[\"English\",\"French\"],\"jobTitle\":\"Director Developer Relation & Strategy\",\"worksFor\":\"Couchbase\",\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/laurent-doguin\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Couchbase and Spark on Apache Zeppelin - The Couchbase Blog","description":"Aprende m\u00e1s sobre lo que puedes hacer con Zeppelin pero esto deber\u00eda ser suficiente para empezar con Couchabse. Puedes consultar la documentaci\u00f3n y los v\u00eddeos.","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.couchbase.com\/blog\/es\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/","og_locale":"es_MX","og_type":"article","og_title":"Getting Started with Couchbase and Spark on Apache Zeppelin","og_description":"Learn more about what you can do with Zeppelin but this should be enough to get you started with Couchabse. You can check out the documentation and videos.","og_url":"https:\/\/www.couchbase.com\/blog\/es\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-03-23T07:42:12+00:00","article_modified_time":"2019-05-07T09:00:47+00:00","og_image":[{"width":1800,"height":630,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2022\/11\/couchbase-nosql-dbaas.png","type":"image\/png"}],"author":"Laurent Doguin","twitter_card":"summary_large_image","twitter_creator":"@ldoguin","twitter_misc":{"Written by":"unstructured.io","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/"},"author":{"name":"Laurent Doguin","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e"},"headline":"Getting Started with Couchbase and Spark on Apache Zeppelin","datePublished":"2016-03-23T07:42:12+00:00","dateModified":"2019-05-07T09:00:47+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/"},"wordCount":717,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["spark","zeppelin"],"articleSection":["Best Practices and Tutorials","Couchbase Server"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/","url":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/","name":"Couchbase and Spark on Apache Zeppelin - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2016-03-23T07:42:12+00:00","dateModified":"2019-05-07T09:00:47+00:00","description":"Aprende m\u00e1s sobre lo que puedes hacer con Zeppelin pero esto deber\u00eda ser suficiente para empezar con Couchabse. Puedes consultar la documentaci\u00f3n y los v\u00eddeos.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/getting-started-with-couchbase-and-spark-on-apache-zeppelin\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Getting Started with Couchbase and Spark on Apache Zeppelin"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"El blog de Couchbase","description":"Couchbase, la base de datos NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"El blog de Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/c0aa9b8f1ed51b7a9e2f7cb755994a5e","name":"Laurent Doguin","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/12929ce99397769f362b7a90d6b85071","url":"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g","caption":"Laurent Doguin"},"description":"Laurent es un metalero empoll\u00f3n que vive en Par\u00eds. Principalmente escribe c\u00f3digo en Java y texto estructurado en AsciiDoc, y a menudo habla sobre datos, programaci\u00f3n reactiva y otras cosas de moda. Tambi\u00e9n fue Developer Advocate de Clever Cloud y Nuxeo, donde dedic\u00f3 su tiempo y experiencia a ayudar a esas comunidades a crecer y fortalecerse. Ahora dirige las relaciones con los desarrolladores en Couchbase.","sameAs":["https:\/\/x.com\/ldoguin"],"honorificPrefix":"Mr","birthDate":"1985-06-07","gender":"male","award":["Devoxx Champion","Couchbase Legend"],"knowsAbout":["Java"],"knowsLanguage":["English","French"],"jobTitle":"Director Developer Relation & Strategy","worksFor":"Couchbase","url":"https:\/\/www.couchbase.com\/blog\/es\/author\/laurent-doguin\/"}]}},"authors":[{"term_id":9023,"user_id":49,"is_guest":0,"slug":"laurent-doguin","display_name":"Laurent Doguin","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/b8c466908092b46634af916b6921f30187a051e4367ded7ac9b1a3f2c5692fd2?s=96&d=mm&r=g","author_category":"","last_name":"Doguin","first_name":"Laurent","job_title":"","user_url":"","description":"Laurent es un metalero empoll\u00f3n que vive en Par\u00eds. Principalmente escribe c\u00f3digo en Java y texto estructurado en AsciiDoc, y a menudo habla sobre datos, programaci\u00f3n reactiva y otras cosas de moda. Tambi\u00e9n fue Developer Advocate de Clever Cloud y Nuxeo, donde dedic\u00f3 su tiempo y experiencia a ayudar a esas comunidades a crecer y fortalecerse. Ahora dirige las relaciones con los desarrolladores en Couchbase."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/users\/49"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=2198"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2198\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=2198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=2198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=2198"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=2198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}