Meu conhecimento em SQL é muito básico. Eu antes usava o SQL Server apenas como armazenamento dos dados. Os cálculos e procedimentos eram todos feitos na minha antiga aplicação, ou seja, nada no servidor e tudo no cliente (noob). Como a minha intenção é ter um Banco de Dados mais dinâmico e auto-sustentável (de onde tirei isso?), hora de investir nas Triggers, Functions e Stored Procedures.
Acertei alguns dos atributos do Banco de Dados (agora sei a diferença entre char e nchar ^^). Mas muitos ainda permanecem como varchar(max), porque preciso coletar mais informações de mais computadores. Tive que revisar o Script de Coleta de Dados, pois eu estava crente que para cada computador havia apenas 1 dispositivo de som e em um dos computadores coletados apareceram 2 dispositivos. ¬¬
Estive analisando alguns dos dados já coletados e acho que vou trazer uma idéia do meu antigo projeto para este. Essa idéia eu chamei de "Modelo de Objetos". O Modelo de Objetos é um conceito para padronizar e centralizar a nomenclatura dos diversos componentes e elementos existentes no computador. Ao invés de ter diversas tabelas, uma para cada tipo de componente e cada qual com um campo para o nome do componente, eu utilizo um modelo comum que define o nome de qualquer tipo de componente. Seria uma forma de "normalização dos dados". Um Modelo de Objeto é composto por 6 elementos variáveis:
[Classe] + [Sub-Classe] + [Fabricante] + [Modelo] + [Valor] + [Medida]
- A classe define o que é o objeto: Processador, Placa Mãe, Disco Rígido, Impressora, etc.
- A sub-classe define uma categoria do objeto: IDE, PCI, Jato de Tinta, Laser, etc.
- O fabricante err... é o fabricante do objeto.
- O modelo... já entenderam, né?
- O valor seria um número relacionado ao modelo: a frequência de um processador, o tamanho de um disco rígido, a memória RAM de uma placa de vídeo, etc.
- A medida seria a unidade de medida do valor: GB, MB, MHz, GHz, etc.
Baseado neste Modelo de Objeto eu posso nomear qualquer componente do meu computador:
Processador Intel Pentium 4 3.0 GHz
Placa Mãe Asus P5KPL/1600
Disco Rígido SATA Samsung HD502HI 500 GB
Impressora Laser HP LaserJet 1015
Monitor LCD LG Flatron
Outra vantagem deste modelo está na pesquisa: Como está tudo centralizado, é mais fácil descobrir por exemplo, quais equipamentos de um determinado fabricante são mais utilizados entre os computadores analisados.
Essa etapa vai consumir um bom tempo. Já que quero um Banco de Dados mais autônomo, vou estudar mais sobre Triggers, Functions e Stored Procedures para deixar que o SQL Server faça aquilo que era feito pela aplicação.
Wish me luck!
Nenhum comentário:
Postar um comentário