sexta-feira, 8 de abril de 2011

Banco de Dados


Os bancos de dados se engenharam graças à necessidade das grandes empresas de armazenar grandes quantidades de informação de uma forma rápida, simples e confiável, e que pudessem ser acessadas em qualquer momento sem a necessidade de se deslocar às salas dedicadas a arquivar documentação, como até há pouco tempo se fazia.




Como definição do banco de dados, entendemos que se trata de um sistema de armazenamento de dados inter-relacionados, que representam informações de um assunto específico, em uma ordem específica. O banco de dados, normalmente, é uma tabela composta de diversas linhas separadas por coluna, que são identificadas por campo. Cada uma dessas linhas é composta por um registro diferente. O sistema pode também ser representado por uma coleção de dados, que pode ser acessado e utilizado por várias aplicações diferentes. Exemplos: Lista telefônica, controle do acervo de uma biblioteca, sistema de controle dos recursos humanos de uma empresa.


Alguns bancos de dados bem recomendados são:


Comerciais
· Oracle: http://www.oracle.com
· DB2: http://www-306.ibm.com/software/data/db2/
· Sybase: http://www.sybase.com.br/
· MS SQL Server: http://www.microsoft.com/sql/default.mspx




Open Source
· MySQL: http://www.mysql.com/
· Postgre SQL: http://www.postgresql.org/
· Firebird: http://www.firebirdsql.org/




Organização de um banco de dados


Arquivo: Um conjunto de registros e informações armazenadas
            Exemplo: Arquivo chamado controle de estoque, controle de conta corrente, controle bancário, ou simplesmente um controle de clientes ou de fornecedores.
Registro: é um conjunto campos relacionados e armazenados em um registro.
           Exemplo: A ficha de um determinado cliente contendo a informações necessárias para um ambiente específico.
Campo: É o conjunto de itens que um registro pode conter.
           Exemplo: Cada item de uma ficha ou registro corresponde a um item, campo ou atributo.
Em um cadastro de clientes de uma empresa, podemos encontrar os seguintes campos: CPF, nome, endereço, cidade, bairro, estado, CEP.







Para considerar um banco de dados organizado, deve-se cumprir os seguintes objetivos:


· Tem que ser versátil, Isto quer dizer que, dependendo dos usuários ou das aplicações, possam fazer diferentes coisas ou tratem aos dados de formas diferentes.
· Tem que atender com a rapidez adequada a cada aplicação ou empresa
· Tem que ter um índice de redundância o mais baixo possível.
· Ter uma alta capacidade de acesso para ganhar o maior tempo possível na realização de consultas.
· Ter um alto índice de integridade, isto significa que ao ter muitos usuários atacando a um mesmo banco de dados não pode ter falhas na inserção de dados, erros ou lenta atualização.
· Obviamente, tem que ter um nível altíssimo de segurança e privacidade já que os dados que se armazenam em um banco de dados podem ser altamente confidenciais ou importantes. Neste ponto, também entram os meios físicos de proteção contra fogo, roubo, etc.
· Por último, tem que ser possível sua constante atualização para não deixar o banco de dados antigo e inservível. Quando fazemos uma mudança na organização física dos dados não deve afetar aos programas, portanto também tem que ter uma independência física dos dados. Assim como tem que ter total independência lógica com os dados, isto quer dizer que se fazemos mudanças na estrutura lógica dos dados (agregar novos campos a uma tabela) não devem afetar às aplicações que utilizem esses dados.




Algumas Dificuldades no Gerenciamento de Banco de Dados:


Redundância e Inconsistência de Dados.
Uma vez que os arquivos e programas aplicativos são criados por programadores diferentes durante um longo período de tempo, os arquivos provavelmente terão formatos diferentes e os programas serão escritos em diversas linguagens de programação. Além disso, o mesmo elemento de informação pode estar duplicado em diversos lugares (arquivos). Por exemplo, o endereço e o número do telefone de um cliente pode aparecer em um arquivo que contém registros da conta de poupança e um arquivo que contém registros da conta corrente. Esta redundância leva a altos custos de armazenamento e acesso. Pode ainda levar a inconsistência de dados – o que significa que a várias cópias do mesmo dado podem ser diferentes. Por exemplo, a mudança de endereço de um cliente pode ser efetuada num registro de conta corrente, mas não em qualquer outro lugar no sistema. Isto resulta em uma inconsistência de dados.



Dificuldade no Acesso aos Dados. 
Suponha que um dos diretores do banco necessite encontrar os nomes de todos os clientes que vivem numa rua da cidade com CEP 78733-000. O diretor pede ao departamento de processamento de dados que gere tal lista. Caso este tipo de solicitação não tenha sido antecipado quando o sistema original foi projetado, não há nenhum programa aplicativo disponível para fazê-lo. Existe, entretanto, um programa aplicativo para gerar uma lista de todos os clientes do banco. O diretor tem agora duas saídas: ou ele pega a lista de clientes e extrai a informação necessária manualmente, ou pede ao departamento de processamento de dados que um programador escreva o programa aplicativo necessário. Ambas as alternativas são obviamente insatisfatórias. Suponha que tal programa tenha sido de fato escrito e que, alguns dias mais tarde, o mesmo diretor necessite destacar da mesma lista apenas os clientes com um saldo de $10.000 ou mais. Como é de se esperar, um programa para gerar tal lista não existe. Novamente, o diretor tem duas opções, e nenhuma delas é satisfatória.


