{"id":14931,"date":"2023-10-10T11:21:48","date_gmt":"2023-10-10T18:21:48","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=14931"},"modified":"2025-06-13T23:18:05","modified_gmt":"2025-06-14T06:18:05","slug":"index-service-improvements-in-couchbase-server-7-2-2-part-1","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/","title":{"rendered":"Aprimoramentos do servi\u00e7o de \u00edndice no Couchbase Server 7.2.2 : Parte 1"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Desde o in\u00edcio deste ano, n\u00f3s (Equipe de Indexa\u00e7\u00e3o do Couchbase) realizamos um projeto para aprimorar <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/services-and-indexes\/services\/index-service.html\"><span style=\"font-weight: 400;\">servi\u00e7o de indexa\u00e7\u00e3o<\/span><\/a><span style=\"font-weight: 400;\"> em <\/span><a href=\"https:\/\/docs.couchbase.com\/cloud\/index.html\"><span style=\"font-weight: 400;\">Capela<\/span><\/a><span style=\"font-weight: 400;\">. Este blog discute os objetivos que planejamos alcan\u00e7ar no in\u00edcio deste projeto e a lista de melhorias realizadas para atingir esse objetivo. Observe que a maioria desses aprimoramentos - embora direcionados ao Capella (banco de dados em nuvem do Couchbase) - tamb\u00e9m \u00e9 v\u00e1lida para clusters autogerenciados do Couchbase Server.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Objetivos<\/span><\/h2>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li><b>Opera\u00e7\u00f5es de dimensionamento mais r\u00e1pidas: <\/b><span style=\"font-weight: 400;\">Para bancos de dados em nuvem, o dimensionamento pode ser uma atividade muito frequente, portanto, precisa ser r\u00e1pido.<\/span><\/li>\n<li><b>Melhorar o suporte para hardware de baixo custo: <\/b><span style=\"font-weight: 400;\">Os usu\u00e1rios podem come\u00e7ar com um hardware de baixo custo e, posteriormente, fornecer mais hardware de alto custo, conforme e quando a demanda do aplicativo aumentar.<\/span><\/li>\n<li><b>Aprimorar o suporte \u00e0 entrada\/sa\u00edda lenta do disco: <\/b><span style=\"font-weight: 400;\">As implementa\u00e7\u00f5es em nuvem usam o armazenamento do tipo EBS, que provavelmente ser\u00e1 mais lento do que os SSDs conectados diretamente. Portanto, o custo de uma \u00fanica opera\u00e7\u00e3o de E\/S \u00e9 multiplicado em um ambiente de nuvem.\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><b><i>O objetivo final era melhorar a experi\u00eancia geral do usu\u00e1rio.<\/i><\/b><\/p>\n<p><span style=\"font-weight: 400;\">As se\u00e7\u00f5es a seguir explicam o <\/span><b>melhorias no servi\u00e7o de \u00edndice<\/b><span style=\"font-weight: 400;\"> feitas na vers\u00e3o 7.2.2 do Couchbase Server e como essas melhorias atingem os objetivos mencionados acima.<\/span><\/p>\n<h2><span style=\"font-weight: 400;\">Opera\u00e7\u00f5es de dimensionamento mais r\u00e1pidas<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">A carga de trabalho do aplicativo do usu\u00e1rio pode aumentar\/diminuir com frequ\u00eancia. Quando os usu\u00e1rios esperam que a carga de trabalho do aplicativo aumente, eles podem \"adicionar mais n\u00f3s (ou seja, aumentar a escala)\", \"aumentar a CPU\/mem\u00f3ria dos n\u00f3s (ou seja, aumentar a escala)\" ou fazer as duas coisas.\u00a0<\/span><\/p>\n<p><b>Para expandir<\/b><span style=\"font-weight: 400;\">, <\/span><a href=\"https:\/\/docs.couchbase.com\/cloud\/index.html\"><span style=\"font-weight: 400;\">Capela<\/span><\/a><span style=\"font-weight: 400;\"> adiciona mais n\u00f3s de servi\u00e7o de \u00edndice (com a mesma configura\u00e7\u00e3o dos n\u00f3s existentes) ao cluster. Isso \u00e9 seguido por <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/clusters-and-availability\/rebalance.html\"><span style=\"font-weight: 400;\">Rebalanceamento do servidor Couchbase<\/span><\/a><span style=\"font-weight: 400;\">em que os \u00edndices podem ser movidos de seu n\u00f3 de host atual para qualquer outro n\u00f3 no cluster. Esse movimento \u00e9 realizado para obter uma distribui\u00e7\u00e3o de carga equilibrada em todos os n\u00f3s do indexador.\u00a0\u00a0<\/span><\/p>\n<p><b>Para aumentar a escala<\/b><span style=\"font-weight: 400;\">, <\/span><a href=\"https:\/\/docs.couchbase.com\/cloud\/clusters\/scale-database.html\"><span style=\"font-weight: 400;\">Opera\u00e7\u00e3o de dimensionamento da Capella<\/span><\/a><span style=\"font-weight: 400;\"> aciona internamente uma sequ\u00eancia de fun\u00e7\u00f5es do servidor couchbase <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/install\/upgrade-procedure-selection.html#swap-rebalance\"><span style=\"font-weight: 400;\">rebalanceamento de swap<\/span><\/a><span style=\"font-weight: 400;\"> opera\u00e7\u00f5es. Cada rebalanceamento de swap adiciona um novo n\u00f3 (com a configura\u00e7\u00e3o atualizada) e remove um n\u00f3 antigo (com a configura\u00e7\u00e3o antiga). Quando todos os n\u00f3s antigos tiverem sido substitu\u00eddos por novos n\u00f3s, a opera\u00e7\u00e3o de dimensionamento ser\u00e1 conclu\u00edda. Durante o rebalanceamento de swap, o servi\u00e7o de \u00edndice precisa mover os \u00edndices do n\u00f3 antigo para o novo n\u00f3, para que os \u00edndices n\u00e3o sejam perdidos.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">O servi\u00e7o de \u00edndice executa a movimenta\u00e7\u00e3o do \u00edndice ao (1) reconstruir o \u00edndice usando <\/span><a href=\"https:\/\/www.couchbase.com\/blog\/pt\/inside-couchbase-server-database-change-protocol-the-super-conductor-that-wires-couchbase-server\/\"><span style=\"font-weight: 400;\">Protocolo de altera\u00e7\u00e3o de dados (DCP)<\/span><\/a><span style=\"font-weight: 400;\"> no n\u00f3 de destino e, em seguida, (2) excluir o \u00edndice do n\u00f3 de origem. Como a reconstru\u00e7\u00e3o de \u00edndices no n\u00f3 de destino pode consumir muita CPU, o servi\u00e7o de \u00edndice move os \u00edndices em <\/span><a href=\"https:\/\/docs.couchbase.com\/server\/current\/learn\/clusters-and-availability\/rebalance.html#smart-batching\"><span style=\"font-weight: 400;\">lotes<\/span><\/a><span style=\"font-weight: 400;\">. Cada lote exigir\u00e1 a leitura do fluxo de dados do servi\u00e7o de dados, e os \u00edndices s\u00e3o criados nos n\u00f3s do servi\u00e7o de \u00edndice. Depois que um lote de \u00edndices \u00e9 movido para o n\u00f3 de destino, esse lote de \u00edndices pode servir <\/span><a href=\"https:\/\/www.couchbase.com\/blog\/pt\/products\/n1ql\/\"><span style=\"font-weight: 400;\">Consultas N1QL<\/span><\/a><span style=\"font-weight: 400;\"> (varreduras de \u00edndice) do n\u00f3 de destino.\u00a0<\/span><\/p>\n<h3><b>Exemplo de aumento de escala<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Os diagramas a seguir mostram um exemplo do fluxo de trabalho \"Scale Out\" em duas etapas usando o rebalanceamento baseado em DCP. Aqui, o servi\u00e7o de \u00edndice decidiu mover os \u00edndices 3, 6 e 9 para o novo n\u00f3. Da mesma forma, o \u00edndice 5 ser\u00e1 movido do n\u00f3 1 para o n\u00f3 2. Portanto, na primeira etapa, os \u00edndices 3, 6 e 9 ser\u00e3o reconstru\u00eddos no novo n\u00f3 de \u00edndice com a ajuda do DCP. Da mesma forma, o \u00edndice 5 ser\u00e1 reconstru\u00eddo no n\u00f3 2.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-14933 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/10\/Blog_-7.2.1-Scale-Out-Step-1.jpg\" alt=\"\" width=\"706\" height=\"313\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Out-Step-1.jpg 706w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Out-Step-1-300x133.jpg 300w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/p>\n<p>Em seguida, na segunda etapa, os \u00edndices 3, 6 e 9 no novo n\u00f3 ser\u00e3o ativados, enquanto suas c\u00f3pias antigas ser\u00e3o exclu\u00eddas do host anterior. Da mesma forma, o \u00edndice 5 no n\u00f3 2 ser\u00e1 ativado e sua c\u00f3pia antiga ser\u00e1 exclu\u00edda do n\u00f3 1.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-14934 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/10\/Blog_-7.2.1-Scale-Out-Step-2.jpg\" alt=\"\" width=\"706\" height=\"313\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Out-Step-2.jpg 706w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Out-Step-2-300x133.jpg 300w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/p>\n<h3><strong>Exemplo de aumento de escala<\/strong><\/h3>\n<p>Os diagramas a seguir descrevem o processo de rebalanceamento de swap baseado em DCP, que \u00e9 usado para executar a opera\u00e7\u00e3o de aumento de escala nos n\u00f3s. Aqui, na primeira etapa, um novo n\u00f3 de \u00edndice \u00e9 adicionado ao cluster. O servi\u00e7o de \u00edndice decidiu mover os \u00edndices 3 e 4 para o novo n\u00f3 de \u00edndice, enquanto o \u00edndice 5 ser\u00e1 movido para o n\u00f3 de \u00edndice 1. Portanto, na primeira etapa, os \u00edndices 3 e 4 ser\u00e3o reconstru\u00eddos no novo n\u00f3 de \u00edndice, enquanto o \u00edndice 5 ser\u00e1 reconstru\u00eddo no n\u00f3 de \u00edndice 1.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-14932 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/10\/Blog_-7.2.1-Scale-Up-Step-1.jpg\" alt=\"\" width=\"696\" height=\"357\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Up-Step-1.jpg 696w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Up-Step-1-300x154.jpg 300w\" sizes=\"auto, (max-width: 696px) 100vw, 696px\" \/><\/p>\n<p>Na segunda etapa, quando a cria\u00e7\u00e3o do \u00edndice para os \u00edndices 3, 4 e 5 estiver conclu\u00edda, os \u00edndices ser\u00e3o ativados em seus n\u00f3s de destino correspondentes e o n\u00f3 de \u00edndice 2 ser\u00e1 removido do cluster.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-14935 size-full\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/10\/Blog_-7.2.1-Scale-Up-Step-2.jpg\" alt=\"\" width=\"696\" height=\"357\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Up-Step-2.jpg 696w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/Blog_-7.2.1-Scale-Up-Step-2-300x154.jpg 300w\" sizes=\"auto, (max-width: 696px) 100vw, 696px\" \/><\/p>\n<p>No Couchbase Server 7.2.2, a opera\u00e7\u00e3o de dimensionamento \u00e9 agilizada:<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li><strong>Aumentar o n\u00famero de \u00edndices que est\u00e3o sendo movidos em um lote<\/strong><br \/>\nPor padr\u00e3o, o n\u00famero de \u00edndices que est\u00e3o sendo reconstru\u00eddos no n\u00f3 de destino \u00e9 limitado por um n\u00famero pequeno. O motivo da escolha do n\u00famero pequeno \u00e9 evitar a conten\u00e7\u00e3o de recursos (CPU) entre a reconstru\u00e7\u00e3o do \u00edndice e as varreduras do \u00edndice. Para resolver esse problema de conten\u00e7\u00e3o de recursos, no Couchbase Server 7.2.2, evitamos encaminhar as varreduras de \u00edndice para o novo n\u00f3, at\u00e9 que todos os \u00edndices nesse n\u00f3 sejam reconstru\u00eddos. Com isso, toda a CPU pode ser usada para a reconstru\u00e7\u00e3o do \u00edndice, o que permite a movimenta\u00e7\u00e3o de mais \u00edndices em um \u00fanico lote. Observe que o lote maior \u00e9 usado somente quando o lote de \u00edndices est\u00e1 sendo movido para um n\u00f3 \"vazio\" no cluster. Para n\u00f3s n\u00e3o vazios (ou seja, n\u00f3s que est\u00e3o hospedando alguns \u00edndices), eles ser\u00e3o solicitados a servir varreduras de \u00edndice e o compartilhamento de CPU \u00e9 necess\u00e1rio. \u00c9 por isso que o tamanho de lote maior \u00e9 usado somente quando os \u00edndices est\u00e3o sendo movidos para um n\u00f3 vazio. A seguir est\u00e3o os tamanhos de lote padr\u00e3o:<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p style=\"padding-left: 80px;\"><strong>Tamanho do lote de n\u00f3s n\u00e3o vazios:<\/strong> 3<br \/>\n<strong>Tamanho do lote vazio:<\/strong> 20<\/p>\n<p style=\"padding-left: 80px;\"><em>Observa\u00e7\u00e3o: o aumento do tamanho do lote permite reduzir a carga no servi\u00e7o de dados, pois o n\u00famero de vezes que os itens de dados s\u00e3o lidos do servi\u00e7o de dados tamb\u00e9m \u00e9 reduzido.<\/em><\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol start=\"2\">\n<li><strong>Evitar a movimenta\u00e7\u00e3o do \u00edndice entre os n\u00f3s existentes<\/strong><br \/>\nNo caso de expans\u00e3o para fora, o servi\u00e7o de \u00edndice pode mover os \u00edndices entre os n\u00f3s existentes no cluster. Da mesma forma, no caso de rebalanceamento de swap, o servi\u00e7o de \u00edndice pode mover os \u00edndices do n\u00f3 antigo para outros n\u00f3s existentes tamb\u00e9m. Esses movimentos de \u00edndice s\u00e3o feitos principalmente para obter uma distribui\u00e7\u00e3o de carga equilibrada no cluster. Mas, conceitualmente, esses movimentos extras de \u00edndice aumentam a sobrecarga de dimensionamento.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>No Couchbase Server 7.2.2, o movimento dos \u00edndices \u00e9 restrito aos movimentos necess\u00e1rios para garantir a funcionalidade. Movimentos desnecess\u00e1rios s\u00e3o evitados.<\/p>\n<p>Nos exemplos acima, em caso de redu\u00e7\u00e3o de escala, o movimento do \u00edndice 5 do n\u00f3 1 para o n\u00f3 2 ser\u00e1 evitado. Da mesma forma, no caso de aumento de escala, o \u00edndice 5 ser\u00e1 movido para o n\u00f3 rec\u00e9m-adicionado em vez do n\u00f3 1.<\/p>\n<p>Observe que, para obter uma distribui\u00e7\u00e3o de carga equilibrada, uma opera\u00e7\u00e3o de rebalanceamento pode ser explicitamente acionada ap\u00f3s o t\u00e9rmino da opera\u00e7\u00e3o de dimensionamento.<\/p>\n<h3><strong>Resultados experimentais<\/strong><\/h3>\n<p>O experimento executa o escalonamento para o servi\u00e7o de \u00edndice, ou seja, o escalonamento de 3 n\u00f3s de servi\u00e7o de \u00edndice para 4 n\u00f3s de servi\u00e7o de \u00edndice. H\u00e1 100 \u00edndices espalhados pelos 3 n\u00f3s de servi\u00e7o de \u00edndice. Como parte do dimensionamento, esses 100 \u00edndices ser\u00e3o redistribu\u00eddos em 4 n\u00f3s. Al\u00e9m disso, durante a opera\u00e7\u00e3o de rebalanceamento, a carga de trabalho de atualiza\u00e7\u00e3o de dados front-end e a carga de trabalho de varredura est\u00e3o em execu\u00e7\u00e3o. Assim, com esse experimento, pudemos verificar que o impacto de uma opera\u00e7\u00e3o de rebalanceamento em andamento nas consultas recebidas foi reduzido.<\/p>\n<p><strong>Tabela de resultados:<\/strong><\/p>\n<table style=\"height: 135px;\" width=\"712\">\n<tbody>\n<tr>\n<th style=\"text-align: left;\">Vers\u00e3o do Couchbase Server<\/th>\n<th>7.2.0<\/th>\n<th>7.2.2<\/th>\n<\/tr>\n<tr>\n<td>Tempo necess\u00e1rio para o aumento de escala (de 3 para 4 n\u00f3s de \u00edndice)<\/td>\n<td>20,7 min<\/td>\n<td>6,8 min<\/td>\n<\/tr>\n<tr>\n<td>Consumo de CPU do servi\u00e7o de dados durante a opera\u00e7\u00e3o de dimensionamento<\/td>\n<td>400%<\/td>\n<td>270%<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Al\u00e9m dos resultados acima, em nossos testes internos, tamb\u00e9m observamos <strong>Melhoria de 8 e 15 vezes nas lat\u00eancias de consulta dos percentis 95 e 99<\/strong> respectivamente.<\/p>\n<p><em>Observa\u00e7\u00e3o: esse recurso \u00e9 ativado por padr\u00e3o nos clusters Capella provisionados. Para clusters autogerenciados, use a seguinte configura\u00e7\u00e3o para ativ\u00e1-lo.<\/em><\/p>\n<p>O comando REST a seguir pode ser usado para ativar o lote de n\u00f3s vazios:<\/p>\n<p style=\"padding-left: 40px;\"><tt>curl -X POST -u https:\/\/:9102\/settings --data '{\"indexer.rebalance.enableEmptyNodeBatching\" : true}'<\/tt><\/p>\n<p>Esse comando REST pode ser usado para alterar o tamanho do lote do n\u00f3 vazio para 25:<\/p>\n<p style=\"padding-left: 40px;\"><tt>curl -X POST -u https:\/\/:9102\/settings --data '{\"indexer.rebalance.emptyNodeBuildBatchSize\" : 25}'<\/tt><\/p>\n<h3>O que vem a seguir?<\/h3>\n<p>Na pr\u00f3xima parte deste blog, discutiremos mais aprimoramentos do servi\u00e7o de \u00edndice no Couchbase Server 7.2.2.<br style=\"font-weight: 400;\" \/><br style=\"font-weight: 400;\" \/><\/p>\n<p>Saiba mais sobre os produtos Couchbase:<\/p>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li><a href=\"https:\/\/www.couchbase.com\/blog\/pt\/downloads\/\">Download do servidor Couchbase<\/a><\/li>\n<li>Iniciar um <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/products\/capella\/\">avalia\u00e7\u00e3o gratuita do Couchbase Capella (DBaas)<\/a><\/li>\n<li>Acessar o Couchbase <a href=\"https:\/\/docs.couchbase.com\/home\/index.html\">documenta\u00e7\u00e3o do desenvolvedor<\/a><\/li>\n<li>Veja <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/customers\/\">Quem mais est\u00e1 usando o Couchbase?<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Since the start of this year, we (Couchbase Indexing Team) undertook a project to improve indexing service on Capella. This blog discusses the goals we planned to achieve at the start of this project and the list of improvements delivered [&hellip;]<\/p>","protected":false},"author":49228,"featured_media":14951,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1821,2225,8905,1816,2453,9417,9381],"tags":[9251,9662,1377],"ppma_author":[9101],"class_list":["post-14931","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-architecture","category-cloud","category-couchbase-global-secondary-index","category-couchbase-server","category-global-secondary-index","category-performance","category-indexing","tag-global-secondary-index","tag-rebalance","tag-scale-out"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.2 (Yoast SEO v26.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Index Service Improvements in Couchbase Server 7.2.2 : Part 1 - 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\/pt\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Index Service Improvements in Couchbase Server 7.2.2 : Part 1\" \/>\n<meta property=\"og:description\" content=\"Since the start of this year, we (Couchbase Indexing Team) undertook a project to improve indexing service on Capella. This blog discusses the goals we planned to achieve at the start of this project and the list of improvements delivered [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-10T18:21:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T06:18:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Amit Kulkarni\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Amit Kulkarni\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\"},\"author\":{\"name\":\"Amit Kulkarni\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/76beaf20748818542ed2b7a6bfcd524c\"},\"headline\":\"Index Service Improvements in Couchbase Server 7.2.2 : Part 1\",\"datePublished\":\"2023-10-10T18:21:48+00:00\",\"dateModified\":\"2025-06-14T06:18:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\"},\"wordCount\":1290,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg\",\"keywords\":[\"global secondary index\",\"rebalance\",\"Scale Out\"],\"articleSection\":[\"Couchbase Architecture\",\"Couchbase Capella\",\"Couchbase Global Secondary Index\",\"Couchbase Server\",\"Global Secondary Index\",\"High Performance\",\"Indexing\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\",\"name\":\"Index Service Improvements in Couchbase Server 7.2.2 : Part 1 - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg\",\"datePublished\":\"2023-10-10T18:21:48+00:00\",\"dateModified\":\"2025-06-14T06:18:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg\",\"width\":1200,\"height\":628,\"caption\":\"Index Service Improvements in Couchbase Server 7.2.2 : Part 1\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Index Service Improvements in Couchbase Server 7.2.2 : Part 1\"}]},{\"@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\/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\/76beaf20748818542ed2b7a6bfcd524c\",\"name\":\"Amit Kulkarni\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/9b381fdec8caa95228a24342f1abbbbc\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ce1e7e777f6f5e141aa952f3bba06e838b5cb9bd5dbf9584e9ac998931808950?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ce1e7e777f6f5e141aa952f3bba06e838b5cb9bd5dbf9584e9ac998931808950?s=96&d=mm&r=g\",\"caption\":\"Amit Kulkarni\"},\"description\":\"Amit Kulkarni is working as a Engineering Manager at Couchbase on Global Secondary Indexes. He has experience in working on technologies like Distributed Systems, Distributed NoSQL Databases, Cloud Storage, Storage Virtualisation etc.\",\"url\":\"https:\/\/www.couchbase.com\/blog\/pt\/author\/amit-kulkarni\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Index Service Improvements in Couchbase Server 7.2.2 : Part 1 - 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\/pt\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/","og_locale":"pt_BR","og_type":"article","og_title":"Index Service Improvements in Couchbase Server 7.2.2 : Part 1","og_description":"Since the start of this year, we (Couchbase Indexing Team) undertook a project to improve indexing service on Capella. This blog discusses the goals we planned to achieve at the start of this project and the list of improvements delivered [&hellip;]","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/","og_site_name":"The Couchbase Blog","article_published_time":"2023-10-10T18:21:48+00:00","article_modified_time":"2025-06-14T06:18:05+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg","type":"image\/jpeg"}],"author":"Amit Kulkarni","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Amit Kulkarni","Est. reading time":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/"},"author":{"name":"Amit Kulkarni","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/76beaf20748818542ed2b7a6bfcd524c"},"headline":"Index Service Improvements in Couchbase Server 7.2.2 : Part 1","datePublished":"2023-10-10T18:21:48+00:00","dateModified":"2025-06-14T06:18:05+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/"},"wordCount":1290,"commentCount":2,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg","keywords":["global secondary index","rebalance","Scale Out"],"articleSection":["Couchbase Architecture","Couchbase Capella","Couchbase Global Secondary Index","Couchbase Server","Global Secondary Index","High Performance","Indexing"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/","url":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/","name":"Index Service Improvements in Couchbase Server 7.2.2 : Part 1 - The Couchbase Blog","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg","datePublished":"2023-10-10T18:21:48+00:00","dateModified":"2025-06-14T06:18:05+00:00","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2023\/10\/index-service-improvements.jpg","width":1200,"height":628,"caption":"Index Service Improvements in Couchbase Server 7.2.2 : Part 1"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/index-service-improvements-in-couchbase-server-7-2-2-part-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Index Service Improvements in Couchbase Server 7.2.2 : Part 1"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"Blog do 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":"Blog do 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\/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\/76beaf20748818542ed2b7a6bfcd524c","name":"Amit Kulkarni","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/9b381fdec8caa95228a24342f1abbbbc","url":"https:\/\/secure.gravatar.com\/avatar\/ce1e7e777f6f5e141aa952f3bba06e838b5cb9bd5dbf9584e9ac998931808950?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ce1e7e777f6f5e141aa952f3bba06e838b5cb9bd5dbf9584e9ac998931808950?s=96&d=mm&r=g","caption":"Amit Kulkarni"},"description":"Amit Kulkarni est\u00e1 trabalhando como gerente de engenharia na Couchbase em \u00edndices secund\u00e1rios globais. Ele tem experi\u00eancia em trabalhar com tecnologias como sistemas distribu\u00eddos, bancos de dados NoSQL distribu\u00eddos, armazenamento em nuvem, virtualiza\u00e7\u00e3o de armazenamento etc.","url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/amit-kulkarni\/"}]}},"authors":[{"term_id":9101,"user_id":49228,"is_guest":0,"slug":"amit-kulkarni","display_name":"Amit Kulkarni","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/ce1e7e777f6f5e141aa952f3bba06e838b5cb9bd5dbf9584e9ac998931808950?s=96&d=mm&r=g","author_category":"","last_name":"Kulkarni","first_name":"Amit","job_title":"","user_url":"","description":"Amit Kulkarni est\u00e1 trabalhando como gerente de engenharia na Couchbase em \u00edndices secund\u00e1rios globais. Ele tem experi\u00eancia em trabalhar com tecnologias como sistemas distribu\u00eddos, bancos de dados NoSQL distribu\u00eddos, armazenamento em nuvem, virtualiza\u00e7\u00e3o de armazenamento etc."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/14931","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\/49228"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=14931"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/14931\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/14951"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=14931"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=14931"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=14931"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=14931"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}