Semana | Datas | Teóricas | Práticas |
---|---|---|---|
1 | 18/Fev/2002 | Apresentação da disciplina: objectivo, conteúdo, metodologia, bibliografia e avaliação. Introdução aos Sistemas de Bases de Dados: conceito de base de dados (BD) e de Sistema de Gestão de Bases de Dados (SGBD); vantagens dos SGBDs; conceito de modelo de dados; os 3 níveis de abstracção de uma BD; independência lógica e física dos dados; arquitectura de um SGBD. |
- |
2 | 20/Fev/2002 | Revisão do Modelo Relacional: conceito de relação e de esquema relacional; restrições de integridade relacional, chaves candidatas,
chaves primárias e chaves estrangeiras. Revisão de linguagens relacionais. Álgebra Relacional: selecção, projecção, produto cartesiano, diferença, reunião, intersecção, junção condicional, junção natural e divisão; exemplos de aplicação. |
- |
3 | 25/Fev/2002 | SQL-92: Introdução, modelo e tipos básicos. Linguagem de Manipulação de Dados (DML): interrogação e modificação, operações com conjuntos, duplicados, expressões de junção; junções externas. |
P1: Álgebra Relacional |
4 | 27/Fev/2002 | Linguagem de Interrogação: subperguntas; agregação. Linguagem de Modificação. Operações com valores nulos e lógica de três valores. Linguagem de Definição de Dados; índices; vistas: vistas modificáveis, vistas e segurança. SQL embebido em Java. |
- |
5 | 4/Mar/2002 | Estruturas Físicas, Discos e ficheiros: discos, hierarquia de memória, gestão de espaço em disco, gestor de buffers do SGBD,
ficheiros de registos, Heaps, índices, formatos de página, formatos de registos. Dicionários de Dados. |
P2: Revisões de SQL |
6 | 6/Mar/2002 | Organização de ficheiros e índices: alternativas, análise de custos das operações de inserção, remoção, pesquisa sequencial, procura
com igualdade, procura num intervalo. Índices: alternativas para a entradas de dados, classificação de índices, chaves de procura compostas, índices em SQL-92. |
- |
7 | 11/Mar/2002 | Índices baseados em árvores: ficheiros sequenciais indexados, selecção, inserção e remoção em ISAM; B+Tree, selecção, inserção e remoção em B+Trees. Compressão de chaves, carregamento em bloco de B+Trees. | P3: O Optimizador do Oracle |
8 | 13/Mar/2002 | Índices baseados em "hashing": hashing estático, hashing extensível, utilização de um directório, hashing linear, exemplos. | - |
9 | 18/Mar/2002 | Ordenação Externa: ordenar para quê? K-way external merge sort, custo em I/O, número de passos, algoritmos de ordenação interna, duplo buffering, block I/O, uso de B+ trees para ordenação. | P4: Análise de Planos |
10 | 20/Mar/2002 | Avaliação de operadores relacionais: junções com igualdades numa coluna, simple nested loops join, indexed nested loops join, block nested loops join, sort-merge join, hash join, condições gerais de junção, selecções simples, utilização de um índice para selecções, condições de selecção gerais, projecções, projecção baseada em hashing, operações com conjuntos, operações de agregação. | - |
11 | 3/Abr/2002 | Optimização de interrogações: planos de execução, blocos de interrogação como unidade de investigação, estimação de custos, estatísticas e catálogos, estimação de tamanho e factores de redução, equivalências em Álgebra Relacional, enumeração de planos alternativos, estimação de custos para planso só com uma relação e com várias relações, planos "left-deep", interrogações encaixadas. | P5: Análise de Planos; Entrega do trabalho 1 |
12 | 8/Abr/2002 | Limitações do Modelo Relacional e Outros Modelos: vantagens do modelo relacional; limitações das linguagens relacionais; C
embebido e desadaptação de impedâncias; nova geração de sistemas; fosso semântico. SGBD Orientados por Objectos e Relacionais-Objecto: motivação; aplicação de SGBDOO; SGBDRO; tipos complexos; tipos de dados abstractos; colecções encaixadas, tipos referência, expressões de caminho e herança. Novas facilidades da DML, modificações para suportar SGBDRO. |
P6: Esquema em SQL3 |
13 | 10/Abr/2002 | ODMG2.0: utlilização de um SGBDOO; Modelo de objectos e ODL (Object Definition Language): tipos, herança, extensões e
chaves, propriedades e operações. Colecções. Transacções. Operações de Bases de Dados. OQL (Object Query Language); expressões de
caminho; invocação de operações. Bindings ODMG para Java; implementações. Exemplo de aplicação usando Poet 5.0. |
- |
14 | 15/Abr/2002 | SQL-3, SGBD Relacional-Objecto: Introdução, modelo e tipos básicos; Equivalência de tipos; Extensões ao Sistema de
Tipos. Tipos de Dados Abstractos (ADT): atributos, criação e iniciação (funções construtor), funções destrutor, interface pública, privada e protegida, uso de ADTs, funções observador e modificador, subtipagem, herança, substitutabilidade, predicados de tipo, ligações estáticas e dinâmicas de funções, despacho dinâmico. |
P7: cont. |
15 | 17/Abr/2002 | Persistência, tabelas base persistentes, tabelas globais temporárias, tabelas locais temporárias, tabelas vista, tabelas derivadas.
Persistência de ADTs. Módulos persistentes. Tipos colecção: colecções de ADTs, tipo ROW, tipos referência, tipo SET, tipo LIST, tipo MULTISET, construtores de tipos colecção, interrogações sobre colecções, manipulação de colecções. |
- |
16 | 22/Abr/2002 | Regras de integridade e gatilhos. Restrições de Integridade em SQL-92: restrições de chave, R.I. referencial, restrições baseadas em
atributos, restrições baseadas em tuplos, asserções em SQL-92, avaliação de asserções. Manutenção de restrições de integridade. Gatilhos em SQL3: definição de gatilhos, modelo de execução, criação, eventos, granularidade, variáveis e tabelas de transição, condições, acções e tempo de activação. Asserções em SQL-3. |
P8: Regras de negócio e triggers |
17 | 24/Abr/2002 | Arquitectura SQL. Módulos de cliente e módulos de servidor. Rotinas do esquema: SQL e externas. Elementos procedimentais de SQL: comandos compostos, declaração de variáveis e atribuição, execução condicional. Excepções e tratamento de condições. SQL recursivo. | - |
18 | 29/Abr/2002 | XML: introdução, documentos XML, documentos XML bem-formados; validade, exemplos de utilização de XML para troca de
dados e para publicação de informação. Anotação de documentos, elementos, atributos, declarações, instruções de processamento. |
P9: Módulos persistentes |
19 | 13/Mai/2002 | Estrutura física de um documento XML: distribuição por componentes, entidades internas e externas de texto, entidades
binárias. Estrutura lógica de um documento XML: Document Type Definition (DTD), estrutura de um DTD, processamento de DTDs, declaração de elementos, declaração de atributos, tipos, secções condicionais, declaração de notações. |
P10: XML, DTD e Schemas |
20 | 15/Mai/2002 | Schemas XML: Validação de documentos com Schemas, declaração de elementos, tipos de dados, compositores, cardinalidade,
declaração de atributos. XML Namespaces. |
- |
21 | 20/Mai/2002 | Ligações entre objectos: Xpath, XLINK, XPOINTER. Exemplo de documento XML com dados relacionais e respectivo DTD; exemplo de documento XML com dados orientados por objectos e respectivo DTD. |
P11: cont. |
22 | 22/Mai/2002 | Processamento de XML, ler e escrever XML, arquitectura do processador de XML. DOM 1.0: Document Object Model DOM API Core e XML, interfaces Node, Element e Document. Exemplo de processamento de XML com DOM em Java. SAX 1.0: Simple API for XML, call-back interface, Java SAX API, interfaces Parser, DocumentHandler e HandlerBase. Exemplo de processamento de XML com SAX em Java. |
- |
23 | 27/Mai/2002 | Transformação de XML com XSLT. Apresentação de XML: CSS, regras e propriedades; ligação de CSS a XML; formatação de documentos com XSL, autoria, objectos de formatação e FO DTD, transformação de XML com XSLT, transformação para HTML, templates e regras XSLT, navegação com Xpath. |
P12: XSL; Entrega do trabalho 2 |
24 | 29/Mai/2002 | Transacções, execução concorrente e consistência da Base de dados, propriedades ACID. Transacções incompletas e
recuperação. Escalonamentos, seriabilidade e anomalias em execuções entrelaçadas. Bloqueios, protocolo das duas fases, seriabilidade. Gestor de bloqueios, gestor de concorrência, suporte de transacções em SQL-92. |
- |
25 | 3/Jun/2002 | Recuperação: ARIES, o jornal, recuperação de uma falha, checkpoints. | P13: Demonstrações e discussões |
26 | 5/Jun/2002 | Sistemas de apoio à decisão: OLTP e OLAP, Data Warehousing, modelo de dados multidimensionais, MOLAP e ROLAP, interrogações OLAP, operador CUBE, projecto para OLAP. Data Mining e regras associativas. | - |