Modelação Dimensional 3

Tamanho: px
Começar a partir da página:

Download "Modelação Dimensional 3"

Transcrição

1 INTEGRAÇÃO E PROCESSAMENTO ANALÍTICO DE INFORMAÇÃO Modelação Dimensional 3 António Manuel Silva Ferreira UNIVERSIDADE DE LISBOA FACULDADE DE CIÊNCIAS DEPARTAMENTO DE INFORMÁTICA [email protected]

2 Sumário Dimensões de mudança lenta Técnicas para registar mudanças em dimensões Role- playing de dimensões Sinónimos e vistas Dimensões conformadas Matriz de processos Relatórios transdepartamentais Gestão de dados mestre Dimensões muito grandes Bifurcações Mini- dimensões 2

3 Dimensões de Mudança Lenta 1 Dimensão data atualizada frequentemente Precisa de acompanhar a evolução dos factos Exemplo Encomendas de produtos e atualização diária do data warehouse Na dimensão data: novo registo correspondente ao dia anterior Na tabela de factos: registos com encomendas efetuadas no dia anterior Datas atualizadas em condnuo Outras dimensões também vão sendo alteradas com o tempo Mas Vpicamente mudam mais lentamente Por vezes de forma inesperada e discreta Designam- se slowly changing dimensions 3

4 Dimensões de Mudança Lenta 2 Exemplos de mudanças lentas Vendedor muda de região Empregado muda de departamento Produto muda de secção na loja Cliente muda de morada Aluno muda de curso Por que não ligar tabelas de dimensões à dimensão data? Chaves estrangeiras para a data originariam snowflaking Esquema de dados mais complicado e menos inteligível Eficiência piora devido à necessidade de fazer junções de tabelas 4

5 Técnicas para Registar Mudanças Lentas Tipo 1: subsftuir o valor na tabela de dimensão Apropriada para correções nos dados Ex. corrigir erro na morada do cliente Tipo 2: acrescentar uma linha na tabela de dimensão Indicada para manter o histórico de alterações Ex. registar que o cliente mudou de morada Tipo 3: acrescentar uma coluna na tabela de dimensão Usada para representar realidade alternavva Ex. capturar segunda morada do cliente 5

6 Técnica de Tipo 1 para Mudanças Lentas SubsFtuir o valor na tabela de dimensão Apropriada para correções nos dados Cenário: produto muda de secção na loja (para aumentar vendas) ID Ref. Descrição Secção 123 MG2 Magalhães Educação ID Ref. Descrição Secção 123 MG2 Magalhães InformáVca Vantagem Fácil e rápida de concrevzar Desvantagens Não admite histórico de alterações: único valor é o mais recente Ex. como verificar se vendas melhoraram devido à mudança de secção? Necessário atualizar valores agregados pré- calculados 6

7 Técnica de Tipo 2 para Mudanças Lentas 1 Acrescentar uma linha na tabela de dimensão Indicada para manter o histórico de alterações Cenário: produto muda de secção na loja (para aumentar vendas) ID Ref. Descrição Secção 123 MG2 Magalhães Educação ID Ref. Descrição Secção 123 MG2 Magalhães Educação 456 MG2 Magalhães InformáVca Chave estrangeira para produto na tabela de factos Antes da mudança de secção: 123 Depois da mudança: 456 (valor válido até à próxima alteração) Requer uflização de chave subsftuta Chave natural (referência de produto) não é alterada 7

8 Técnica de Tipo 2 para Mudanças Lentas 2 Registos incluem datas e indicador de validade, e razão da alteração Chave natural permite agrupar registos de alterações ID Ref. Descrição Secção Início Val. Fim Val. Razão Em Vigor 123 MG2 Magalhães Educação Vender mais 456 MG2 Magalhães InformáVca x Vantagens Regista todas as alterações que vão acontecendo ao longo do tempo Valores agregados pré- calculados convnuam válidos Produto convnua a estar afeto à secção educação no período em causa Desvantagem Acelera o crescimento das tabelas de dimensão 8

9 Técnica de Tipo 3 para Mudanças Lentas Acrescentar uma coluna na tabela de dimensão Usada para representar uma realidade alternavva Ex. categorizar de acordo com uma ontologia diferente Cenário: produto tem nova de categoria, mas anterior convnua válida ID Ref. Descrição Categoria 123 MG2 Magalhães Educação ID Ref. Descrição Categoria C. Altern. 123 MG2 Magalhães InformáVca Educação Vantagem Facilidade em passar de uma realidade para outra Desvantagens Pode ser necessário atualizar valores agregados pré- calculados Coluna extra diminui inteligibilidade da dimensão 9

10 Técnicas Híbridas para Realidades Alternativas 1 Mudanças previsíveis Mesma realidade alternavva pode ter várias versões Caso dpico: reorganizações/atualização periódica de mapas (overlays) Exemplo: atribuição anual de zonas a equipas de vendedores Técnica 2 parece ser adequada, mas: Interessa poder analisar em função de qualquer versão da realidade Como seriam as vendas de 2009 segundo o mapa de zonas de 2010? Pode ser aplicada generalização da técnica 3 EID Equipa Sede Zona Atual Zona 2008 Zona 2009 Zona Bons Melgas Lisboa Lumiar Benfica Carnide Lumiar 2 Insistentes Porto Paranhos Campanhã Bonfim Paranhos Cada versão da realidade corresponde a uma coluna extra 10

