{"id":1657,"date":"2014-12-16T19:35:38","date_gmt":"2014-12-16T19:35:38","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1657"},"modified":"2025-06-13T21:11:07","modified_gmt":"2025-06-14T04:11:07","slug":"introducing-ruby-sdk-20-developer-preview-jruby-support","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/introducing-ruby-sdk-20-developer-preview-jruby-support\/","title":{"rendered":"Presentaci\u00f3n de Ruby SDK 2.0 Developer Preview con compatibilidad con JRuby"},"content":{"rendered":"<p>Hola a todos, despu\u00e9s de largos preparativos, me complace anunciar la vista previa de la pr\u00f3xima generaci\u00f3n de API para el cliente ruby. En general, s\u00f3lo se alinea cliente rub\u00ed con todos los dem\u00e1s SDK, donde la nueva API orientada a documentos hab\u00eda sido puesto en libertad hace aproximadamente un mes.<\/p>\n<p><span style=\"font-family: inherit;font-size: 1em;line-height: 1.4375em\">Por el momento la versi\u00f3n s\u00f3lo es accesible para la implementaci\u00f3n JRuby, CRuby est\u00e1 por venir. Aqu\u00ed est\u00e1 un adelanto del nuevo dise\u00f1o.<\/span><\/p>\n<div class=\"geshifilter\">\n<div class=\"ruby geshifilter-ruby\" style=\"font-family:monospace\"><span style=\"color:#CC0066;font-weight:bold\">requiere<\/span> <span style=\"color:#996600\">couchbase<\/span><\/p>\n<p>grupo = <span style=\"color:#6666ff;font-weight:bold\">Couchbase::Cluster<\/span>.<span style=\"color:#9900CC\">nuevo<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#006600;font-weight:bold\">[<\/span><span style=\"color:#996600\">localhost<\/span><span style=\"color:#006600;font-weight:bold\">]<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span><br \/>cubo = cluster.<span style=\"color:#9900CC\">open_bucket<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#996600\">muestra de cerveza<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span><\/p>\n<p>doc = cubo.<span style=\"color:#9900CC\">consiga<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#996600\">'abbaye_de_leffe-leffe_blonde'<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span><br \/><span style=\"color:#008000;font-style:italic\"># =&gt; #&lt;Couchbase::Document:0x207513da<\/span><br \/><span style=\"color:#008000;font-style:italic\"># @cas=255200433657064,<\/span><br \/><span style=\"color:#008000;font-style:italic\"># @content=<\/span><br \/><span style=\"color:#008000;font-style:italic\"># {\"name\"=&gt;\"Leffe Blonde\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"abv\"=&gt;6,6,<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"ibu\"=&gt;0.0,<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"srm\"=&gt;0.0,<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"upc\"=&gt;0,<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"tipo\"=&gt;\"cerveza\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"brewery_id\"=&gt;\"abbaye_de_leffe\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"actualizado\"=&gt;\"2010-07-22 20:00:20\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"descripci\u00f3n\"=&gt;\"\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"style\"=&gt;\"Cerveza rubia o dorada\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># \"category\"=&gt;\"Cerveza norteamericana\"},<\/span><br \/><span style=\"color:#008000;font-style:italic\"># @expiry=0,<\/span><br \/><span style=\"color:#008000;font-style:italic\"># @id=\"abbaye_de_leffe-leffe_blonde\",<\/span><br \/><span style=\"color:#008000;font-style:italic\"># @transcode=true&gt;<\/span><\/p>\n<p>doc.<span style=\"color:#9900CC\">contenido<\/span>.<span style=\"color:#9900CC\">actualizaci\u00f3n<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#996600\">ibu<\/span> <span style=\"color:#006600;font-weight:bold\">=&gt;<\/span> <span style=\"color:#006666\">20<\/span>, <span style=\"color:#996600\">descripci\u00f3n<\/span> <span style=\"color:#006600;font-weight:bold\">=&gt;<\/span> <span style=\"color:#006600;font-weight:bold\">&lt;&lt;<\/span>EOD<span style=\"color:#006600;font-weight:bold\">)<\/span><br \/>Leffe Blond es el buque insignia de Leffe. <span style=\"color:#9900CC\">En<\/span> receta \u00fanica es la fruta<br \/>de siglos de experiencia <span style=\"color:#9966CC;font-weight:bold\">en<\/span> el arte de la elaboraci\u00f3n de la cerveza, que aporta una amplia<br \/>paleta de aromas en equilibrio.<br \/><span style=\"color:#9900CC\">EOD<\/span><\/p>\n<p>cubo.<span style=\"color:#9900CC\">sustituir<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span>doc<span style=\"color:#006600;font-weight:bold\">)<\/span><\/p>\n<p>doc = cubo.<span style=\"color:#9900CC\">consiga<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#996600\">'abbaye_de_leffe-leffe_blonde'<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span><br \/>doc.<span style=\"color:#9900CC\">contenido<\/span><span style=\"color:#006600;font-weight:bold\">[<\/span><span style=\"color:#996600\">ibu<\/span><span style=\"color:#006600;font-weight:bold\">]<\/span><br \/><span style=\"color:#008000;font-style:italic\"># =&gt; 20<\/span><\/p>\n<p>res = cubo.<span style=\"color:#9900CC\">consulta<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#996600\">cerveza<\/span>, <span style=\"color:#996600\">by_location<\/span>, <span style=\"color:#ff3333;font-weight:bold\">:nivel_grupo<\/span> <span style=\"color:#006600;font-weight:bold\">=&gt;<\/span> <span style=\"color:#006666\">1<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span><br \/><span style=\"color:#CC0066;font-weight:bold\">pone<\/span> <span style=\"color:#996600\">Los 4 primeros pa\u00edses<\/span><br \/>res.<span style=\"color:#9900CC\">filas<\/span>.<span style=\"color:#9900CC\">toma<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#006666\">4<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span>.<span style=\"color:#9900CC\">cada<\/span> <span style=\"color:#9966CC;font-weight:bold\">do<\/span> <span style=\"color:#006600;font-weight:bold\">|<\/span>fila<span style=\"color:#006600;font-weight:bold\">|<\/span><br \/>\u00a0 <span style=\"color:#CC0066;font-weight:bold\">pone<\/span> <span style=\"color:#996600\">\"#{row['key'].first}: #{row['value']}\"<\/span><br \/><span style=\"color:#9966CC;font-weight:bold\">fin<\/span><\/p>\n<p>res.<span style=\"color:#9900CC\">filas<\/span>.<span style=\"color:#9900CC\">cada<\/span> <span style=\"color:#9966CC;font-weight:bold\">do<\/span> <span style=\"color:#006600;font-weight:bold\">|<\/span>fila<span style=\"color:#006600;font-weight:bold\">|<\/span><br \/>\u00a0 cubo.<span style=\"color:#9900CC\">contador<\/span><span style=\"color:#006600;font-weight:bold\">(<\/span><span style=\"color:#996600\">'amantes_de_la_cerveza<\/span>, <span style=\"color:#006600;font-weight:bold\">+<\/span><span style=\"color:#006666\">1<\/span>inicial: <span style=\"color:#006666\">1<\/span><span style=\"color:#006600;font-weight:bold\">)<\/span> <span style=\"color:#9966CC;font-weight:bold\">si<\/span> fila<span style=\"color:#006600;font-weight:bold\">[<\/span><span style=\"color:#996600\">valor<\/span><span style=\"color:#006600;font-weight:bold\">]<\/span> <span style=\"color:#006600;font-weight:bold\">&gt;<\/span> <span style=\"color:#006666\">10<\/span><br \/><span style=\"color:#9966CC;font-weight:bold\">fin<\/span><br \/><span style=\"color:#CC0066;font-weight:bold\">pone<\/span> <span style=\"color:#996600\">\"Hay #{bucket.get('beer_lovers').content} pa\u00edses con m\u00e1s de 10 cervecer\u00edas\"<\/span><\/p>\n<p>racimo.<span style=\"color:#9900CC\">desconectar<\/span><br \/><span style=\"color:#008000;font-style:italic\"># &gt;&gt; 4 primeros pa\u00edses:<\/span><br \/><span style=\"color:#008000;font-style:italic\"># &gt;&gt; Argentina: 2<\/span><br \/><span style=\"color:#008000;font-style:italic\"># &gt;&gt; Aruba: 1<\/span><br \/><span style=\"color:#008000;font-style:italic\"># &gt;&gt; Australia: 14<\/span><br \/><span style=\"color:#008000;font-style:italic\"># &gt;&gt; Austria: 10<\/span><br \/><span style=\"color:#008000;font-style:italic\"># &gt;&gt; Hay 171 pa\u00edses con m\u00e1s de 10 f\u00e1bricas de cerveza<\/span><\/div>\n<\/div>\n<p><span style=\"font-family: inherit;font-size: 1em;line-height: 1.4375em\">La nueva versi\u00f3n ya est\u00e1 disponible en\u00a0<\/span><a href=\"https:\/\/rubygems.org\/gems\/couchbase\/versions\/2.0.0.pre.1-java\" style=\"font-family: inherit;font-size: 1em;line-height: 1.4375em\">https:\/\/rubygems.org\/gems\/couchbase\/versions\/2.0.0.pre.1-java<\/a><span style=\"font-family: inherit;font-size: 1em;line-height: 1.4375em\">\u00a0y puede instalarse con el comando gem:<\/span><\/p>\n<div class=\"geshifilter\">\n<div class=\"text geshifilter-text\" style=\"font-family:monospace\">$ jruby -S gem install couchbase -pre<br \/>Instalado con \u00e9xito couchbase-2.0.0.pre.1-java<br \/>An\u00e1lisis de la documentaci\u00f3n de couchbase-2.0.0.pre.1-java<br \/>Terminada la instalaci\u00f3n de la documentaci\u00f3n para couchbase despu\u00e9s de 0 segundos<br \/>1 gema instalada<\/div>\n<\/div>\n<p>O con gem bundler, s\u00f3lo tiene que utilizar el siguiente Gemfile<\/p>\n<div class=\"geshifilter\">\n<div class=\"ruby geshifilter-ruby\" style=\"font-family:monospace\">fuente <span style=\"color:#996600\">https:\/\/rubygems.org<\/span><\/p>\n<p>gema <span style=\"color:#996600\">couchbase<\/span>, <span style=\"color:#996600\">'~&gt; 2.0.0.pre.1'<\/span><\/div>\n<\/div>\n<p><span style=\"font-family: inherit;font-size: 1em;line-height: 1.4375em\">Por favor, deje su opini\u00f3n aqu\u00ed en los comentarios o en su nuevo foro: <a href=\"https:\/\/www.couchbase.com\/blog\/es\/forums\/c\/ruby-sdk\/\">https:\/\/www.couchbase.com\/forums\/c\/ruby-sdk<\/a>. Gracias<\/span><\/p>","protected":false},"excerpt":{"rendered":"<p>Hi everyone, after long preparations, I pleased to announce preview on next generation API for ruby client. In general it just aligns ruby client with all other SDKs, where new document-oriented API had been released about a month ago. At [&hellip;]<\/p>","protected":false},"author":25,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816,9407,2201],"tags":[],"ppma_author":[8995],"class_list":["post-1657","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","category-ruby","category-tools-sdks"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.5 (Yoast SEO v26.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Introducing Ruby SDK 2.0 Developer Preview with JRuby Support - 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\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support\" \/>\n<meta property=\"og:description\" content=\"Hi everyone, after long preparations, I pleased to announce preview on next generation API for ruby client. In general it just aligns ruby client with all other SDKs, where new document-oriented API had been released about a month ago. At [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-12-16T19:35:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T04:11:07+00:00\" \/>\n<meta name=\"author\" content=\"Sergey Avseyev, SDK Engineer, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@avsej\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sergey Avseyev, SDK Engineer, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\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\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\"},\"author\":{\"name\":\"Sergey Avseyev, SDK Engineer, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e9181374f225c90084ec3ba86bdcfa2e\"},\"headline\":\"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support\",\"datePublished\":\"2014-12-16T19:35:38+00:00\",\"dateModified\":\"2025-06-14T04:11:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\"},\"wordCount\":356,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"articleSection\":[\"Couchbase Server\",\"Ruby\",\"Tools &amp; SDKs\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\",\"name\":\"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2014-12-16T19:35:38+00:00\",\"dateModified\":\"2025-06-14T04:11:07+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#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\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support\"}]},{\"@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\/e9181374f225c90084ec3ba86bdcfa2e\",\"name\":\"Sergey Avseyev, SDK Engineer, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/796ab283bd56fe3716a102ebe16daff6\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g\",\"caption\":\"Sergey Avseyev, SDK Engineer, Couchbase\"},\"description\":\"Sergey Avseyev is a SDK Engineer at Couchbase. Sergey Avseyev is responsible for development of Kafka connector, and underlying library, which implements DCP, Couchbase replication protocol. Also maintaining PHP SDK for Couchbase.\",\"sameAs\":[\"https:\/\/x.com\/avsej\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/sergey-avseyev\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support - 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\/introducing-ruby-sdk-20-developer-preview-jruby-support\/","og_locale":"es_MX","og_type":"article","og_title":"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support","og_description":"Hi everyone, after long preparations, I pleased to announce preview on next generation API for ruby client. In general it just aligns ruby client with all other SDKs, where new document-oriented API had been released about a month ago. At [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/es\/introducing-ruby-sdk-20-developer-preview-jruby-support\/","og_site_name":"The Couchbase Blog","article_published_time":"2014-12-16T19:35:38+00:00","article_modified_time":"2025-06-14T04:11:07+00:00","author":"Sergey Avseyev, SDK Engineer, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@avsej","twitter_misc":{"Written by":"Sergey Avseyev, SDK Engineer, Couchbase","Est. reading time":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/"},"author":{"name":"Sergey Avseyev, SDK Engineer, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/e9181374f225c90084ec3ba86bdcfa2e"},"headline":"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support","datePublished":"2014-12-16T19:35:38+00:00","dateModified":"2025-06-14T04:11:07+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/"},"wordCount":356,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","articleSection":["Couchbase Server","Ruby","Tools &amp; SDKs"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/","url":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/","name":"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2014-12-16T19:35:38+00:00","dateModified":"2025-06-14T04:11:07+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#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\/introducing-ruby-sdk-20-developer-preview-jruby-support\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Introducing Ruby SDK 2.0 Developer Preview with JRuby Support"}]},{"@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\/e9181374f225c90084ec3ba86bdcfa2e","name":"Sergey Avseyev, Ingeniero SDK, Couchbase","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/796ab283bd56fe3716a102ebe16daff6","url":"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g","caption":"Sergey Avseyev, SDK Engineer, Couchbase"},"description":"Sergey Avseyev es Ingeniero SDK en Couchbase. Sergey Avseyev es responsable del desarrollo del conector Kafka, y la biblioteca subyacente, que implementa DCP, el protocolo de replicaci\u00f3n de Couchbase. Tambi\u00e9n mantiene PHP SDK para Couchbase.","sameAs":["https:\/\/x.com\/avsej"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/sergey-avseyev\/"}]}},"authors":[{"term_id":8995,"user_id":25,"is_guest":0,"slug":"sergey-avseyev","display_name":"Sergey Avseyev, SDK Engineer, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/288a892d231cf8c4e57ed0643e4681b4654a141361f6ec3c5b79ccd4d885e038?s=96&d=mm&r=g","author_category":"","last_name":"Avseyev, SDK Engineer, Couchbase","first_name":"Sergey","job_title":"","user_url":"","description":"Sergey Avseyev es Ingeniero SDK en Couchbase. Sergey Avseyev es responsable del desarrollo del conector Kafka, y la biblioteca subyacente, que implementa DCP, el protocolo de replicaci\u00f3n de Couchbase. Tambi\u00e9n mantiene PHP SDK para Couchbase."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1657","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\/25"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=1657"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1657\/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=1657"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=1657"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=1657"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=1657"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}