{"id":1967,"date":"2015-09-16T13:32:09","date_gmt":"2015-09-16T13:32:09","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1967"},"modified":"2015-09-16T13:32:09","modified_gmt":"2015-09-16T13:32:09","slug":"go-at-couchbase-introducing-a-go-sdk","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/go-at-couchbase-introducing-a-go-sdk\/","title":{"rendered":"Go en Couchbase: introducci\u00f3n de un SDK Go"},"content":{"rendered":"<p>Tanto Couchbase como Go tienen objetivos similares de escalabilidad y facilidad de uso. La alineaci\u00f3n natural resulta en un gran emparejamiento entre Couchbase y Go. Los desarrolladores de aplicaciones necesitan sistemas de gesti\u00f3n de datos escalables como Couchbase para los sistemas que dise\u00f1an, as\u00ed que hoy estoy emocionado de anunciar que Couchbase est\u00e1 introduciendo un SDK Go para facilitar la escalabilidad y la integraci\u00f3n sencilla con tus propios proyectos de desarrollo Go.<\/p>\n<p>Hay varias razones por las que en Couchbase nos encanta Go:<\/p>\n<ol>\n<li>Go facilita la creaci\u00f3n de aplicaciones eficientes preparadas para una alta concurrencia.<\/li>\n<li>Go facilita el trabajo con JSON a la hora de crear aplicaciones sencillas, fiables y eficientes.\u00a0<\/li>\n<li>Go es una plataforma potente y bien documentada cuyo objetivo es simplificar la sintaxis y la biblioteca est\u00e1ndar para que la comunidad pueda desarrollar el resto.\u00a0<\/li>\n<\/ol>\n<p>Veamos cada una de ellas.<\/p>\n<h2>Alta concurrencia<\/h2>\n<p>Go se centra en proporcionar a los desarrolladores construcciones sencillas que faciliten la creaci\u00f3n de programas altamente concurrentes. De este modo, las aplicaciones escritas en Go son capaces de escalar con el m\u00ednimo esfuerzo. A medida que el hardware y las arquitecturas de sistemas distribuidos evolucionan, los programas construidos en Go tienen el ADN para utilizar eficientemente esos recursos para escalar a a\u00fan m\u00e1s usuarios. Couchbase tiene objetivos similares. Queremos que la base de datos elegida por el desarrollador de la aplicaci\u00f3n sea escalable con el m\u00ednimo esfuerzo. En Go, construir para escalar se hace principalmente a trav\u00e9s de primitivas conocidas como goroutines, que expresan l\u00f3gica para ejecutar en paralelo, y canales, que mueven datos de forma segura a trav\u00e9s de la l\u00f3gica paralela.<\/p>\n<p>El SDK de Couchbase para Go funciona bien con estas construcciones. Desde el principio, buscamos dar al desarrollador de aplicaciones Go una superficie de API que encaje dentro de una aplicaci\u00f3n usando goroutines y canales. El SDK est\u00e1 dise\u00f1ado para trabajar f\u00e1cilmente con la concurrencia expresada por el desarrollador de la aplicaci\u00f3n sin a\u00f1adir sobrecarga en su propia gesti\u00f3n del trabajo que se le pide. \u00bfResultado neto? Con un esfuerzo m\u00ednimo, la aplicaci\u00f3n se beneficia de todo el rendimiento y la escala del cl\u00faster de Couchbase Server.  El Go SDK, abstrae los detalles de lo que tiene que suceder cuando se escala el cl\u00faster de Couchbase Server.\u00a0<\/p>\n<h2>Facilidad de desarrollo<\/h2>\n<p>Otra forma en la que nuestro SDK para Go combina a la perfecci\u00f3n con la filosof\u00eda en torno a Go es siendo sencillo de configurar y utilizar en una aplicaci\u00f3n. Reconociendo que una aplicaci\u00f3n Go definir\u00e1 las estructuras de datos con las que trabajar\u00e1 a trav\u00e9s de goroutines y canales, el SDK de Couchbase para Go ofrece a los desarrolladores una forma sencilla de expresar c\u00f3mo consultar y almacenar datos en un cluster de Couchbase Server. Go tiene un excelente soporte para mapear JSON a tipos de datos en Go. El SDK para Go aprovecha esto en las acciones que los desarrolladores le solicitan.  Al consultar o a\u00f1adir datos, el SDK marshal y unmarshal las respuestas JSON en las estructuras Go definidos por la aplicaci\u00f3n.<\/p>\n<p>El SDK de Couchbase para Go soporta nuevas caracter\u00edsticas en Couchbase Server que facilitan el desarrollo de aplicaciones. Couchbase <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/4.0\/n1ql\/index.html\">nuevo lenguaje de consulta N1QL<\/a> extiende SQL para trabajar con documentos JSON permitiendo a los desarrolladores consultar f\u00e1cilmente de una manera familiar.  Con la capacidad de N1QL para consultar f\u00e1cilmente datos estructurados JSON en la punta de los dedos de un desarrollador Go, los actos de encontrar, manipular y almacenar datos se vuelven f\u00e1ciles.<\/p>\n<h2>Simple en apariencia, pero ampliable<\/h2>\n<p>La comunidad Go lucha por la simplicidad manteniendo la biblioteca est\u00e1ndar y la sintaxis simples en la superficie, sin ocultar las primitivas a quienes las necesitan. Aprovechando el deseo de la comunidad Go de simplicidad con capacidades profundas, creamos dos capas en el SDK de Go.<\/p>\n<p>En primer lugar, para satisfacer al desarrollador que busca una capacidad directa para trabajar con JSON mapeado a estructuras del lenguaje Go, hemos creado una interfaz sencilla, conocida como gocb, que ofrece al desarrollador operaciones f\u00e1ciles de entender y seguras desde el punto de vista tipogr\u00e1fico. Esta interfaz tambi\u00e9n se integra r\u00e1pidamente en el marco de goroutine s\u00edncrono de Go.<\/p>\n<p>Hay algunas situaciones en las que un desarrollador necesita integrar Couchbase en un marco m\u00e1s amplio que se espera que sea utilizado por otros desarrolladores. Un ejemplo podr\u00eda ser un nuevo marco de aplicaci\u00f3n que necesite una interfaz pura y as\u00edncrona o un componente reactivo en medio de la arquitectura que mueva datos entre sistemas. Esos desarrolladores pueden necesitar interactuar estrechamente en los niveles m\u00e1s bajos de c\u00f3mo el SDK de Couchbase interact\u00faa con el cluster de Couchbase Server. Tambi\u00e9n puede haber ocasiones en las que los desarrolladores quieran saltarse el marshaling de datos para ahorrarse ese peque\u00f1o extra de procesamiento o un deseo de pasar a una interfaz 100 por cien as\u00edncrona para IO. Las necesidades de cada uno de estos casos son satisfechas por la capa gocbcore en el SDK de Couchbase para Go.<\/p>\n<h2>El futuro<\/h2>\n<p>El software evoluciona continuamente y seguiremos trabajando con las mejoras que surjan de la comunidad Go. Google ha hecho grandes avances con la gesti\u00f3n de memoria de Go 1.5 y la facilidad de desarrollo. Esperamos que las nuevas herramientas para desarrolladores y el redise\u00f1o de la gesti\u00f3n de memoria sean cosas que nos ayuden con futuras versiones de Couchbase Server, mientras que aquellos que desarrollen sus propios programas Go pueden aprovechar los cambios inmediatamente con el SDK de Couchbase para Go, que soporta Go 1.5 hoy.<\/p>\n<p>\u00bfY para los componentes de Couchbase que usan Go? Ese futuro se est\u00e1 construyendo ahora. Tenemos varios proyectos nuevos <a href=\"https:\/\/github.com\/couchbase\">publicado como c\u00f3digo abierto<\/a> que esperamos que lleguen en las pr\u00f3ximas versiones de Couchbase Server y Couchbase Mobile. La mayor\u00eda de esos proyectos tambi\u00e9n est\u00e1n escritos en Go.<\/p>\n<p>Estamos ansiosos por ver lo que los desarrolladores construyen con nuestro nuevo SDK de Couchbase para Go.<\/p>\n<p><em>Encontrar\u00e1 ejemplos de c\u00f3digo y ubicaciones para los bits y la documentaci\u00f3n en <a href=\"\/blog\/es\/go-sdk-1.0-ga\/\">Blog de Brett Lawson sobre la AG<\/a>.  Brett es el ingeniero jefe del SDK de Go.<\/em><\/p>","protected":false},"excerpt":{"rendered":"<p>Both Couchbase and Go have similar goals for scalability and ease of use. The natural alignment results in a great pairing between Couchbase and Go. Application developers need scalable data management systems like Couchbase for the systems they design, so [&hellip;]<\/p>","protected":false},"author":41,"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":[8993],"class_list":["post-1967","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Go at Couchbase - introducing a Go SDK - The Couchbase Blog<\/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\/go-at-couchbase-introducing-a-go-sdk\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Go at Couchbase - introducing a Go SDK\" \/>\n<meta property=\"og:description\" content=\"Both Couchbase and Go have similar goals for scalability and ease of use. The natural alignment results in a great pairing between Couchbase and Go. Application developers need scalable data management systems like Couchbase for the systems they design, so [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/go-at-couchbase-introducing-a-go-sdk\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2015-09-16T13:32:09+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=\"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ingenthr\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/\"},\"author\":{\"name\":\"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/35e939d9fe3dfb1a06f1714ee54bb098\"},\"headline\":\"Go at Couchbase &#8211; introducing a Go SDK\",\"datePublished\":\"2015-09-16T13:32:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/\"},\"wordCount\":926,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#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\/go-at-couchbase-introducing-a-go-sdk\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/\",\"name\":\"Go at Couchbase - introducing a Go SDK - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2015-09-16T13:32:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#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\/go-at-couchbase-introducing-a-go-sdk\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Go at Couchbase &#8211; introducing a Go SDK\"}]},{\"@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\/35e939d9fe3dfb1a06f1714ee54bb098\",\"name\":\"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/e8b5b257dfa7206fd7c2a5d628fc580b\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fd6787feb079d2c67a3835a47901bbb9c03b8921abced82a2a1f6975816df2ad?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fd6787feb079d2c67a3835a47901bbb9c03b8921abced82a2a1f6975816df2ad?s=96&d=mm&r=g\",\"caption\":\"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase\"},\"description\":\"Matt Ingenthron is the Senior Director in Engineering at Couchbase where he focuses on the developer interface across SDKs, connectors and other projects. He has been a contributor to the memcached project, one of the maintainers of the Java spymemcached client, and a core developer on Couchbase.\",\"sameAs\":[\"https:\/\/x.com\/ingenthr\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/matt-ingenthron\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Go at Couchbase - introducing a Go SDK - The Couchbase Blog","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\/go-at-couchbase-introducing-a-go-sdk\/","og_locale":"es_MX","og_type":"article","og_title":"Go at Couchbase - introducing a Go SDK","og_description":"Both Couchbase and Go have similar goals for scalability and ease of use. The natural alignment results in a great pairing between Couchbase and Go. Application developers need scalable data management systems like Couchbase for the systems they design, so [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/es\/go-at-couchbase-introducing-a-go-sdk\/","og_site_name":"The Couchbase Blog","article_published_time":"2015-09-16T13:32:09+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":"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@ingenthr","twitter_misc":{"Written by":"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase","Est. reading time":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/"},"author":{"name":"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/35e939d9fe3dfb1a06f1714ee54bb098"},"headline":"Go at Couchbase &#8211; introducing a Go SDK","datePublished":"2015-09-16T13:32:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/"},"wordCount":926,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#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\/go-at-couchbase-introducing-a-go-sdk\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/","url":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/","name":"Go at Couchbase - introducing a Go SDK - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2015-09-16T13:32:09+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/go-at-couchbase-introducing-a-go-sdk\/#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\/go-at-couchbase-introducing-a-go-sdk\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Go at Couchbase &#8211; introducing a Go SDK"}]},{"@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\/35e939d9fe3dfb1a06f1714ee54bb098","name":"Matt Ingenthron, Director Senior, Ingenier\u00eda SDK, Couchbase","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/e8b5b257dfa7206fd7c2a5d628fc580b","url":"https:\/\/secure.gravatar.com\/avatar\/fd6787feb079d2c67a3835a47901bbb9c03b8921abced82a2a1f6975816df2ad?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fd6787feb079d2c67a3835a47901bbb9c03b8921abced82a2a1f6975816df2ad?s=96&d=mm&r=g","caption":"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase"},"description":"Matt Ingenthron is the Senior Director in Engineering at Couchbase where he focuses on the developer interface across SDKs, connectors and other projects. He has been a contributor to the memcached project, one of the maintainers of the Java spymemcached client, and a core developer on Couchbase.","sameAs":["https:\/\/x.com\/ingenthr"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/matt-ingenthron\/"}]}},"authors":[{"term_id":8993,"user_id":41,"is_guest":0,"slug":"matt-ingenthron","display_name":"Matt Ingenthron, Senior Director, SDK Engineering, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/fd6787feb079d2c67a3835a47901bbb9c03b8921abced82a2a1f6975816df2ad?s=96&d=mm&r=g","first_name":"Matt","last_name":"Ingenthron","user_url":"","author_category":"","description":"Matt Ingenthron es el Director Senior de Ingenier\u00eda en Couchbase, donde se centra en la interfaz de desarrollador a trav\u00e9s de SDKs, conectores y otros proyectos.  Ha sido colaborador del proyecto memcached, uno de los mantenedores del cliente Java spymemcached y desarrollador principal de Couchbase."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1967","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\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=1967"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1967\/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=1967"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=1967"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=1967"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=1967"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}