Trabalhando com listas dinâmicas no SQL Server

Este artigo apresenta os conceitos de alocação dinâmica e estática de memória. A alocação da memória ocorre em tempo de execução, podendo ser estática ou dinâmica

Naturalmente, os bancos de dados nos oferecem acesso a dados e tal acesso pode acontecer concorrentemente por muitos usuários. Nestes casos, o acesso deve ser feito de forma prudente. O acesso simultâneo exige uma análise da quantidade de usuários, velocidade da rede, configuração do servidor e muitas outras variáveis. No geral, uma boa prática é realizar o acesso ao banco de forma prudente, minimizando o fluxo de dados entre servidor e cliente. A realização de muitos acessos simultâneos pode demandar um fluxo de dados alto, resultando em lentidão no sistema, excesso de processamento no servidor e processamento desnecessário de consultas.

Uma vez feita uma consulta que será utilizada diversas vezes, é prudente alocar o resultado da mesma em memória do computador cliente. Para alocação de memória em diferentes linguagens de programação, temos diversas possibilidades. Neste ponto, se torna importante conhecer conceitos discutidos fortemente em disciplinas de linguagens de programação e estruturas de dados: listas, pilhas, filas e arvores. Conheceremos um pouco mais sobre estas estruturas mais adiante neste artigo.

Outra situação em que a organização de dados em memória é importante é quando o usuário realiza uma sequência de operações que geram dados em muitas tabelas. Para evitar o envio de dados para o banco muitas vezes, é mais aconselhado organizar os dados em memória e enviar para o banco de dados de tempos em tempos ou quando a operação for finalizada. Esta organização é mais trivial do que quando estamos organizando dados no caminho inverso, isto é, obtendo dados do servidor para uma possível manipulação e posterior envio. Tal operação exige manter a integridade dos dados, tais como relacionamentos anteriores, chaves primárias etc.

Nos casos mais genéricos, os bancos de dados são acessados por computadores com hardware que oferecem memória em quantidades superiores a 1GB. Nestes tipos de ocasião, o programador pode alocar memória dinamicamente no computador cliente, de forma a não utilizar recursos do servidor, tendo em vista que o mesmo será acessado por muitos usuários. Mesmo que o limite de 1GB seja ultrapassado, ainda é mais prudente alocar memória virtual do que aumentar o fluxo de dados entre servidor e cliente. " [...] continue lendo...
Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados