HyperScale - CDB Data Solutions
Por Tiago Crespi
Pessoal, continuando a série de artigos sobre as várias formas de distribuição do Azure SQL Database, hoje vamos falar sobre o HyperScale.
O HyperScale é um dos muitos tier disponíveis no Azure, mas este foi criado para bancos de grande porte. Ele tem características bem específicas, como permitir bancos de dados maiores que 100Tb, além de ser altamente escalável tanto em computação quanto em storage. Sendo que, quando falamos de storage, o hyperscale aceita bancos a partir de 40Gb e incrementa o espaço conforme a necessidade automaticamente de 10Gb em 10Gb.
Há algumas características muito interessantes, como por exemplo, os backups são baseados em snapshot de arquivos, com isso o backup não impacta na performance do banco, além de os restores serem muito rápidos. Quando falamos em altamente escalável, estamos falando também de scale-out, ou seja, podemos criar novos nós do SQL Database em minutos, isso porque os dados são replicados por meio do serviço de log da réplica primária, após as réplicas estarem sincronizadas os logs são enviados para um armazenamento de longo prazo.
Quando escolher o HyperScale?
Este tier foi criado para não ter limites, essa é a grande diferença deste para os outros tiers. Claro que é uma questão de custo benefício, a recomendação é que o HyperScale seja usado em bancos de dados com mais de 4TB, mas como citado acima, é possível criar um banco de 40Gb, se necessário for. Outra questão a ser avaliada é performance e tempo de failover.
Falando em Failover, se ocorrer um problema com o nó primário, uma das réplicas assume como primária, se não houver replica secundária, uma nova será rapidamente criada, esta é mais uma vantagem da forma como o backup deste tier é feito.
Um aviso importante que econtramos na documentação, depois que o banco de dados foi migrado para o HyerScale, não há como migrar para outro tier diretamente, por causa da forma como os dados do banco são gravados, sendo necessário usar outras ferramentes como o Data Factory, Integration Service, Bacpac e Dacpac e etc. Isto mostra claramente, o quanto o HyperScale é diferente dos outros tiers.
Abaixo temos a bibliografia que consultamos para este artigo, assim como um link de comparação com os outros tiers.
https://docs.microsoft.com/en-us/azure/azure-sql/database/service-tiers-vcore?tabs=azure-portal#service-tiers