11 Técnicas Híbridas para Realidades Alternativas 2 Mudanças previsíveis (convnuação) Regularidade nas mudanças cria padrão para nome das colunas Ex. atribuição anual de zonas colunas Zona ano Cada coluna extra é aplicada a todas as linhas Pode ser usado o valor não aplicável Existe o problema do número de colunas ir crescendo Mudanças imprevisíveis E se atribuição de zonas em datas diferentes para cada equipa? Deixa de fazer senvdo colunas com nome Zona ano Técnica 2 permite registar datas de validade de cada atribuição de zona Comparação de vendas segundo dois mapas de zonas Mapa em vigor aquando de uma data selecionada + mapa atual Técnica 3 permite mudar rapidamente de realidade 11

12 Técnicas Híbridas para Realidades Alternativas 3 Mudanças imprevisíveis (convnuação) Ex. atribuição dessincronizada de zonas a equipas de vendedores ID EID Equipa Sede Zona Início Val. Fim Val. Zona R Zona Atual 1 1 Bons Melgas Lisboa Benfica Benfica Carnide 5 1 Bons Melgas Lisboa Carnide Benfica Carnide ID EID Equipa Sede Zona Início Val. Fim Val. Zona R Zona Atual 1 1 Bons Melgas Lisboa Benfica Benfica Lumiar 5 1 Bons Melgas Lisboa Carnide Benfica Lumiar 9 1 Bons Melgas Lisboa Lumiar Benfica Lumiar Zona R (de referência) é zona de cada equipa numa data específica 12

13 Registo de Mudanças Lentas em Dimensões Técnicas 1 e 2 são as mais usadas Técnica 3 incomum (reportado 1% numa palestra da indústria) Técnicas híbridas Aproveitam o melhor de cada técnica Mas complexidade aumenta Decisores podem senvr dificuldades Regras de negócio ditam escolha da técnica Nenhuma técnica serve para todos os casos Exemplo: número de telefone muda InúVl preservar o histórico: usar técnica 1 Necessário histórico: usar técnica 2 13

14 Role- Playing de Dimensões 1 Tabela de factos pode referir várias vezes a mesma dimensão Caso dpico: várias datas no mesmo facto Cada data desempenha um papel diferente Ex. data de encomenda, de faturação, de despacho, Ponto de vista do decisor Existem várias tabelas de dimensões com datas Posso arrastar colunas de qualquer dessas dimensões O que realmente acontece Uma tabela com todas as datas: poupa espaço em disco e manutenção Dimensões data são simuladas com vistas ou sinónimos de SQL Chaves estrangeiras na tabela de factos referenciam vistas ou sinónimos 14

15 Role- Playing de Dimensões 2 CREATE TABLE dimdata ( id NUMERIC(9,0) IDENTITY(1,1) PRIMARY KEY, ano NUMERIC(4,0) NOT NULL, mês NUMERIC(2,0) NOT NULL, dia NUMERIC(2,0) NOT NULL, );! - - Sinónimos para a mesma tabela de datas. CREATE SYNONYM dimdataencomenda FOR dimdata; CREATE SYNONYM dimdatafatura FOR dimdata;! CREATE TABLE factvenda ( idtransccao NUMERIC(12,0) PRIMARY KEY, dataencomenda NUMERIC( 9,0) REFERENCES dimdataencomenda(id), datafactura NUMERIC( 9,0) REFERENCES dimdatafatura(id), cliente NUMERIC( 9,0) REFERENCES dimcliente(id), produto NUMERIC( 6,0) REFERENCES dimproduto(id), euros NUMERIC( 9,2) NOT NULL, ); 15

16 Role- Playing de Dimensões 3 CREATE TABLE dimdata ( id NUMERIC(9,0) IDENTITY(1,1) PRIMARY KEY, ano NUMERIC(4,0) NOT NULL, mes NUMERIC(2,0) NOT NULL, dia NUMERIC(2,0) NOT NULL, );! - - Vistas permitem mudar o nome dos atributos consoante a dimensão em causa. CREATE VIEW dimdataencomenda(iddataencomenda, anoencomenda, mesencomenda, diaencomenda) AS SELECT id, ano, mes, dia FROM dimdata; CREATE VIEW dimdatafatura(iddatafatura, anofatura, mesfatura, diafatura) AS SELECT id, ano, mês, dia FROM dimdata;! CREATE TABLE factvenda ( idtransccao NUMERIC(12,0) PRIMARY KEY, dataencomenda NUMERIC( 9,0) REFERENCES dimdataencomenda(id), datafactura NUMERIC( 9,0) REFERENCES dimdatafatura(id), cliente NUMERIC( 9,0) REFERENCES dimcliente(id), produto NUMERIC( 6,0) REFERENCES dimproduto(id), euros NUMERIC( 9,2) NOT NULL, ); 16

17 Dimensões Conformadas 1 Data warehouse reúne vários data marts departamentais Data marts podem (devem) ter dimensões sobre as mesmas envdades Ex. encomendas e apoio a cliente usam dimensões data e cliente Matriz de processos (bus matrix) Mostra dimensões comuns aos vários processos de negócio IdenFfica dimensões comuns aos processos Processo de Negócio Dimensões Data Produto Loja Cliente Encomendas x x x x Apoio a Cliente x x x Dimensões são conformadas quando parflham atributos Dimensão cliente em encomendas tem: código, nome, e morada Dimensão cliente em apoio a cliente tem: código, nome, e idade 17

