Arquivo da categoria: Sem categoria

Microsoft SQL Server: Detectando Índices Fragmentados – Melhorando a Performance

Assim como o disco, fisicamente, torna-se fragmentado; também acontece com toda organização lógica que venha fazer uso desta mídia. Tablespaces, tabelas, e, índices. Todos se fragmentam. Faz parte do negócio. É regra do jogo, se quiser brincar, aceite-as. A fragmentação (não importa o objeto de banco de dados em questão) acontecerá mais, ou menos, dependendo do tipo de operação do banco de dados.

Bancos de dados transacionais (OLTP) tendem a se fragmentar muito muito mais do bancos de dados de consulta massiva (OLAP/DW). Pelo menos, se sustentados da maneira correta.

Quanto mais escrita, maiores as probabilidades de fragmentação. A modelagem podem afetar, também, a fragmentação.

Claro que, tudo que está fragmentado está bagunçado. E, tudo que está bagunçado não vai bem. No caso de banco de dados, isto significa uma redução de performance.

O efeito colateral mais esperado da desfragmentação é o aumento de performance, ou, se preferir: recuperação da performance perdida. Neste artigo, trataremos, puramente, da fragmentação de índices.

Mas, para os loucos por um código pronto, vamos ao que interessa: Fragmentação de Índices no Microsoft SQL Server. Lidar com fragmentação, envolve duas etapas básicas: identificação e ação.

Continue lendo Microsoft SQL Server: Detectando Índices Fragmentados – Melhorando a Performance

MySQL 5.7 – Mais segurança para seus usuários e senhas

O MySQL 5.7 chega ao estágio de RC (release candidate). Isto significa que já está na hora de voce começar a pensar em aposentar o bom, e, nada velho MySQL 5.6.

Mas, antes de fazer a migração é interessante dar uma passeada pela nova maneira do MySQL organizar suas senhas. Para quem já está acostumado com o MySQL desde as longíquas versões 3 e 4, deverá notar algumas boas mudanças.

Algumas coisas sempre me incomodaram na parte de usuários e privilégios. Por exemplo, e se eu quiser conceder acesso a um determinado usuário (digamos um desenvolvedor temporário) ao meu banco de dados, por, apenas 90 dias. Não lembro  nem o que eu acabei de almoçar, como, lembraria depois de 90 dias, de “dropar” o usuário? Há, mas poderíamos criar um script… Não! Chega de ficarmos criando lixo em todo canto de nossos servidores. O MySQL tem que resolver isso! E resolveu, agora existe essa possibilidade e algumas outras.

Vamos visitar algumas mudanças que foram implementadas na estrutura de gerenciamento de usuários.

Continue lendo MySQL 5.7 – Mais segurança para seus usuários e senhas

Processos Automatizados (batches)

men_at_workDê ao homem certo a ferramenta certa e este operará verdadeiros milagres. Agora, dê a ferramenta errada ao cara errado, e o desastre é certo! Venho insistindo nisto já faz algum tempo, e, creio que não custa batermos nesta tecla uma vez mais.

As bases de dados estão crescendo rápido. E não, não estou falando de big data. As bases OLTP estão crescendo, e, com isso a quantidade de informação a ser escrutinada em busca de conhecimento fica maior a cada dia.

Não dá para vencer esta guerra com um único e simples bando de SELECT’s. Não, não dá!

À medida que nossas bases crescem, crescem também sua complexidade no quesito manutenção e otimização. Fica mais dificil, e lento, extrair resultados estatísticos e gerenciais das mesmas.

Quando falta ferramenta tem de sobrar Inteligência e Criatividade.

Continue lendo Processos Automatizados (batches)