sexta-feira, 10 de janeiro de 2025

Performance extrema, com DynamoDB (DAX) Accelerator

 O Amazon DynamoDB foi concebido para escala e performance. Na maioria dos casos, os tempos de resposta do DynamoDB podem ser medidos em milissegundos de um dígito. No entanto, existem certos casos de uso que exigem tempos de resposta em microssegundos. Para esses casos de uso, o DynamoDB Accelerator (DAX) oferece tempos de resposta rápidos para acessar dados finais consistentes.


DynamoDB (DAX) Cluster


O DAX é um serviço de armazenamento em cache compatível com o DynamoDB no qual você pode se beneficiar da rápida performance em memória para aplicações exigentes. O DAX lida com três cenários principais:

  1. Como um cache na memória, o DAX reduz os tempos de resposta de workloads de leitura final consistente por uma ordem de magnitude que varia de milissegundos de um único dígito até microssegundos.

  2. O DAX reduz a complexidade operacional e da aplicação fornecendo um serviço gerenciado que é compatível com a API do DynamoDB. Portanto, ele exige apenas alterações funcionais mínimas para uso com um aplicativo existente.

  3. Para workloads de leitura intermitentes ou pesadas, o DAX fornece throughput mais alto e economia potencial de custos operacionais reduzindo a necessidade de provisionar unidades de capacidade de leitura em excesso. Isso é especialmente benéfico para aplicativos que exigem leituras repetidas para chaves individuais.

O DAX é compatível com a criptografia do lado do servidor. Com a criptografia em repouso, os dados persistentes pelo DAX no disco serão criptografados. O DAX grava dados ao disco como parte das alterações de propagação do nó primário para as réplicas de leitura. 

O DAX também oferece suporte à criptografia em trânsito, garantindo que todas as solicitações e respostas entre a aplicação e o cluster sejam criptografadas por TLS (Transport Level Security) e que as conexões com o cluster possam ser autenticadas pela verificação de um certificado de cluster. .


O DAX dá acesso a dados finais consistentes de tabelas do DynamoDB, com latência de microssegundos. Um cluster do DAX multi-AZ pode servir milhões de solicitações por segundo.

O DAX é ideal para os seguintes tipos de aplicações:

  • Aplicativos que exigem o melhor tempo de resposta possível para leituras. Alguns exemplos incluem lances em tempo real, jogos sociais e aplicações de negócios. O DAX oferece uma performance de leitura rápida na memória para esses casos de uso.

  • Aplicativos que fazem a leitura de um pequeno número de itens com mais frequência do que outros. Por exemplo, considere um sistema de comércio eletrônico que tem uma promoção de um produto popular válida por apenas um dia. Durante a promoção, a demanda por esse produto (e seus dados no DynamoDB) aumentaria drasticamente em comparação a todos os outros produtos. Para mitigar os impactos de uma chave de "aceleração" e uma distribuição de tráfego não uniforme, você pode descarregar as atividades de leitura em um cache do DAX até que essa promoção de um dia acabe.

  • Aplicativos que exigem leitura intensa, mas que também são sensíveis aos custos. Com o DynamoDB, você fornece o número de leituras por segundo que a sua aplicação exige. Se as atividades de leitura aumentarem, você poderá aumentar o throughput de leitura provisionado das suas tabelas (a um custo adicional). Como alternativa, é possível descarregar as atividades da sua aplicação em um cluster do DAX e reduzir a quantidade de unidades de capacidade de leitura que você precisa comprar.

  • Aplicativos que exigem leituras repetidas em um grande conjunto de dados. Esses aplicativos poderiam desviar os recursos de banco de dados de outros aplicativos. Por exemplo, uma análise de longa execução de dados meteorológicos regionais pode consumir toda a capacidade de leitura em uma tabela do DynamoDB. Essa situação pode afetar negativamente outros aplicativos que precisam acessar os mesmos dados. Com o DAX, a análise meteorológica pode ser realizada com base nos dados em cache.

