Download - FLTK Summer Course - Part VII - Seventh Impact

Transcript
Page 1: FLTK Summer Course - Part VII  - Seventh Impact

1 de 20INTRODUÇÃO AO FAST LIGHT TOOLKIT - FLTK

The Fast Light ToolKit

Curso de Verão – Instituto de Computação & CA ComputaçãoMichel Alves dos Santos - UFALBolsista do Centro de Pesquisa em Matemática Computacional

7º Impacto

Page 2: FLTK Summer Course - Part VII  - Seventh Impact

2 de 20

Vamos falar um pouco sobre Banco de Dados ?!

UM BATE-PAPO SOBRE BANCOS DE DADOS

Page 3: FLTK Summer Course - Part VII  - Seventh Impact

3 de 20HISTÓRICO – BANCO DE DADOS

HISTÓRICO

Início da Computação: Dados guardados em arquivo texto; Não havia um padrão de armazenamento muito menos um formato.

Problemas nesse modelo : Redundância não-controlada de dados; Aplicações deveriam se preocupar com a forma de armazenamento.

Os primeiros Bancos de dados surgiram no início dos anos 60 ...

Page 4: FLTK Summer Course - Part VII  - Seventh Impact

4 de 20BANCO DE DADOS - CONCEITUAÇÃO

O que é um banco de dados ?

Bancos de dados são conjuntos de dados integrados que tem por objetivo atender a uma aplicação ou uma “comunidade” de usuários. Possuem como características:

Redundância controlada; Dados armazenados de forma mais consistente; Gerenciamento facilitado;

Page 5: FLTK Summer Course - Part VII  - Seventh Impact

5 de 20SGBD - CONCEITUAÇÃO

O que é um SGBD ?

SGBD: Sistema Gerenciador de Bancos de Dados.SGBD é um software que incorpora as funções de definição, recuperação e alteração de dados em um banco de dados.

Material em Estoque

Clientes

Fornecedores Folha de Pagamento

SGBD

[Esquema para um SGBD – Gerenciando vários Bancos de Dados]

Page 6: FLTK Summer Course - Part VII  - Seventh Impact

6 de 20

Exemplos de SGBD

MySQL Oracle MS SQL Server PostgreSQL SQLite

EXEMPLO DE SISTEMAS GERENCIADORES DE BANCOS DE DADOS

SQL Server®

Page 7: FLTK Summer Course - Part VII  - Seventh Impact

7 de 20

Bancos de Dados X SGBD

BANCOS DE DADOS VERSUS SGBD

Banco de Dados: um modelo, uma abstração; SGBD: uma classe de software;

[Esquema para um SGBD – Interface entre aplicações e modelos/abstrações]

Page 8: FLTK Summer Course - Part VII  - Seventh Impact

8 de 20

Modelos de Dados

MODELOS DE DADOS - TIPOS

Modelo de Dados: descrição formal da estrutura de um banco de dados. Exemplos :

Modelos Navegacionais Modelo Orientado a Objetos Modelo Relacional (mais usado) Modelo de Entidades e

Relacionamentos (conceitual)

Page 9: FLTK Summer Course - Part VII  - Seventh Impact

9 de 20

Projeto de Banco de Dados Relacional

PROJETO DE BANCO DE DADOS

Modelo Conceitual Modelo Entidade-Relacionamento• Modelo Lógico Modelo Relacional• Modelo Físico Tabelas

Page 10: FLTK Summer Course - Part VII  - Seventh Impact

10 de 20

Modelo Conceitual

Modelo Entidade-Relacionamento

Entidade: conjunto de objetos da realidade modelada sobre os quais deseja-se manter informações no banco de dados;

Relacionamento: conjunto de associações entre ocorrências de entidades

MODELO ENTIDADE-RELACIONAMENTO

Page 11: FLTK Summer Course - Part VII  - Seventh Impact

11 de 20

Modelos de Dados - Exemplo

MODELO : ENTIDADE-RELACIONAMENTO (CONCEITUAL)

[Representação do Modelo Entidade-Relacionamento]

Page 12: FLTK Summer Course - Part VII  - Seventh Impact

12 de 20

Modelo Lógico

MODELO LÓGICO

Modelo Relacional Primary Key: conjunto mínimo de um ou mais atributos

e relacionamentos cujos valores servem para distinguir uma ocorrência da entidade das demais ocorrências da mesma entidade;

Foreign Key: conjunto de um ou mais atributos e relacionamentos cujos valores aprecem necessariamente em outra entidade como Primary Key

Page 13: FLTK Summer Course - Part VII  - Seventh Impact

13 de 20

Projeto de Banco de Dados Relacional - Exemplo

[Representação do Modelo Relacional]

PROJETO DE BANCO DE DADOS - EXEMPLO

Page 14: FLTK Summer Course - Part VII  - Seventh Impact

14 de 20

Modelo Físico

MODELO FÍSICO

Tabelas - Representação física em uma determinada plataforma de software (implementação);

[Representação do Modelo Físico]

Page 15: FLTK Summer Course - Part VII  - Seventh Impact

15 de 20

SQL

STRUCTURED QUERY LANGUAGE

SQL: Structured Query Language (Linguagem de Consulta Estruturada);

SQL é uma linguagem de pesquisa declarativa para banco de dados relacional;

É padronizado pela ANSI e ISO;

Possui variações e extensões produzidos pelos diferentes fabricantes de SGBDs.

Page 16: FLTK Summer Course - Part VII  - Seventh Impact

16 de 20SQLITE

SQLite

É uma biblioteca C que implementa um banco de dados SQL embutido. Programas que usam a biblioteca SQLite podem ter acesso a banco de dados SQL sem executar um processo RDBMS separado.

SQLite não é uma biblioteca de cliente usada para conectar com um grande servidor de banco de dados. SQLite é o servidor. A biblioteca SQLite lê e escreve diretamente para, e do arquivo do banco de dados no disco.

Page 17: FLTK Summer Course - Part VII  - Seventh Impact

17 de 20

Características do SQLite

ALGUMAS CARACTERÍSTICAS DO SQLITE

Free Software e Multiplataforma; Transações ACID - Atomicidade,

Consistência, Isolamento e Durabilidade;

Não necessita de instalação, configuração ou administração;

Implementa a maioria do SQL92; O Banco é guardado em um único

arquivo; Suporta bases acima de 2 terabytes; Sem dependências externas.

[Estrutura do SQLite]

Page 18: FLTK Summer Course - Part VII  - Seventh Impact

18 de 20DÚVIDAS ?

Dúvidas ?

Page 19: FLTK Summer Course - Part VII  - Seventh Impact

19 de 20PENSAMENTO DO DIA !

Charles Dickens (1812-1870), escritor inglês.

“O homem nunca sabe do que é capaz até ser obrigado a tentar.”

Page 20: FLTK Summer Course - Part VII  - Seventh Impact

20 de 20FIM !!!