segunda-feira, 25 de agosto de 2008

Continuação de Sistemas Paralelos

No processamento paralelo, muitas operações são realizadas simultaneamente, ao contrario do processamento serial, no qual os passos do processamento são sucessivos.Um equipamento paralelo dividi-se em dois tipos, o primeiro usa poucos e poderosos processadores, já o segundo possui milhares de pequenos processadores.A maioria das máquinas High-end (Alto Nível), atualmente, oferece algum grau de paralelismo do primeiro tipo, com dois a quatro processadores.Computadores que usam o segundo tipo, possuem um grau de paralelismo muito mais alto.Atualmente computadores paralelos com centenas de CPUs e discos rígidos já estão disponíveis comercialmente.

Um sistema de bancos de dados pode ser avaliado principalmente por duas formas. A primeira é o throughput: o número de tarefas que podem ser realizadas em um dado intervalo de tempo. A segunda é o tempo de resposta: o tempo total que o sistema leva para completar uma única tarefa. Um sistema que processa um grande número de pequenas transações pode aumentar o throughput por meio do processamento de diversas transações em paralelo. Um sistema que processa um grande volume de transações pode aumentar o tempo de resposta, assim como o throughput por meio do processamento em paralelo.

Até Galera!

Fonte:Sistema de Banco de Dados 3ª Edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan

domingo, 24 de agosto de 2008

Sistemas Paralelos

Sistemas Paralelos imprimem velocidade ao processamento e à I/O* por meio do uso em paralelo de diversas CPUs e discos rígidos. Os equipamentos paralelos estão se tornando bastante comuns, fazendo com que o estudo de sistemas de banco de dados paralelos seja também cada vez mais importante.O direcionamento das atenções para os sistemas de bancos de dados paralelos provêem da demanda de aplicações que geram consultas em bancos de dados muito grandes (da ordem de terabytes – isto é, 10¹² bytes) ou que tenham de processar um volume enorme de transações por segundo (milhares de transações por segundo). Sistemas de banco de dados centralizados e cliente-servidor não são poderosos o suficiente para tratar desse tipo de aplicação.

*I/O é um sigla para Input/Output, em português E/S ou Entrada/Saída, indicando entrada (inserção) de dados por meio de algum código ou programa, para algum outro programa ou hardware, bem como a sua saída (obtenção de dados) ou retorno de dados, como resultado de alguma operação de algum programa, conseqüentemente resultado de algum input.

Fontes: http://pt.wikipedia.org/wiki/I/O
Sistema de Banco de Dados 3ª Edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan

quinta-feira, 21 de agosto de 2008

Sistemas de Dados

Sistemas servidores de dados são usados em redes locais, nas quais há conexões de alta velocidade entre clientes e servidores, os equipamentos clientes são comparáveis, em poder de processamento aos equipamentos servidores. As tarefas executadas nessa arquitetura são do tipo processamento intensivo, que consiste no tráfego de dados para o equipamento cliente, para o processamento local, que pode levar certo tempo, e então o envio de dados de volta pra o servidor.Essa arquitetura exige ampla funcionalidade BACK-END nos clientes, e têm sido comuns nos sistemas de Banco de Dados orientados a objetos.A origem do interesse nesse tipo de arquitetura surge a partir do momento em que o custo, relativo ao consumo de tempo, da comunicação entre cliente e servidor é alta comparada ao tempo de referência à memória local.

Fonte:Sistema de Banco de Dados 3ª Edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan

terça-feira, 19 de agosto de 2008

Servidores de Transações

A arquitetura de servidores de transações segue a divisão funcional entre FRONT-END e BACK-END. Devido á grande exigência de processamento para código de interface gráfica e ao aumento de poder de processamento dos computadores pessoais, o recurso para FRONT-END é possível em computadores pessoais. Os computadores pessoais agem como clientes de sistemas servidores, os quais armazenam grandes volumes de dados e dão suporte aos recursos de BACK-END. Clientes enviam solicitações ao sistema servidor no qual essas transações são executadas e os resultados são enviados de volta ao cliente que tem a responsabilidade de exibir esses dados. Como os equipamentos pequenos e individuais apresentam atualmente custo bem menor de aquisição e manutenção, as grandes corporações tendem a substituir seus equipamentos de grande porte por redes de computadores com estações de trabalho ou computadores pessoais conectados a equipamentos servidores BACK-END. Algumas das vantagens são a maior funcionalidade e o menor custo, maior flexibilidade na disseminação, expansão e alocação dos recursos, melhores interfaces com os usuários e manutenção mais fácil.

