Introdução ao escalonamento multidimensional

O dimensionamento multidimensional do Couchbase é uma tecnologia inovadora de banco de dados que aumenta substancialmente o desempenho dos aplicativos e reduz drasticamente os custos. O Multi-Dimensional Scaling obtém esses ganhos com a opção de separar, isolar e dimensionar serviços de banco de dados individuais - consulta, índice e dados - permitindo que você ofereça suporte a mais de um perfil de hardware para que os recursos possam ser otimizados para um único serviço. O resultado é que você pode executar consultas complexas, criar índices ilimitados e continuar a escalonar os dados em vários nós sem se preocupar com o desempenho prejudicado.

Outros bancos de dados, como MongoDB, Oracle e Cassandra, têm uma abordagem de dimensionamento de tamanho único que o força a executar todos os serviços de banco de dados em todos os nós. Essa abordagem leva à contenção de recursos, a um desempenho mais lento, a recursos de consulta limitados e ao provisionamento excessivo. O Couchbase Server com dimensionamento multidimensional elimina todas essas limitações, resultando em maior desempenho, em maior escala, tudo a um custo menor.

Por que a escala multidimensional é necessária?

Embora o dimensionamento de uma arquitetura distribuída seja ótimo para os dados, é um desafio para os índices e as consultas. Em termos simples, o dimensionamento dos dados acelera as leituras e gravações, mas torna as consultas mais lentas e, embora a criação de índices acelere as consultas, torna as gravações mais lentas. Por exemplo, se você dimensionar o banco de dados para suportar uma quantidade enorme de dados, o desempenho da consulta sofrerá drasticamente, pois quanto mais nós participarem de uma consulta distribuída, pior será o desempenho. E a criação de muitos índices para melhorar o desempenho da consulta afetará negativamente o desempenho da gravação, pois as gravações não serão concluídas até que todos os índices tenham sido atualizados. O resultado final é que o escalonamento, com cada serviço de banco de dados em execução em cada nó, pode resultar em uma grande queda na eficiência e no desempenho.

Como os serviços de banco de dados se beneficiam do isolamento?

As consultas exigem processadores rápidos

Se uma consulta puder ser executada por um único nó, ou muitas consultas por vários nós, os resultados serão retornados mais rapidamente e não retardarão as leituras e gravações, monopolizando o tempo de CPU.

Os índices exigem SSDs de alto desempenho

Se um índice puder ser armazenado em um único nó ou em vários índices em vários nós, ele poderá ser pesquisado mais rapidamente e não reduzirá a velocidade das gravações por monopolizar a E/S do disco.

Os dados são a razão de ser de um banco de dados distribuído

Quanto mais nós você tiver, mais dados poderá armazenar. Esses nós se beneficiam do aumento da memória, mas exigem menos da CPU e do disco. Quando os dados são isolados das consultas e dos índices, o desempenho de leitura e gravação não só melhora, como também permanece consistente.

Benefícios do isolamento

Consulta Índice Dados
Otimização de recursos Processamento Armazenamento Memória
Benefícios do isolamento As consultas são mais rápidas.

As consultas não reduzem a velocidade das leituras ou gravações.

O dimensionamento do serviço de consulta não força o rebalanceamento dos dados.

Não há contenção de CPU com os serviços de índice e dados.

 

Os índices são pesquisados mais rapidamente.

Os índices não reduzem a velocidade das gravações.

O dimensionamento do serviço de índice não força o rebalanceamento dos dados.

Não há contenção de E/S de disco com o serviço de dados.

Não há limite para o número de índices.

 

As leituras e gravações são mais rápidas.

O dimensionamento de dados não torna as consultas ou pesquisas de índice mais lentas.

O dimensionamento do serviço de dados não força os índices a serem rebalanceados.

Não há contenção de recursos com os serviços de consulta e índice.

 

 

Requisitos de hardware Processador rápido

Menos memória

HDD

 

Processador básico

Menos memória

SSD

 

Processador básico

Mais memória

HDD ou SSD

 

Como funciona o dimensionamento multidimensional

O dimensionamento multidimensional permite separar e isolar os serviços de banco de dados - consulta, indexação e dados - para que você possa dimensionar e otimizar os recursos de cada um deles com base em sua própria carga de trabalho individual.

- Suas consultas e índices terão um desempenho melhor, pois não precisarão mais de todos os nós.
- Todo o seu aplicativo terá um desempenho melhor, pois as leituras, gravações e consultas não competirão mais por recursos compartilhados.
- Seus custos de hardware diminuirão, pois você poderá aplicar servidores maiores para consultas e índices e servidores menores para dados.

Os benefícios são impactantes e imediatos.

Benefício técnico

- Desempenho aprimorado do aplicativo

- Estabilidade aprimorada do aplicativo

- Melhor utilização dos recursos

- Melhoria da eficiência operacional

Benefício comercial

- Melhor experiência do cliente

- Experiência consistente do cliente

- Custos de hardware mais baixos

- Redução da sobrecarga administrativa