Boas-vindas! Meu nome é Victorino Vila, guiarei vocês neste curso de SQL Server.
Autodescrição: Victorino é uma pessoa de pele clara e olhos escuros. Seus cabelos são curtos, lisos e grisalhos. Usa barba e bigode e está vestindo uma camiseta azul marinho. Ao fundo, há uma parece lisa com iluminação azul clara.
O assunto desse curso é performance. Podemos definir performance em banco de dados como a medida da eficiência com que um banco de dados processa e retorna dados em tempo hábil. A performance é importantíssima nesse cenário, porque afeta diretamente a experiência da pessoa usuária e a eficiência, por exemplo, de uma aplicação que acessa esse banco de dados. A lentidão de um banco de dados pode levar a problemas como tempo de resposta, aumento do tempo de espera da pessoa usuária, falta de disponibilidade e até mesmo perda de dados.
Para abordar os principais aspectos de desempenho de um banco de dados, vamos utilizar como exemplo o banco de dados do supermercado BitByte. Os primeiros assuntos estudados neste curso serão como recuperar a base de dados de vendas do supermercado conhecer como funciona o negócio. Também apresentaremos a consulta de um relatório de uma pessoa usuária, cujo objetivo é melhorar a performance.
Depois, abordaremos aspectos sobre o que significa performance no banco de dados. Por exemplo, como podemos julgar se existe ou não um problema de performance em um ambiente? Quais são os aspectos que influenciam a perda de performance de um banco de dados?
Na sequência, passaremos para o Active Monitor, uma ferramenta do SQL Server para monitorar do desempenho do banco de dados, em nível de software e hardware. Compreender o funcionamento normal do servidor é fundamental para detectar rapidamente possíveis problemas de desempenho. O primeiro passo de todo administrador de banco de dados (DBA) é entender o comportamento e as métricas de desempenho do banco de dados e do servidor.
Em seguida, exploraremos o SQL Server Profile, uma ferramenta para monitorar todas as atividades que ocorrem entre o servidor e clientes que estão consumindo informações do banco de dados. Com o SQL Profile é possível obter informações detalhadas sobre as consultas, os comandos SQL executados no banco de dados, além de identificar possíveis gargalos de desempenho e otimizar o desempenho do servidor.
Quando identificamos as consultas mais problemáticas, devemos explorar seus planos de execução. O plano de execução é o caminho que o SQL Server segue para processar uma consulta. Dependendo da estrutura do banco de dados, esse caminho pode ser mais ou menos eficiente. Ao analisar o plano de execução de uma consulta, identificamos gargalos de desempenho e temos instrumentos para otimizar essa consulta, melhorando a performance do banco de dados.
Depois, vamos abordar como planos de execução podem ser mais eficientes usando índices. Discutiremos os tipos de índices existentes, explicaremos como essa estrutura facilita a busca de informações em uma tabela e quais são os tipos de índices que devem ser criados para cada tipo de consulta. Compreender esses conceitos é fundamental para otimizar a performance do banco e garantir que as consultas sejam executadas de forma rápida e eficiente.
Finalmente, no último tópico, vamos voltar àquele problema inicial, apresentado no primeiro tópico do curso. Tentaremos melhorar a eficiência da execução da consulta do relatório do usuário do supermercado BitByte.
Espero que vocês gostem do curso. Um grande abraço e até o próximo vídeo!
Vamos começar falando sobre o ambiente do curso, considerando três possíveis cenários iniciais.
Caso 1: Este é o meu primeiro curso de SQL Server - Administração
Este é o segundo curso sobre administração do ambiente do SQL Server. Se você ainda não fez o curso anterior e é iniciante no assunto, aconselhamos que você ainda não comece o curso atual. Apesar de aprendermos elementos novos que não têm muita ligação com o curso anterior, é importante ter uma base sobre o ambiente do SQL Server e aprender de forma correta. Portanto, caso você não tenha feito o primeiro curso de administração do SQL Server, aconselhamos cursá-lo primeiro, antes de iniciar o curso atual.
Caso 2: Fiz o curso de SQL Server - Administração. Estou no mesmo ambiente.
Se você fez o primeiro curso de administração do SQL Server e está usando a mesma máquina, esse é o cenário ideal. Seu SQL Server está criado e pronto para ser utilizado. Nesse caso, você pode seguir em frente.
Caso 3: Fiz o curso de SQL Server - Administração. Estou em outro ambiente.
O terceiro cenário é: você fez o primeiro curso de administração do SQL Server, mas está usando outra máquina, sem banco de dados e sem software para seguir este curso. Nesse caso, pedimos que volte ao curso anterior e siga todas as instruções da primeira aula para estabelecer o ambiente. Então, você pode voltar e continuar este novo curso.
Um forte abraço para vocês. Até o próximo vídeo!
Nesse vídeo, falaremos sobre conceitos de performance para o ambiente do SQL Server.
Para definir o desempenho de um ambiente do SQL, podemos medir o tempo de resposta para uma solicitação ao banco de dados, como uma consulta, a execução de um stored procedure (procedimento armazenado), ou o envio de um comando complexo.
Muitos fatores influenciam no tempo de resposta, alguns não gerenciáveis pelo DBA, mas é importante que ele seja capaz de identificá-los e melhorar o desempenho. Devemos monitorar e ajustar muitos outros fatores que possam afetar o desempenho, além do tempo de resposta.
Para monitorar a performance, precisamos considerar pontos importantes, como a quantidade de solicitações simultâneas, que é um dos principais indicadores de desempenho de um banco de dados. Precisamos verificar o uso do processamento de CPU para cada uma delas.
A quantidade de solicitações inclui o número de consultas e transações por segundo, além do número de pessoas usuárias que acessam o banco de dados simultaneamente.
Ao monitorar essa quantidade, podemos identificar padrões de uso, como horários de pico, consultas mais frequentes e transações com alta carga de processamento.
Isso permite identificar pontos de gargalo do sistema e oportunidades de otimização das consultas e transações do banco de dados.
Outro ponto importante é o espaço em disco afetado pelas solicitações. A falta de espaço pode resultar em diversos problemas, incluindo lentidão do sistema, interrupção de operações e perda de dados. Portanto, é importante monitorar o uso do espaço em disco, incluindo o tamanho total do banco, das tabelas, de índices, e dos arquivos de log.
Dessa forma, conseguimos identificar se o banco de dados atinge seus limites e se é necessário adicionar mais espaço ou otimizá-lo.
Os tipos de solicitações que os usuários fazem no ambiente do SQL Server também são importantes, pois cada tipo de operação tem um impacto diferente na performance do sistema.
Por exemplo: operações de inserção, atualização e exclusão são mais intensivas em I.O.U. do que consultas. Por outro lado, consultas que exigem somas e agregações podem ser mais intensivas em CPU e memória e afetar a performance.
Ao monitorar os tipos de solicitações, é possível identificar o impacto de cada operação na performance do sistema e tentar otimizá-los.
Por fim, conhecer a complexidade das solicitações é fundamental para garantir o desempenho em uma instância do SQL Server.
Solicitações simples, como a leitura de uma tabela, têm menos impacto na performance do sistema do que solicitações mais complexas, como as que fazem joins entre tabelas, que podem ser mais intensivas em CPU e memória, afetando negativamente a performance do SQL Server.
Conhecer o comportamento normal do sistema operacional e do SQL Server é o primeiro passo para identificar anomalias e solucionar problemas de desempenho de maneira eficiente.
É recomendável que o DBA defina um nível base de processamento, para identificar possíveis problemas de desempenho futuros. Monitorando esse nível, ele pode identificar rapidamente picos, indicando possíveis falhas ou problemas de desempenho.
O uso de uma linha base no tempo é uma abordagem proativa do DBA para resolver uma série de problemas antes que eles ocorram e antes que a pessoa usuária sinta a queda de performance do banco.
É importante que pessoas desenvolvedoras estejam atentas à performance desde o início do desenvolvimento, criando esquemas otimizados e ajustando as consultas dos relatórios para garantir o melhor desempenho possível.
Durante a fase de desenvolvimento, pessoas desenvolvedoras devem monitorar e ajustar a performance dos objetos que estão sendo trabalhados antes de colocá-los em produção. Dessa forma, garantimos que o sistema funcione de forma eficiente e estável.
Entendemos que determinar uma linha base do funcionamento do ambiente do SQL Server é importante. Aprenderemos a fazer isso no próximo vídeo. Um grande abraço e até breve!
O curso Microsoft SQL Server 2022: performance possui 193 minutos de vídeos, em um total de 56 atividades. Gostou? Conheça nossos outros cursos de SQL e Banco de Dados em Data Science, ou leia nossos artigos de Data Science.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.
Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.
Emitimos certificados para atestar que você finalizou nossos cursos e formações.
Mais de 1500 cursos completamente atualizados, com novos lançamentos todas as semanas, emProgramação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.
Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.
Emitimos certificados para atestar que você finalizou nossos cursos e formações.
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com Luri até 100 mensagens por semana.
Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.
Acesso completo
durante 1 ano
Estude 24h/dia
onde e quando quiser
Novos cursos
todas as semanas