18 Dimensões Conformadas 2 Permitem relatórios transdepartamentais Designado drill- across Várias tabelas de factos envolvidas Time Dimension Finished Goods Inventory Orders Shipments Customer Dimension Procedimento em dois passos 1. Interrogações separadas a cada tabela de factos Product Dimension 2. Junção de resultados através de atributos com o mesmo nome Customer Inventory Customer Sales Exemplo Qual a relação entre o número de chamadas para o apoio a clientes e as encomendas do produto XK- 21 em Espanha? 1. a) nos factos de apoio a clientes: filtrar por país, agrupar por cliente, e contar chamadas; b) nos factos de encomendas: filtrar por país e produto, agrupar por cliente, e somar valor das encomendas 2. Juntar dois resultados com base no número de cliente 18

19 Master Conformed Dimensions Definidas por um comité de execuvvos (dimension authority) Para cada dimensão conformada mestre Reunir representantes dos processos de negócio Chegar a consenso sobre todos os atributos a incluir a) Comuns a todos os processos, nomeadamente o idenvficador de linha b) Específicos de cada processo Cliente ID e outros atributos comuns Atributos só de encomendas Atributos só de apoio a clientes Passagens de dados do data warehouse para os data marts Dimensões iguais à mestre: normalmente por cópias locais Cópia de subconjunto de atributos (só os relevantes a cada processo) Cópia de subconjunto das linhas (ex. uma parte dos produtos) 19

20 Gestão de Dados Mestre 1 Serviço que gere dados críticos comuns aos processos de negócio Centrado na qualidade dos dados da organização Dados mestre são versão única da verdade Ex. cada cliente tem um só registo mestre, devidamente validado Por oposição a cada processo ter o seu próprio registo do cliente Relação com os sistemas operacionais Responde a pedidos de dados com valores corretos e coerentes Ex. os vários sistemas operacionais usam os mesmos dados de cliente Aceita, para validação, pedidos de registo de dados novos Relação com os data warehouses Simplifica a limpeza e integração de dados de várias fontes Facilita o carregamento de dados nas dimensões conformadas mestre 20

21 Gestão de Dados Mestre 2 1. Criar processo dedicado à gestão de dados mestre Equipa deve incluir técnicos e responsáveis pelo negócio AVvidade condnua para assegurar o correto uso e parvlha de dados 2. Integrar dados existentes Várias ilhas de dados consolidadas numa versão única da verdade Esforço muito significavvo: dados nunca ficarão 100% corretos 3. Reformular sistemas e processos Reprogramar sistemas operacionais e alterar processos de negócio para passarem a usar o serviço de gestão de dados mestre 4. Aumentar massa crívca de apoio Vantagens dos dados mestre atravessam toda a organização Pouca qualidade dos dados propaga- se a todos os processos (GIGO ) 21

22 Dimensões Muito Grandes Dimensão cliente pode ser muito grande ou monstra Dezenas ou centenas de atributos 3000 atributos no contexto de empresa de Eventualmente milhões de linhas 100 milhões de clientes em companhias de cartões de crédito Sujeita a atualizações frequentes Tipicamente a mais diƒcil de modelar Podem surgir problemas sérios de desempenho Simplicidade do desenho pode ficar compromevda Duas opções: bifurcações e mini- dimensões Em ambos os casos, ideia é transferir alguns atributos para outra tabela 22

23 Bifurcações (Outriggers) 1 Resultam de snowflaking de uma dimensão muito grande Transferir atributos que mudam pouco para outra tabela Critérios para a escolha de atributos Relacionados entre si Mudarem em conjunto Mudarem devagar Procedimento 1. Criar dimensão separada de desvno dos atributos 2. Remover esses atributos da dimensão original 3. Colocar chave estrangeira para dimensão separada 23

24 Bifurcações (Outriggers) 2 Exemplo Dados demográficos da região do cliente mudam com pouca frequência Dimensão separada para população por escalão etário, sexo, escolaridade Evitar repefção de blocos de valores para clientes da mesma região Vantagens Dimensão original passa a ocupar menos espaço em disco Potenciais ganhos de desempenho Mais fácil atualizar dados demográficos Desvantagens Perda de simplicidade: duas tabelas em vez de uma Pode ser parcialmente resolvido com uma vista Junção extra de tabelas pode diminuir desempenho 24

25 Bifurcações (Outriggers) 3 Exemplos na dimensão cliente Dados demográficos da região onde vive Fact Table Customer Key (FK) More Foreign Keys Facts Customer Dimension Customer Key (PK) Customer ID (Natural Key) Customer Salutation Customer First Name Customer Surname Customer City Customer County County Demographics Key (FK) Customer State and more Data da primeira compra na loja County Demographics Outrigger Dimension County Demographics Key (PK) Total Population Population under 5 Years % Population under 5 Years Population under 18 Years % Population under 18 Years Population 65 Years and Older % Population 65 Years and Older Female Population % Female Population Male Population % Male Population Number of High School Graduates Number of College Graduates Number of Housing Units Homeownership Rate and more Fact Table Transasction Date Key (FK) Customer Key (FK) More Foreign Keys Facts Neste caso, para cada cliente, os valores na bifurcação não mudam Customer Dimension Customer Key (PK) Customer ID (Natural Key) Customer Salutation Customer First Name Customer Surname Customer City Customer State Customer Attributes Date of 1st Purchase (FK) Date of 1st Purchase Dimension Date of 1st Purchase Key (PK) Date of 1st Purchase Date of 1st Purchase Month Date of 1st Purchase Year Date of 1st Purchase Fiscal Month Date of 1st Purchase Fiscal Quarter Date of 1st Purchase Fiscal Year Date of 1st Purchase Season and more 25