Vlw Galera, até +

Fonte:Sistema de Banco de Dados 3ª Edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan

segunda-feira, 18 de agosto de 2008

Sistemas Cliente-Servidor

A arquitetura cliente-servidor foi desenvolvida para dividir ambientes de computação onde um grande número de PCs, estações de trabalho, servidores de arquivos, impressoras, servidores de banco de dados e outros equipamentos são conectados juntos por uma rede. As máquinas clientes disponibilizam para o usuário as interfaces apropriadas para utilizar esses servidores, bem como poder de processamento para executar aplicações locais. Esta arquitetura se tornou muito popular por algumas razões. Primeiro, a facilidade de implementação dada à clara separação das funcionalidades e dos servidores. Segundo, um servidor é inteligentemente utilizado porque as tarefas mais simples são delegadas às máquinas clientes mais baratas. Terceiro, o usuário pode executar uma interface gráfica que lhe é familiar, ao invés de usar a interface do servidor. Desta maneira, a arquitetura cliente-servidor foi incorporada aos SGBDs comerciais. As funcionalidades de um banco de dados podem ser superficialmente divididas em duas categorias, a FRONT-END e BACK-END. O FRONT-END dos sistemas de Banco de Dados consiste em ferramentas como formulários, gerador de relatórios e recursos de interface gráfica executando as tarefas do aplicativo, ou seja, fornece a interface do usuário, já o BACK-END gerencia as estruturas de acesso, desenvolvimento e otimização de consultas, controle de concorrência e recuperação, executando as consultas e retornando com os resultados ao cliente. Sistemas Servidores podem ser caracterizados, de modo geral, como servidores de Transações e Servidor de dados. Detalharemos a Arquitetura de Servidor de transações e Servidor de Dados nas próximas Postagens.

Até Galera!

Fonte:Sistema de Banco de Dados 3ª Edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan.

quarta-feira, 13 de agosto de 2008


Continuando...

As primeiras Arquiteturas usavam mainframes* para executar o processamento principal e de todas as funções do sistema, incluindo os programas aplicativos, programas de interface com o usuário, bem como a funcionalidade dos SGBDs. Esta é a razão pela qual a maioria dos usuários fazia acesso aos sistemas via terminais que não possuíam poder de processamento, apenas a capacidade de visualização. Todos os processamentos eram feitos remotamente, apenas as informações a serem visualizadas e os controles eram enviados do mainframe para os terminais de visualização, conectados a ele por redes de comunicação. Como os preços do hardware foram decrescendo, muitos usuários trocaram seus terminais por computadores pessoais (PC) e estações de trabalho. No começo os SGBDs usavam esses computadores da mesma maneira que usavam os terminais, ou seja, o SGBD era centralizado e toda sua funcionalidade, execução de programas aplicativos e processamento da interface do usuário eram executados em apenas uma máquina. Gradualmente, os SGBDs começaram a explorar a disponibilidade do poder de processamento no lado do usuário, o que levou à arquitetura cliente-servidor, que abordaremos na próxima postagem.

*Um mainframe é um computador de grande porte, dedicado normalmente ao processamento de um volume grande de informações. Os mainframes são capazes de oferecer serviços de processamento a milhares de usuários através de milhares de terminais conectados diretamente ou através de uma rede.

Valeu Galera, Até +


Fontes:http://pt.wikipedia.org/wiki/Mainframe e
Sistemas de Banco de Dado 3ª Edição, Abraham Silberschatz, Henry F. Korrth e S. Sudarshan

terça-feira, 12 de agosto de 2008

Sistemas Centralizados