O DAX não é ideal para os seguintes tipos de aplicação:

  • Aplicativos que exigem leituras fortemente consistentes (ou que não toleram leituras eventualmente consistentes).

  • Aplicativos que não precisam de tempos de resposta em microssegundos para leituras ou descarregar atividades de leitura repetidas de tabelas subjacentes.

  • Aplicações que exigem alto volume de gravações. O alto volume de gravações leva ao aumento da replicação entre nós do DAX em um cluster. Isso causa um aumento no consumo de recursos e no risco de problemas de disponibilidade.

  • Aplicações sem muitas leituras repetidas. O DAX tem melhor desempenho quando as taxas de acertos de cache excedem 90%. Taxas de acertos de cache mais baixas aumentam as perdas no cache, o que consome mais recursos em todo o cluster do DAX.

quinta-feira, 7 de dezembro de 2023

ADR - Recuperação acelerada no SQL Server 2022 (Evolução)

       Basicamente, a Recuperação Acelerada de Banco de Dados é um recurso revolucionário do SQL Server que aumenta drasticamente a disponibilidade do banco de dados. É uma virada de jogo em situações em que transações de longa duração estão envolvidas, pois revisa totalmente o processo de recuperação do mecanismo de banco de dados SQL. Os principais benefícios do ADR 2022 incluem recuperação rápida e consistente de banco de dados, reversão imediata de transações e truncamento agressivo de log.



O novo e aprimorado ADR no SQL Server 2022

O SQL Server 2022 introduz diversas melhorias no ADR, projetadas especificamente para enfrentar desafios de armazenamento persistente (PVS) e aprimorar a escalabilidade geral.


Limpeza de transações do usuário: uma abordagem mais eficiente

O processo de limpeza do ADR no SQL Server 2022 foi aprimorado ao permitir que as transações do usuário limpem páginas que o processo regular que não poderiam tratar devido a conflitos no bloqueio no nível da tabela. Isso garante que o processo de limpeza de ADR não fique mais paralisado indefinidamente devido a problemas de aquisição de bloqueio, aumentando assim a eficácia e eficiência geral do sistema.


Armazenamento de versão persistente em nível de transação (PVS)

Este novo recurso permite que o ADR limpe versões vinculadas a transações confirmadas, independentemente de o sistema ter cancelado transações. O resultado é que as páginas PVS podem ser desalocadas mesmo que a limpeza não conclua uma varredura bem-sucedida. Isso reduz o crescimento do PVS mesmo se a limpeza do ADR atrasar ou falhar.


Limpeza de versão multithread: poder em números


O SQL Server 2022 introduziu a limpeza de versão multithread, que permite que vários bancos de dados na mesma instância do SQL Server sejam limpos simultaneamente. Esse aprimoramento é particularmente benéfico ao lidar com vários bancos de dados grandes. O número de threads usados ​​para limpeza de versão pode ser ajustado para escalabilidade com  sp_configure.

EXEC sp_configure 'ADR Cleaner Thread Count', '8'
RECONFIGURE WITH OVERRIDE;

Para concluir

As melhorias na Recuperação Acelerada de Banco de Dados no SQL Server 2022 oferecem benefícios substanciais para administradores e desenvolvedores de banco de dados. Eles melhoram a velocidade e a eficiência dos processos de recuperação de banco de dados, reduzem o consumo de memória e melhoram a eficiência de limpeza. À medida que o SQL Server continua a evoluir, podemos antecipar melhorias adicionais no ADR e em outros recursos que continuarão a refinar o desempenho, a recuperação e o gerenciamento do banco de dados. 

terça-feira, 7 de novembro de 2023

SQL Server - Apresentando WAIT_AT_LOW_PRIORITY


Os administradores de banco de dados geralmente têm a tarefa de gerenciar o tamanho de um banco de dados SQL Server. O comando DBCC SHRINKDATABASE é uma ferramenta poderosa em seu arsenal, permitindo reduzir o tamanho físico dos dados e arquivos de log no banco de dados especificado. No entanto, como acontece com todas as ferramentas poderosas, deve ser usado criteriosamente para evitar potenciais problemas de desempenho. Nesta postagem do blog, exploraremos o comando DBCC SHRINKDATABASE e suas opções, com foco no recurso WAIT_AT_LOW_PRIORITY introduzido no SQL Server 2022 e versões posteriores.