26 Mini- Dimensões 1 Dimensões monstras têm tendência a mudar rapidamente Ex. atributos de cliente, como idade, filhos, rendimentos, ImpraVcável ter mais linhas devido a alterações em alguns atributos Pode ser criada mini- dimensão para atributos quentes Guarda combinações possíveis de valores desses atributos Tabela de factos com chave estrangeira adicional para mini- dimensão Dimensão monstra não é afetada por mudanças nesses atributos Critérios para escolha de atributos Mudarem com frequência Podem não estar relacionados entre si Interesse em acompanhar alterações Valores condnuos poderem ser convervdos em intervalos discretos 26

27 Mini- Dimensões 2 Valores em mini- dimensões converfdos em intervalos Para reduzir número de combinações possíveis de valores Ex. idade faixa etária, rendimentos ]< a] ; [a b[ ; [ b[ Vantagens Combinações de valores na mini- dimensão podem ser reuflizadas Novas linhas na mini- dimensão só são criadas quando necessárias Desvantagens Valores em intervalos fixos (impravcável alterar posteriormente) Mini- dimensão pode tornar- se muito grande devido a combinações Pode ser resolvido acrescentando outra mini- dimensão Mini- dimensão desligada da dimensão Ligação entre mini- dimensão e dimensão através da tabela de factos 27

28 Mini- Dimensões 3 Exemplo na dimensão cliente Antes: atributos quentes guardados na dimensão Uma alteração em algum desses atributos cria uma nova linha na dimensão Customer Dimension Customer Key (PK) Customer ID (Natural Key) Customer Name Customer Address Customer Date of Birth Customer Date of 1st Order Age Gender Annual Income Number of Children Marital Status Customer Dimension Customer Key (PK) Customer ID (Natural Key) Customer Name Customer Address Customer Date of Birth Customer Date of 1st Order Customer Demographics Dimension Customer Demographics Key (PK) Customer Age Band Customer Gender Customer Income Band Customer Number of Children Band Customer Marital Status Fact Table Customer Key (FK) Customer Demographics Key (FK) More Foreign Keys Facts Depois: atributos quentes guardados na mini- dimensão Uma alteração pode criar uma nova linha na mini- dimensão, se ainda não exisvr Sempre necessária uma nova linha na tabela de factos Dimensão cliente não cresce devido a alterações nos atributos quentes 28

29 Alguns Conceitos da Modelação Dimensional Tabela de Dimensão Bifurcação Atributos Medidas Dimensões Dimensões Degeneradas Ro le- Playing de Dimensões Chave SubsFtuta Duas Tabelas de Factos Tabelas de Dimensões Fonte: Adventure Works Sample Database 29

30 Bibliografia Ralph Kimball e Margy Ross, The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling, Wiley, 2002 Capítulos 3, 4, 5, 6 Ralph Kimball e Margy Ross, The Kimball Group Reader: Relentlessly Prac@cal Tools for Data Warehousing and Business Intelligence, Wiley, 2010 Secções 1.8, 5.4, 6.2, 9.8, 9.17, 9.18, 9.21, 10.1,

Modelação Dimensional 4

Modelação Dimensional 4 INTEGRAÇÃO E PROCESSAMENTO ANALÍTICO DE INFORMAÇÃO Modelação Dimensional 4 António Manuel Silva Ferreira UNIVERSIDADE DE LISBOA FACULDADE DE CIÊNCIAS DEPARTAMENTO DE INFORMÁTICA [email protected] Sumário

Leia mais

Modelação Dimensional 2

Modelação Dimensional 2 INTEGRAÇÃO E PROCESSAMENTO ANALÍTICO DE INFORMAÇÃO Modelação Dimensional 2 António Manuel Silva Ferreira UNIVERSIDADE DE LISBOA FACULDADE DE CIÊNCIAS DEPARTAMENTO DE INFORMÁTICA [email protected] Sumário

Leia mais

SQL. Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri

SQL. Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri SQL Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Arquitetura de 3 Camadas esquema operações conceitual metáfora do cubo de dados Cube

Leia mais

The Data Warehouse Toolkit

The Data Warehouse Toolkit The Data Warehouse Toolkit Cap. 9 Serviços Financeiros Vinícius Pereira CONTEÚDO Estudo de caso Triagem de dimensões Dimensão Unidade Domiciliar Dimensão Multivalor Minidimensões Revisitadas Associação

Leia mais

Tabelas. Banco de Dados I MySQL

Tabelas. Banco de Dados I MySQL FACULDADE ANGLO AMERICANO FOZ DO IGUAÇU Curso de Ciência da Computação 5º Período Disciplina: Banco de Dados I Prof. Erinaldo Sanches Nascimento Tabelas Banco de Dados I MySQL Linguagem de Definição de

Leia mais

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR

DDL DML DCL DTL Tipos Numéricos: INT FLOAT DOUBLE Tipos String: CHAR VARCHAR BINARY BLOB TEXT Tipos Data e Hora: DATE TIME TIMESTAMP YEAR SQL Structured Query Language, ou Linguagem de Consulta Estruturada, foi desenvolvida pela IBM nos anos 70 para demonstrar a viabilidade do modelo relacional para bancos de dados. No final dos anos 80

Leia mais

PSI Linguagem de Definição de dados. Módulo 15

PSI Linguagem de Definição de dados. Módulo 15 PSI Linguagem de Definição de dados Módulo 15 Objetivos de aprendizagem No final deste módulo os alunos devem ter adquirido conhecimentos, procedimentos e atitudes que lhe permitam: Criação, alteração

Leia mais

Sérgio Luisir Díscola Junior

Sérgio Luisir Díscola Junior Capítulo-3: Estoque Livro: The Data Warehouse Toolkit - Guia completo para modelagem dimensional Autor: Ralph Kimball / Margy Ross Sérgio Luisir Díscola Junior Introdução Cadeia de valores Modelo de DW

Leia mais

Data Warehouse Toolkit: Telecomunicações e Utilitários (Cap. 10)

Data Warehouse Toolkit: Telecomunicações e Utilitários (Cap. 10) Data Warehouse Toolkit: Telecomunicações e Utilitários (Cap. 10) Vinícius Ramos Toledo Ferraz Prof. Dr. Ricardo Rodrigues Ciferri Agenda n Dicas para revisão de projetos n O que está errado neste estudo

Leia mais

SQL Básica DDL. Prof. Marcos A. Schreiner. 21 de outubro de Curso de Licenciatura em Computação

SQL Básica DDL. Prof. Marcos A. Schreiner. 21 de outubro de Curso de Licenciatura em Computação SQL Básica DDL Prof. Marcos A. Schreiner Curso de Licenciatura em Computação 21 de outubro de 2015 Prof. Marcos A. Schreiner (UFPR) 21 de outubro de 2015 1 / 28 1 Introdução 2 SQL DDL CREATE Criar Banco

Leia mais

Laboratório de Banco de Dados. Prof. Luiz Vivacqua.

Laboratório de Banco de Dados. Prof. Luiz Vivacqua. ([email protected]) Ementa Conceitos básicos Sistemas de banco de dados Relacional Visão Geral do PostGreSQL Álgebra Relacional Operadores básicos Operadores adicionais A Linguagem de Consulta Estruturada

Leia mais

MySql. Introdução a MySQL. Andréa Garcia Trindade

MySql. Introdução a MySQL. Andréa Garcia Trindade MySql Introdução a MySQL Andréa Garcia Trindade Introdução O que é Banco de Dados SGBD MYSQL Tipos de Tabelas Tipos de Dados Linguagem SQL Comandos SQL O que é um Banco de Dados? Conjuntos de dados Grupo

Leia mais

Importar e Exportar Dados

Importar e Exportar Dados Importar e Exportar Dados Administração de Base de Dados OBJECTIVOS: Definir comandos e formatos Definir restrições (constraints) DEFINIÇÃO DO ESQUEMA DA BASE DE DADOS O esquema da BD e composto pelas

Leia mais

A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2

A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2 BANCO DE DADOS GERENCIAL 1 A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2 Na aula passada, uma situação muito comum é, ao construirmos uma consulta (select), termos

Leia mais

SQL Básica. Andre Noel

SQL Básica. Andre Noel SQL Básica Andre Noel Introdução A SQL é um dos principais motivos de sucesso dos BDs relacionais comerciais Introdução A SQL é um dos principais motivos de sucesso dos BDs relacionais comerciais Se tornou

Leia mais

Arquitetura de um Ambiente de Data Warehousing

Arquitetura de um Ambiente de Data Warehousing Arquitetura de um Ambiente de Data Warehousing Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Arquitetura Típica usuário usuário... usuário

Leia mais

Tarefa Orientada 17 Scripts

Tarefa Orientada 17 Scripts Tarefa Orientada 17 Scripts Objectivos: Declaração de variáveis escalares Declaração de variáveis do tipo tabela Tabelas temporárias Estruturas Condicionais Estruturas de Repetição Tratamento de erros

Leia mais

Informática II Cap. 5-2 Bases de Dados - MsAccess

Informática II Cap. 5-2 Bases de Dados - MsAccess Cap. 5-2 Bases de Dados - MsAccess Filipe Caldeira - 2001 1 Introdução Porquê a utilização de Sistemas de Bases de Dados (SBD)? Armazenamento dos dados de uma forma consistente ( a informação não deve

Leia mais

Sumário. SQL - Criação de Tabelas. Structured Query Language. SQL Versões. André Restivo. October 18, 2010

Sumário. SQL - Criação de Tabelas. Structured Query Language. SQL Versões. André Restivo. October 18, 2010 Sumário SQL - Criação de Tabelas André Restivo Faculdade de Engenharia da Universidade do Porto October 18, 2010 1 Introdução 2 Tabelas 3 Colunas 4 5 Modificação de Tabelas 6 Domínios André Restivo (FEUP)

Leia mais

Múltiplas Tabelas. Disciplina de Banco de Dados

Múltiplas Tabelas. Disciplina de Banco de Dados Múltiplas Tabelas Uma das grandes características de um sistema de banco de dados relacional é a capacidade de interagir com múltiplas tabelas relacionadas. Precisamos lembrar que para relacionar tabelas

Leia mais

Modelo Relacional. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012

Modelo Relacional. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012 Modelo Relacional André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) Modelo Relacional February 24, 2012 1 / 19 Sumário 1 Modelo Relacional 2 Operações

Leia mais

Banco de Dados. Linguagem SQL

Banco de Dados. Linguagem SQL Banco de Dados Linguagem SQL 1 A linguagem SQL: história Em junho de 1970, o matemático Edgar Frank Codd, publicou o artigo "A Relational Model of Data for Large Shared Data Banks" na revista "Communications

Leia mais

Prof. Dr. Joaquim Assunção Banco de Dados. SQL (parte 4) DDL Restrições

Prof. Dr. Joaquim Assunção Banco de Dados. SQL (parte 4) DDL Restrições Prof. Dr. Joaquim Assunção. 2017 Banco de Dados SQL (parte 4) DDL Restrições Restrições SQL são usadas para especificar regras para dados em uma tabela. CREATE TABLE nome_da_tabela ( coluna1 tipo_de_dado

Leia mais

Rápida revisão do Modelo Relacional

Rápida revisão do Modelo Relacional Rápida revisão do Modelo Relacional Conceito de relação Tuplas e atributos Rápida revisão do Modelo Relacional Regras de integridade Entidade: Deve existir uma chave primária com valor único e não-nulo.

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL Docente: Éberton da Silva Marinho e-mail: [email protected] 02/06/2016 SUMÁRIO SQL DDL DML SQL (STRUCTURED

Leia mais

'%'! $!0" $ 8 ' %%! % '! $ $$% + ' %!%$/)!'4!+,"/)!)+,/)% *! +,"0''% * %$!*!$$ #!"%&%'%'%$! "94(# ' %'$%$$$%0%$%' *!% %%%'!**% > %% %%!31?

'%'! $!0 $ 8 ' %%! % '! $ $$% + ' %!%$/)!'4!+,/)!)+,/)% *! +,0''% * %$!*!$$ #!%&%'%'%$! 94(# ' %'$%$$$%0%$%' *!% %%%'!**% > %% %%!31? MODELAGEM FÍSICA Capítulo 3! " # $ $!%%%& '$! $% $$%"%' ) ' *'!%'!$ $ $ $% +, %#!!" '$*'#%! $ $$%" % '$%!!% $% * % $ *-! %$% $!* '% $!$$.!'% & $%!% $ $ ' %/!$ 0 $*' $% *0 )#%!$0% 1&$$$%+#!*22,"$% )'%$$%%&

