Por que o Enterprise Edition
O Couchbase Server geralmente está disponível em três versões: Community Edition (CE), Enterprise Edition (EE) e Couchbase Cloud (DBaaS). Muitos clientes começam com a Community Edition. Eles fazem download do CE e o usam de forma totalmente gratuita para executar cargas de trabalho de desenvolvimento, teste e produção. O CE inclui alguns recursos básicos de disponibilidade, segurança e desempenho. No entanto, a EE pode ser útil para cargas de trabalho de produção pesadas. Por exemplo, o CE tem concorrência limitada (máximo de 4 núcleos por nó). As réplicas de índice não estão disponíveis. Os serviços de análise e eventos não estão disponíveis. O CE não tem dimensionamento multidimensional (MDS) e suporta apenas as seguintes combinações de serviços nos nós: "Dados", "Dados, índice, consulta", "Dados, índice, consulta, pesquisa de texto completo". Para obter mais informações, confira uma comparação detalhada das edições Community e Enterprise.
Fazendo upgrade do Couchbase Community Edition
E se você já estiver usando o Community Edition e quiser fazer upgrade para o Enterprise? A opção mais fácil seria configurar um cluster EE separado e usar o XDCR (Cross Data Center Replication) para mover dados de um cluster para outro. No entanto, o provisionamento de um novo cluster EE pode ser caro e demorado, especialmente para implementações no local. Nesse caso, outra opção seria executar um upgrade on-line contínuo. Alguns Considerações sobre a atualização de CE para EE estão disponíveis na documentação do Couchbase.
Mostre-me como fazer o upgrade
Para este artigo do blog, gravei um pequeno vídeo sobre a atualização do cluster do Couchbase Community Edition. Segui o processo de atualização on-line contínuo com um nó extra de reserva. Para tornar a atualização mais realista, executei um simulador de carga de trabalho N1QL (um programa chamado n1qlback) durante todo o processo de atualização. Usei o bucket padrão de amostra de viagem com 10 índices secundários globais (GSI). Um dos objetivos desse teste era mostrar que não haveria interrupção ou erros no fluxo de consulta ao descartar e recriar índices, adicionar e remover nós com diferentes edições do Couchbase. Abaixo está a lista de etapas de atualização.
- Adicionar um nó EE extra ao cluster CE
- Recriar os índices secundários de um dos nós CE para o nó EE.
- Eliminar os índices secundários no nó CE
- Remover um nó CE do cluster.
- Desinstale o CE no nó removido e instale o EE.
- Traga o nó EE de volta ao cluster.
- Repita esse processo para outros nós CE.
Observações pós-atualização
O EE oferece um tipo de modo de armazenamento mais eficiente e com melhor desempenho para índices secundários. O CE usa um modo de armazenamento de índices chamado "ForestDB".
1 2 3 4 5 6 7 8 9 10 |
http://ec2-xx-xxx-xx-xx.compute-1.amazonaws.com:8091/indexStatus { "indexes" (índices):[ { "storageMode":"forestdb", "hosts":[ "ec2-xx-xxx-xx-xx.compute-1.amazonaws.com:8091" ], ... }, |
Após a atualização para o EE, o novo modo de armazenamento de índice agora é "Plasma". O Plasma é o mecanismo de armazenamento que alimenta e aprimora os índices secundários globais para cargas de trabalho pesadas, introduzido pela primeira vez no Couchbase Enterprise 5.0
1 2 3 4 5 6 7 8 9 10 11 |
http://ec2-xx-xxx-xx-xx.compute-1.amazonaws.com:8091/indexStatus { "indexes" (índices):[ { "storageMode":"plasma", "partitionMap":{ "ec2-xx-xxx-xx-xxx.compute-1.amazonaws.com:8091":[ 0 ] ... }, |
O EE permite alterar os índices secundários, movendo-os entre os nós e alterando o número de réplicas de índices. Uma das primeiras etapas após a atualização do cluster pode ser a ativação de réplicas de índice para resolver problemas de alta disponibilidade. Por fim, certifique-se de que, depois que o nó EE for adicionado ao cluster do Couchbase Community Edition, você atualize todos os outros nós para colocar o cluster em um estado estável.
No contexto de CE vs. EE, a página que compara as edições (https://www.couchbase.com/products/editions) afirma que as réplicas de índice não são compatíveis com o CE. Mas quando verificamos a página do índice (https://docs.couchbase.com/server/current/learn/services-and-indexes/indexes/index-replication.html), ele não diz nada disso. Ele diz que o particionamento de índice é compatível apenas com o EE.
Você poderia verificar se há um erro de digitação em algum lugar?
Agradecimentos