{"id":1630,"date":"2014-12-16T19:33:21","date_gmt":"2014-12-16T19:33:21","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=1630"},"modified":"2025-06-13T23:50:15","modified_gmt":"2025-06-14T06:50:15","slug":"how-many-nodes-part-2-sizing-couchbase-server-20-cluster","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/","title":{"rendered":"Quantos n\u00f3s?  Parte 2: Dimensionamento de um cluster do Couchbase Server 2.0"},"content":{"rendered":"<p>No <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-1-introduction-sizing-couchbase-server-20-cluster\/\">primeira parte desta s\u00e9rie<\/a>Em meu artigo sobre o Couchbase, apresentei uma vis\u00e3o geral dos cinco fatores que determinam o dimensionamento do cluster do Couchbase: RAM, disco (IO e tamanho), CPU, rede e distribui\u00e7\u00e3o de dados.  Nesta segunda parte, quero entrar em mais detalhes sobre casos de uso e cen\u00e1rios espec\u00edficos para ver como v\u00e1rios designs de aplicativos e cargas de trabalho afetam esses v\u00e1rios fatores.  Os <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-3-hardware-considerations\/\">terceira entrada<\/a> desta s\u00e9rie aborda diferentes op\u00e7\u00f5es de hardware e infraestrutura.  Por fim, o <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-4-monitoring-sizing\/\">quarta entrada<\/a> analisa as m\u00e9tricas que podem ser monitoradas dentro e fora do Cocuhbase para entender os requisitos de dimensionamento.<\/p>\n<p>O tamanho de um cluster do Couchbase Server 1.8 era bastante simples, e voc\u00ea pode encontrar uma discuss\u00e3o sobre isso aqui, juntamente com uma calculadora.  Com as recentes adi\u00e7\u00f5es de recursos \u00e0 vers\u00e3o 2.0, isso se torna um pouco mais complicado...<\/p>\n<p>Vamos dar uma olhada em duas considera\u00e7\u00f5es sobre o design e os requisitos do aplicativo que ter\u00e3o impacto no dimensionamento do cluster:<\/p>\n<ul class=\"rteindent1\">\n<li>Seu aplicativo \u00e9 composto principalmente (ou mesmo exclusivamente) pelo acesso a documentos individuais?  Ou voc\u00ea espera usar o nosso recurso de indexa\u00e7\u00e3o e consulta? Uma boa descri\u00e7\u00e3o sobre como combinar acesso a chaves\/documentos e visualiza\u00e7\u00f5es pode ser encontrada aqui.<\/li>\n<li><span style=\"font-family: inherit;font-size: 1em\">Voc\u00ea planeja usar o novo <\/span>Recurso de replica\u00e7\u00e3o entre data centers (XDCR)<span style=\"font-family: inherit;font-size: 1em\">?<\/span><\/li>\n<\/ul>\n<p><strong>Acesso a documentos individuais e atualiza\u00e7\u00e3o a partir da vers\u00e3o 1.8<\/strong><\/p>\n<p>O caso de uso mais simples a ser discutido \u00e9 quando um aplicativo realmente requer apenas acesso a um documento individual (normalmente chamado de caso de uso \"chave\/valor\").  Isso inclui armazenamentos de sess\u00e3o e de perfil de usu\u00e1rio, aplicativos de segmenta\u00e7\u00e3o de an\u00fancios, muitos jogos sociais etc.<\/p>\n<p>O dimensionamento desses casos de uso \u00e9 muito semelhante \u00e0s diretrizes de dimensionamento do 1.8, com algumas modifica\u00e7\u00f5es.  Como em todas as discuss\u00f5es sobre dimensionamento, os mesmos cinco fatores determinantes se aplicam, sendo que o dimensionamento da RAM geralmente \u00e9 o que vence aqui.<\/p>\n<ul class=\"rteindent1\">\n<li>RAM: Veja <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-1-introduction-sizing-couchbase-server-20-cluster\/\">Parte 1<\/a> para uma discuss\u00e3o sobre as considera\u00e7\u00f5es do dimensionamento adequado da RAM.  Para aqueles que est\u00e3o familiarizados com a vers\u00e3o 1.8, n\u00e3o houve muita mudan\u00e7a aqui.  Se n\u00e3o estiver familiarizado, d\u00ea uma olhada em nossas diretrizes e calculadora de dimensionamento.<\/li>\n<li>Disco:  Lembre-se de que a atualiza\u00e7\u00e3o do Couchbase Server 1.8 para o 2.0 pode exigir muito mais espa\u00e7o em disco.   Do ponto de vista de E\/S, o formato de disco somente de anexo ler\u00e1 e gravar\u00e1 dados mais rapidamente e de forma mais consistente do que o 1.8.  No entanto, h\u00e1 tamb\u00e9m a necessidade de compacta\u00e7\u00e3o on-line dos arquivos de disco, e isso exigir\u00e1 um pouco mais de E\/S em disco. <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/compaction-magic-couchbase-server-20\/\">Este blog<\/a> pode ajud\u00e1-lo a entender melhor a compacta\u00e7\u00e3o.<\/li>\n<li>CPU:  Conforme mencionado em <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-1-introduction-sizing-couchbase-server-20-cluster\/\">Parte 1<\/a>Se o aplicativo estiver em um ambiente de disco r\u00edgido, a leitura e a grava\u00e7\u00e3o do aplicativo na RAM e fora dela podem ser tratadas de forma muito eficiente com muito pouca CPU.  A adi\u00e7\u00e3o da compacta\u00e7\u00e3o autom\u00e1tica aumenta um pouco a atividade da CPU devido \u00e0 E\/S do disco, mas normalmente n\u00e3o afeta o desempenho do aplicativo.  Embora as instala\u00e7\u00f5es t\u00edpicas da vers\u00e3o 1.x pudessem \"se contentar\" com 2 n\u00facleos, estamos aumentando essa recomenda\u00e7\u00e3o para pelo menos 4, mesmo para o caso de uso b\u00e1sico de \"documento-chave\".<\/li>\n<\/ul>\n<p dir=\"ltr\">Ao fazer a atualiza\u00e7\u00e3o a partir da vers\u00e3o 1.x, \u00e9 altamente recomend\u00e1vel usar o <a href=\"https:\/\/support.couchbase.com\/home\">Suporte ao Couchbase<\/a> para que possamos ajudar a analisar o ambiente, fornecer recomenda\u00e7\u00f5es e ajudar a fazer com que a atualiza\u00e7\u00e3o ocorra da forma mais tranquila poss\u00edvel.<\/p>\n<p><strong>Replica\u00e7\u00e3o entre data centers (XDCR)<\/strong><\/p>\n<p>Muitas situa\u00e7\u00f5es\/ambientes criam a necessidade de replica\u00e7\u00e3o de dados em v\u00e1rios clusters do Couchbase.  Voc\u00ea precisa do XDCR para recupera\u00e7\u00e3o de desastres, geolocaliza\u00e7\u00e3o de dados ou simplesmente sincroniza\u00e7\u00e3o para testes. Ser\u00e1 importante garantir que seu cluster do Couchbase seja dimensionado de forma eficaz.  Esses requisitos de capacidade s\u00e3o adicionais a tudo o mais que os clusters est\u00e3o sendo solicitados a executar.<\/p>\n<p>Para fins desta discuss\u00e3o, darei uma olhada separada nos requisitos de cluster de \"origem\" e \"destino\" para o XDCR.  Na produ\u00e7\u00e3o, voc\u00ea pode ter uma topologia um-muitos, muitos-um ou muitos-muitos combinando v\u00e1rios fluxos de replica\u00e7\u00e3o unidirecional.<\/p>\n<p>1. Cluster de origem<\/p>\n<ul>\n<li>RAM: isso \u00e9 um pouco vari\u00e1vel, mas vimos que \u00e9 necess\u00e1rio um pouco mais de RAM apenas para lidar com o processo de replica\u00e7\u00e3o de dados para outro cluster.  Isso varia um pouco com base no n\u00famero de buckets (e fluxos de replica\u00e7\u00e3o), mas uma boa estimativa \u00e9 deixar cerca de 2 GB de RAM livre por n\u00f3, al\u00e9m do que \u00e9 necess\u00e1rio para manter os dados.  Isso \u00e9 necess\u00e1rio para o processo Erlang (beam.smp no Linux, erl.exe no Windows).<\/li>\n<li>Disco:  A implementa\u00e7\u00e3o atual do XDCR envolve o envio de dados do subsistema de disco de um cluster de origem para o destino.  Isso permite que nenhuma fila seja mantida na RAM e que a reinicializa\u00e7\u00e3o de um processo de replica\u00e7\u00e3o ainda ocorra sem reenviar todos os dados.  Al\u00e9m disso, v\u00e1rias grava\u00e7\u00f5es do aplicativo local s\u00e3o automaticamente desduplicadas antes de serem replicadas, economizando a preciosa largura de banda da rede. No entanto, isso significa que o cluster de origem de qualquer XDCR ter\u00e1 maiores requisitos de E\/S de disco para ler os documentos depois que eles forem persistidos no disco<\/li>\n<li>CPU: O cluster de origem de um XDCR tamb\u00e9m ter\u00e1 maiores requisitos de CPU para processar e enviar os dados para outro cluster.  Por padr\u00e3o, h\u00e1 32 fluxos por n\u00f3 e por replica\u00e7\u00e3o.  Isso pode ser aumentado, mas lembre-se de que um n\u00famero maior de fluxos exigir\u00e1 mais CPU.  Uma pr\u00e1tica recomendada geral deve ser ter um n\u00facleo extra por bucket XDCR sendo replicado.<\/li>\n<\/ul>\n<p>2. Cluster de destino:<\/p>\n<ul>\n<li>Dimensionamento de RAM e disco: geralmente n\u00e3o \u00e9 preciso dizer, mas se voc\u00ea estiver enviando mais dados para um cluster (como na agrega\u00e7\u00e3o de outros clusters), ele precisar\u00e1 de mais RAM e espa\u00e7o em disco para conter esses dados.  Se voc\u00ea estiver simplesmente replicando o mesmo conjunto de dados, n\u00e3o dever\u00e1 haver nenhum requisito maior aqui.<\/li>\n<li>E\/S de disco: Mesmo que voc\u00ea n\u00e3o precise de mais espa\u00e7o para o mesmo conjunto de dados (ou seja, voc\u00ea n\u00e3o precisa do conjunto de trabalho da origem na mem\u00f3ria), \u00e9 prov\u00e1vel que haja mais grava\u00e7\u00f5es do(s) cluster(s) de origem por meio do XDCR. Voc\u00ea precisar\u00e1 de IO de disco suficiente para persistir essas grava\u00e7\u00f5es no disco e tamb\u00e9m de largura de banda de IO suficiente para <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/docs\/couchbase-manual-2.0\/couchbase-admin-tasks-compaction.html\/\">compacto<\/a> esses dados junto com as grava\u00e7\u00f5es do aplicativo local. ???<\/li>\n<li>Em geral, \u00e9 importante dimensionar os clusters de origem e de destino e testar o desempenho de sua carga de trabalho. No entanto, sabe-se que o desempenho do XDCR no cluster de origem se beneficiar\u00e1 muito com mais n\u00f3s, pois os dados que precisam ser enviados s\u00e3o feitos em paralelo.<\/li>\n<\/ul>\n<p>3. Rede<\/p>\n<p>Embora os requisitos de rede entre clusters do Couchbase Server normalmente n\u00e3o exijam muita considera\u00e7\u00e3o, a transfer\u00eancia de dados por um link de WAN provavelmente exigir\u00e1 um pouco mais de reflex\u00e3o.  O Couchbase Server far\u00e1 automaticamente o checkpoint e reiniciar\u00e1 o XDCR conforme a rede permitir, mas a replica\u00e7\u00e3o s\u00f3 ser\u00e1 eficaz se os dados puderem chegar ao outro lado.<\/p>\n<p>4. Replica\u00e7\u00e3o bidirecional e outras topologias<\/p>\n<p>Esta discuss\u00e3o se concentrou em clusters de origem e destino \u00fanicos que replicam um \u00fanico bucket.  A replica\u00e7\u00e3o bidirecional transforma cada cluster em uma origem e um destino com os requisitos de capacidade de ambos.<\/p>\n<p>Ao combinar v\u00e1rios clusters e\/ou v\u00e1rios buckets, \u00e9 importante garantir que cada um tenha capacidade suficiente.  Por exemplo, um one-many criar\u00e1 mais fluxos de replica\u00e7\u00e3o na \u00fanica origem, e um many-one gerar\u00e1 uma sobrecarga significativa (espa\u00e7o em disco \/ IO \/ CPU) no cluster de destino.<br \/>\n<strong>Visualiza\u00e7\u00f5es e consultas<\/strong><\/p>\n<p>Um dos novos recursos mais procurados do Couchbase Server 2.0 \u00e9 a adi\u00e7\u00e3o de exibi\u00e7\u00f5es para indexa\u00e7\u00e3o\/consulta de dados.  Como acontece com qualquer novo recurso, ele vem com certos requisitos e considera\u00e7\u00f5es relacionados ao dimensionamento do cluster.<\/p>\n<p>No momento, o sistema de visualiza\u00e7\u00e3o \u00e9 baseado em disco, o que significa que os requisitos de espa\u00e7o em disco e de E\/S ser\u00e3o aumentados, bem como a necessidade de mais RAM fora do cache baseado em objeto para melhorar a taxa de transfer\u00eancia e a lat\u00eancia da consulta por meio do cache de E\/S integrado do sistema operacional.<\/p>\n<p>O impacto real depender\u00e1 significativamente da carga de trabalho do seu aplicativo, bem como da quantidade e da complexidade dos documentos de design e das defini\u00e7\u00f5es de visualiza\u00e7\u00e3o.  \u00c9 muito importante seguir essas pr\u00e1ticas recomendadas de grava\u00e7\u00e3o de exibi\u00e7\u00e3o ao projetar suas exibi\u00e7\u00f5es para mitigar e diminuir os requisitos de dimensionamento o m\u00e1ximo poss\u00edvel.  As cargas de trabalho pesadas de grava\u00e7\u00e3o exercer\u00e3o mais press\u00e3o sobre a atualiza\u00e7\u00e3o real dos \u00edndices e as cargas de trabalho mais orientadas \u00e0 leitura exercer\u00e3o mais carga sobre a consulta desses \u00edndices.<\/p>\n<p>1. Atualiza\u00e7\u00e3o do \u00edndice<\/p>\n<p>Uma inser\u00e7\u00e3o ou atualiza\u00e7\u00e3o de um documento acabar\u00e1 acionando uma atualiza\u00e7\u00e3o de \u00edndice.  Esse acionamento faz parte do nosso processo normal em segundo plano e\/ou de uma solicita\u00e7\u00e3o de aplicativo.  O processamento efetivo dessas atualiza\u00e7\u00f5es ter\u00e1 os seguintes impactos:<\/p>\n<ul dir=\"ltr\">\n<li>Tamanho do disco: H\u00e1 arquivos extras criados para cada documento de design e para cada visualiza\u00e7\u00e3o dentro dele.  Esses arquivos s\u00e3o preenchidos com as chaves e os valores emitidos pelas descri\u00e7\u00f5es das visualiza\u00e7\u00f5es (por isso \u00e9 importante mant\u00ea-los o menor poss\u00edvel). Esses arquivos s\u00e3o do tipo append-only, portanto, crescer\u00e3o a cada nova inser\u00e7\u00e3o, atualiza\u00e7\u00e3o ou exclus\u00e3o e ser\u00e3o compactados de forma semelhante aos arquivos de dados.<\/li>\n<li>E\/S do disco: Possivelmente, o maior impacto que o uso de exibi\u00e7\u00f5es ter\u00e1 em um sistema \u00e9 na E\/S do disco.  A atualiza\u00e7\u00e3o do \u00edndice em si poder\u00e1 exigir uma quantidade significativa de E\/S, pois cada grava\u00e7\u00e3o de documento pode precisar ser gravada em v\u00e1rios arquivos de \u00edndice.  Essas atualiza\u00e7\u00f5es s\u00e3o tratadas por threads e processos separados para n\u00e3o afetar o funcionamento normal do banco de dados, mas ter E\/S suficiente ser\u00e1 crucial para manter os \u00edndices atualizados. Al\u00e9m disso, a compacta\u00e7\u00e3o normal e autom\u00e1tica dos \u00edndices consumir\u00e1 uma certa quantidade de E\/S de disco e \u00e9 necess\u00e1ria para manter o tamanho dos arquivos de disco sob controle.<\/li>\n<li>CPU: Juntamente com a E\/S de disco, as atualiza\u00e7\u00f5es de exibi\u00e7\u00e3o incorrer\u00e3o em uma quantidade adicional de CPU.  Por padr\u00e3o, h\u00e1 4 indexadores por bucket e por n\u00f3.   Os sistemas com muitos n\u00facleos se beneficiar\u00e3o com o aumento desse n\u00famero.  A pr\u00e1tica geral deve ser ter 1 n\u00facleo adicional por documento de design (cada visualiza\u00e7\u00e3o \u00e9 processada em s\u00e9rie em um documento de design, mas v\u00e1rios documentos de design podem ser processados em paralelo)<\/li>\n<li>\u00cdndices de r\u00e9plica: Desativados por padr\u00e3o, podem ser ativados para ajudar muito o desempenho da consulta ap\u00f3s a falha de um n\u00f3.  No entanto, eles pelo menos dobrar\u00e3o (dependendo de quantas r\u00e9plicas estiverem configuradas) a quantidade de espa\u00e7o em disco, E\/S de disco e carga de CPU exigida pelo sistema.  Juntamente com os indexadores prim\u00e1rios, h\u00e1 2 indexadores de r\u00e9plica por bucket e por n\u00f3 por padr\u00e3o.<\/li>\n<\/ul>\n<p>O processo de atualiza\u00e7\u00e3o do \u00edndice \u00e9 escalonado linearmente com a adi\u00e7\u00e3o de mais n\u00f3s, pois cada n\u00f3 \u00e9 respons\u00e1vel apenas pelo processamento de seus pr\u00f3prios dados.<\/p>\n<p>\u00c9 nossa pr\u00e1tica recomendada configurar o caminho do disco para que os \u00edndices estejam em uma unidade\/unidade separada dos arquivos de dados.  Como cada conjunto de arquivos \u00e9 somente de anexa\u00e7\u00e3o, as grava\u00e7\u00f5es s\u00e3o sempre sequenciais em um arquivo.  Entretanto, a combina\u00e7\u00e3o dos arquivos de dados e de \u00edndice cria muito mais E\/S aleat\u00f3ria no disco compartilhado.  Al\u00e9m disso, as cargas de trabalho pesadas de grava\u00e7\u00e3o devem considerar seriamente o uso de SSDs.<br \/>\n2. Consulta de visualiza\u00e7\u00f5es<br \/>\nPara que um aplicativo tenha o melhor desempenho ao consultar exibi\u00e7\u00f5es, os seguintes impactos de dimensionamento devem ser levados em considera\u00e7\u00e3o:<\/p>\n<ul>\n<li>RAM: embora os arquivos de \u00edndice sejam armazenados e acessados do disco, o formato desses arquivos de disco se presta muito bem ao cache de E\/S normal do sistema operacional.  Por esse motivo, \u00e9 importante deixar uma certa quantidade de RAM dispon\u00edvel para o sistema fora da cota do Couchbase.  O n\u00famero real depender\u00e1 muito do tamanho de seus \u00edndices, mas mesmo uma quantidade relativamente pequena pode ter um grande impacto na lat\u00eancia e no desempenho da consulta.<\/li>\n<li>E\/S de disco: Embora n\u00e3o seja necess\u00e1rio espa\u00e7o extra simplesmente por consultar as exibi\u00e7\u00f5es, ser\u00e1 necess\u00e1ria alguma quantidade de E\/S adicional em disco.  Isso depender\u00e1 muito da frequ\u00eancia com que os \u00edndices s\u00e3o atualizados e depois consultados, bem como da quantidade de RAM dispon\u00edvel para armazen\u00e1-los em cache.<\/li>\n<li>CPU: Tamb\u00e9m haver\u00e1 um aumento nos requisitos de CPU ao consultar as exibi\u00e7\u00f5es devido ao manuseio da consulta individual e \u00e0 mesclagem de resultados de v\u00e1rios n\u00f3s.<\/li>\n<\/ul>\n<p>Considerando a implementa\u00e7\u00e3o scather\/gather de indexa\u00e7\u00e3o e consulta, cada n\u00f3 precisa participar de cada solicita\u00e7\u00e3o de consulta. A taxa de transfer\u00eancia da consulta pode ser melhorada com o aumento do cache do sistema de arquivos dispon\u00edvel ou do hardware f\u00edsico.<\/p>\n<p>3. Efeito das opini\u00f5es sobre o reequil\u00edbrio<\/p>\n<p>Ao aproveitar o novo recurso Views do Couchbase Server 2.0, ser\u00e1 importante conhecer e se preparar para o impacto que isso ter\u00e1 no rebalanceamento do cluster.<\/p>\n<p>Em algum momento do processo de rebalanceamento, os dados que est\u00e3o sendo movidos de um n\u00f3 para outro precisam ser refletidos no(s) \u00edndice(s) desse n\u00f3 para que as consultas retornem consistentemente os mesmos resultados.  Projetamos o sistema para realizar essa atualiza\u00e7\u00e3o durante todo o processo de rebalanceamento, em vez de tentar recuperar tudo no final.  Como cada <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/rebalancing-couchbase-part-i\/\">a parti\u00e7\u00e3o de dados \u00e9 movida <\/a>o \u00edndice \u00e9 atualizado antes de transferir a propriedade de um para o outro.  Esse comportamento \u00e9 configur\u00e1vel. Voc\u00ea pode desativar o rebalanceamento com reconhecimento de \u00edndice se o seu aplicativo puder lidar com resultados inconsistentes e acelerar significativamente o tempo de rebalanceamento.<\/p>\n<p>Deixar essa configura\u00e7\u00e3o ativada causa os seguintes impactos:<\/p>\n<ul>\n<li>RAM: como h\u00e1 um processamento extra a ser feito, mais RAM ser\u00e1 usada para manter as grava\u00e7\u00f5es pendentes na fila de grava\u00e7\u00e3o em disco de cada n\u00f3 de destino<\/li>\n<li>Tamanho do disco: Haver\u00e1 um aumento significativo na quantidade de espa\u00e7o em disco usado durante o rebalanceamento para garantir a seguran\u00e7a e a consist\u00eancia das exibi\u00e7\u00f5es.  Isso ser\u00e1 limpo quando os dados n\u00e3o forem mais necess\u00e1rios, mas, devido \u00e0 grande quantidade de grava\u00e7\u00f5es, \u00e9 poss\u00edvel que o processo de compacta\u00e7\u00e3o n\u00e3o consiga acompanhar o ritmo at\u00e9 que o rebalanceamento seja conclu\u00eddo.<\/li>\n<li>E\/S do disco: como haver\u00e1 uma grande quantidade de dados sendo lidos, gravados e indexados ao mesmo tempo, a E\/S do disco aumentar\u00e1 drasticamente durante o rebalanceamento.<\/li>\n<\/ul>\n<p>Juntamente com quase todas as outras partes do Couchbase, o processo de rebalanceamento \u00e9 beneficiado pelo fato de haver mais n\u00f3s.  Imagine adicionar apenas um n\u00f3 a um cluster.  Em um extremo, passar de 1 para 2 n\u00f3s \u00e9 sempre o pior cen\u00e1rio poss\u00edvel.  Isso ocorre porque metade do conjunto de dados precisa ser movida. Na maioria dos casos, um conjunto de dados de r\u00e9plica tamb\u00e9m est\u00e1 sendo criado durante o rebalanceamento. Nesse caso especial, h\u00e1 apenas um n\u00f3 dispon\u00edvel para lidar com toda a leitura e o recebimento de dados.  Em contrapartida, passar de 21 para 22 n\u00f3s \u00e9 significativamente menos intensivo. Apenas 1\/21 dos dados precisa ser movido, provavelmente nenhuma r\u00e9plica est\u00e1 sendo criada e a carga de leitura\/recep\u00e7\u00e3o \u00e9 compartilhada por todos os 21 n\u00f3s.<br \/>\n<strong>Conclus\u00e3o<\/strong><\/p>\n<p>Para qualquer sistema complexo (especialmente um banco de dados), o dimensionamento nunca \u00e9 uma tarefa f\u00e1cil. As vari\u00e1veis s\u00e3o in\u00fameras e as considera\u00e7\u00f5es e decis\u00f5es devem sempre se basear nos requisitos individuais do aplicativo e na disponibilidade de recursos.  Faremos o poss\u00edvel para fornecer orienta\u00e7\u00e3o, mas \u00e9 muito importante testar e preparar um sistema com a carga de trabalho\/necessidades do seu aplicativo antes e depois da implementa\u00e7\u00e3o.<\/p>\n<p>O <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-3-hardware-considerations\/\">pr\u00f3xima e terceira entrada <\/a>desta s\u00e9rie fornece algumas recomenda\u00e7\u00f5es\/considera\u00e7\u00f5es espec\u00edficas de implanta\u00e7\u00e3o e hardware para um cluster de produ\u00e7\u00e3o do Couchbase Server.<\/p>","protected":false},"excerpt":{"rendered":"<p>In the first part of this series, I gave an overview of the 5 factors that determine the sizing of your Couchbase cluster: RAM, disk (IO and size), CPU, network and data distribution. \u00a0In this second part, I want to [&hellip;]<\/p>\n","protected":false},"author":24,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816,9415],"tags":[1300,1329,1330,1331,1328,1326],"ppma_author":[8969],"class_list":["post-1630","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","category-xdcr","tag-cluster","tag-cpu","tag-disk","tag-network","tag-ram","tag-sizing"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How Many Nodes? Sizing a Couchbase Server 2.0 cluster<\/title>\n<meta name=\"description\" content=\"Explore specific use cases and scenarios to see how various application designs and workloads affect these various factors while sizing a Couchbase cluster.\" \/>\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\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How Many Nodes? Part 2: Sizing a Couchbase Server 2.0 cluster\" \/>\n<meta property=\"og:description\" content=\"Explore specific use cases and scenarios to see how various application designs and workloads affect these various factors while sizing a Couchbase cluster.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2014-12-16T19:33:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T06:50:15+00:00\" \/>\n<meta name=\"author\" content=\"Perry Krug\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Perry Krug\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/\"},\"author\":{\"name\":\"Perry Krug\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#\\\/schema\\\/person\\\/d75b855801e89467ae2cfe0caef39a15\"},\"headline\":\"How Many Nodes? Part 2: Sizing a Couchbase Server 2.0 cluster\",\"datePublished\":\"2014-12-16T19:33:21+00:00\",\"dateModified\":\"2025-06-14T06:50:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/\"},\"wordCount\":2461,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"keywords\":[\"Cluster\",\"cpu\",\"disk\",\"network\",\"ram\",\"Sizing\"],\"articleSection\":[\"Couchbase Server\",\"Cross Data Center Replication (XDCR)\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/\",\"name\":\"How Many Nodes? Sizing a Couchbase Server 2.0 cluster\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2014-12-16T19:33:21+00:00\",\"dateModified\":\"2025-06-14T06:50:15+00:00\",\"description\":\"Explore specific use cases and scenarios to see how various application designs and workloads affect these various factors while sizing a Couchbase cluster.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/1\\\/2022\\\/11\\\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How Many Nodes? Part 2: Sizing a Couchbase Server 2.0 cluster\"}]},{\"@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\\\/d75b855801e89467ae2cfe0caef39a15\",\"name\":\"Perry Krug\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g07fdef12afbaed73ed2879a6d989ae12\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g\",\"caption\":\"Perry Krug\"},\"description\":\"Perry Krug is the Head of Developer Experience at Couchbase. He has been with Couchbase for over 13 years and has been working with high-performance caching and database systems for over 17.\",\"url\":\"https:\\\/\\\/www.couchbase.com\\\/blog\\\/pt\\\/author\\\/perry-krug\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Quantos n\u00f3s? Dimensionamento de um cluster do Couchbase Server 2.0","description":"Explore casos de uso e cen\u00e1rios espec\u00edficos para ver como v\u00e1rios designs de aplicativos e cargas de trabalho afetam esses v\u00e1rios fatores ao dimensionar um cluster do Couchbase.","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\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/","og_locale":"pt_BR","og_type":"article","og_title":"How Many Nodes? Part 2: Sizing a Couchbase Server 2.0 cluster","og_description":"Explore specific use cases and scenarios to see how various application designs and workloads affect these various factors while sizing a Couchbase cluster.","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/","og_site_name":"The Couchbase Blog","article_published_time":"2014-12-16T19:33:21+00:00","article_modified_time":"2025-06-14T06:50:15+00:00","author":"Perry Krug","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Perry Krug","Est. reading time":"11 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/"},"author":{"name":"Perry Krug","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/d75b855801e89467ae2cfe0caef39a15"},"headline":"How Many Nodes? Part 2: Sizing a Couchbase Server 2.0 cluster","datePublished":"2014-12-16T19:33:21+00:00","dateModified":"2025-06-14T06:50:15+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/"},"wordCount":2461,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","keywords":["Cluster","cpu","disk","network","ram","Sizing"],"articleSection":["Couchbase Server","Cross Data Center Replication (XDCR)"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/","url":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/","name":"Quantos n\u00f3s? Dimensionamento de um cluster do Couchbase Server 2.0","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2014-12-16T19:33:21+00:00","dateModified":"2025-06-14T06:50:15+00:00","description":"Explore casos de uso e cen\u00e1rios espec\u00edficos para ver como v\u00e1rios designs de aplicativos e cargas de trabalho afetam esses v\u00e1rios fatores ao dimensionar um cluster do Couchbase.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/how-many-nodes-part-2-sizing-couchbase-server-20-cluster\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How Many Nodes? Part 2: Sizing a Couchbase Server 2.0 cluster"}]},{"@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\/d75b855801e89467ae2cfe0caef39a15","name":"Perry Krug","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g07fdef12afbaed73ed2879a6d989ae12","url":"https:\/\/secure.gravatar.com\/avatar\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g","caption":"Perry Krug"},"description":"Perry Krug \u00e9 o chefe de experi\u00eancia do desenvolvedor na Couchbase. Ele est\u00e1 na Couchbase h\u00e1 mais de 13 anos e trabalha com sistemas de cache e banco de dados de alto desempenho h\u00e1 mais de 17 anos.","url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/perry-krug\/"}]}},"acf":[],"authors":[{"term_id":8969,"user_id":24,"is_guest":0,"slug":"perry-krug","display_name":"Perry Krug","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/d526d9acbd39623c0a9c0443617ab51bc75b0d8118706229ff946cea1a223257?s=96&d=mm&r=g","0":null,"1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/1630","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\/24"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=1630"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/1630\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=1630"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=1630"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=1630"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=1630"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}