Conclusões Análise à posteriori do programa de Bases de Dados 1 Análise e discussão dos objectivos da disciplina Apresentação das disciplinas opcionais, oferecidas na LEI e MEI, da área de Bases de Dados 1 Programa de BD1 Introdução aos sistemas de Bases de Dados 2. Modelos de Dados (Design) 1. i. Revisão do modelo ER ii. Modelo Relacional a) Integridade e Segurança de BD relacionais • Restrições ao domínio • Integridade de referência • Asserções e triggers • Segurança e autorizações • Dependências funcionais e multivalor b) Design e normalização de bases de dados relacionais 3. Interrogação/manipulação de Bases de Dados i. ii. iii. iv. 4. Álgebra Relacional SQL QBE Datalog Outros Modelos de bases de dados i. Bases de Dados Orientados por Objectos ii. Bases de Dados Objecto-Relacional iii. XML 2 Objectivos de BD1 Pretende-se dotar os alunos das bases necessárias à concepção, construção e análise de bases de dados relacionais. Serem capazes de conceber uma base de dados relacional Fazer o seu design Compreender o que devem ser as restrições Estarem à vontade com a manipulação e interrogação de bases de dados com SQL Conseguirem fazer um pequeno projecto de bases de dados, do princípio ao fim (trabalho) 3 Objectivos de BD1 (Cont.) Estarem cientes de que há mais coisas em bases de dados e, pelo menos, saberem o que são algumas delas Outros modelos, para além do relacional Modelo de objectos e linguagens persistentes Introdução de conceitos de objectos em bases de dados – Conhecerem, e saberem usar, alguns destes mecanismos existentes no SQL:1999 Linguagens de interface com bases de dados Linguagens Embedded-SQL e seus mecanismos de base Linguagens de interface ODBC e JDBC XML Para transferência de dados Para interface de visualização de dados Como modelo hierárquico de dados Noções breves de: sessões, utilizadores, transações em bases de dados acedidas simultaneamente por vários utilizadores 4 E depois de BD1? Outras disciplinas, opcionais da LEI, onde podem aprofundar mais o tema de bases de dados: Bases de Dados 2 (8º semestre) Aprofunda alguns dos tópicos que foram apenas aflorados em BD1 Tecnologias de Sistemas de Informação para a Web (9º S.) Explora o uso de XML (e outras linguagens Web) para transferência e manipulação de dados. Bases de Dados e Data Warehousing (10º semestre) Estuda modelização e acesso a dados para análise e apoio à decisão Disciplinas avançadas do Mestrado em Eng. Informática Tecnologias de Representação de Conhecimento na Web No seguimento de TSIW Estuda formas de representar, não só o formato de dados para transferência, como também o significa desses dados Text e Data Mining No seguimento de BDDW Estuda forma de extrair relações/informação “interessante” a partir de grandes bases de dados 5 Bases de Dados 2 LEI: 8º semestre Explora mais aprofundadamente tópicos aflorados em BD1 Apresenta tópicos avançados sobre Bases de Dados, nomeadamente: Exploração de ambientes de programação e comunicação com bases de dados: ODBC Ambiente SQL Standard e Ambiente Cliente/Servidor Linguagens de programação PLSQL e PHP Sistemas Transaccionais Bases de Dados Distribuídas Modelos de replicação (em Oracle e SQLServer) Transações e Concorrência Eficiência e optimização de interrogações a Bases de Dados em SQL. Introdução a Data Warehousing Instruções SQL de suporte a armazéns de dados 6 Tecnologias de Sistemas de Informação para a Web LEI: 9º semestre Tecnologias de SI em ambiente Web Uso de XML como modelo hierárquico de repositório e transferência de dados Modelação de dados em XML (XSD) Desenvolvimento de Aplicações que usam XML (DOM, SAX e XSL) Interrogação de Bases de Dados em XML (XPath e XQuery) Integridade referencial em XML SGBD de XML Nativas, e SGBD Relacionais com XML embutido. Análise dos sistemas: Oracle SQLServer XIndice 7 Tecnologias de Repr. do Conhecimento na Web MEI: 2º semestre Informação pode ser armazenada na Web, em XML, e com DTDs ou XMLSchema podemos dizer (e documentar) qual a estrutura dos dados. Mas qual o significado desses dados? Quais os significados das várias tags e da sua estrutura? Como “entender” esse significado de forma automática? Que falta fazer, para que se possam ter programas que processem dados na Web, sem conhecimento prévio das estruturas? Por exemplo: Programa para marcar um hotel via Web. Programa para fazer compras B2B, em que há também informação de contractos (regras de negócio) Começa a haver linguagens para representação desse significado: RDF; OWL; RuleML Em TRCW estuda-se este tipo de problemas e linguagens Tem como pré-requisito aconselhado a disciplina de Representação do Conhecimento e Raciocínio (opcional do 9º semestre da LEI) Ambas estas disciplinas são comuns ao Mestrado Europeu de Lógica Computacional e leccionadas em Inglês. 8 Bases de Dados e Data Warehousing LEI: 10º semestre Objectivos: Conceitos básicos de Data Warehouse (caracterização, arquitectura e modelação) para apoio à decisão estratégica e operacional numa organização. Familiarização com algumas ferramentas típicas que actualmente se utilizem no mercado. O tópico central é o da modelação multi-dimensional Mas afinal o que é uma Data Warehouse??? 9 Sistemas Operacionais OLTP – On Line Transaction Processing Sistemas que suportam o dia a dia do negócio ou actividade de uma empresa ou instituição Foi disto que tratamos em BD1 Exemplo: Se alguém compra um produto numa loja o sistema retira uma unidade desse produto do stock existente, emite uma factura. Se chegam novas unidades do produto o sistema actualiza o stock Características Milhares ou milhões de transações (SABRE - 4000 trans/s) Pequenas operações, repetidas e previsíveis Tempo real 10 Sistemas Analíticos OLAP – On Line Analytical Processing Sistemas que permitem os utilizadores analisarem diferentes aspectos da actividade e desempenho da empresa Exemplo Como é que determinado produto se está a vender pelas diferentes regiões? Qual foi a evolução das suas vendas desde a sua introdução no mercado? Características de utilização Poucas interrogações (quando comparado com os sistemas OLTP) Grandes volumes de dados envolvidos em cada interrogação (para obter frequentemente um reduzido sumário) Grande variedade e pouca previsibilidade Consulta e exploração (não edição) 11 Os Sistemas Operacionais são substancialmente diferentes dos Analíticos “The users of an OLTP system are running the wheels of the organization. The users of a data warehouse are watching the wheels of the organization” [Kimball] Diferentes sob vários aspectos [Kimball] Os utilizadores são diferentes O conteúdo é diferente As estruturas de dados são diferentes O Software é diferente O Hardware é muitas vezes diferente A sua administração é diferente A gestão de sistemas é diferente O ritmo diário de operação é diferente. 12 Data warehouse - Infra-estrutura para suporte à decisão “A data warehouse is an analytical database that is used as the foundation of a decision support system. It is designed for large volumes of read-only data, providing intuitive access to information that will be used in making decisions. A data warehouse is created as ongoing commitment by the organization to ensure the appropriate data is available to the appropriate end user at the appropriate time” [Vidette Poe, et all, 1997] 13 Arquitectura de Referência Fontes Ad Hoc Query Tools Gestão e Operação OLTP . . . OLTP Fontes Externas MetaData Extracção Limpeza Transformação Carregamento Report Writers Data Warehouse Data Marts Multidimensional Analysis Plataformas e Infra-estruturas de suporte Configuração, Gestão e Operação 14 Aplicações - DataMining - …. Text e Data Mining MEI: 1º semestre E depois de ter estes dados todos, eventualmente numa data warehouse, será que não há para lá relações entre partes de informação, que são interessantes? Como descobri-las? Como agrupar os dados? Como extrair conceitos? Como extrair regras? Em “Text e Data Mining” estuda-se este tipo de problemas Tem como pré-requisito aconselhado a disciplina de Aprendizagem Automática (opcional do 10º semestre da LEI) 15