Compreendendo o DBCC SHRINKDATABASE

O comando DBCC SHRINKDATABASE ajuda a reduzir o tamanho dos dados e os arquivos de log em um banco de dados especificado. Ele usa o nome ou ID do banco de dados como argumento, com uma porcentagem alvo opcional que denota o espaço livre que você gostaria de manter no arquivo de banco de dados após ele ter sido reduzido.

O comando também fornece duas opções especiais: NOTRUNCATE e TRUNCATEONLY. A opção NOTRUNCATE move as páginas atribuídas do final do arquivo para páginas não atribuídas na frente do arquivo, compactando efetivamente os dados dentro do arquivo, mas não liberando o espaço livre no final de volta para o sistema operacional. Por outro lado, a opção TRUNCATEONLY libera todo o espaço livre no final do arquivo para o sistema operacional sem mover nenhuma página do arquivo.

Apresentando WAIT_AT_LOW_PRIORITY

A opção WAIT_AT_LOW_PRIORITY é um recurso que pode ser usado junto com o comando DBCC SHRINKDATABASE para gerenciar a contenção de bloqueio de forma mais eficaz. Esse recurso é especialmente útil quando uma operação de redução precisa adquirir um bloqueio de modificação de esquema (Sch-M), que muitas vezes pode causar bloqueio significativo no banco de dados.

Quando um comando de redução é executado no modo WAIT_AT_LOW_PRIORITY, novas consultas que exigem bloqueios de estabilidade de esquema (Sch-S) não são bloqueadas pela operação de redução em espera até que a operação de redução pare de esperar e comece a ser executada. Se uma nova operação de redução no modo WAIT_AT_LOW_PRIORITY não puder obter um bloqueio devido a uma consulta de longa execução, a operação de redução eventualmente atingirá o tempo limite após 1 minuto por padrão e será encerrada sem erros.

A opção WAIT_AT_LOW_PRIORITY assume dois valores possíveis para o argumento ABORT_AFTER_WAIT: SELF e BLOCKERS. A opção SELF é o padrão e permite que a operação de redução saia sem realizar nenhuma ação se estiver sendo bloqueada. A opção BLOCKERS, por outro lado, elimina todas as transações do usuário que estão bloqueando a operação de redução, permitindo que ela continue.

DBCC SHRINKDATABASE (Database, 100) WITH WAIT_AT_LOW_PRIORITY (ABORT_AFTER_WAIT = BLOCKERS);

Considerações finais

Gerenciar o tamanho de um banco de dados SQL Server é uma parte essencial do trabalho de um administrador de banco de dados. DBCC SHRINKDATABASE, quando usado criteriosamente, pode ajudar a gerenciar o tamanho físico do banco de dados de maneira eficaz. A opção WAIT_AT_LOW_PRIORITY aprimora ainda mais isso, gerenciando a contenção de bloqueio de maneira eficaz e garantindo que as operações de redução do banco de dados não bloqueiem desnecessariamente outras consultas.

No entanto, também é importante notar que a redução e o crescimento constantes do banco de dados podem levar à fragmentação e impactar negativamente o desempenho. Portanto, é essencial ter uma estratégia bem pensada para gerenciar o tamanho do banco de dados, e ferramentas como DBCC SHRINKDATABASE devem fazer parte dessa estratégia, e não de toda a estratégia.

terça-feira, 26 de setembro de 2023

SQL SERVER 2014 – Estatísticas incrementais



SQL SERVER – Noções básicas sobre estatísticas incrementais