Sistemas de Banco de Dados Centralizados são aqueles executados sobre um único sistema computacional que não interagem com outros sistemas, podem ser divididos em dois modos, dependendo da forma pela qual os computadores são utilizados, seja por um ‘Sistema Monousuário’ ou por um ‘Sistema Multiusuário’.Um ‘Sistema Monousuário’ geralmente é uma unidade de trabalho de uma única pessoa, com uma única CPU e um ou dois rígidos, com um sistema operacional que pode dar suporte a apenas um único usuário. Um ‘Sistema Multiusuário’ típico, por outro lado, possui um número maior de discos e área de memória, podendo te diversas CPUs e um sistema operacional multiusuário, atende a um grande número de usuários que estão conectados ao sistema por meio de terminais.

Até a Próxima!

Fonte:Sistema de Banco de Dados 3ª Edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan

segunda-feira, 11 de agosto de 2008

Como prometido, continuaremos mostrando mais alguns aspectos relevantes sobre Arquitetura de Banco de Dados.

...
4) Implementação de um projeto de interface compatível com múltiplas plataformas (UNIX, Windows NT, Windows Workgroup, etc.);

5) Implementação de um projeto de interface compatível com múltiplas plataformas (UNIX, Windows NT, Windows Workgroup, etc. Exemplos de Sistemas Gerenciadores de Banco de Dados.);

6) Conversão e mapeamento da diferença semântica entre os paradigmas utilizados no desenvolvimento de interfaces.

Até mais...
xD
Fonte:Sistema de Banco de Dados 3ª edição, Abraham Silberschatz, Henry F. Korth e S. Sudarshan

domingo, 10 de agosto de 2008

E ai Galera!
Hoje faremos uma pequena introdução sobre ‘Arquitetura de Banco de Dados’.

Sistemas informatizados desenvolvidos utilizando Bancos de Dados devem seguir alguns aspectos relevantes, que formam uma Arquitetura de Banco de Dados, para atingir certo nível de eficiência e eficácia, a fim de atender seus usuários nos mais variados domínios de aplicação: automação de escritórios, sistemas de apoio a decisões, controle de reserva de recursos, controle e planejamento de produção, alocação e estoque de recursos, entre outros. Tais aspectos são:


1) Os projetos Lógico e Funcional do Banco de Dados devem ser capazes de prever o volume de informações armazenadas a curto, médio e longo prazo. Os projetos devem ter uma grande capacidade de adaptação para os três casos mencionados;

2) Deve-se ter generalidade e alto grau de abstração de dados*, possibilitando confiabilidade e eficiência no armazenamento dos dados e permitindo a utilização de diferentes tipos de gerenciadores de dados através de linguagens de consultas padronizadas;

*O SGBD deve fornecer ao usuário uma “representação conceitual” dos dados, sem fornecer muitos detalhes de como as informações são armazenadas.

3) Projeto de uma interface ágil e com uma "rampa ascendente" para propiciar aprendizado suave ao usuário, no intuito de minimizar o esforço cognitvo;

Então é isso, na próxima postagem continuaremos com mais algumas características de uma Arquitetura de banco de Dados.
Abraços! xD

segunda-feira, 4 de agosto de 2008

Olá pessoal!

O entendimento dessa postagem requer mais atenção, por abordarmos um assunto que julgamos um pouco mais complexo: 'Modelos de Banco de Dados'.
Diversos modelos foram e vem sendo utilizados ao longo da história, com vantagens para um ou para outro por determinados períodos.

Os modelos de dados mais utilizados pelos SGBD’s são:
- Modelos Navegacionais:
° Modelo Hierárquico:
O modelo hierárquico foi o primeiro a ser reconhecido como um modelo de dados. Nesse modelo de dados, os dados são estruturados em hierarquias ou árvores, cada registro (exceto o primeiro) encontra-se ligado a outro, denominado de superior hierárquico, sendo que se um superior hierárquico for eliminado todos os que se encontram abaixo dele na estrutura hierárquica serão eliminados.


Modelo Hierárquico.

° Modelo em Rede:

O modelo em rede surgiu como uma extensão ao modelo hierárquico, eliminando o conceito de hierarquia e permitindo que um mesmo registro estivesse envolvido em várias associações, o que implica uma maior flexibilidade em relação à forma como se podem ligar os registros.




Modelo em Rede.



- Modelo Relacional:

O modelo relacional é uma teoria matemática desenvolvida por Edgar Frank Codd que surgiu na década de 1970, para descrever como as bases de dados devem funcionar. Apareceu devido às seguintes necessidades: aumentar a independência de dados nos sistemas gerenciadores de banco de dados; prover um conjunto de funções apoiadas em álgebra relacional para armazenamento e recuperação de dados. Este modelo revelou-se ser o mais flexível e adequado ao solucionar os vários problemas que se colocam no nível da concepção e implementação da base de dados. A estrutura fundamental do modelo relacional é a relação (tabela). Uma relação é constituída por um ou mais atributos (campos) que traduzem o tipo de dados a armazenar. Cada instância do esquema (linha) é chamada de tupla (registro). O modelo relacional não tem caminhos pré-definidos para se fazer acesso aos dados como nos modelos que o precederam. O modelo relacional implementa estruturas de dados organizadas em relações. Porém, para trabalhar com essas tabelas, algumas restrições precisaram ser impostas para evitar aspectos indesejáveis, como: Repetição de informação, incapacidade de representar parte da informação e perda de informação.

Exemplo de Modelo Relacional (Tabelas) Cliente – Conta Corrente.


- Modelo Orientado a Objetos:


Os bancos de dados orientados a objeto começaram a se tornar comercialmente viáveis em meados de 1980. A motivação para seu surgimento está em função dos limites de armazenamento e representação semântica impostas no modelo relacional. A habilidade para criar os tipos de dados necessários é uma característica das linguagens de programação orientadas a objetos.Contudo, estes sistemas necessitam guardar representações das estruturas de dados que utilizam o armazenamento permanente.A estrutura padrão para os bancos de dados orientados a objetos foi feita pelo Object Database Management Group (ODMG).Esse grupo é formado por representantes dos principais fabricantes de banco de dados orientados a objeto disponíveis comercialmente. Membros do grupo têm o compromisso de incorporar o padrão em seus produtos. O termo Modelo Orientado a Objetos é usado para documentar o padrão que contém a descrição geral das facilidades de um conjunto de linguagens de programação orientadas a objetos e a biblioteca de classes que pode formar a base para o Sistema de Banco de Dados. Quando os bancos de dados orientados a objetos foram introduzidos, algumas das falhas perceptíveis do modelo relacional pareceram ter sido solucionadas com esta tecnologia e acreditava-se que tais bancos de dados ganhariam grande parcela do mercado. Hoje, porém, acredita-se que os Bancos de Dados Orientados a Objetos serão usados em aplicações especializadas, enquanto os sistemas relacionais continuarão a sustentar os negócios tradicionais, onde as estruturas de dados baseadas em relações são suficientes.

Tchau, Galera! xD

Fonte:http://pt.wikipedia.org/wiki/Banco_de_dados#Modelos_de_Dados_dos_Bancos_de_Dados_atuais

segunda-feira, 28 de julho de 2008

Anteriormente, vimos que um Banco de Dados pode ser mantido por um “Sistema Gerenciador de Banco de Dados” (SGBD), e que o mesmo é utilizado para manipular de modo geral uma Base de Dados. Um SGBD possui características próprias, dentre elas podemos citar:

· Independência de Dados

Consiste na capacidade de permitir que haja mudanças na descrição dos dados da
empresa, sem que os sistemas ou aplicações tenham que ser alterados.

· Restrições de Acesso

Quando um Banco de Dados é compartilhado por múltiplos usuários, um SGBD deve dispor controles de segurança e autorização, utilizados na criação de contas e seus respectivos direitos de acesso.

· Controle de Redundância

Para manter a consistência e economizar espaço de armazenamento de um Banco de Dados, um mesmo dado que seria armazenado e utilizado várias vezes para atender diversas aplicações deve ser armazenado uma única vez e em apenas um lugar no banco de dados.

· Restrições de Integridade

A maioria dos SGBD provem certas restrições de integridade que devem ser
aplicadas aos dados. O SGBD deve ter mecanismos para possibilitar a definição
das restrições e assegurar o respeito a estas.Um exemplo de restrições de integridade é a definição de tipos de cores como: azul, vermelho, amarelo e verde.Em seguida
definir um atributo cor_parede como do tipo cores. O SGBD aceitará apenas os
tipos definidos ou seja azul, vermelho, amarelo e verde como válidos para este
atributo.

