{"id":4038,"date":"2024-09-06T10:26:55","date_gmt":"2024-09-06T17:26:55","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/couchbase-xdcr-transactions\/"},"modified":"2024-09-06T10:26:55","modified_gmt":"2024-09-06T17:26:55","slug":"couchbase-xdcr-transactions","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/","title":{"rendered":"Entendendo como funcionam as transa\u00e7\u00f5es em replica\u00e7\u00f5es entre m\u00faltiplos data centers (XDCR)"},"content":{"rendered":"<p class=\"wp-block-paragraph\"><span>O Couchbase oferece um conjunto impressionante de ferramentas e recursos poderosos dentro de seus servi\u00e7os de plataforma. Notavelmente, <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/clusters-and-availability\/xdcr-overview.html\"><span>Replica\u00e7\u00e3o entre Centros de Dados<\/span><\/a> <span>garante a replica\u00e7\u00e3o cont\u00ednua de dados em v\u00e1rias geografias, enquanto as transa\u00e7\u00f5es ACID suportam de forma robusta cargas de trabalho transacionais, aumentando tanto a confiabilidade quanto a efici\u00eancia.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><span>Muitos clientes frequentemente se deparam com uma d\u00favida comum: Por que h\u00e1 uma diferen\u00e7a na contagem de documentos entre os clusters de origem e destino ao usar transa\u00e7\u00f5es e Cross Data Centre Replication (XDCR)? Certos tipos de documentos nunca aparecem no cluster de destino, gerando confus\u00e3o sobre se esse problema est\u00e1 relacionado ao XDCR. Antes de aprofundar nos mecanismos subjacentes, vamos primeiro esclarecer alguns termos-chave.<\/span><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">O que \u00e9 o XDCR?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span>O XDCR facilita a replica\u00e7\u00e3o de dados entre bancos de dados ou <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/buckets-memory-and-storage\/buckets.html\"><span>baldes<\/span><\/a><span> que podem residir em diferentes clusters, provedores de nuvem ou data centers. O XDCR tamb\u00e9m oferece suporte \u00e0 replica\u00e7\u00e3o intra-cluster, permitindo a replica\u00e7\u00e3o de dados entre diferentes bancos de dados dentro do mesmo cluster.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><span>Projetado para clusters de bancos de dados geograficamente distribu\u00eddos, o XDCR protege contra falhas em centros de dados e oferece suporte a alta disponibilidade com configura\u00e7\u00f5es de cluster ativo-ativo. O protocolo subjacente usado pelo XDCR \u00e9 o Protocolo de Altera\u00e7\u00e3o de Dados (DCP), que tamb\u00e9m \u00e9 empregado para replica\u00e7\u00e3o intra-cluster, garantindo replica\u00e7\u00e3o de mem\u00f3ria para mem\u00f3ria de baixa lat\u00eancia.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><span>O XDCR oferece opera\u00e7\u00f5es unidirecionais e bidimensionais e suporta replica\u00e7\u00e3o ativa-ativa com resolu\u00e7\u00e3o autom\u00e1tica de conflitos. Ele tamb\u00e9m permite a replica\u00e7\u00e3o filtrada para replicar subconjuntos de documentos com base nas necessidades do cluster de destino.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/09\/image1-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16258 size-large\" src=\"https:\/\/www.couchbase.com\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-1024x582-1.png\" alt=\"\" width=\"900\" height=\"512\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">O que s\u00e3o transa\u00e7\u00f5es?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span>Uma transa\u00e7\u00e3o \u00e9 uma \u00fanica unidade l\u00f3gica de trabalho que consiste em v\u00e1rias opera\u00e7\u00f5es de banco de dados que s\u00e3o executadas como um todo ou n\u00e3o s\u00e3o executadas de forma alguma. As transa\u00e7\u00f5es do Couchbase permitem <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/data\/transactions.html#overview\"><span>\u00c1CIDO<\/span><\/a><span> a\u00e7\u00f5es (at\u00f4micas, consistentes, isoladas e dur\u00e1veis) no banco de dados. O Couchbase oferece suporte a transa\u00e7\u00f5es ACID distribu\u00eddas, multi-documento e multi-n\u00f3 em escala, sem sacrificar o desempenho e a alta disponibilidade.<\/span><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">O que \u00e9 um Registro de Transa\u00e7\u00e3o Ativa?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span>No Couchbase, os dados dentro de um banco de dados ou bucket s\u00e3o divididos entre containers l\u00f3gicos chamados <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/buckets-memory-and-storage\/vbuckets.html\"><span>vbucket<\/span><\/a><span>, cada um residindo em um \u00fanico n\u00f3. Cada bucket de servidor Couchbase possui 1024 vbuckets (64 no MacOS). Active Transaction Records (ATR) s\u00e3o documentos de metadados em cada vbucket que registram cada tentativa de transa\u00e7\u00e3o ativa, indicando se uma tentativa foi confirmada. As entradas ATR servem como chaves para marcar transa\u00e7\u00f5es como confirmadas. Os ATRs s\u00e3o criados e mantidos pelo Couchbase automaticamente e podem ser facilmente identificados pelo seu prefixo <\/span><span>_txn:atr-<\/span><span>. Estes registros podem ser visualizados, mas n\u00e3o devem ser alterados por usu\u00e1rios ou aplicativos.<\/span><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Como o XDCR Replica Documentos de Transa\u00e7\u00e3o?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span>No Couchbase, as transa\u00e7\u00f5es t\u00eam escopo limitado a um \u00fanico cluster principal e as transa\u00e7\u00f5es n\u00e3o s\u00e3o suportadas para configura\u00e7\u00e3o ativo-ativo. Uma transa\u00e7\u00e3o pode envolver v\u00e1rias tentativas, cada uma criando uma entrada em um documento ATR. Essas entradas s\u00e3o cruciais como fontes \u00fanicas de verdade para as tentativas. Os ATRs residem na cole\u00e7\u00e3o padr\u00e3o do bucket do primeiro documento mutado, a menos que especificado o contr\u00e1rio. Cada cole\u00e7\u00e3o usada para ATRs conter\u00e1 eventualmente 1.024 documentos ATR. Durante a fase de prepara\u00e7\u00e3o, as muta\u00e7\u00f5es dentro de uma transa\u00e7\u00e3o s\u00e3o preparadas no documento de um <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/data\/extended-attributes-fundamentals.html\"><span>atributos estendidos<\/span><\/a><span> propriedade (XATTRs), permanecendo invis\u00edveis para o cluster do Couchbase at\u00e9 a fase de confirma\u00e7\u00e3o. A inten\u00e7\u00e3o de grava\u00e7\u00e3o em uma transa\u00e7\u00e3o \u00e9 especificada em XATTRs de documentos e atua como um bloqueio de grava\u00e7\u00e3o, impedindo que outros clientes modifiquem o mesmo documento at\u00e9 que a transa\u00e7\u00e3o seja confirmada ou anulada. Essas inten\u00e7\u00f5es de grava\u00e7\u00e3o funcionam como bloqueios exclusivamente para o cluster prim\u00e1rio.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><span>O XDCR replica dados do cluster de origem para o de destino de forma ass\u00edncrona, suportando consist\u00eancia eventual para atualiza\u00e7\u00f5es transacionais. \u00c9 por isso que um commit no cluster de origem n\u00e3o garante que a transa\u00e7\u00e3o tenha sido replicada via XDCR. Assim que uma transa\u00e7\u00e3o \u00e9 confirmada (commit) no cluster de origem, as atualiza\u00e7\u00f5es s\u00e3o replicadas para o cluster de destino uma a uma. Isso significa que uma transa\u00e7\u00e3o confirmada no cluster de origem n\u00e3o garante confirma\u00e7\u00e3o imediata no cluster de destino. Em caso de failover, uma transa\u00e7\u00e3o confirmada pode ser perdida se n\u00e3o for confirmada no destino antes do failover; portanto, os aplicativos devem aguardar a conclus\u00e3o de todas as solicita\u00e7\u00f5es pendentes ou abortar as solicita\u00e7\u00f5es antes de realizar o failover para o cluster secund\u00e1rio.<\/span><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Etapas de Replica\u00e7\u00e3o de Transa\u00e7\u00f5es<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span>As etapas a seguir descrevem a l\u00f3gica da transa\u00e7\u00e3o e a replica\u00e7\u00e3o de dados usando o XDCR:<\/span><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><b>Inicia\u00e7\u00e3o de Tentativa de Transa\u00e7\u00e3o<\/b><span>Cada tentativa de transa\u00e7\u00e3o pela aplica\u00e7\u00e3o (SDK) cria uma entrada no ATR, funcionando como um bloqueio virtual. Feito em ambos os n\u00f3s, mas mostrado em um na imagem abaixo por simplicidade.\u00a0<\/span><\/li>\n\n\n<li><b>Preparando altera\u00e7\u00f5es<\/b><span>As altera\u00e7\u00f5es transacionais s\u00e3o armazenadas nos XATTRs dos documentos de destino, n\u00e3o afetando os corpos dos documentos. Isso pode ocorrer em v\u00e1rios n\u00f3s e documentos. Essas altera\u00e7\u00f5es em est\u00e1gio funcionam como um bloqueio contra quaisquer outras transa\u00e7\u00f5es nesses documentos.\u00a0<\/span><\/li>\n\n\n<li><b>Comprometimento<\/b><span>Uma vez que a l\u00f3gica da transa\u00e7\u00e3o \u00e9 executada completamente, a tentativa de transa\u00e7\u00e3o \u00e9 efetivada (committed), atualizando a entrada da tentativa no ATR (feito em ambos os n\u00f3s, mas mostrado em apenas um na imagem abaixo por simplicidade) e a lista de IDs de documentos envolvidos na transa\u00e7\u00e3o \u00e9 atualizada. Atores transacionais podem ler as informa\u00e7\u00f5es atualizadas a partir dos XATTRs, se necess\u00e1rio.<\/span><\/li>\n\n\n<li><b>Finalizando altera\u00e7\u00f5es<\/b><span>As altera\u00e7\u00f5es transacionais s\u00e3o movidas dos XATTRs do documento para os corpos dos documentos (feito pelo SDK, mas mostrado diretamente na imagem abaixo por simplicidade)<\/span><\/li>\n\n\n<li><b>Conclus\u00e3o e Limpeza<\/b><span>A tentativa de transa\u00e7\u00e3o \u00e9 marcada como \u2018Conclu\u00edda\u2019 e removida do ATR.<\/span><\/li>\n\n\n<li><b>Replica\u00e7\u00e3o<\/b><span>As altera\u00e7\u00f5es do documento rec\u00e9m-atualizadas s\u00e3o replicadas uma a uma para o cluster de destino usando o XDCR.<\/span><\/li>\n\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2024\/09\/image2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-16255\" src=\"https:\/\/www.couchbase.com\/wp-content\/uploads\/sites\/5\/2026\/05\/image2-1024x762-1.png\" alt=\"\" width=\"900\" height=\"670\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclus\u00e3o<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span>XDCR \u00e9 uma ferramenta poderosa para replica\u00e7\u00e3o entre diferentes data centers e geografias, suportando replica\u00e7\u00e3o unidirecional e bidirecional com consist\u00eancia eventual para altera\u00e7\u00f5es transacionais. Por design, altera\u00e7\u00f5es n\u00e3o confirmadas em uma transa\u00e7\u00e3o e metadados para registro de transa\u00e7\u00f5es nunca s\u00e3o enviados para os clusters de destino, garantindo a integridade e a consist\u00eancia dos dados em ambientes replicados.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><span>Compreender esses mecanismos pode ajudar a esclarecer por que determinados documentos podem n\u00e3o aparecer no cluster de destino imediatamente, pois eles dependem dos estados transacionais e dos processos de replica\u00e7\u00e3o descritos acima.<\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><br><br><\/p>","protected":false},"excerpt":{"rendered":"<p>Couchbase offers an impressive array of powerful tools and features within its platform services. Notably, Cross Data Centre Replication ensures seamless data replication across various geographies, while ACID transactions robustly support transaction workloads, enhancing both reliability and efficiency. Many customers often encounter a common question: Why is there a difference in document counts between the [&hellip;]<\/p>\n","protected":false},"author":85517,"featured_media":4035,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"_acf":"","footnotes":"","_ppma_block_editor_authors":""},"categories":[179,54,28,359],"tags":[605,884],"ppma_author":[885],"class_list":["post-4038","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-architecture","category-couchbase-server","category-xdcr","category-transactions","tag-cloud-data-replication","tag-dcp"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.3 (Yoast SEO v28.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Understanding How Transactions Work in Cross Data Center Replications (XDCR) - The Couchbase Blog<\/title>\n<meta name=\"description\" content=\"Learn how Couchbase XDCR and transactions handle data replication and why document counts may differ between source and destination clusters\" \/>\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\/pt\/couchbase-xdcr-transactions\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Understanding How Transactions Work in Cross Data Center Replications (XDCR)\" \/>\n<meta property=\"og:description\" content=\"Learn how Couchbase XDCR and transactions handle data replication and why document counts may differ between source and destination clusters\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-06T17:26:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-11.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1550\" \/>\n\t<meta property=\"og:image:height\" content=\"881\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Rohit Kumar, Sr. Solutions Engineer\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rohit Kumar, Sr. Solutions Engineer\" \/>\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\\\/pt\\\/couchbase-xdcr-transactions\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/\"},\"author\":{\"name\":\"Rohit Kumar, Sr. Solutions Engineer\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/person\\\/82c0b7ad32f97f54dcae300546cc382c\"},\"headline\":\"Understanding How Transactions Work in Cross Data Center Replications (XDCR)\",\"datePublished\":\"2024-09-06T17:26:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/\"},\"wordCount\":930,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/5\\\/2026\\\/05\\\/image1-1-11.png\",\"keywords\":[\"cloud data replication\",\"DCP\"],\"articleSection\":[\"Couchbase Architecture\",\"Couchbase Server\",\"Cross Data Center Replication (XDCR)\",\"Transactions\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/\",\"name\":\"Understanding How Transactions Work in Cross Data Center Replications (XDCR) - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/5\\\/2026\\\/05\\\/image1-1-11.png\",\"datePublished\":\"2024-09-06T17:26:55+00:00\",\"description\":\"Learn how Couchbase XDCR and transactions handle data replication and why document counts may differ between source and destination clusters\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/5\\\/2026\\\/05\\\/image1-1-11.png\",\"contentUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/5\\\/2026\\\/05\\\/image1-1-11.png\",\"width\":1550,\"height\":881},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/couchbase-xdcr-transactions\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Understanding How Transactions Work in Cross Data Center Replications (XDCR)\"}]},{\"@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\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/5\\\/2026\\\/06\\\/logo.svg\",\"contentUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/5\\\/2026\\\/06\\\/logo.svg\",\"width\":\"1024\",\"height\":\"1024\",\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/person\\\/82c0b7ad32f97f54dcae300546cc382c\",\"name\":\"Rohit Kumar, Sr. Solutions Engineer\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9cc60b851868767641c00196f4e3676b14d38d11d38b2865d5c60bad73ee5734?s=96&d=mm&r=g305a2a1eabcaa5c58c564c1a27f0f1d6\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9cc60b851868767641c00196f4e3676b14d38d11d38b2865d5c60bad73ee5734?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9cc60b851868767641c00196f4e3676b14d38d11d38b2865d5c60bad73ee5734?s=96&d=mm&r=g\",\"caption\":\"Rohit Kumar, Sr. Solutions Engineer\"},\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/author\\\/rohitkumar\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Understanding How Transactions Work in Cross Data Center Replications (XDCR) - The Couchbase Blog","description":"Learn how Couchbase XDCR and transactions handle data replication and why document counts may differ between source and destination clusters","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\/pt\/couchbase-xdcr-transactions\/","og_locale":"pt_BR","og_type":"article","og_title":"Understanding How Transactions Work in Cross Data Center Replications (XDCR)","og_description":"Learn how Couchbase XDCR and transactions handle data replication and why document counts may differ between source and destination clusters","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/","og_site_name":"The Couchbase Blog","article_published_time":"2024-09-06T17:26:55+00:00","og_image":[{"width":1550,"height":881,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-11.png","type":"image\/png"}],"author":"Rohit Kumar, Sr. Solutions Engineer","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Rohit Kumar, Sr. Solutions Engineer","Est. reading time":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/"},"author":{"name":"Rohit Kumar, Sr. Solutions Engineer","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/82c0b7ad32f97f54dcae300546cc382c"},"headline":"Understanding How Transactions Work in Cross Data Center Replications (XDCR)","datePublished":"2024-09-06T17:26:55+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/"},"wordCount":930,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-11.png","keywords":["cloud data replication","DCP"],"articleSection":["Couchbase Architecture","Couchbase Server","Cross Data Center Replication (XDCR)","Transactions"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/","url":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/","name":"Understanding How Transactions Work in Cross Data Center Replications (XDCR) - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-11.png","datePublished":"2024-09-06T17:26:55+00:00","description":"Learn how Couchbase XDCR and transactions handle data replication and why document counts may differ between source and destination clusters","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-11.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/image1-1-11.png","width":1550,"height":881},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-xdcr-transactions\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Understanding How Transactions Work in Cross Data Center Replications (XDCR)"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"O Blog da Couchbase","description":"Couchbase, o Banco de Dados 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":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"O Blog da Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/06\/logo.svg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/06\/logo.svg","width":"1024","height":"1024","caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/82c0b7ad32f97f54dcae300546cc382c","name":"Rohit Kumar, Engenheiro S\u00eanior de Solu\u00e7\u00f5es","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/9cc60b851868767641c00196f4e3676b14d38d11d38b2865d5c60bad73ee5734?s=96&d=mm&r=g305a2a1eabcaa5c58c564c1a27f0f1d6","url":"https:\/\/secure.gravatar.com\/avatar\/9cc60b851868767641c00196f4e3676b14d38d11d38b2865d5c60bad73ee5734?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9cc60b851868767641c00196f4e3676b14d38d11d38b2865d5c60bad73ee5734?s=96&d=mm&r=g","caption":"Rohit Kumar, Sr. Solutions Engineer"},"url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/rohitkumar\/"}]}},"acf":[],"authors":[{"term_id":885,"user_id":85517,"is_guest":0,"slug":"rohitkumar","display_name":"Rohit Kumar, Sr. Solutions Engineer","avatar_url":{"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/rohitkukmar-couchbase-5.png","url2x":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/5\/2026\/05\/rohitkukmar-couchbase-5.png"},"author_category":"","first_name":"Rohit","last_name":"Kumar, Sr. Solutions Engineer","user_url":"","job_title":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/4038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/users\/85517"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=4038"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/4038\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/4035"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=4038"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=4038"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=4038"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=4038"}],"curies":[{"name":"bem-jogado","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}