Isolamento de Dados.
Uma vez que os dados estão espalhados em diversos arquivos e podem Ter formatos diferentes, é difícil escrever novos programas aplicativos para recuperar os dados adequados.


Anomalias de Acesso Concorrente. 
Com a intenção de aperfeiçoar o desempenho geral do sistema e obter tempos de resposta mais rápidos, muitos sistemas permitem que múltiplos usuários atualizem os dados simultaneamente. Em tal ambiente, a interação de atualizações concorrentes pode resultar em dados inconsistentes. Considere uma conta bancária A, com $500. Se dois clientes sacarem dinheiro (digamos $50 e $100) da conta A ao mesmo tempo, o resultado das execuções concorrentes pode deixar a conta num estado incorreto (ou inconsistente). Em particular, a conta pode conter $450, em vez de $350. Com a intenção de prevenir esta possibilidade, algum tipo de supervisão deve ser mantido no sistema. Já que dados podem ser manipulados por diferentes programas aplicativos, que podem não Ter sido previamente sincronizados, sua supervisão pode ser muito difícil.


Essas dificuldades, entre outras, promoveram o desenvolvimento de sistemas de gerenciamento de banco de dados. Nesse sentido, devemos ver os conceitos e algoritmos que foram desenvolvidos para sistema de banco de dados com vistas a resolver os problemas mencionados anteriormente.


Aplicado de maneira correta o sistema de banco de dados se torna uma ferramenta extremamente valiosa, registrando e mantendo informações consideradas significativas à Organização.

quinta-feira, 7 de abril de 2011

Principais Componentes de um Computador

Hoje, o mercado de trabalho exige conhecimentos básicos de informática, não só no que se refere aos softwares, mas ao hardware também. É importante saber, por exemplo, o que é um HD (Hard Disk), para que serve o processador, qual a função da memória RAM e assim por diante. Ter conhecimentos básicos do assunto é essencial, até mesmo para lidar com determinadas situações, como observar o reparo de seu PC por um técnico.


Hardware é a parte física do computador, ou seja, é o conjunto de componentes eletrônicos, circuitos integrados e placas, que se comunicam através de barramentos. (Cardoso, 2006)
Barramento é o conjunto de linhas de comunicação que permitem a interligação entre os dispositivos, como CPU, a memória e outro periféricos de entrada e saída.



Unidades e Dispositivos:
  • Unidade Central de Processamentos (CPU);
  • Dispositivos de comunicação de armazenamento primário e secundário (disco magnético, disco óptico, fita magnética);
  • Dispositivos de entrada (teclado, mouse, tela de toque, leitores de dados);
  • Dispositivos de saída (impressoras, terminais de vídeo, plotadoras) e outros.
Unidade de Entrada de Dados: As funções desses dispositivos são coletar e introduzir as informações na máquina, converter as informações do homem para a máquina e vice-versa.
Unidade de Saída de Dados: As funções desses dispositivos são exibir ou imprimir os resultados do processamento, ou ainda controlar dispositivos externos.
Unidades Híbridas: Algumas unidades são de entrada e saída de dados ou também chamados Dispositivos Híbridos.




Componentes do Computador:

• Processador : O processador, basicamente, é o "cérebro" do computador. Praticamente tudo passa por ele, já que é o processador o responsável por executar todas as instruções existentes. Os principais são da Intel e AMD.

• Memória RAM: Nela, os dados se perdem quando o computador é desligado. Os módulos de memória são os responsáveis pelo armazenamento dos dados e instruções que o processador precisa para executar suas tarefas. O tipo de memória mais usado é a DDR2.

• Disco Rígido: serve para armazenar dados permanentemente ou até estes serem removidos. Mais conhecido como HD, seus componentes são: pratos, cabeça de leitura e gravação, braço, motor e atuador.

• Placa de Vídeo: Gera tudo o que vai aparecer em seu monitor, como imagens de jogos e de aplicações, efeitos, etc. As marcas mais conhecidas são a ATI e a NVIDIA.

• Drives de Disquete e CD-ROM/DVD: Os drives de disquete são itens cada vez mais em desuso. Os drives de CD/DVD são os seguintes, CD-ROM, CD-RW, CD-Rs e CD-RWs, CD-RW + DVD, DVD-RW.

• Placas de Som: São responsáveis por promover o áudio gerado em seu computador.

• Placas De Rede: Tem a função de fazer com que um computador possa acessar uma rede de dados comum

• Placa De Fax/Modem: Tem como função interligar o computador a outros através de uma linha de comunicação de dados (de telefone).

• Cooler: É um dissipador de calor que fica sobre o processador. O calor que o processador gera deve ser dissipado para que ele não queime.

• Placa-mãe: Essa peça também pode ser interpretada como a "espinha dorsal" do computador, afinal, é ela que interliga todos os dispositivos do equipamento.
       - O processador é instalado em seu socket;
       - O HD é ligado nas portas IDE ou SATA;
       - A placa de vídeo pode ser conectada nos slots AGP 8x ou PCI-Express 16x.
       - As outras placas (placa de som, placa de rede, etc.) podem ser encaixadas nos slots PCI .




Periféricos Gerais:
• Gabinete: É uma caixa metálica (e/ou com elementos de plástico) vertical ou horizontal, que guarda todos os componentes do computador.

• Fonte: Responsável por promover energia adequada ao funcionamento do computador.

• Monitor

• Mouse

• Teclado

• Webcam

Enfim, esses são os principais componentes de um computador, servem de base às pessoas que estão dando os primeiros passos no mundo da informática.