{"id":1929,"date":"2015-05-06T16:27:56","date_gmt":"2015-05-06T16:27:56","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1929"},"modified":"2023-06-27T22:52:58","modified_gmt":"2023-06-28T05:52:58","slug":"couchbase-spark-connector-developer-preview-refresh","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/couchbase-spark-connector-developer-preview-refresh\/","title":{"rendered":"Conector Spark de Couchbase - Actualizaci\u00f3n de la vista previa para desarrolladores"},"content":{"rendered":"<p>Hac\u00eda tiempo que no present\u00e1bamos <a href=\"https:\/\/www.couchbase.com\/blog\/es\/introducing-the-couchbase-spark-connector\/\">el primer avance para desarrolladores<\/a> de nuestro nuevo Couchbase Spark Connector. As\u00ed que pensamos que era el momento para otra versi\u00f3n, proporcionando mejoras y un pu\u00f1ado de nuevas caracter\u00edsticas. En particular:<\/p>\n<ol>\n<li>Soporte nativo para Spark SQL<\/li>\n<li>Compatibilidad nativa con Spark Streaming<\/li>\n<li>Ubicaciones preferidas para el acceso a claves\/valores<\/li>\n<li>Actualizaciones de dependencia<\/li>\n<\/ol>\n<p>Y lo que es m\u00e1s importante, ahora utilizamos <a href=\"https:\/\/spark.apache.org\/releases\/spark-release-1-3-0.html\">Apache Spark 1.3<\/a>que ser\u00e1 la versi\u00f3n de destino de la versi\u00f3n GA del conector.<\/p>\n<p>Si quieres sumergirte ahora mismo, aqu\u00ed tienes las coordenadas:<\/p>\n<ol>\n<li>ID de grupo: com.couchbase.client<\/li>\n<li>ID del objeto: spark-connector_2.10 o spark-connector_2.11<\/li>\n<li>Versi\u00f3n: 1.0.0-dp2<\/li>\n<\/ol>\n<p>Aseg\u00farese de incluir el repositorio Couchbase ya que es una versi\u00f3n preliminar:<\/p>\n<p>Adem\u00e1s de la dependencia simple de maven, ahora tambi\u00e9n estamos disponibles en <a href=\"https:\/\/spark-packages.org\/package\/couchbaselabs\/couchbase-spark-connector\">spark-packages.org<\/a>!<\/p>\n<h2>Soporte Spark SQL<\/h2>\n<p>La principal raz\u00f3n para actualizar a Spark 1.3 es la compatibilidad con la nueva API DataFrame. La nueva API DataFrame se basa en SQL y nos permite integrar estrechamente la implementaci\u00f3n espec\u00edfica del lenguaje de couchbase, N1QL. Esto proporciona una experiencia de extremo a extremo sin fisuras que es a la vez familiar y estrechamente integrada.<\/p>\n<p>El conector te permite definir relaciones (Couchbase por s\u00ed mismo no impone un esquema) y puedes proporcionar un esquema manualmente o puedes dejar que el conector lo infiera por ti. Si quieres la inferencia autom\u00e1tica del esquema, es una buena idea proporcionar alg\u00fan tipo de filtro (por ejemplo, en un campo de tipo) para obtener una mayor precisi\u00f3n. El conector cargar\u00e1 de forma transparente documentos de muestra y crear\u00e1 un esquema por usted que podr\u00e1 consultar.<\/p>\n<p>He aqu\u00ed un ejemplo con la muestra de viajes actual:<\/p>\n<p>Esto le imprimir\u00e1 primero un esquema como:<\/p>\n<p>Y luego los resultados en el formato de:<\/p>\n<p>Si bien esto es genial para trabajar, el verdadero poder viene cuando se desea combinar DataFrames de diferentes fuentes. El siguiente ejemplo obtiene datos de HDFS y Couchbase y los consulta conjuntamente:<\/p>\n<p>Tenga en cuenta que actualmente los objetos JSON anidados y las matrices no est\u00e1n soportados, pero lo estar\u00e1n en la pr\u00f3xima versi\u00f3n. Pueden aparecer en el esquema, pero fallar\u00e1n durante la consulta (cuando desee consultar uno de esos campos o incluirlo en el resultado).<\/p>\n<h2>Compatibilidad con Spark Streaming<\/h2>\n<p>La primera vista previa para desarrolladores ya ofrec\u00eda soporte para escribir datos de un flujo Spark en Couchbase. En esta vista previa para desarrolladores, hemos a\u00f1adido soporte experimental para utilizar nuestro protocolo \"DCP\" para alimentar mutaciones e informaci\u00f3n instant\u00e1nea lo m\u00e1s r\u00e1pido posible en Spark. Puedes utilizar esto para el an\u00e1lisis casi en tiempo real de los datos a medida que llegan a tu cl\u00faster Couchbase.<\/p>\n<p>Tenga en cuenta que actualmente no est\u00e1n implementadas las instant\u00e1neas ni la reversi\u00f3n, por lo que la conmutaci\u00f3n por error y el reequilibrio no funcionar\u00e1n como se espera.<\/p>\n<p>He aqu\u00ed un ejemplo sencillo de c\u00f3mo introducir cambios desde su cubo:<\/p>\n<p>Eso es todo lo que necesitas hacer en este momento. Aseg\u00farese de probarlo en un cubo vac\u00edo, porque actualmente le proporcionar\u00e1 tambi\u00e9n todos los datos del cubo. Las capacidades para comenzar en la instant\u00e1nea actual se a\u00f1adir\u00e1n en una futura versi\u00f3n. Si ejecutas el c\u00f3digo y luego escribes documentos en el bucket, Spark Streaming te notificar\u00e1 esos cambios:<\/p>\n<p>A continuaci\u00f3n, puede filtrar las mutaciones y realizar cualquier tipo de operaci\u00f3n de flujo en ellos, incluyendo la alimentaci\u00f3n de ellos en un algoritmo de aprendizaje autom\u00e1tico o el almacenamiento en un almac\u00e9n de datos diferente despu\u00e9s del procesamiento (o incluso de nuevo en couchbase).<\/p>\n<h2>Ubicaciones preferidas para el acceso a claves\/valores<\/h2>\n<p>Uno de los asesinos del rendimiento cuando se utiliza Spark son las operaciones shuffle. Un \"shuffle\" es una operaci\u00f3n que consiste en transferir datos de un trabajador a otro a trav\u00e9s de la red. Dado que el tr\u00e1fico de red siempre es varios \u00f3rdenes de magnitud m\u00e1s lento que el procesamiento en memoria, es necesario evitar las operaciones aleatorias en la medida de lo posible.<\/p>\n<p>Cuando est\u00e1s cargando documentos a trav\u00e9s de sus IDs \u00fanicos, el conector ahora siempre (y de forma transparente) indica a Spark d\u00f3nde se encuentra el documento en Couchbase. Como resultado, si despliegas un Spark Worker en cada nodo de Couchbase, Spark ser\u00e1 lo suficientemente inteligente como para enviar la tarea directamente a este trabajador, eliminando la necesidad de transferir el documento a trav\u00e9s de la red y permitiendo el procesamiento local.<\/p>\n<p>Dado que la ubicaci\u00f3n es s\u00f3lo una pista, puede ejecutar sus trabajadores en diferentes nodos y Spark los enviar\u00e1 correctamente si no puede encontrar una coincidencia perfecta.<\/p>\n<p>En el futuro, tambi\u00e9n planificaremos las ubicaciones preferidas para las b\u00fasquedas N1QL y View en funci\u00f3n del nodo de destino en el que se ejecutar\u00e1 la consulta.<\/p>\n<h2>Funciones previstas y pr\u00f3ximos pasos<\/h2>\n<p>Aunque esta versi\u00f3n nos acerca a la finalizaci\u00f3n, a\u00fan nos quedan muchas cosas por completar. El pr\u00f3ximo hito ser\u00e1 una versi\u00f3n beta e incluir\u00e1 funciones como la API java, mejoras en la compatibilidad con Spark SQL y Streaming y, por supuesto, correcciones y mejoras de estabilidad a medida que las vayamos encontrando.<\/p>\n<p>Dado que a\u00fan no hemos llegado a la versi\u00f3n beta, te rogamos que nos proporciones todos los comentarios posibles mientras podemos modificar la API seg\u00fan sea necesario.<\/p>","protected":false},"excerpt":{"rendered":"<p>It&#8217;s been a while since we&#8217;ve introduced the first developer preview of our brand new Couchbase Spark Connector. So we thought it&#8217;s time for another release, providing enhancements and a handful of new features. In particular: Native Support for Spark [&hellip;]<\/p>\n","protected":false},"author":19,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1],"tags":[],"ppma_author":[8987],"class_list":["post-1929","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Couchbase Spark Connector - Developer Preview Refresh<\/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.couchbase.com\/blog\/es\/couchbase-spark-connector-developer-preview-refresh\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase Spark Connector - Developer Preview Refresh\" \/>\n<meta property=\"og:description\" content=\"It&#8217;s been a while since we&#8217;ve introduced the first developer preview of our brand new Couchbase Spark Connector. So we thought it&#8217;s time for another release, providing enhancements and a handful of new features. In particular: Native Support for Spark [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/couchbase-spark-connector-developer-preview-refresh\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2015-05-06T16:27:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-28T05:52:58+00:00\" \/>\n<meta name=\"author\" content=\"Michael Nitschinger\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@daschl\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Michael Nitschinger\" \/>\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\\\/couchbase-spark-connector-developer-preview-refresh\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/\"},\"author\":{\"name\":\"Michael Nitschinger\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/person\\\/e5d4d332756da6f361dd88c1576de61d\"},\"headline\":\"Couchbase Spark Connector &#8211; Developer Preview Refresh\",\"datePublished\":\"2015-05-06T16:27:56+00:00\",\"dateModified\":\"2023-06-28T05:52:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/\"},\"wordCount\":813,\"commentCount\":11,\"publisher\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"articleSection\":[\"Uncategorized\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/\",\"name\":\"Couchbase Spark Connector - Developer Preview Refresh\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2015-05-06T16:27:56+00:00\",\"dateModified\":\"2023-06-28T05:52:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/couchbase-spark-connector-developer-preview-refresh\\\/#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\\\/couchbase-spark-connector-developer-preview-refresh\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase Spark Connector &#8211; Developer Preview Refresh\"}]},{\"@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\\\/e5d4d332756da6f361dd88c1576de61d\",\"name\":\"Michael Nitschinger\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g95e178617974d46e3b02dd1754a3f60b\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g\",\"caption\":\"Michael Nitschinger\"},\"description\":\"Michael Nitschinger works as a Principal Software Engineer at Couchbase. He is the architect and maintainer of the Couchbase Java SDK, one of the first completely reactive database drivers on the JVM. He also authored and maintains the Couchbase Spark Connector. Michael is active in the open source community, a contributor to various other projects like RxJava and Netty.\",\"sameAs\":[\"https:\\\/\\\/nitschinger.at\",\"https:\\\/\\\/x.com\\\/daschl\"],\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/es\\\/author\\\/michael-nitschinger\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Conector Spark de Couchbase - Actualizaci\u00f3n de la vista previa para desarrolladores","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\/couchbase-spark-connector-developer-preview-refresh\/","og_locale":"es_MX","og_type":"article","og_title":"Couchbase Spark Connector - Developer Preview Refresh","og_description":"It&#8217;s been a while since we&#8217;ve introduced the first developer preview of our brand new Couchbase Spark Connector. So we thought it&#8217;s time for another release, providing enhancements and a handful of new features. In particular: Native Support for Spark [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/es\/couchbase-spark-connector-developer-preview-refresh\/","og_site_name":"The Couchbase Blog","article_published_time":"2015-05-06T16:27:56+00:00","article_modified_time":"2023-06-28T05:52:58+00:00","author":"Michael Nitschinger","twitter_card":"summary_large_image","twitter_creator":"@daschl","twitter_misc":{"Written by":"Michael Nitschinger","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/"},"author":{"name":"Michael Nitschinger","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e5d4d332756da6f361dd88c1576de61d"},"headline":"Couchbase Spark Connector &#8211; Developer Preview Refresh","datePublished":"2015-05-06T16:27:56+00:00","dateModified":"2023-06-28T05:52:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/"},"wordCount":813,"commentCount":11,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","articleSection":["Uncategorized"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/","url":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/","name":"Conector Spark de Couchbase - Actualizaci\u00f3n de la vista previa para desarrolladores","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2015-05-06T16:27:56+00:00","dateModified":"2023-06-28T05:52:58+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-spark-connector-developer-preview-refresh\/#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\/couchbase-spark-connector-developer-preview-refresh\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase Spark Connector &#8211; Developer Preview Refresh"}]},{"@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\/e5d4d332756da6f361dd88c1576de61d","name":"Michael Nitschinger","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g95e178617974d46e3b02dd1754a3f60b","url":"https:\/\/secure.gravatar.com\/avatar\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g","caption":"Michael Nitschinger"},"description":"Michael Nitschinger trabaja como Ingeniero de Software Principal en Couchbase. Es el arquitecto y mantenedor del SDK Java de Couchbase, uno de los primeros controladores de bases de datos completamente reactivos en la JVM. Tambi\u00e9n es autor y mantiene el conector Spark de Couchbase. Michael participa activamente en la comunidad de c\u00f3digo abierto, contribuyendo a otros proyectos como RxJava y Netty.","sameAs":["https:\/\/nitschinger.at","https:\/\/x.com\/daschl"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/michael-nitschinger\/"}]}},"acf":[],"authors":[{"term_id":8987,"user_id":19,"is_guest":0,"slug":"michael-nitschinger","display_name":"Michael Nitschinger","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/dad99b5e02a74ca4bec14352e9da710160647a97290814b669babb3aac0ea675?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1929","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\/19"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=1929"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1929\/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=1929"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=1929"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=1929"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=1929"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}