{"id":2336,"date":"2016-07-19T17:24:30","date_gmt":"2016-07-19T17:24:30","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2336"},"modified":"2025-06-13T20:52:52","modified_gmt":"2025-06-14T03:52:52","slug":"better-updates-couchbase-lite","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/es\/better-updates-couchbase-lite\/","title":{"rendered":"Una forma mejor de actualizar con Couchbase Lite"},"content":{"rendered":"<p style=\"border: 0px\"><img decoding=\"async\" class=\"aligncenter\" style=\"max-width: 400px ! important\" src=\"\/wp-content\/original-assets\/2016\/july\/better-updates-couchbase-lite\/15528585_a62d152538_b.jpg\" alt=\"Edits of \" \/><\/p>\n<p style=\"text-align: center;font-size: 50%\">Copia de la partitura original de Haendel<\/p>\n<p style=\"text-align: center;font-size: 50%\">Foto cortes\u00eda de <a>Adrian Pallant<\/a> con permiso bajo licencia <a href=\"https:\/\/creativecommons.org\/licenses\/by-sa\/2.0\/\">CC BY-SA 2.0<\/a><\/p>\n<h2 style=\"border: 0px\">La U de CRUD<\/h2>\n<p><span style=\"color: #373737\">En\u00a0<\/span><a style=\"font-family: inherit;font-size: 15px;line-height: 24.375px;border: 0px;font-style: inherit;font-weight: inherit;margin: 0px;padding: 0px;vertical-align: baseline;color: #1982d1;text-decoration: none\" href=\"https:\/\/www.couchbase.com\/blog\/es\/hg-exploring-couchbase-mobile-on-android-c.r.u.d\/\">este<\/a><span style=\"color: #373737\">\u00a0post anterior, escrib\u00ed sobre c\u00f3mo empezar con las operaciones CRUD b\u00e1sicas en\u00a0<\/span><a style=\"font-family: inherit;font-size: 15px;line-height: 24.375px;border: 0px;font-style: inherit;font-weight: inherit;margin: 0px;padding: 0px;vertical-align: baseline;color: #1982d1;text-decoration: none\" href=\"https:\/\/www.couchbase.com\/blog\/es\/developers\/mobile\/?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">Couchbase Lite<\/a><span style=\"color: #373737\">\u00a0en Android. En esta nota r\u00e1pida, quiero profundizar un poco m\u00e1s en la actualizaci\u00f3n de documentos.  Esto abrir\u00e1 la puerta a todo un nuevo conjunto de cuestiones.  Vamos a echar un vistazo dentro.<\/span><\/p>\n<p style=\"border: 0px\">Couchbase Lite es una base de datos orientada a documentos.  Los documentos se almacenan como\u00a0<a style=\"border: 0px;font-family: inherit;font-style: inherit;font-weight: inherit;margin: 0px;padding: 0px;vertical-align: baseline;color: #1982d1;text-decoration: none\" href=\"https:\/\/www.json.org\/\">JSON<\/a> objetos.  Como se describe en el post anterior, es f\u00e1cil trabajar directamente con el contenido del documento.  Se almacenan en el objeto documento como un mapa.  Eso encaja muy bien con las formas nativas de manipular los contenidos.<\/p>\n<h2 style=\"border: 0px\">Modificar el enfoque directo<\/h2>\n<p style=\"border: 0px\">Cuando recuperas un documento, obtienes una copia que contiene una versi\u00f3n inmutable de los datos.  Puedes hacer frente a esto copiando el mapa en un objeto map separado, y luego sobrescribiendo el mapa antiguo.  Esto se muestra en este fragmento de c\u00f3digo:<\/p>\n<pre style=\"border: 0px\"><code class=\"java\" style=\"border: 0px;font-family: Monaco, Consolas,\">    profile = new HashMap();\r\n    profile.putAll(document.getProperties());\r\n    profile.put(\"type\", \"profile\");  \/\/ Add a \"type\" to the document\r\n\r\n    try {\r\n      document.putProperties(profile);\r\n    } catch (CouchbaseLiteException ex) {\r\n      Log.e(TAG, \"CBL operation failed\");\r\n    }<\/code><\/pre>\n<p style=\"border: 0px\">Esto en realidad crea un nuevo\u00a0<a style=\"border: 0px;font-family: inherit;font-style: inherit;font-weight: inherit;margin: 0px;padding: 0px;vertical-align: baseline;color: #1982d1;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/1.2\/develop\/guides\/couchbase-lite\/native-api\/revision\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">revisi\u00f3n<\/a>\u00a0del documento, utilizando el nuevo cuerpo del documento.<\/p>\n<p style=\"border: 0px\">Tambi\u00e9n puede utilizar\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">crearRevisi\u00f3n()<\/code>\u00a0para obtener un nuevo\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">UnsavedRevision<\/code>. Esto devuelve una copia de la \u00faltima revisi\u00f3n, pero con contenidos mutables. Puede entonces manipular el mapa de propiedades directamente. Los cambios se confirman llamando a\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">guardar()<\/code>.  Este fragmento de c\u00f3digo tiene el mismo efecto final que el anterior:<\/p>\n<pre style=\"border: 0px\"><code class=\"java\" style=\"border: 0px;font-family: Monaco, Consolas,\">    UnsavedRevision update = document.createRevision();\r\n    profile = update.getProperties();\r\n    profile.put(\"type\", \"profile\");  \/\/ Add a \"type\" to the document\r\n\r\n    try {\r\n      update.save();\r\n    } catch (CouchbaseLiteException ex) {\r\n      Log.e(TAG, \"CBL operation failed\");\r\n    }<\/code><\/pre>\n<h2 style=\"border: 0px\">\u00bfRevisiones, dice?<\/h2>\n<p style=\"border: 0px\">Eso es estupendo para muchas aplicaciones.  A\u00fan no he hablado mucho de las revisiones.  Tienes la idea de que un documento est\u00e1 cambiando.  Couchbase Lite tiene una noci\u00f3n de revisiones de documentos para ir junto con esos cambios.<\/p>\n<p style=\"border: 0px\">Sin embargo, las revisiones van m\u00e1s all\u00e1 del mero seguimiento de un conjunto lineal de cambios.  Lo que no salta a la vista en ejemplos como los que he mostrado es la posibilidad de conflictos.  Los conflictos ocurren cuando m\u00e1s de una actualizaci\u00f3n de una revisi\u00f3n espec\u00edfica de un documento es enviada a la base de datos.<\/p>\n<p style=\"border: 0px\">Pi\u00e9nsalo como si fuera un documento del mundo real.  Tal vez escribas un art\u00edculo (o una entrada de blog) y lo env\u00edes a varias personas para que lo comenten.  Recibes una serie de comentarios y haces algunos cambios.  Luego recibes otra serie de comentarios, basados en el mismo documento original.  Si lo haces con la frecuencia suficiente, es casi seguro que algunos cambios se solapen.  (Bueno, para los desarrolladores de software, probablemente el mejor ejemplo sea el de los conflictos de fusi\u00f3n al utilizar el control de c\u00f3digo fuente).  \u00a1Conflicto!<\/p>\n<h2 style=\"border: 0px\">Actualizador de documentos<\/h2>\n<p style=\"border: 0px\">Tratar con conflictos de documentos, historial de revisiones, y dem\u00e1s, es m\u00e1s de lo que quiero tratar en este post.  Pero podemos echar un vistazo a c\u00f3mo ayuda Couchbase.  Esta \u00faltima aproximaci\u00f3n a la actualizaci\u00f3n puede parecer exagerada, pero llegar\u00e1s a apreciarla una vez que la resoluci\u00f3n de conflictos entre en juego.  Aqu\u00ed est\u00e1 el c\u00f3digo:<\/p>\n<pre style=\"border: 0px\"><code class=\"java\" style=\"border: 0px;font-family: Monaco, Consolas,\">    document = database.getDocument(documentId);\r\n    try {\r\n      document.update(new Document.DocumentUpdater() {\r\n        @Override\r\n        public boolean update(UnsavedRevision newRevision) {\r\n          Map properties = newRevision.getUserProperties();\r\n          properties.put(\"type\", \"profile\");\r\n          newRevision.setUserProperties(properties);\r\n          return true;\r\n        }\r\n      });\r\n    } catch (CouchbaseLiteException ex) {\r\n      Log.e(TAG, \"CBL operation failed\");\r\n    }<\/code><\/pre>\n<p style=\"border: 0px\">Vaya, esto parece mucho m\u00e1s complejo que los ejemplos anteriores.  En realidad s\u00f3lo es un poco m\u00e1s complicado.  Esa estructura a\u00f1adida acaba facilitando mucho las cosas.  \u00bfQu\u00e9 est\u00e1 pasando?<\/p>\n<p style=\"border: 0px\">Esta construcci\u00f3n permite a Couchbase Lite encargarse del trabajo sucio de manejar conflictos.  Se define un callback basado en el m\u00e9todo\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">Actualizador de documentos<\/code>\u00a0interfaz. Couchbase Lite se encargar\u00e1 de crear un nuevo\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">UnsavedRevision<\/code>\u00a0como en el ejemplo anterior. Tu m\u00e9todo entonces necesita hacer los cambios que quieras. Al volver, Couchbase Lite autom\u00e1ticamente intenta guardar el documento.\u00a0<em style=\"border: 0px;font-family: inherit;font-weight: inherit;margin: 0px;padding: 0px;vertical-align: baseline\">Si detecta un conflicto<\/em>\u00a0Couchbase Lite simplemente llama a\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">actualizar()<\/code>\u00a0de nuevo.  Volver\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">verdadero<\/code>\u00a0si ha realizado cambios que desea guardar, o\u00a0<code style=\"border: 0px;font-family: Monaco, Consolas,\">falso<\/code>\u00a0de lo contrario.<\/p>\n<p style=\"border: 0px\">Si quieres saber m\u00e1s sobre revisiones, colisiones y resoluci\u00f3n de conflictos, echa un vistazo a nuestra gu\u00eda\u00a0<a style=\"border: 0px;font-family: inherit;font-style: inherit;font-weight: inherit;margin: 0px;padding: 0px;vertical-align: baseline;color: #1982d1;text-decoration: none\" href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/1.2\/develop\/guides\/couchbase-lite\/native-api\/document\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">aqu\u00ed<\/a><\/p>\n<h2 style=\"border: 0px\">Posdata<\/h2>\n<p style=\"border: 0px\">Consulte m\u00e1s recursos en nuestra <a href=\"https:\/\/www.couchbase.com\/blog\/es\/developers\/community\/?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">portal para desarrolladores<\/a> y s\u00edganos en Twitter <a href=\"https:\/\/twitter.com\/CouchbaseDev\">@CouchbaseDev<\/a>.<\/p>\n<p style=\"border: 0px\">Puede enviar preguntas a nuestro <a href=\"https:\/\/www.couchbase.com\/blog\/es\/forums\/?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">foros<\/a>. Y participamos activamente en <a href=\"https:\/\/stackoverflow.com\/questions\/tagged\/couchbase\">Stack Overflow<\/a>.<\/p>\n<p style=\"border: 0px\">Puede seguirme personalmente en <a href=\"https:\/\/twitter.com\/HodGreeley\">@HodGreeley<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Copy of Original Draft Score by Handel Photo courtesy of Adrian Pallant with permission under license CC BY-SA 2.0 The U in CRUD In\u00a0this\u00a0earlier post, I wrote about getting started with basic CRUD operations in\u00a0Couchbase Lite\u00a0on Android.\u00a0In this quick note, [&hellip;]<\/p>","protected":false},"author":73,"featured_media":2927,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[2370,1815,7667,1810],"tags":[],"ppma_author":[9042],"class_list":["post-2336","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android","category-best-practices-and-tutorials","category-couchbase-lite","category-couchbase-mobile"],"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>A better way to update with Couchbase Lite - 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\/better-updates-couchbase-lite\/\" \/>\n<meta property=\"og:locale\" content=\"es_MX\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A better way to update with Couchbase Lite\" \/>\n<meta property=\"og:description\" content=\"Copy of Original Draft Score by Handel Photo courtesy of Adrian Pallant with permission under license CC BY-SA 2.0 The U in CRUD In\u00a0this\u00a0earlier post, I wrote about getting started with basic CRUD operations in\u00a0Couchbase Lite\u00a0on Android.\u00a0In this quick note, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/es\/better-updates-couchbase-lite\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-19T17:24:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T03:52:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Hod Greeley, Developer Advocate, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@HodGreeley\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Hod Greeley, Developer Advocate, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/\"},\"author\":{\"name\":\"Hod Greeley, Developer Advocate, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4\"},\"headline\":\"A better way to update with Couchbase Lite\",\"datePublished\":\"2016-07-19T17:24:30+00:00\",\"dateModified\":\"2025-06-14T03:52:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/\"},\"wordCount\":632,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg\",\"articleSection\":[\"Android\",\"Best Practices and Tutorials\",\"Couchbase Lite\",\"Couchbase Mobile\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/\",\"name\":\"A better way to update with Couchbase Lite - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg\",\"datePublished\":\"2016-07-19T17:24:30+00:00\",\"dateModified\":\"2025-06-14T03:52:52+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg\",\"width\":1024,\"height\":768},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A better way to update with Couchbase Lite\"}]},{\"@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\/9b62593c8a13531e53d52fcd5aabbca4\",\"name\":\"Hod Greeley, Developer Advocate, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/21eb69cb5d4a401fb23b149e4f4e9e87\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g\",\"caption\":\"Hod Greeley, Developer Advocate, Couchbase\"},\"description\":\"Hod Greeley is a Developer Advocate for Couchbase, living in Silicon Valley. He has over two decades of experience as a software engineer and engineering manager. He has worked in a variety of software fields, including computational physics and chemistry, computer and network security, finance, and mobile. Prior to joining Couchbase in 2016, Hod led developer relations for mobile at Samsung. Hod holds a Ph.D. in chemical physics from Columbia University.\",\"sameAs\":[\"https:\/\/hod.greeley.org\/blog\",\"https:\/\/x.com\/HodGreeley\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/es\/author\/hod-greeley\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"A better way to update with Couchbase Lite - 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\/better-updates-couchbase-lite\/","og_locale":"es_MX","og_type":"article","og_title":"A better way to update with Couchbase Lite","og_description":"Copy of Original Draft Score by Handel Photo courtesy of Adrian Pallant with permission under license CC BY-SA 2.0 The U in CRUD In\u00a0this\u00a0earlier post, I wrote about getting started with basic CRUD operations in\u00a0Couchbase Lite\u00a0on Android.\u00a0In this quick note, [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/es\/better-updates-couchbase-lite\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-07-19T17:24:30+00:00","article_modified_time":"2025-06-14T03:52:52+00:00","og_image":[{"width":1024,"height":768,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg","type":"image\/jpeg"}],"author":"Hod Greeley, Developer Advocate, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@HodGreeley","twitter_misc":{"Written by":"Hod Greeley, Developer Advocate, Couchbase","Est. reading time":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/"},"author":{"name":"Hod Greeley, Developer Advocate, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4"},"headline":"A better way to update with Couchbase Lite","datePublished":"2016-07-19T17:24:30+00:00","dateModified":"2025-06-14T03:52:52+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/"},"wordCount":632,"commentCount":2,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg","articleSection":["Android","Best Practices and Tutorials","Couchbase Lite","Couchbase Mobile"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/","url":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/","name":"A better way to update with Couchbase Lite - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg","datePublished":"2016-07-19T17:24:30+00:00","dateModified":"2025-06-14T03:52:52+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2016\/07\/15528585_a62d152538_b.jpg","width":1024,"height":768},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/better-updates-couchbase-lite\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"A better way to update with Couchbase Lite"}]},{"@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\/9b62593c8a13531e53d52fcd5aabbca4","name":"Hod Greeley, Defensor del Desarrollador, Couchbase","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/21eb69cb5d4a401fb23b149e4f4e9e87","url":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","caption":"Hod Greeley, Developer Advocate, Couchbase"},"description":"Hod Greeley es desarrollador de Couchbase y vive en Silicon Valley. Tiene m\u00e1s de dos d\u00e9cadas de experiencia como ingeniero de software y director de ingenier\u00eda. Ha trabajado en una variedad de campos de software, incluyendo f\u00edsica computacional y qu\u00edmica, seguridad inform\u00e1tica y de redes, finanzas y m\u00f3viles. Antes de unirse a Couchbase en 2016, Hod dirigi\u00f3 las relaciones con desarrolladores para m\u00f3viles en Samsung. Hod es doctor en f\u00edsica qu\u00edmica por la Universidad de Columbia.","sameAs":["https:\/\/hod.greeley.org\/blog","https:\/\/x.com\/HodGreeley"],"url":"https:\/\/www.couchbase.com\/blog\/es\/author\/hod-greeley\/"}]}},"authors":[{"term_id":9042,"user_id":73,"is_guest":0,"slug":"hod-greeley","display_name":"Hod Greeley, Developer Advocate, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","first_name":"Hod","last_name":"Greeley","user_url":"https:\/\/hod.greeley.org\/blog","author_category":"","description":"Hod Greeley es desarrollador de Couchbase y vive en Silicon Valley. Tiene m\u00e1s de dos d\u00e9cadas de experiencia como ingeniero de software y director de ingenier\u00eda. Ha trabajado en una variedad de campos de software, incluyendo f\u00edsica computacional y qu\u00edmica, seguridad inform\u00e1tica y de redes, finanzas y m\u00f3viles. Antes de unirse a Couchbase en 2016, Hod dirigi\u00f3 las relaciones con desarrolladores para m\u00f3viles en Samsung. Hod es doctor en f\u00edsica qu\u00edmica por la Universidad de Columbia."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2336","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\/73"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/comments?post=2336"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/posts\/2336\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media\/2927"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/media?parent=2336"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/categories?post=2336"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/tags?post=2336"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/es\/wp-json\/wp\/v2\/ppma_author?post=2336"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}