{"id":1810,"date":"2014-12-16T17:51:09","date_gmt":"2014-12-16T17:51:08","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1810"},"modified":"2020-02-23T12:16:23","modified_gmt":"2020-02-23T20:16:23","slug":"understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/","title":{"rendered":"Spymemcached Java y la selecci\u00f3n de puntos de datos significativos"},"content":{"rendered":"<h4>Post invitado: Eric Lambert<\/h4>\n<p>El cliente Java Spymemcached es el principal cliente Java utilizado por las aplicaciones basadas en Java que necesitan hacer uso de los servidores Memcached. La raz\u00f3n por la que Spy se ha hecho tan popular en la comunidad Java es que ha sido altamente optimizado y que proporciona un rendimiento excepcional, pero al mismo tiempo lo hace sin cargar al usuario con una complejidad excesiva.<\/p>\n<p>Para los casos m\u00e1s t\u00edpicos, los usuarios s\u00f3lo tienen que utilizar la siguiente \"plantilla <strong><code> List servers = new ArrayList(); servers.add(new InetSocketAddress(\"192.168.0.9\",11211); MemcachedClient client = new MemcachedClient(new BinaryConnectionFactory();, servers); <\/code><\/strong> En ese momento est\u00e1n listos para empezar a realizar operaciones en su cluster de servidores Memcached. Aunque Spy proporciona una interfaz muy sencilla y f\u00e1cil de usar, no lo hace a expensas de la flexibilidad necesaria para ajustar el sistema. Bajo las cubiertas, Spy le proporciona muchas maneras de ajustar el sistema. En este blog, profundizar\u00e9 en algunos de los mandos e interruptores que ofrece Spy. Espero ayudarle a comprender mejor c\u00f3mo se comporta Spy y c\u00f3mo puede ajustarlo para que se adapte mejor a sus necesidades cuando el comportamiento predeterminado no sea suficiente. Pero antes de entrar en detalles, quiero empezar con un tutorial de Spymemcached muy simple, sencillo y algo ingenuo y utilizarlo para ilustrar un punto bastante significativo.<\/p>\n<p>Digamos que estoy evaluando Spymemcached por primera vez y quiero entender c\u00f3mo se comporta mi sistema al hacer una serie de sets, gets y deletes. Para ello, puedo crear un programa sencillo que primero establezca una serie de entradas en la cach\u00e9, luego recupere cada una de estas entradas y finalmente vaya y borre cada una de estas entradas. Puedo instrumentar el c\u00f3digo para hacer esto de tal manera que rastree el tiempo total que toma hacer todos los sets, gets, y deletes. El c\u00f3digo para esto podr\u00eda ser algo como lo siguiente <code><strong> \/\/ realiza sets long start = System.nanoTime(); for (int i = 0; i &lt; numberOfOps; i++) { client.set(KEY_PREFIX + i, 3600, PAY_LOAD).get(); } long end = System.nanoTime(); long setTime = end - start; \/\/ realiza gets start = System.nanoTime(); for (int = 0; i &lt; numberOfOps; i++) { client.get(KEY_PREFIX + i); } end = System.nanoTime(); long getTime = end - start; \/\/ realiza borrados start = System.nanoTime(); for (int i = 0; i &lt; numberOfOps; i++) { client.delete(KEY_PREFIX + i).get(); } end = System.nanoTime(); long delTime = end - start; System.out.println(numberOfOps + &quot; Set: &quot; + setTime \/ nanosPerSec + &quot; Promedio: &quot; + setTime \/ numberOfOps); System.out.println(numberOfOps + &quot; Get: &quot; + getTime \/ nanosPerSec + &quot; Promedio: &quot; + getTime \/ numberOfOps); System.out.println(numberOfOps + &quot; Delete: &quot; + delTime \/ nanosPerSec + &quot; Promedio: &quot; + delTime \/ numberOfOps);<\/strong> <\/code> Ahora bien, como he mencionado antes, se trata de un caso de uso bastante ingenuo y poco realista.  No obstante, este burdo ejemplo tiene una importante lecci\u00f3n que ense\u00f1arnos.<\/p>\n<p>Veamos qu\u00e9 ocurre cuando ejecutamos esta prueba utilizando diferentes valores para el par\u00e1metro <code>numberOfOps<\/code>. Si fijamos <code>numberOfOps<\/code> a 10.000, nuestro rendimiento podr\u00eda ser algo parecido a lo siguiente: <strong><code>10000 Set: 3.008377 Promedio: 300837 10000 Obtener: 1.730886 Promedio: 173088 10000 Borrar: 1.172679 Media: 117267<\/code> Ahora, subamos un poco la apuesta y veamos qu\u00e9 ocurre cuando aumentamos el <code>n\u00fameroDeOperaciones<\/code> por un factor de 10 y aj\u00fastalo a 100.000: <code>100000 Conjunto: 10.710224 Promedio: 107102 100000 Obtener: 9,992544 Media: 99925 100000 Borrar: 9,876984 Media: 98769<\/code><\/strong> Lo interesante es que, aunque aumentamos la carga de trabajo, el tiempo medio que tard\u00f3 en completarse cada operaci\u00f3n se redujo significativamente. Vemos un descenso de casi 66% en la latencia de las operaciones de establecimiento, de casi 40% en la latencia de las operaciones de obtenci\u00f3n y de 15% en la latencia de las operaciones de borrado. Veamos ahora qu\u00e9 ocurre cuando lanzamos 1.000.000 de operaciones a la prueba. <strong><code>1000000 Conjunto: 106.15172 Promedio: 106151 1000000 Obtener: 101.086393 Media: 101086 1000000 Borrar: 99,747647 Media: 99747<\/code><\/strong> Como podemos ver, el rendimiento a 1.000.000 de operaciones se parece mucho m\u00e1s al rendimiento a 100.000 operaciones que el rendimiento a 100.000 operaciones se parece al rendimiento que vemos a 10.000 operaciones.<\/p>\n<p>Dejemos a un lado por el momento cu\u00e1l es realmente la causa de esta discrepancia y centr\u00e9monos en la lecci\u00f3n m\u00e1s importante. Cuando intentamos comprender el comportamiento y el rendimiento de un sistema, los atributos y los datos que utilizamos para probarlo son fundamentales. Debemos derivar emp\u00edricamente estos valores siempre que sea posible o basarlos en una restricci\u00f3n o suposici\u00f3n expl\u00edcita. Si realmente hubiera estado utilizando la prueba anterior para entender el comportamiento de mi sistema basado en Spymemcached, simplemente utilizando el escenario de 10.000 operaciones no habr\u00eda resultado en la comprensi\u00f3n de cu\u00e1l es el rendimiento m\u00e1ximo del sistema. Si s\u00f3lo hubiera ejecutado los escenarios de 100.000 o 1.000.000 de operaciones, habr\u00eda pasado por alto el hecho de que el sistema parece requerir cierto tiempo de calentamiento. Pero al explorar un poco para ver cu\u00e1les son los valores interesantes de esta prueba sencilla e ingenua, hemos aprendido algunas lecciones significativas sobre nuestro sistema.<\/p>\n<p>Traigo esto a colaci\u00f3n porque con demasiada frecuencia veo discusiones sobre el rendimiento y el comportamiento de un sistema que utilizan lo que parecen ser valores y suposiciones arbitrarios. Y cuando los veo, me pregunto por qu\u00e9 el autor ha elegido un valor concreto. Si es un valor importante, debe explicarse su significado. Si se trata de un valor arbitrario, debemos desconfiar de los resultados y conclusiones que se presentan. (Nota, para que conste, los valores registrados anteriormente se lograron utilizando Spymemcached 2.5 ejecut\u00e1ndose contra memcached 1.4.4, con el cliente y el servidor ejecut\u00e1ndose en el mismo host).<\/p>","protected":false},"excerpt":{"rendered":"<p>Guest post: Eric Lambert The Spymemcached Java client is the leading Java client used by Java-based applications that need to avail themselves to Memcached servers. The reason Spy has become so popular in the Java community is that it has [&hellip;]<\/p>","protected":false},"author":43,"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":[8999],"class_list":["post-1810","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 v26.1 (Yoast SEO v26.1.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Spymemcached Java and picking meaningful data points<\/title>\n<meta name=\"description\" content=\"Learn the Spymemcached Java client, the leading Java client used by Java-based applications that need to avail themselves to Memcached servers.\" \/>\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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spymemcached Java and picking meaningful data points\" \/>\n<meta property=\"og:description\" content=\"Learn the Spymemcached Java client, the leading Java client used by Java-based applications that need to avail themselves to Memcached servers.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-12-16T17:51:08+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-02-23T20:16:23+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=\"Eric Lambert\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Eric Lambert\" \/>\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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\"},\"author\":{\"name\":\"Eric Lambert\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/0973e760d16fa5962b93e04921e928f0\"},\"headline\":\"Spymemcached Java and picking meaningful data points\",\"datePublished\":\"2014-12-16T17:51:08+00:00\",\"dateModified\":\"2020-02-23T20:16:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\"},\"wordCount\":747,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\",\"name\":\"Spymemcached Java and picking meaningful data points\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2014-12-16T17:51:08+00:00\",\"dateModified\":\"2020-02-23T20:16:23+00:00\",\"description\":\"Learn the Spymemcached Java client, the leading Java client used by Java-based applications that need to avail themselves to Memcached servers.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spymemcached Java and picking meaningful data points\"}]},{\"@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\/0973e760d16fa5962b93e04921e928f0\",\"name\":\"Eric Lambert\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/7fc4202719c22126b10c524a9dd21e78\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2cad6e290aefbe0bf2036700cfe8835750fb20bc5ce909f6e3cc558f87ea250b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2cad6e290aefbe0bf2036700cfe8835750fb20bc5ce909f6e3cc558f87ea250b?s=96&d=mm&r=g\",\"caption\":\"Eric Lambert\"},\"description\":\"Eric Lambert is a Staff Engineer at Couchbase working on Memcached based data scalability solutions. Also, designed &amp; developed testing infrastructure, tools.\",\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/eric-lambert\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Spymemcached Java y la selecci\u00f3n de puntos de datos significativos","description":"Learn the Spymemcached Java client, the leading Java client used by Java-based applications that need to avail themselves to Memcached servers.","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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/","og_locale":"es_MX","og_type":"article","og_title":"Spymemcached Java and picking meaningful data points","og_description":"Learn the Spymemcached Java client, the leading Java client used by Java-based applications that need to avail themselves to Memcached servers.","og_url":"https:\/\/www.couchbase.com\/blog\/es\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/","og_site_name":"The Couchbase Blog","article_published_time":"2014-12-16T17:51:08+00:00","article_modified_time":"2020-02-23T20:16:23+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":"Eric Lambert","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Eric Lambert","Est. reading time":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/"},"author":{"name":"Eric Lambert","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/0973e760d16fa5962b93e04921e928f0"},"headline":"Spymemcached Java and picking meaningful data points","datePublished":"2014-12-16T17:51:08+00:00","dateModified":"2020-02-23T20:16:23+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/"},"wordCount":747,"commentCount":1,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/","url":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/","name":"Spymemcached Java y la selecci\u00f3n de puntos de datos significativos","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2014-12-16T17:51:08+00:00","dateModified":"2020-02-23T20:16:23+00:00","description":"Learn the Spymemcached Java client, the leading Java client used by Java-based applications that need to avail themselves to Memcached servers.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#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\/understanding-and-characterizing-performance-spymemcached-importance-picking-meaningful-data-points\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Spymemcached Java and picking meaningful data points"}]},{"@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\/0973e760d16fa5962b93e04921e928f0","name":"Eric Lambert","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/7fc4202719c22126b10c524a9dd21e78","url":"https:\/\/secure.gravatar.com\/avatar\/2cad6e290aefbe0bf2036700cfe8835750fb20bc5ce909f6e3cc558f87ea250b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2cad6e290aefbe0bf2036700cfe8835750fb20bc5ce909f6e3cc558f87ea250b?s=96&d=mm&r=g","caption":"Eric Lambert"},"description":"Eric Lambert es un ingeniero de Couchbase que trabaja en soluciones de escalabilidad de datos basadas en Memcached. Tambi\u00e9n ha dise\u00f1ado y desarrollado herramientas e infraestructuras de pruebas.","url":"https:\/\/www.couchbase.com\/blog\/es\/author\/eric-lambert\/"}]}},"authors":[{"term_id":8999,"user_id":43,"is_guest":0,"slug":"eric-lambert","display_name":"Eric Lambert","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/2cad6e290aefbe0bf2036700cfe8835750fb20bc5ce909f6e3cc558f87ea250b?s=96&d=mm&r=g","author_category":"","last_name":"Lambert","first_name":"Eric","job_title":"","user_url":"","description":"Eric Lambert es un ingeniero de Couchbase que trabaja en soluciones de escalabilidad de datos basadas en Memcached. Tambi\u00e9n ha dise\u00f1ado y desarrollado herramientas e infraestructuras de pruebas."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1810","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\/43"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=1810"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/1810\/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=1810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=1810"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=1810"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=1810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}