· Compartilhamento de Dados

Permitir a usuários diferentes a utilização simultânea de um mesmo dado, um exemplo de compartilhamento de dados são as informações sobre clientes de uma determinada empresa que podem ser acessadas pelo sistema de vendas, de
contas a receber e faturamento simultaneamente.

· Mecanismos de Backup e Recuperação

Um SGBD deve prover facilidades para recuperação de falhas do hardware ou
Software.
· Múltiplas Interfaces

• Linguagens de consulta para usuários casuais;
• Linguagens de programação para programadores de aplicações;
• Interfaces gráficas com formulários (telas) e menus para usuários paramétricos;
• Interfaces para administração do banco de dados;
• Linguagem natural
.
· Representação de Relacionamentos Complexos entre Dados

Um banco de dados pode incluir uma variedade de dados que estão
interrelacionados de várias formas. Um SGBD deve fornecer recursos para se
representar uma grande variedade de relacionamentos entre os dados, bem como,
recuperar e atualizar os dados de maneira prática e eficiente.

· Tolerância a Falhas

Um SGBD deve fornecer recursos para recuperação de falhas tanto de software
quanto de hardware.


Por hoje é isso galera, até a próxima!
=D


Fontes:http://pt.wikipedia.org/wiki/Sistema_de_gerenciamento_de_banco_de_dados

http://www.plugmasters.com.br/sys/materias/108/1/SGBD---Sistema-Gerenciador-de-Banco-de-Dados

http://espacoinfo.net/o-que-e-sgbd-bd-ii/

segunda-feira, 21 de julho de 2008

Olá, pessoal!

Todos nós sabemos existirem gigantescas bases de dados gerenciando nossas vidas. De fato sabemos que nossa conta bancária faz parte de uma coleção imensa de contas bancárias de nosso banco. Nosso Título Eleitoral ou nosso Cadastro de Pessoa Física, certamente estão armazenados em Bancos de Dados gigantescos. Sabemos também que quando sacamos dinheiro no Caixa Eletrônico de nosso banco, nosso saldo e as movimentações existentes em nossa conta bancária já estão à nossa disposição.
Nestas situações sabemos que existe uma necessidade em se realizar o armazenamento de uma série de informações que não se encontram efetivamente isoladas umas das outras.
Os Bancos de Dados, além de manterem todo este volume de dados organizados, também devem permitir atualizações, inclusões e exclusões do volume de dados, sem nunca perder a consistência.
Um 'Banco de Dados’ pode ser definido como uma coleção lógica coerente de 'dados' (dados desordenados não podem ser reconhecidos como banco de dados) inter-relacionados, sendo 'dados' compreendidos como fatos conhecidos sobre um domínio específico. Um Banco de Dados representa aspectos do mundo real, desse modo um BD (Banco de Dados, ou Base de Dados) serve como fonte, onde podemos extrair informações que possuem um nível de interação com o mundo real que representa.
Um Banco de Dados pode ser criado e mantido por um conjunto de aplicações desenvolvidas especialmente para esta tarefa ou por um “Sistema Gerenciador de Banco de Dados” (SGBD). Um SGBD permite aos usuários criarem e manipularem bancos de dados de propósito gerais.
O primeiro Sistema Gerenciador de Banco de Dados (SGBD) comercial surgiu no final de 1960 com base nos primitivos sistemas de arquivos disponíveis na época, os quais não controlavam o acesso concorrente por vários usuários ou processos. Os SGBD’s evoluíram desses sistemas de arquivos de armazenamento em disco, criando novas estruturas de dados com o objetivo de armazenar informações. Com o tempo, os SGBD’s passaram a utilizar diferentes formas de representação, ou modelos de dados, para descrever a estrutura das informações contidas em seus bancos de dados. Atualmente, os seguintes modelos de dados são normalmente utilizados pelos SGBD’s: modelo hierárquico, modelo em redes, modelo relacional (amplamente usado) e o modelo orientado a objetos.

É isso ai galera, esperamos que vocês tenham compreendido o significado de Bancos de Dados nessa introdução.

Até mais! =D
Powered By Blogger