Você está na página 1de 4

Modelos de base de dados

O modelo plano (ou tabular) consiste de matrizes simples, bidimensionais, compostas por elementos de dados: inteiros, nmeros reais, etc. Este modelo plano a base das planilhas eletrnicas. O modelo em rede permite que vrias tabelas sejam usadas simultaneamente atravs do uso de apontadores (ou referncias). Algumas colunas contm apontadores para outras tabelas ao invs de dados. Assim, as tabelas so ligadas por referncias, o que pode ser visto como uma rede. Uma variao particular deste modelo em rede, o modelo hierrquico, limita as relaes a uma estrutura semelhante a uma rvore (hierarquia tronco, galhos), ao invs do modelo mais geral direcionado por grafos. Bases de dados relacionais consistem, principalmente de trs componentes: uma coleo de estruturas de dados, nomeadamente relaes, ou informalmente tabelas; uma coleo dos operadores, a lgebra e o clculo relacionais; e uma coleo de restries da integridade, definindo o conjunto consistente de estados de base de dados e de alteraes de estados. As restries de integridade podem ser de quatro tipos: domnio (tambm conhecidas como type), atributo, relvar (varivel relacional) e restries de base de dados. Diferentemente dos modelos hierrquico e de rede, no existem quaisquer apontadores, de acordo com o Princpio de Informao: toda informao tem de ser representada como dados; qualquer tipo de atributo representa relaes entre conjuntos de dados. As bases de dados relacionais permitem aos utilizadores (incluindo programadores) escreverem consultas (queries) que no foram antecipadas por quem projetou a base de dados. Como resultado, bases de dados relacionais podem ser utilizadas por vrias aplicaes em formas que os projetistas originais no previram, o que especialmente importante em bases de dados que podem ser utilizadas durante dcadas. Isto tem tornado as bases de dados relacionais muito populares no meio empresarial. O modelo relacional uma teoria matemtica desenvolvida por Edgard Frank Codd, matemtico e pesquisador da IBM, para descrever como as bases de dados devem funcionar. Embora esta teoria seja a base para o software de bases de dados relacionais, muito poucos sistemas de gesto de bases de dados seguem o modelo de forma restrita ou a p da letra - lembre-se das 12 leis do modelo relacional - e todos tm funcionalidades que violam a teoria, desta forma variando a complexidade e o poder. A discusso se esses bancos de dados merecem ser chamados de relacional ficou esgotada com o tempo, com a evoluo dos bancos existentes. Os bancos de dados hoje implementam o modelo definido como objeto-relacional.

[editar] Aplicaes de bancos de dados


Sistemas Gerenciadores de Bancos de dados so usados em muitas aplicaes, enquanto atravessando virtualmente a gama inteira de software de computador. Os Sistemas Gerenciadores de Bancos de dados so o mtodo preferido de armazenamento/recuperao de dados/informaes para aplicaes multi-usurias grandes onde a coordenao entre muitos usurios necessria. At mesmo usurios individuais os acham conveniente, entretanto, muitos programas de correio eletrnico e organizadores pessoais esto baseados em tecnologia de banco de dados standard.

[editar] Aplicativo de Banco de Dados


Um Aplicativo de Banco de dados um tipo de software exclusivo para gerenciar um banco de dados. Aplicativos de banco de dados abrangem uma vasta variedade de necessidades e objectivos, de pequenas ferramentas como uma agenda, at complexos sistemas empresariais para desempenhar tarefas como a contabilidade. O termo "Aplicativo de Banco de dados" usualmente se refere a softwares que oferecem uma interface para o banco de dados. O software que gerencia os dados geralmente chamado de sistema gerenciador de banco de dados (SGBD) ou (se for embarcado) de "database engine". Exemplos de aplicativos de banco de dados so Microsoft Visual FoxPro, Microsoft Access, dBASE, FileMaker, (em certa medida) HyperCard, MySQL,Intpr, PostgreSQL, Firebird, Microsoft SQL Server, Oracle, Informix, DB2, Cach e Sybase. Em Maro, 2004, AMR Research (como citado em um artigo da CNET News.com listado na seco de "Referncias") previu que aplicaes de banco de dados de cdigo aberto seriam amplamente aceitas em 2006.

[editar] Transao
um conjunto de procedimentos que executado num banco de dados, que para o usurio visto como uma nica ao. A integridade de uma transao depende de 4 propriedades, conhecidas como ACID.

Atomicidade o Todas as aes que compem a unidade de trabalho da transao devem ser concludas com sucesso, para que seja efetivada. Se durante a transao qualquer ao que constitui unidade de trabalho falhar, a transao inteira deve ser desfeita (rollback). Quando todas as aes so efetuadas com sucesso, a transao pode ser efetivada e persistida em banco (commit). Consistncia o Todas as regras e restries definidas no banco de dados devem ser obedecidas. Relacionamentos por chaves estrangeiras, checagem de valores para campos restritos ou nicos devem ser obedecidos para que uma transao possa ser completada com sucesso. Isolamento o Cada transao funciona completamente parte de outras estaes. Todas as operaes so parte de uma transao nica. O principio que nenhuma outra transao, operando no mesmo sistema, possa interferir no funcionamento da transao corrente( um mecanismo de controle). Outras transaes no podem visualizar os resultados parciais das operaes de uma transao em andamento (ainda em respeito propriedade da atomicidade). Durabilidade

Significa que os resultados de uma transao so permanentes e podem ser desfeitos somente por uma transao subseqente.Por exemplo: todos os dados e status relativos a uma transao devem ser armazenados num repositrio permanente, no sendo passveis de falha por uma falha de hardware.

Na prtica, alguns SGBDs relaxam na implementao destas propriedades buscando desempenho. Controle de concorrncia um mtodo usado para garantir que as transaes sejam executadas de uma forma segura e sigam as regras ACID. Os SGBD devem ser capazes de assegurar que nenhuma ao de transaes completadas com sucesso (committed transactions) seja perdida ao desfazer transaes abortadas (rollback). Uma transao uma unidade que preserva consistncia. Requeremos, portanto, que qualquer escalonamento produzido ao se processar um conjunto de transaes concorrentemente seja computacionalmente equivalente a um escalonamento produzindo executando essas transaes serialmente em alguma ordem. Diz-se que um sistema que garante esta propriedade assegura a seriabilidade.

[editar] Segurana em banco de dados


Os bancos de dados so utilizados para armazenar diversos tipos de informaes, desde dados sobre uma conta de e-mail at dados importantes da Receita Federal. A segurana do banco de dados herda as mesmas dificuldades que a segurana da informao enfrenta, que garantir a integridade, a disponibilidade e a confidencialidade. Um Sistema gerenciador de banco de dados deve fornecer mecanismos que auxiliem nesta tarefa. Uma forma comum de ataque segurana do banco de dados, a injeo de SQL, em bancos de dados que faam uso desta linguagem, mas bancos de dados NoSQL tambm podem ser vtimas. Para evitar estes ataques, o desenvolvedor de aplicaes deve garantir que nenhuma entrada possa alterar a estrutura da consulta enviada ao sistema. Os bancos de dados SQL implementam mecanismos que restringem ou permitem acessos aos dados de acordo com papeis ou roles fornecidos pelo administrador. O comando GRANT concede privilgios especficos para um objeto (tabela, viso, seqncia, banco de dados, funo, linguagem procedural, esquema ou espao de tabelas) para um ou mais usurios ou grupos de usurios.[12]

[editar] Funes internas comuns em BDs


Tabelas Regras Procedimentos armazenados (mais conhecidos como stored procedures) Gatilho Default Viso ndice Generalizadores