As estatísticas são essenciais para que o otimizador de consultas do SQL Server gere planos de execução eficientes. Estatísticas desatualizadas podem levar a um desempenho insatisfatório da consulta. Tradicionalmente, as estatísticas são atualizadas automaticamente ou reconstruídas manualmente usando verificações completas, o que pode consumir muitos recursos para tabelas grandes. O SQL Server 2014 introduziu um novo recurso chamado estatísticas incrementais para fornecer gerenciamento de estatísticas mais eficiente.

O que são estatísticas incrementais?

Com as estatísticas incrementais habilitadas, o SQL Server rastreia as alterações nos dados e atualiza apenas os subconjuntos de estatísticas impactados em vez de reconstruir as estatísticas completas. Isso significa atualizações menores e mais frequentes focadas nos dados alterados.

Alguns pontos-chave:

  • Disponível apenas para SQL Server 2014 e versões mais recentes.
  • Habilitado no nível de índice ou estatística usando a opção STATISTICS_INCREMENTAL = ON .
  • Mais adequado para tabelas grandes com alterações frequentes de dados em subconjuntos pequenos.
  • Pode reduzir o uso de recursos de manutenção de estatísticas enquanto mantém as estatísticas mais atualizadas.
  • A  STATISTICS_NORECOMPUTE configuração substitui e desativa estatísticas incrementais.

Como funcionam as estatísticas incrementais?

As estatísticas incrementais dividem os dados em partições e mantêm estatísticas em cada partição. À medida que os dados mudam, apenas as partições afetadas são atualizadas. Alguns exemplos de alterações de dados que acionam atualizações incrementais de estatísticas:

  • Instruções INSERT, UPDATE, DELETE ou MERGE que modificam dados dentro da tabela
  • Operações de inserção em massa usando  BULK INSERT ou OPENROWSET(BULK...)

O SQL Server determina quais partições foram afetadas usando bitmaps de rastreamento e atualiza apenas as estatísticas dessas partições.

Nos bastidores, as estatísticas incrementais são implementadas como um objeto de estatísticas com várias partes. O cabeçalho contém estatísticas de resumo global para toda a tabela. Cada partição possui seu próprio subconjunto de estatísticas.

Gerenciando estatísticas incrementais

Para ativar estatísticas incrementais em um objeto de índice ou estatísticas:

CREATE STATISTICS stats_name ON table_name(column)

WITH INCREMENTAL = ON;

CREATE INDEX index_name ON table_name(column)

WITH (STATISTICS_INCREMENTAL = ON);

Esse recurso é habilitado por padrão ao criar estatísticas em uma tabela com otimização de memória. Para desativar estatísticas incrementais, defina  STATISTICS_INCREMENTAL = OFFIsso reconstruirá as estatísticas como estatísticas não incrementais de verificação completa.

UseUPDATE STATISTICSpara reconstruir manualmente estatísticas incrementais sob demanda. Esses incrementos alteraram as partições e deixaram as partições inalteradas, diferentemente da verificação completa.

Verifique as  _STATS_DATE colunas  sys.indexes e  sys.stats veja quando as estatísticas foram atualizadas pela última vez.

Dicas para usar estatísticas

  • Teste seu ambiente de homologaçao e seus dados para ver se as estatísticas incrementais melhoram o desempenho em relação às estatísticas de verificação completa.
  • Considere ativar tabelas grandes com padrões de partição claros, como intervalos de datas.
  • Esteja ciente de que as estatísticas incrementais requerem mais espaço em disco do que as estatísticas típicas.
  • Monitore para garantir que as estatísticas incrementais sejam atualizadas conforme esperado.
  • Desative remova dos fontesSTATISTICS_NORECOMPUTE para que as estatísticas incrementais funcionem corretamente.

Espero que esta visão geral ajude a explicar como você pode aproveitar esse recurso no SQL Server! Qualquer duvida estamos a disposição. Sucesso

quinta-feira, 27 de julho de 2023

Novas mudanças no Controle de Certificações Microsoft - Microsoft Learn