Leia mais

Trabalhando com banco de dados

Trabalhando com banco de dados Trabalhando com banco de dados Como acessar um banco de dados no PDI Criando uma conexão para uma transformação Trabalhando com banco de dados Como acessar um banco de dados no PDI Criando uma conexão

Leia mais

MODELO DE BANCO DE DADOS RELACIONAL

MODELO DE BANCO DE DADOS RELACIONAL UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ CIÊNCIA DA COMPUTAÇÃO BANCO DE DADOS I MODELO DE BANCO DE DADOS RELACIONAL Profº Erinaldo Sanches Nascimento Objetivos Descrever os princípios básicos

Leia mais

Introdução à teoria de Data Warehouse. Prof. Rodrigo Leite Durães

Introdução à teoria de Data Warehouse. Prof. Rodrigo Leite Durães Introdução à teoria de Data Warehouse Prof. Rodrigo Leite Durães [email protected] Organizações: necessidade de INFORMAÇÃO para tomada de decisões Exemplos: FACULDADE - abertura de mais vagas para

Leia mais

BANCO DE DADOS. Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE <nome_banco_de_dados>

BANCO DE DADOS. Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE <nome_banco_de_dados> BANCO DE DADOS 1. Scripts de criação de banco de dados Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE Onde:

Leia mais

Tarefa Orientada 8 Criação de tabelas

Tarefa Orientada 8 Criação de tabelas Tarefa Orientada 8 Criação de tabelas Objectivos: Iniciar o MS SQL Server Manegement Studio Criar tabelas Especificar tipos de dados Definir restrições Alterar as definições de uma tabela Eliminar uma

Leia mais

Índices. SCE-203 Algoritmos e Estruturas de Dados II

Índices. SCE-203 Algoritmos e Estruturas de Dados II Índices SCE-203 Algoritmos e Estruturas de Dados II Índice Em geral, um índice fornece mecanismos para localizar informações Índice de um livro ou catálogo de uma biblioteca Facilitam muito o trabalho

Leia mais

Normalização de dados

Normalização de dados 1 Normalização de dados Vantagens da normalização A normalização permite: Agrupar os atributos de uma entidade de forma a reduzir o número de dependências funcionais existentes entre os dados numa base

Leia mais

Procedimentos Automáticos de Auditoria às Transações do SAF-T. Novembro 2014

Procedimentos Automáticos de Auditoria às Transações do SAF-T. Novembro 2014 Procedimentos Automáticos de Auditoria às Transações do SAF-T Novembro 2014 Indice Introdução Desenvolvimento Necessidades Parceria BDO / Petapilot O que é o Funcionamento Testes automáticos Alguns exemplos

Leia mais

SQL (Tópicos) Structured Query Language

SQL (Tópicos) Structured Query Language SQL (Tópicos) Structured Query Language ISI Introdução aos Sistemas de Informação SQL (Tópicos) 1 SQL: componentes SQL / DDL (Data Definition Language) Permite definir os Esquemas de Relação Permite definir

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Modelo ER & Modelo Relacional Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José [email protected] http://docente.ifsc.edu.br/mello/bcd 18 de

Leia mais

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL.

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL. LINGUAGEM SQL SQL CREATE DATABASE MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL. SQL CREATE TABLE SQL NOT NULL O valor NOT NULL obriga que o campo contenha sempre

Leia mais

Motivação. Pouco conhecimento. Muitos dados e informações. Problemas para tomada de decisão

Motivação. Pouco conhecimento. Muitos dados e informações. Problemas para tomada de decisão Motivação Problemas para tomada de decisão Muitos dados e informações Pouco conhecimento Motivação Uso amigável Sistemas computacionais que integram dados oriundos de diversas fontes Grande poder analítico

Leia mais

Modelos de Dados Temporais

Modelos de Dados Temporais CMP 151 Modelos de Dados Temporais Roteiro! Conceitos de representação temporal! Modelos de dados temporais! Linguagens de consulta temporais " Bancos de dados temporais " Implementação de BDs temporais

Leia mais

Gestão de Base de dados Conceitos Básicos

Gestão de Base de dados Conceitos Básicos Gestão de Base de dados Conceitos Básicos Ano Letivo 2014/2015 Professora: Vanda Pereira Sumário: Introdução ao módulo 2 Gestão de Base de Dados Conceitos básicos de Gestão de Base de Dados Atividade nº1

Leia mais

A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S

A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S BANCO DE DADOS GERENCIAL 1 A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S Funções Agregadas São funções aquelas que tomam uma coleção (um conjunto ou subconjunto) de valores como entrada,

Leia mais

A linguagem SQL

A linguagem SQL SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão

Leia mais

PROGRAMA. 3.SQL Básico. 3.1 Criação de tabelas 3.2 Queries simples 3.3 Subqueries 3.4 Agregação. Prof. Dr. Marcos Tsuzuki

PROGRAMA. 3.SQL Básico. 3.1 Criação de tabelas 3.2 Queries simples 3.3 Subqueries 3.4 Agregação. Prof. Dr. Marcos Tsuzuki PROGRAMA 3.SQL Básico 3.1 Criação de tabelas 3.2 Queries simples 3.3 Subqueries 3.4 Agregação 1 3.SQL Básico A linguagem SQL foi desenvolvida para o ambiente relacional, podendo ser adaptada a ambientes

Leia mais

Sistemas de Suporte à Decisão. Suporte à Decisão X Operacional. Banco de Dados Avançado. Data Warehouse. Data Warehouse & Data Mart

Sistemas de Suporte à Decisão. Suporte à Decisão X Operacional. Banco de Dados Avançado. Data Warehouse. Data Warehouse & Data Mart Sistemas de Suporte à Decisão Sistemas de Suporte a Decisão (SSD) Permitem armazenar e analisar grandes volumes de dados para extrair informações que auxiliam a compreensão do comportamento dos dados Armazenar

Leia mais

Banco de Dados I Introdução SQL

Banco de Dados I Introdução SQL Banco de Dados I Introdução SQL Frederico Queiroga [email protected] https://sites.google.com/site/fredericoqueiroga/ Linguagem SQL Aspectos Gerais: Independência do fabricante: Está incorporada

Leia mais

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO Disciplina: Banco de Dados I Professor: Prof. Me. Everton

Leia mais

Sistemas de Bases de Dados Relacionais Introdução ao SQL. Interrogações diversas sobre a Base de Dados Northwind - Parte II

Sistemas de Bases de Dados Relacionais Introdução ao SQL. Interrogações diversas sobre a Base de Dados Northwind - Parte II SQL (02) Sistemas de Bases de Dados Relacionais Introdução ao SQL Interrogações diversas sobre a Base de Dados Northwind - Parte II /* Introdução ao SQL - Parte II =========================== Folha de

Leia mais

Boas Práticas. Apresentação de Pedidos de Pagamento Checklist de avaliação

Boas Práticas. Apresentação de Pedidos de Pagamento Checklist de avaliação Boas Práticas Apresentação de Pedidos de Pagamento Checklist de avaliação O pedido de pagamento só deve ser submetido quando estão reunidas as condições necessárias para, após a submissão, juntar a documentação

Leia mais

MATA60 BANCO DE DADOS Aula 10- Indexação. Prof. Daniela Barreiro Claro

MATA60 BANCO DE DADOS Aula 10- Indexação. Prof. Daniela Barreiro Claro MATA60 BANCO DE DADOS Aula 10- Indexação Prof. Daniela Barreiro Claro Indexação Indexação em SQL; Vantagens e Custo dos Índices; Indexação no PostgreSQL; FORMAS - UFBA 2 de X; X=23 Indexação Sintaxe: create

Leia mais

Disciplina: Banco de Dados Tema: SQL Parte 2

Disciplina: Banco de Dados Tema: SQL Parte 2 Disciplina: Banco de Dados Tema: SQL Parte 2 PROFESSOR: DANILO MONTEIRO EMAIL: [email protected] O que foi visto na aula passada? create database Drop database Create table Drop table [email protected]

Leia mais

ACH2025. Aula 11. Visões. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO

ACH2025. Aula 11. Visões. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO ACH2025 Laboratório de Bases de Dados Aula 11 Visões Professora: Fátima L. S. Nunes Introdução Nos exemplos mostrados nas aulas anteriores, consideramos o modelo lógico relações usadas são aquelas reais,

Leia mais

LINGUAGEM SQL Linguagem usada em SGBD para: Definir estrutura de dados; Modificar dados em um banco de dados; Especificar restrições de segurança; Rea

LINGUAGEM SQL Linguagem usada em SGBD para: Definir estrutura de dados; Modificar dados em um banco de dados; Especificar restrições de segurança; Rea BANCO DE DADOS Prof. Fabiano Taguchi http://fabianotaguchi.wordpress.com [email protected] SQL A Structed Query Language foi desenvolvida em 1974 nos laboratório da IBM em San José na Califórnia,

Leia mais

Definição do esquema da base de dados. o esquema da BD é composto pelas definições de todas as tabelas da BD.

Definição do esquema da base de dados. o esquema da BD é composto pelas definições de todas as tabelas da BD. Definição do esquema da base de dados o esquema da BD é composto pelas definições de todas as tabelas da BD. existem outros elementos (views, índices, triggers) que também fazem parte do esquema e que

Leia mais

Modelo Relacional + SQL (DDL) Material elaborado pela Prof. Karin Becker

Modelo Relacional + SQL (DDL) Material elaborado pela Prof. Karin Becker Modelo Relacional + SQL (DDL) Material elaborado pela Prof. Karin Becker Modelo Relacional Codd, E.F A relational model of data for large shared data banks. Communications of the ACM, 13(6):377-87, June

Leia mais

modelo introduzido por E. F. Codd Meados da década de 70: protótipos. INGRES (UC Berkeley, 73 77) System R (IBM Research at San Jose, 74 78)

modelo introduzido por E. F. Codd Meados da década de 70: protótipos. INGRES (UC Berkeley, 73 77) System R (IBM Research at San Jose, 74 78) 1 1970 - modelo introduzido por E. F. Codd Meados da década de 70: protótipos INGRES (UC Berkeley, 73 77) System R (IBM Research at San Jose, 74 78) 1979: primeiro produto SQL (Oracle) Meados da década

Leia mais

Utilizando o Postgres - comandos SQL para a manipulação de dados

Utilizando o Postgres - comandos SQL para a manipulação de dados Utilizando o Postgres - comandos SQL para a manipulação de dados SELECT A declaração SELECT é utilizada para selecionar os dados de um banco de dados. SELECT nome FROM clientes WHERE A cláusula WHERE é

Leia mais

3º Trabalho de Laboratório Objectivo Geral: Largura de banda de impulsos; Espectros de sinais básicos; Propriedades da transformada de Fourier.

3º Trabalho de Laboratório Objectivo Geral: Largura de banda de impulsos; Espectros de sinais básicos; Propriedades da transformada de Fourier. Departamento de Engenharia Electrotécnica Secção de Telecomunicações Mestrado integrado em Engenharia Electrotécnica e de Computadores Licenciatura em Engenharia Informática Grupo: nº e 3º Trabalho de

Leia mais

Bases de Dados. Apresentação da disciplina. Programa

Bases de Dados. Apresentação da disciplina. Programa Bases de Dados Apresentação da disciplina Programa Modelação modelo Entidade Associação modelo e álgebra relacionais Implementação SQL básico e avançado desenvolvimento de aplicações normalização Optimização

Leia mais

Bancos de Dados IV. OLAP e Cubos de Dados. Rogério Costa

Bancos de Dados IV. OLAP e Cubos de Dados. Rogério Costa Bancos de Dados IV OLAP e Cubos de Dados Rogério Costa [email protected] 1 OLAP Online Analytical Processing (OLAP) Análise interativa de dados, permitindo que dados sejam sumarizados e vistos de

Leia mais

Conceitos Básicos. Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri

Conceitos Básicos. Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Conceitos Básicos Processamento Analítico de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Prof. Dr. Ricardo Rodrigues Ciferri Data Warehousing Engloba arquiteturas, algoritmos e ferramentas que possibilitam

Leia mais

Curso Profissional de Técnico de Multimédia 11ºAno. Disciplina: Sistemas de Informação

Curso Profissional de Técnico de Multimédia 11ºAno. Disciplina: Sistemas de Informação Curso Profissional de Técnico de Multimédia 11ºAno Disciplina: Sistemas de Informação Módulo 5: Desenvolvimento de Bases de Dados 5.1. Modelo Relacional de Bases de Dados 5.1.1 Bases de dados e tabelas

Leia mais

A linguagem SQL

A linguagem SQL SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão recebeu o nome de

Leia mais

STRBY Sistema de Gerenciamento de Lojas de Roupas

STRBY Sistema de Gerenciamento de Lojas de Roupas Curso Técnico Integrado de Informática 3 Ano Projeto Integrador Formação Profissional STRBY Sistema de Gerenciamento de Lojas de Roupas Isabelle Cardoso 1556014X Dezembro de 2017 1. Introdução 1.1 Escopo

Leia mais

PostgreSQL Desenvolvedor

PostgreSQL Desenvolvedor CONTEÚDO PROGRAMÁTICO PostgreSQL Desenvolvedor Carga horária: 32 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO Ementa do

Leia mais