24
INTRODUÇÃO EDUARDO C. DE ALMEIDA DEPARTAMENTO DE INFORMÁTICA BANCOS DE DADOS CI1218 FLICKR - CREATIVE COMMONS

INTRODUÇÃO · 2021. 2. 8. · - representa aspectos do mundo real - possui coerÊncia (sem conjuntos aleatÓrios) - construÍdo para um projeto especÍfico” [elmasri e navathe]

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

  • INTRODUÇÃO

    EDUARDO C. DE ALMEIDA DEPARTAMENTO DE INFORMÁTICA

    BANCOS DE DADOS CI1218

    FLIC

    KR

    - C

    REA

    TIVE

    CO

    MM

    ON

    S

  • BANCO DE DADOS

    “COLEÇÃO ORGANIZADA DE DADOS: - REPRESENTA ASPECTOS DO MUNDO REAL - POSSUI COERÊNCIA (SEM CONJUNTOS ALEATÓRIOS) - CONSTRUÍDO PARA UM PROJETO ESPECÍFICO” [ELMASRI E NAVATHE]

    BANCOS DE DADOS CI1218

  • BENEFÍCIOS DE UM BD: ‣ NATUREZA AUTO DESCRITIVA ‣ ABSTRAÇÃO DE ACESSO AOS DADOS ‣ VISÃO MÚLTIPLA ‣ COMPARTILHAMENTO

    BD VS. SISTEMA DE ARQUIVOS

    BANCOS DE DADOS CI1218

  • BANCOS DE DADOS CI1218

    NATUREZA AUTO DESCRITIVA‣ DADOS ‣ META DADOS (INFORMAÇÃO SOBRE O DADO) - EX. NO MODELO RELACIONAL (VEREMOS MAIS

    ADIANTE)

    CREATE TABLE INST_DISC( INSTRUTOR VARCHAR(50), DISCIPLINA VARCHAR(50), CARGA_H INT, CONSTRAINT PK_PERSON  PRIMARY KEY (INSTRUTOR , DISCIPLINA) );

  • ‣ DADOS ‣ META DADOS (INFORMAÇÃO SOBRE O DADO) - EX. NO MODELO RELACIONAL (VEREMOS MAIS

    ADIANTE)

    CREATE TABLE INST_DISC( INSTRUTOR VARCHAR(50), DISCIPLINA VARCHAR(50), CARGA_H INT, CONSTRAINT PK_PERSON  PRIMARY KEY (INSTRUTOR , DISCIPLINA) );

    nome de tabelas

    BANCOS DE DADOS CI1218

    NATUREZA AUTO DESCRITIVA

  • CREATE TABLE INST_DISC( INSTRUTOR VARCHAR(50), DISCIPLINA VARCHAR(50), CARGA_H INT, CONSTRAINT PK_PERSON  PRIMARY KEY (INSTRUTOR , DISCIPLINA) );

    nome de atributos

    BANCOS DE DADOS CI1218

    NATUREZA AUTO DESCRITIVA‣ DADOS ‣ META DADOS (INFORMAÇÃO SOBRE O DADO) - EX. NO MODELO RELACIONAL (VEREMOS MAIS

    ADIANTE)

  • CREATE TABLE INST_DISC( INSTRUTOR VARCHAR(50), DISCIPLINA VARCHAR(50), CARGA_H INT, CONSTRAINT PK_PERSON  PRIMARY KEY (INSTRUTOR , DISCIPLINA) );

    tipos de atributos

    BANCOS DE DADOS CI1218

    NATUREZA AUTO DESCRITIVA‣ DADOS ‣ META DADOS (INFORMAÇÃO SOBRE O DADO) - EX. NO MODELO RELACIONAL (VEREMOS MAIS

    ADIANTE)

  • BANCOS DE DADOS CI1218

    NATUREZA AUTO DESCRITIVA

    CREATE TABLE INST_DISC( INSTRUTOR VARCHAR(50), DISCIPLINA VARCHAR(50), CARGA_H INT, CONSTRAINT PK_PERSON  PRIMARY KEY (INSTRUTOR , DISCIPLINA) );

    ‣ DADOS ‣ META DADOS (INFORMAÇÃO SOBRE O DADO) - EX. NO MODELO RELACIONAL (VEREMOS MAIS

    ADIANTE)

  • ‣ ISOLAMENTO ENTRE PROGRAMAS E DADOS

    1

    2 287 1 1561 17 2 8

    8 1 1 1 1 1 1

    PROGRAMA

    h se***

    12

    ****

    *1** 1* **

    *71 ****

    ***31*

    FILE *F; F = fopen(“/path/arvore…”); BTree *arv = achar tabela em F; for t in arv: emit(t);

    FILE *F; F = fopen(“/path/skiplist…”); SkipList *sl = achar tabela em F; for t in sl: emit(t);

    BANCOS DE DADOS CI1218

    ABSTRAÇÃO NO ACESSO AOS DADOS

  • 1

    2 287 1 1561 17 2 8

    8 1 1 1 1 1 1

    PROGRAMA

    h se***

    12

    ****

    *1** 1* **

    *71 ****

    ***31*

    BANCOS DE DADOS CI1218

    ABSTRAÇÃO NO ACESSO AOS DADOS

    ‣ ISOLAMENTO ENTRE PROGRAMAS E DADOS

  • BANCOS DE DADOS CI1218

    VISÃO MÚLTIPLA DOS DADOS

    ‣ ISOLAMENTO ENTRE PROGRAMAS E DADOS Por ex. como buscar animais fantásticos e onde habitam no arquivo INSTRUTOR?

    INSTRUTOR

  • PROGRAMA

    FILE *arq; arq = fopen("INSTRUTOR","r"); char linha[1024]; while(fgets(linha, 1024, arq)){ // parse da linha }

    BANCOS DE DADOS CI1218

    VISÃO MÚLTIPLA DOS DADOS

    ‣ ISOLAMENTO ENTRE PROGRAMAS E DADOS Por ex. como buscar animais fantásticos e onde habitam no arquivo INSTRUTOR?

  • PROGRAMA

    BANCOS DE DADOS CI1218

    VISÃO MÚLTIPLA DOS DADOS

    ‣ ISOLAMENTO ENTRE PROGRAMAS E DADOS Por ex. como buscar animais fantásticos e onde habitam no arquivo INSTRUTOR?

  • BANCOS DE DADOS CI1218

    VISÃO MÚLTIPLA DOS DADOS

    ‣ SUBCONJUNTO DE DADOS COM ACESSO LIMITADO

    PROGRAMA

    Por ex. como buscar animais fantásticos e onde habitam no arquivo INSTRUTOR?

  • BANCOS DE DADOS CI1218

    VISÃO MÚLTIPLA DOS DADOS

    ‣ SUBCONJUNTO DE DADOS COM ACESSO LIMITADO Por ex. como buscar animais fantásticos e onde habitam no arquivo INSTRUTOR?

    PROGRAMA

  • ‣ PERMITE ACESSO CONCORRENTE

    PROGRAMA

    BANCOS DE DADOS CI1218

    COMPARTILHAMENTO

  • BANCOS DE DADOS CI1218

    COMPARTILHAMENTO

    PROGRAMAPROGRAMA

    PROGRAMAPROGRAMA

    ‣ PERMITE ACESSO CONCORRENTE

  • PROGRAMAPROGRAMA

    PROGRAMAPROGRAMA

    BANCOS DE DADOS CI1218

    COMPARTILHAMENTO

    ‣ PERMITE ACESSO CONCORRENTE

  • 0 1 2 3 4

    Mem

    TP

    (GB/

    s)

    OS/MonetDB

    (a)

    0 1 2 3 4

    Mem

    TP

    (GB/

    s) Adaptive/MonetDB

    (b)

    0 1 2 3 4

    Mem

    TP

    (GB/

    s) OS/SQL Server

    (c)

    0 1 2 3 4

    0 50 100 150 200 250 300 350Mem

    TP

    (GB/

    s)

    Time (s)

    Adaptive/SQL Server

    (d)S0 S1 S2 S3

    (256 U

    SERS

    , 1 GB

    DA

    TABA

    SE, T

    PC-H

    )

    BANCOS DE DADOS CI1218

    EXEMPLO DE EXECUÇÃO CONCORRENTE

    An Elastic Multi-Core Allocation Mechanism for Database Systems. Simone Dominico, Eduardo C. de Almeida, Jorge A. Meira, Marco A. Z. Alves. ICDE 2018

  • ‣ COMO ASSEGURAR O MESMO PROFESSOR PRA CADA NOTA DA MESMA DISCIPLINA?

    ‣ COMO EVITAR SOBRESCRITA DA CARGA HORÁRIA COM VALOR INVÁLIDO?

    ‣ COMO ALOCAR MÚLTIPLOS PROFESSORES NA MESMA DISCIPLINA?

    BD VS. SISTEMA DE ARQUIVOS INTEGRIDADE

    BANCOS DE DADOS CI1218

  • ‣ COMO ACHAR UM REGISTRO PARTICULAR? ‣ COMO CRIAR VÁRIAS APPS ACESSANDO O

    MESMO BD? ‣ O QUE ACONTECE SE 2 THREADS TENTAM

    ESCREVER AO MESMO TEMPO NO ARQUIVO?

    BD VS. SISTEMA DE ARQUIVOS IMPLEMENTAÇÃO

    BANCOS DE DADOS CI1218

  • ‣ E SE O HARDWARE “QUEBRA” DURANTE UMA ATUALIZAÇÃO?

    ‣ E SE PRECISAR REPLICAR OS MESMOS DADOS EM MÚLTIPLAS MÁQUINAS?

    BD VS. SISTEMA DE ARQUIVOS DURABILIDADE

    BANCOS DE DADOS CI1218

  • BANCOS DE DADOS CI1218

    CONCLUSÃO

    ‣ OS BD SÃO UBÍQUOS ‣ OS BDS FORNECEM CAMADA DE ACESSO AOS

    DADOS MAIS EFICIENTE E FLEXÍVEL QUE UM SISTEMA DE ARQUIVOS

  • BANCOS DE DADOS CI1218

    PRÓXIMA AULA

    INTRODUÇÃO AOS BANCOS DE DADOS