Olá Pessoal, atenção com as mudanças no Controle de Certificações Microsoft.
Algumas semanas atrás, anunciamos atualizações para a experiência do perfil do Microsoft Learn que permite que você verifique, rastreie e compartilhe seu progresso e realizações de treinamento e certificação — tudo em uma plataforma . Hoje, temos o prazer de informar que esses novos recursos já estão ativos e prontos para você. Comece a usar essas ferramentas para ajudar a gerenciar seu aprendizado e compartilhar seu sucesso.

Observe que a parceria da Credly foi desativada
A parceria do programa de certificações da Microsoft com a Credly foi desativada em 30 de junho de 2023 e a Credly não está mais emitindo crachás para as certificações da Microsoft. Aqui está o que isso significa para você:
  • Todas as suas certificações estão em seu perfil do Microsoft Learn e serão atualizadas com informações pertinentes, incluindo datas de expiração e renovação.
  • Os crachás de Certificação Microsoft que você reivindicou anteriormente no Credly continuarão disponíveis em seu perfil Credly até 30 de junho de 2024. As datas de expiração e renovação desses crachás não serão mais atualizadas.

Aproveite ao máximo os novos recursos em seu perfil do Microsoft Learn

Certifique-se de alinhar seu perfil do Microsoft Learn com seu perfil de certificação . Isso ajuda a garantir acesso fácil a todas as informações e atividades de aprendizado. Depois de conectar seus perfis, acesse seu perfil do Microsoft Learn para:

  • Compartilhe e verifique suas Certificações Microsoft por e-mail, no LinkedIn e em outras plataformas de redes sociais. Você também pode atualizar seu currículo com um link para sua certificação obtida verificada pela Microsoft.
  • Verifique as datas de expiração da certificação e a elegibilidade para renovação.
  • Baixe e imprima transcrições e certificados.
  • Gerencie suas próximas atividades e compromissos de exames de certificação.

segunda-feira, 24 de julho de 2023

Oracle Cloud Infrastructure 2023 Certified Foundations Associate


    

 Concluí com sucesso o programa 'Oracle Cloud Infrastructure 2023 (1Z0-1085-23)' e recebi meu certificado e crachá! O conteúdo é muito bem detalhado e agradeço pelo conhecimento que adquiri nas tecnologias oracle-cloud ☁️, habilidades em provisionamento, segurança, rede e armazenamento dentro do Oracle Cloud Infrastructure. Um alô ao Oracle Cloud por esta oportunidade ~ de graça rs!

I've successfully completed the 'Oracle Cloud Infrastructure 2023 (1Z0-1085-23)' program and received my certificate and badge! The content is very well detailed, and I grateful for the knowledge I've gained in oracle-cloud technologies ☁️,  skills in provisioning, security, networking, and storage within Oracle Cloud Infrastructure. A shoutout to Oracle Cloud for this opportunity ~ for free rs!

#OracleCertified #1Z0-1085-23

#CloudInfrastructure #CloudTechnologies

https://catalog-education.oracle.com/pls/certview/sharebadge?id=E1CD68018AB425945F4E1E00DB3009432EDE8D7604BF1233971DF50D40460EA4


quinta-feira, 20 de julho de 2023

O Azure AD está se tornando Microsoft "Entra ID"


 Microsoft Entra ID é o novo nome do Azure Active Directory (Azure AD). Nenhuma ação é exigida de você.

A mudança de nome para Microsoft Entra ID representa a evolução e a unificação da família de produtos Microsoft Entra e um compromisso de simplificar as experiências de acesso seguro para todos.

Nenhuma alteração nos recursos, licenciamento ou preços 

Os recursos e funcionalidades do Azure AD continuarão disponíveis no Microsoft Entra ID. Preços, termos e acordos de nível de serviço também permanecem os mesmos. Para tornar a transição perfeita para você, as URLs, APIs e bibliotecas de autenticação do Azure AD permanecem as mesmas, assim como as experiências do desenvolvedor.

Momento da mudança de nome

A mudança de nome será implementada em todos os produtos e experiências da Microsoft durante o segundo semestre de 2023 Os clientes que têm acesso ao Azure AD continuarão a ter acesso sem interrupções planejadas.


Saiba mais no blog oficial de lançamento: