A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

SGBD.

Apresentações semelhantes


Apresentação em tema: "SGBD."— Transcrição da apresentação:

1 SGBD

2 Prof. Marcus Vinícius

3 SGBD • Definição: “Sistema cujo objetivo principal é gerenciar o acesso e a correta manutenção dos dados armazenados em um banco de dados.”

4 - Sistemas de banco de dados são projetados para gerir grandes volumes de informações.
- O gerenciamento de informações implica a definição das estruturas de armazenamento das informações e da definição dos mecanismos para a manipulação dessas informações. - Também um sistema de banco de dados deve garantir a segurança das informações armazenadas contra eventuais problemas com o sistema, além de impedir tentativas de acesso não autorizadas. - Se os dados são compartilhados por diversos usuários o sistema deve evitar a ocorrência de resultados anômalos.

5 Por que Sistemas de Banco de Dados?
Imagine um sistema de processamento de arquivos convencional onde registros permanentes são armazenados em vários arquivos e diversos programas de aplicação são escritos para extrair e gravar registros nos arquivos apropriados. Eles podem até ser apropriadamente gerenciados pelos sistemas operacionais existentes; entretanto, estes sistemas apresentam numerosas desvantagens:

6 - Inconsistência e Redundância de Dados: Como arquivos e programas normalmente são criados e mantidos por diferentes programadores, em geral é comum que os arquivos possuam formatos diferentes e os programas estejam escritos em diferentes linguagens de programação. Além disso, a mesma informação pode estar repetida em mais de um arquivo.

7 - Dificuldade de Acesso aos Dados: Normalmente em um sistema de processamento de arquivos comum, quando existe uma necessidade de uma relação de empregados, por exemplo, segundo uma determinada condição, se esta situação não tiver sido prevista inicialmente no sistema, é necessário que um novo programa seja desenvolvido e que gere esta lista solicitada. O fato é que este ambiente não está preparado para atender as necessidades de recuperação de informações de modo eficiente.

8 - Isolamento dos Dados: Como os dados estão dispersos em vários arquivos, e estes arquivos podem apresentar diferentes formatos, é difícil escrever novas aplicações para a recuperação apropriada destes dados.

9 - Problemas com Integridade: Os valores dos dados atribuídos e armazenados em um banco de dados devem satisfazer certas restrições para manutenção da consistência. O problema aumenta quando as restrições atingem diversos itens de dados em diferentes arquivos.

10 - Problemas de atomicidade: Um sistema computacional está sujeito a falhas. E imprescindível garantir que, uma vez detectada uma falha, os dados sejam salvos em seu último estado consistente, anterior a ela. Por exemplo, uma operação de transferência bancária entre contas correntes, deve ser uma operação atômica, ou seja, deve ocorrer por completo, ou não ocorrer.

11 - Anomalias no acesso concorrente: Muitos sistemas permitem atualizações simultâneas dos dados para aumento do desempenho do sistema como um todo e para melhores tempos de resposta. Este tipo de interação pode resultar em inconsistência de dados. Por exemplo, dois saques simultâneos a uma mesma conta corrente.

12 - Problemas de Segurança: Nem todos os usuários de banco de dados estão autorizados ao acesso a todos os dados. Em um sistema bancário, por exemplo, os funcionários do departamento de pessoal não deveriam ter acesso ‘a informações dos clientes do banco, só apenas ao conjunto de pessoas ao qual o seu departamento lhe diz respeito.

13 Funções básicas de um SGBD
– Métodos de acesso – Integridade Semântica – Segurança – Concorrência – Independência

14 Funções Básicas de um SGBD
• Métodos de acesso – DDL (Data Definition Language) • especificação do esquema do BD (dados e seus tipos de dados, índices, ...) – DML (Data Manipulation Language) • manipulação de dados (CRUD) – processamento eficaz de consultas • considera relacionamentos, predicados de seleção, volume de dados, índices, ... – exemplo: buscar professores que lecionam em turmas lotadas em salas do quarto andar

15 Integridade semântica
– garantia de dados sempre corretos com relação ao domínio de aplicação – exemplos • estados válidos para os dados • relacionamentos válidos entre os dados

16 Segurança – evitar violação de consistência dos dados – segurança de acesso (usuários e aplicações) – segurança contra falhas (recovery) • monitorar transações – Transação » conjunto de operações a serem realizadas no BD • categorias de falhas – transação, sistema e meio de armazenamento • manutenção de histórico de atualizações (logs) e backups do BD

17 Concorrência – evitar conflitos de acesso simultâneo a dados por transações (scheduler) – principais técnicas • bloqueio (lock) e timestamp

18 Independência – transparência da organização dos dados – níveis de independência • Independência física – transparência de organização (esquema) física dos dados – exemplos: organização dos arquivos, indexação, distribuição, agrupamento • Independência lógica – transparência do esquema lógico do BD – exemplo: visões (vários esquemas externos )

19 DBA SuperUsuário do SGBD: • projeto de BDs • definição do esquema dos dados • definição de índices • definição de restrições de integridade, visões e autorizações de acesso • recuperação manual de falhas (desfazer transações, backup do BD, ...) • monitoramento da performance de acesso ao BD e modificação de configurações do SGBD (aumento tamanho buffer, criação índices)

20 Linguagem SQL

21 SQL: Histórico e Conceitos
Padrão para as linguagens de banco de dados relacionais. Baseada em álgebra relacional. A versão original foi desenvolvida pela IBM Em 1986, a ISO (International Organization for Standardization – Organização Internacional para Padronização) e a ANSI (American National Standards Institute – Instituto Norte Americano de Padrões Nacionais) publicou os padrões para a SQL, chamada SQL-86.

22 SQL: Histórico e Conceitos
Definição de SQL: Conjunto de comandos que definem, manipulam e controlam os dados dentro de um gerenciamento de dados Embora SQL seja um padrão ANSI (American National Standards Institute), há diferentes versões da linguagem SQL Entretanto, para ser compatível com o padrão ANSI, todas elas suportam pelo menos os principais comandos, como: SELECT, UPDATE, DELETE, INSERT, WHERE de maneira similar. A maior parte dos bancos SQL também têm suas próprias extensões proprietárias em adição ao padrão SQL.

23 SQL: Histórico e Conceitos
Divisões DDL  Data Definition Language DML  Data Manipulation Language

24 DDL: Data Definition Language - Linguagem de Definição de Dados. Uma DDL permite ao usuário definir tabelas novas e elementos associados. A maioria dos bancos de dados de SQL comerciais tem extensões proprietárias no DDL. Os comandos básicos da DDL são: CREATE cria um objeto (uma Tabela, por exemplo) dentro do base de dados; DROP apaga um objeto do banco de dados.

25 Outros comandos DDL: ALTER TABLE; CREATE INDEX; ALTER INDEX; DROP INDEX; CREATE VIEW; DROP VIEW.

26 DML Data Manipulation Language - Linguagem de Manipulação de Dados. A DML é um subconjunto da linguagem usada para selecionar, inserir, atualizar e apagar dados. (CRUD) SELECT é o comumente mais usado do DML, comanda e permite ao usuário especificar uma query (consulta) como uma descrição do resultado desejado. INSERT é usada para adicionar uma fila (formalmente uma tupla) a uma tabela existente; UPDATE para mudar os valores de dados em uma fila de tabela existente; DELETE permite remover filas existentes de uma tabela;

27 Programas http://www.apachefriends.org/en/xampp.html


Carregar ppt "SGBD."

Apresentações semelhantes


Anúncios Google