Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aula 00 Análise de Informações p/ TCU-2015 - Auditor Professor: Victor Dalton 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 1 de 24 AULA 00: Bancos de dados – 1ª Parte SUMÁRIO PÁGINA Motivação para o curso 1 Cronograma 3 Apresentação 4 1.Bancos de Dados: Conceitos Básicos 5 1.1 Definições 5 1.2 SGBD 9 1.3 Características de um banco de dados 11 1.4 Vantagens da abordagem SGBD 14 1.5 Desvantagens da abordagem SGBD 14 1.6 Arquitetura três esquemas de um SGBD 15 1.7 Categorias de modelos de dados 17 1.8 Tipos de modelos de dados 20 Considerações Finais 24 Olá a todos! E sejam bem-vindos ao projeto Análise de Informações para o cargo de Auditor Federal de Controle Externo (AG e TI) do Tribunal de Contas da União! Esta matéria surgiu como uma verdadeira “surpresa” na parte de conhecimentos gerais, para ambos os cargos de Auditor, Auditoria Governamental e Tecnologia da Informação. Afinal, Análise de Informações não é uma matéria “formal”, com livros, didática e bibliografia consolidada. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 2 de 24 Mas nós, é claro, conhecemos o conteúdo, que é oriundo de tópicos “esparsos” de TI. E nós vamos transmiti-lo a você, para que faça uma excelente prova. Vem comigo? Pois bem, e como serão distribuídas as nossas aulas? Observação importante: este curso é protegido por direitos autorais (copyright), nos termos da Lei 9.610/98, que altera, atualiza e consolida a legislação sobre direitos autorais e dá outras providências. Grupos de rateio e pirataria são clandestinos, violam a lei e prejudicam os professores que elaboram os cursos. Valorize o trabalho de nossa equipe adquirindo os cursos honestamente através do site Estratégia Concursos ;-) Observação importante II: todo o conteúdo deste curso encontra-se completo em nossos textos escritos. As videoaulas visam reforçar o aprendizado, especialmente para aqueles que possuem maior facilidade de aprendizado com vídeos e/ou querem ter mais uma opção para o aprendizado. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 3 de 24 Aula 00 1 Dado, informação, conhecimento e inteligência. Dados estruturados e não estruturados. Dados abertos. Coleta, tratamento, armazenamento, integração e recuperação de dados. 2 Banco de dados relacionais: conceitos básicos e características. Metadados. Tabelas, visões (views) e índices. Chaves e relacionamentos. (1ª parte) Aula 01 1 Dado, informação, conhecimento e inteligência. Dados estruturados e não estruturados. Dados abertos. Coleta, tratamento, armazenamento, integração e recuperação de dados. 2 Banco de dados relacionais: conceitos básicos e características. Metadados. Tabelas, visões (views) e índices. Chaves e relacionamentos. (2ª Parte) Aula 02 3 Noções de modelagem dimensional: conceito e aplicações. 4 Noções de mineração de dados: conceituação e características. Modelo de referência CRISP-DM. Técnicas para pré-processamento de dados. Técnicas e tarefas de mineração de dados. Classificação. Regras de associação. Análise de agrupamentos (clusterização). Detecção de anomalias. Modelagem preditiva. Aprendizado de máquina. Mineração de texto. Aula 03 5 Noções de Big Data: conceito, premissas e aplicação. 6 Visualização e análise exploratória de dados. Aula 04 8 Lei de Acesso a Informação (Lei nº 12.527/2011): conceitos e aplicação. Aula 05 7 Noções de sistemas de informação da Administração Pública Federal: SIAFI, SIASG e SICONV. Finalidade. Principais informações. Ilustrado o cronograma, permitam-me que eu me apresente. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 4 de 24 APRESENTAÇÃO Eu sou Victor Dalton Teles Jesus Barbosa. Minha experiência em concursos começou aos 15 anos, quando consegui ingressar na Escola Preparatória de Cadetes do Exército, em 1999. Cursei a Academia Militar das Agulhas Negras, me tornando Bacharel em Ciências Militares, 1º Colocado em Comunicações, da turma de 2003. Em 2005, prestei novamente concurso para o Instituto Militar de Engenharia, aprovando em 3º lugar. No final de 2009, me formei em Engenharia da Computação, sendo o 2º lugar da turma no Curso de Graduação. Decidi então mudar de ares. Em 2010, prestei concursos para Analista do Banco Central (Área 1 – Tecnologia da Informação) e Analista de Planejamento e Orçamento (Especialização em TI), cujas bancas foram a CESGRANRIO e a ESAF, respectivamente. Fui aprovado em ambos os concursos e, após uma passagem pelo Ministério do Planejamento, optei pelo Banco Central do Brasil. Em 2012, por sua vez, prestei concurso para o cargo de Analista Legislativo da Câmara dos Deputados, aplicado pela banca CESPE, e, desde o início de 2013, faço parte do Legislativo Federal brasileiro. Além disso, possuo as certificações ITIL Foundation, emitida pela EXIN, e Cobit Foundation, emitida pela ISACA. Aqui no Estratégia Concursos, já ministrei e ministro cursos para vários certames, como CGU, Receita Federal, ICMS/PR, ICMS/SP, ISS/SP, ICMS/RJ, ICMS/MS, ICMS/RS, ICMS/PI, Banco Central, MPU, IBAMA, ANS, Ministério da Saúde, Polícia Federal, MPOG, PCDF, PRF, TCE-RS, AFT, ANCINE, TCDF, ANATEL, CNMP, Câmara dos Deputados, Caixa Econômica Federal, cursos para Tribunais, dentre outros. Além disso, também ministro aulas presenciais em diversos Estados, cujo feedback dos alunos tem me impulsionado a continuar cada vez mais a ministrar aulas. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 5 de 24 BANCOS DE DADOS 1. BANCOS DE DADOS: CONCEITOS BÁSICOS 1.1 Definições Para iniciar nosso estudo, que envolverá a compreensão sobre bancos de dados, nada melhor do que começar por um tópico explícito do edital, destacando a diferença entre dado, informação, conhecimento e inteligência. Um dado é uma seqüência de símbolos quantificados ou quantificáveis. Quantificável significa que algo pode ser quantificado e depois reproduzido sem que se perceba a diferença para com o original. Portanto, um texto é um dado. De fato, as letras são símbolos quantificados, assim como os números. Também são dados fotos, figuras, sons gravados e animação, pois todos podem ser quantificados ao serem introduzidos em um computador, a ponto de se ter eventualmente dificuldade de distinguir a sua reprodução com o original. É muito importante notar-se que, mesmo se incompreensível para o leitor, qualquer texto constitui um dado ou uma sequência de dados. Descrevem um acontecimento, um fato, sem fornecer julgamento nem interpretação. Uma informação é uma abstração informal (isto é, não pode ser formalizada através de uma teoria lógica ou matemática), que está na mente de alguém, representando algo significativo para essa pessoa. Porexemplo, a frase "Paulo tem 23 anos" é um exemplo de informação – desde que seja lida ou ouvida por alguém, desde que "Paulo" signifique para essa pessoa um nome (ou alguém conhecido) e "23 anos" tenha a compreensão devida, englobando o conceito de idade. Se a representação da informação for feita por meio de dados, como na frase sobre Paulo, pode ser armazenada em um computador. Mas, cuidado, o que é armazenado na máquina não é a informação, mas a sua representação em forma de dados. Assim, não é possível processar informação diretamente em um computador. Para isso é necessário reduzi-la a dados. No exemplo, "23 anos" teria que ser quantificado, 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 6 de 24 usando-se por exemplo uma escala numérica, e associando a idade a algum tipo de atributo. Para um receptor humano, essa informação teria sido reduzida a um dado, que ele poderia interpretar como informação. Uma distinção fundamental entre dado e informação é que o primeiro é puramente sintático e a segunda contém necessariamente semântica. É interessante notar que é impossível introduzir e processar semântica em um computador, porque a máquina mesma é puramente sintática (assim como a totalidade da matemática). Portanto, a informação requer um componente humano no processo. Conhecimento, por sua vez, envolve habilidade adquirida por uma pessoa por experiência ou educação. O conhecimento por prática ou teoria. Conhecimento de um assunto, com a habilidade de usá-lo para um propósito. Por exemplo, ao analisar “Paulo em 23 anos”, o conhecimento de um idoso pode interpretar que Paulo é jovem, e tem pouca experiência de vida. Por outro lado, um adolescente pode entender que Paulo é adulto, vivido, e tem muitas dicas para passar. Portanto, o conhecimento depende (e muito) de quem o possui. O conhecimento, por fim, pode levar à tomada de decisões. “Preciso orientar Paulo”, ou “Preciso aprender com Paulo”, ou “Ainda é cedo para promover Paulo” (decisões de negócio), etc. Quando o conhecimento é aproveitado, alcançamos a inteligência, que se encontra no topo dessa hierarquia. Veremos mais sobre produção de conhecimento e inteligência em Business Intelligence (Inteligência de Negócio). Entendidos esses aspectos, podemos responder o que é Banco de Dados. Acredito que você já tenha uma “desconfiança” do que seja um banco de dados. Entretanto, a definição correta de banco de dados gira em torno de duas ideias chave: relacionamento e finalidade. Um banco de dados é um conjunto de dados relacionados com uma finalidade específica. Esta finalidade pode a produção de informação, para determinado público alvo (uma empresa, ou um órgão público, por exemplo), bem como suportar um negócio (como o estoque de produtos de um fornecedor, ou um cadastro de funcionários, ou tudo isso junto). 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 7 de 24 Um banco de dados tem alguma fonte da qual o dado é derivado, algum grau de interação com eventos no mundo real e um público interessado no seu conteúdo. Para que um banco de dados seja preciso e confiável o tempo todo, as mudanças no minimundo (mundo real) precisam ser refletidas nele o mais breve possível. Um banco de dados pode ter qualquer tamanho e complexidade. As informações precisam ser organizadas e gerenciadas de modo que os usuários possam consultar, recuperar e atualizar os dados quando necessário. Um banco de dados pode ser gerado e mantido manualmente ou computadorizado. Um banco de dados computadorizado pode ser criado e mantido por um grupo de programas de aplicação específicos para essa tarefa ou por um sistema gerenciador de banco de dados. Eu costumo brincar, e acho que isso ajuda a memorizar, que não se deve confundir Banco de Dados com “Bando de Dados”. Dados desorganizados não servem para nada; um conjunto dados que se relacionam, com alguma finalidade, esses sim compõem um Banco de Dados. Bancos de dados, normalmente, são a “base” de um sistema, ou software. Um sistema de venda de produtos online, por exemplo, provavelmente possui em seu banco de dados uma vasta quantidade de registros de clientes e produtos. Esses dados provavelmente relacionam- se através dos pedidos, que devem conter dados dos clientes e dos produtos. Os pedidos também serão dados. Começou a visualizar? 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 8 de 24 CラミゲWェ┌W キマ;ェキミ;ヴ ケ┌Wが ヮラヴ さデヴ=ゲざ SWゲゲW ゲキゲデWマ;が W┝キゲデW ┌マ B;ミIラ SW D;Sラゲい Nossa próxima definição importante é a de Esquema de Banco de Dados. Um esquema do banco de dados é uma coleção de objetos de um banco de dados que estão disponíveis para um determinado usuário ou grupo. Os objetos de um esquema são estruturas lógicas que se referem diretamente aos dados do banco de dados. Eles incluem estruturas, tais como tabelas, visões, seqüências, procedimentos armazenados, sinônimos, índices, agrupamentos e links de banco de dados. Falaremos mais sobre esses elementos ao longo da apostila, fique tranquilo. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 9 de 24 Ou seja, ao se elaborar um sistema, seu projeto de banco de dados é idealizado em um esquema (como a figura acima). Falei, pouco antes, que os softwares normalmente estão “em cima” de um Banco de Dados. O esquema é essa ferramenta utilizada para a representação do banco como um todo, podendo servir tanto para facilitar o entendimento do Banco de Dados como para implementar o próprio Banco de Dados. Com base no esquema acima, por exemplo, um Administrador de Dados já consegue criar o Banco. Visualize a imagem acima, veja as tabelas e os relacionamentos, e não se incomode se estiver entendendo pouco ou quase nada. Iremos ver e rever essa imagem, explicando os detalhes dela aos poucos. Tudo bem? 1.2 SGBD Imagine agora um sistema de uma grande vendedora de produtos online, ou mesmo o sistema de vendas de uma grande companhia aérea. Essas empresas vendem produtos e serviços por segundo, para usuários distribuídos geograficamente pelo mundo inteiro. Deste simples exemplo, percebe-se que Bancos de Dados precisam de gerenciamento próprio, e eficiente, para coordenar um volume gigantesco de operações simultâneas. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 10 de 24 Para tal, existem os Sistemas Gerenciadores de Bancos de Dados. O SGBD é o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de uma (ou mais) base de dados. Seu principal objetivo é retirar da aplicação cliente (o sistema da empresa propriamente dito) a responsabilidade de gerenciar o acesso, a manipulação e a organização dos dados. O SGBD disponibiliza uma interface para que seus clientes possam incluir, alterar ou consultar dados previamente armazenados. Em bancos de dados relacionais a interface é constituídapelas APIs (Application Programming Interface) ou drivers do SGBD, que executam comandos na linguagem SQL (Structured Query Language). Certamente você já ouviu falar de alguns SGBDs, como o Oracle, o IBM DB2, o Microsoft SQL Server, MySQL, ou até mesmo o PostgreSQL, que é gratuito. Sistemas Gerenciadores de Bancos de Dados: softwares comerciais. Os SGBDs facilitam o processo de definição, construção, manipulação e compartilhamento de bancos de dados entre diversos usuários e aplicações. { Definir um banco de dados envolve especificar os tipos, estruturas e restrições dos dados a serem armazenados. { Construir um banco de dados é o processo de armazenar os dados em algum meio controlado pelo SGBD. { Manipular um banco de dados inclui funções no banco de dados como consultas para recuperar dados específicos, atualização que reflita mudanças no minimundo e geração de relatórios com base nos dados. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 11 de 24 { Compartilhar banco de dados é permitir que diversos usuários e programas acessem-no simultaneamente. Outras funções importantes fornecidas pelo SGBD incluem proteção e manutenção do banco de dados por um longo período. A proteção pode ser contra defeitos (falhas) de hardware e software ou contra acesso não autorizado ou malicioso (segurança). A manutenção permite a evolução do sistema de banco de dados ao longo do ciclo de vida, à medida que os requisitos mudem com o tempo. Sistema de Banco de Dados: ilustração 1.3 Características de um banco de dados Na abordagem de banco de dados, um único repositório mantém dados que são definidos uma vez e depois acessados por vários usuários. Os nomes ou rótulos de dados são definidos uma vez, e usados repetidamente por consultas, transações e aplicações. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 12 de 24 Natureza de Autodescrição de um Sistema de Banco de Dados Na abordagem de banco de dados, seu sistema contém não apenas o banco de dados, mas também uma definição ou descrição completa de sua estrutura e restrições. Essa definição é armazenada no catálogo do SGBD (falaremos mais sobre ele adiante). A informação armazenada no catálogo é chamada metadados (também será melhor explicado posteriormente). O catálogo é usado pelo software de SGBD e também pelos usuários do banco de dados que precisam de informações sobre a estrutura do banco de dados (tipo e o formato dos dados). O software SGBD precisa trabalhar de forma satisfatória com qualquer quantidade de aplicações de banco de dados. Isolamento Entre Programas e Dados, e Abstração de Dados Na maioria dos casos, qualquer mudança na estrutura de dados do SGBD não exige mudanças nos programas que acessam o banco de dados. A estrutura dos arquivos de dados é armazenada no catálogo do SGBD separadamente dos programas de acesso. Essa propriedade é chamada de independência programa-dados. Em alguns tipos de sistemas de banco de dados os usuários podem definir operações (funções ou métodos) sobre como os dados como parte das definições de banco de dados. A interface de uma operação inclui o nome da operação e os tipos de dados de seus argumentos (parâmetros). A implementação (método) da operação é especificada separadamente e pode ser alterada sem afetar a interface. Isso é chamado de independência programa-operação. A independência programa-dados e a independência programa- operação só são possíveis em virtude de uma característica do SGBD, que é a abstração de dados. Um SGBD oferece aos usuários uma representação conceitual de dados, que não inclui muitos detalhes de como os dados são armazenados ou como as operações são implementadas. Um modelo de dados é um 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 13 de 24 tipo de abstração de dados usado para oferecer essa representação conceitual. Na abordagem de banco de dados, a estrutura detalhada e a organização de cada arquivo são armazenadas no catálogo. Os usuários do banco de dados e os programas de aplicação se referem à representação conceitual dos arquivos, e o SGBD extrai os detalhes do armazenamento do arquivo do catálogo quando estes são necessários para os módulos de acesso a arquivo do SGBD. Suporte para Múltiplas Visões dos Dados Cada usuário do banco de dados pode exigir um ponto de vista ou visão (view) diferente do banco de dados. Uma visão pode ser um subconjunto do banco de dados ou conter dado virtual que é derivado dos arquivos de banco de dados, mas não estão armazenados explicitamente. Um SGBD multiusuário precisa oferecer facilidades para definir múltiplas visões. Compartilhamento de Dados e Processamento de Transação Multiusuário Um SGBD multiusuário precisa permitir que múltiplos usuários acessem o banco de dados ao mesmo tempo. O SGBD precisa incluir um software de controle de concorrência para garantir que vários usuários tentando atualizar o mesmo dados faça isso de uma maneira controlada, de modo que o resultado dessas atualizações seja correto. Esses tipos de aplicações são chamados OLTP (On-Line Transaction Processing, processamento de transações on-line). Por exemplo, se vários agentes de viagem tentam reservar um assento em um voo de uma companhia aérea. O SGBD precisa garantir que cada assento só possa ser acessado por um agente de cada vez para que seja atribuído a um único passageiro. Um papel do software SGBD multiusuário é garantir que as transações concorrentes operem de maneira correta e eficiente. Uma transação é um programa em execução ou processo que inclui um ou mais acessos ao banco de dados, como a leitura ou atualização de 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 14 de 24 seus registros. Uma transação executa um acesso logicamente correto a um banco de dados quando ele é executada de forma completa e sem interferência de outras operações. Também falaremos adiante sobre Gerenciamento de Transações. 1.4 Vantagens da abordagem SGBD Via de regra, os SGBDs são ferramentas caríssimas, da ordem de milhares de dólares. Algumas de suas vantagens são: Controle de redundância: quando os Bancos de Dados precisam ser replicados em mais de um lugar, o SGBD evita a inconsistência das diferentes bases de dados; Restrição a acesso não autorizado: em Bancos de Dados com diferentes níveis de permissão de acesso, o SGBD realiza o controle dos diversos níveis de permissão; Backup e restauração: o Sistema de Banco de Dados deve ser tolerante a falhas, ou seja, o SGBD deve ser capaz de voltar a um estado anterior à falha, a despeito de falhas de hardware ou software; Forçar as restrições de integridade: os relacionamentos entre dos dados são implementados por meio de restrições de integridade. Será visto mais adiante. 1.5 Desvantagens da abordagem SGBD Instalar e manter Sistemas de Bancos de Dados carregam consigo alguns ônus intrínsecos. São eles: Custos: além do preço elevado das ferramentas de SGBD, manter um Sistema de Bancode Dados implica em hardware, software e pessoal especializados; 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 15 de 24 Gerenciamento Complexo: o Sistema necessita interfacear com diferentes tecnologias, afetando os recursos e cultura da empresa; Dependência do fornecedor: o investimento inicial alto tende a “prender” o cliente. Modificar um SGBD é oneroso e complexo; Manutenção e atualização: como todo software, o SGBD deve ser mantido atualizado. Além disso, periodicamente surgem novas versões, com mais funcionalidades, “exigindo” substituições periódicas, com novos custos de hardware, software e treinamento de pessoal. 1.6 Arquitetura três esquemas de um SGBD A arquitetura três esquemas é uma abordagem, que ilustra a separação entre usuário e aplicação. Nesta arquitetura, os esquemas podem ser descritos em três níveis: Arquitetura três esquemas, Elmasri e Navathe (2006) Nível externo (ou nível de visão): abrange os esquemas externos, ou visões de usuário. Cada esquema descreverá apenas a visão pertinente de cada usuário a respeito do Banco de Dados, ocultando o 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 16 de 24 restante. Por exemplo, para um aluno, de um sistema de aulas online, somente determinada parte do BD lhe é relevante, provavelmente relacionada aos cursos que realiza. Para um administrador financeiro desse sistemas, por sua vez, aspectos administrativos serão mais relevantes, relacionados aos pagamentos dos cursos e de pessoal. Nível conceitual: possui um esquema conceitual, que descreve o banco de dados como um todo. Oculta detalhes do armazenamento físico, enfatizando entidades, tipos de dados e restrições. Nível interno: apresenta um esquema interno, descrevendo a estrutura de armazenamento físicos do banco de dados. (CESPE – MEC – Atividade Técnica de Complexidade Intelectual – Administrador de Dados - 2011) 1. O nível físico descreve quais dados estão armazenados no banco de dados e quais os inter-relacionamentos entre eles. Assim, o banco de dados como um todo é descrito em termos de um número relativamente pequeno de estruturas simples, conhecidas como tabelas. Errado! Essa é uma característica do nível conceitual! 2. O nível de visão é o nível mais baixo de abstração e descreve completamente o banco de dados. Errado! O nível de visão, ou nível externo, é o mais alto nível de abstração, e mostra apenas um subconjunto do banco de dados, de acordo com o usuário que o visualiza. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 17 de 24 1.6.1 Independência lógica e independência física dos dados Dois conceitos relacionados à arquitetura três esquemas que, não raro, aparecem em questões de concursos são a independência lógica e a independência física dos dados. Independência lógica é a capacidade de alterar o esquema conceitual sem precisar modificar os esquemas externos. Independência física é a capacidade de alterar o esquema interno sem precisar modificar o esquema conceitual. Esses esquemas e seus respectivos mapeamentos são guardados no catálogo do banco de dados. Ele será visto na próxima aula. 1.7 Categorias de modelos de dados Projetar um banco de dados, como você provavelmente deve imaginar, é uma atividade que requer planejamento e organização. Didaticamente, pode-se dividir esta tarefa em etapas. A primeira fase do projeto do banco é o levantamento e análise de requisitos, que na prática, é a especificação das necessidades do usuário do banco. Entrevista-se o usuário do banco para entendimento e documentação dos seus requisitos de dados. A segunda fase é o projeto conceitual, em que já se criam descrições detalhadas de tipos de entidades, relacionamentos, atributos e restrições. A modelagem conceitual empregada baseia-se no mais alto nível e deve ser usada para envolver o cliente. Os exemplos de modelagem de dados visto pelo modelo conceitual são mais fáceis de compreender, já que não há limitações ou aplicação de tecnologia específica. O modelo normalmente utilizado é o modelo entidade- relacionamento, com a construção do Diagrama de Entidade e Relacionamento. Este diagrama é a chave para a compreensão do modelo conceitual de dados. Cria-se o que chamamos de “mini-mundo”, a observação da realidade mapeada dentro do sistema que se deseja 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 18 de 24 desenvolver. O modelo e-r é muito importante e será bastante explorado nos exercícios. Ilustração de modelagem conceitual usando o Diagrama E-R. Posteriormente ocorre as especificações das necessidades funcionais, depreendidas do próprio projeto conceitual. Caso exista algum impedimento funcional para a implementação do banco, talvez seja necessário voltar ao projeto conceitual e realizar algumas modificações. Em seguida aparece o projeto lógico, ou mapeamento do modelo de dados. A modelagem lógica (ou representacional, ou de implementação), por sua vez, já realiza o mapeamento do esquema conceitual para o modelo de dados que será usado. O modelo de dados de implementação normalmente é o modelo de dados relacional, que também é importantíssimo, muito cobrado em provas e será bastante abordado nos exercícios. Tal projeto consolidará a escrita do script do banco, com a criação do seu esquema. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 19 de 24 Modelagem relacional: ilustração com tabelas e atributos Por fim, temos o projeto físico, durante a qual são definidas as estruturas de armazenamento interno, índices, caminhos de acesso e organizações de arquivo para os arquivos do banco de dados. Já passa a depender de regras de implementação e restrições tecnológicas. Figura: Do modelo conceitual ao físico(MAXEY,2002) 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 20 de 24 (CESPE – ANATEL – Analista – Desenvolvimento de Sistemas - 2014) 3. São empregados no projeto de aplicações de um banco de dados o modelo entidade-relacionamento (MER), que é um modelo representacional, e suas variações. Errado! O modelo E-R é um modelo conceitual. Modelo representacional (ou lógico) é o modelo relacional. 4. O modelo de dados físico é considerado de baixo nível, o que significa que somente os sistemas gerenciadores de banco de dados conseguem interpretá-lo. Errado! O modelo de dados físico pode e precisa ser interpretado pelos profissionais de computação. Caso contrário, quem programaria o SGBD? 1.8 Tipos de modelos de dados Apoiando a estrutura de um banco de dados está o modelo de dados:uma coleção de ferramentas conceituais para descrever dados, relações de dados, semântica de dados e restrições de consistência. Um modelo de dados oferece uma maneira de descrever o projeto de um banco de dados no nível físico, lógico e de visão. Existem vários modelos de dados diferentes. Vejamos alguns: Modelo hierárquico: O modelo hierárquico foi o primeiro a ser reconhecido como um modelo de dados. Nele, os registros são conectados em uma estrutura de dados em árvore, similar a uma árvore invertida (ou às raízes de uma árvore). 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 21 de 24 Neste modelo, uma ligação é uma associação entre dois registros. O relacionamento entre um registro-pai e vários registros- filhos possui cardinalidade 1:N, ou 1:1, sendo N =1. Os dados organizados segundo este modelo podem ser acessados segundo uma sequência hierárquica com uma navegação do topo para as folhas e da esquerda para direita. Um registro pode até estar associado a vários registros diferentes, desde que seja replicado. Neste exemplo, perceba que os registros da tabela empregado possuem hierarquia direta em relação aos registros da tabela departamento. O modelo hierárquico possui muitas limitações. Ele pode ser útil para modelar esquemas fortemente hierárquicos (como classificações para espécies dos reinos animal e vegetal, corporações, hierarquias governamentais, etc.), mas apresenta limitações quando representa modelos não-hierárquicos. Isto provocou o surgimento do modelo em rede. Modelo em rede: o modelo em rede acabou eliminando a hierarquia, pois passou a permitir que, em tese, cada registro filho pudesse ser ligado a mais de um registro pai. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 22 de 24 Nesse caso, a estrutura em árvore se desfaz, e passa a se assemelhar a uma estrutura em grafo. Relacionamentos N:M também passam a ser permitidos (lembrando que o relacionamento é estabelecido entre registros). Perceba que, neste modelo, é possível colocar um empregado vinculado a mais de um departamento, o que não era possível no modelo hierárquico. Os modelos de dados em rede e hierárquicos precederam o modelo de dados relacional, que é o mais utilizado atualmente. São muito pouco utilizados nos dias de hoje, a não ser em bancos de dados antigos que ainda estejam em vigor. Modelo relacional: O modelo relacional usa uma coleção de tabelas para representar os dados e as relações entre eles. Foi o modelo que eu utilizei para explicar os conceitos básicos de banco de dados, e é o modelo mais utilizado (e cobrado em provas). Cada tabela possui diversas colunas, e cada coluna possui um nome único. Tabelas também são chamadas de relações.(Deixei isso pra depois de propósito: não confunda relação com os relacionamentos entre as tabelas). Cada tabela contém tuplas. Cada tupla possui um número fixo de campos, ou atributos. As colunas das tabelas correspondem aos atributos do tipo de 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 23 de 24 registro. Este modelo é o mais utilizado na fase de projeto lógico do BD. Modelo Entidade/Relacionamento: O modelo de Entidade- Relacionamento (E-R) é baseado na percepção de um mundo real que consiste em uma coleção de objetos básicos, chamados entidades, e os relacionamentos entre esses objetos (existem autores que falam em relação para descrever relacionamentos. Preste atenção em uma eventual questão de prova, para saber o que a banca quer). Uma entidade é uma “coisa” ou “objeto” no mundo real que é distinguível dos outros objetos (como pessoa, ou carro). É um modelo mais alto nível, empregado na fase do projeto conceitual, que é anterior à fase do projeto lógico, no qual se utiliza o modelo relacional. Também cai em provas. Modelo de dados orientado a objetos: É uma extensão do modelo ER com noções de encapsulamento de identidade do objeto (isso será visto em programação). Modelo de dados objeto-relacional: Combina características do modelo relacional com o modelo orientado a objetos. P.S: Não se surpreenda em ter visto os modelos relacional e entidade relacionamento também neste tópico. Os tipos de modelos de dados apresentados não deixam de ter um caráter histórico, refletindo a evolução dos modelos ao longo do tempo. Por isso, os modelos relacional e E-R acabaram se consolidando nas categorias vistas anteriormente. 06549400880 06549400880 - Mauro de Almeida Loureiro Análise de Informações para TCU 2015 Auditor Federal de Controle Externo Prof Victor Dalton ʹ Aula 00 Prof. Victor Dalton www.estrategiaconcursos.com.br 24 de 24 (CESPE – TJ/SE – Analista – Banco de Dados - 2014) 5. Em um relacionamento pai-filho, no modelo hierárquico, registros do mesmo tipo do lado pai correspondem a um único registro do lado filho. Errado! No modelo hierárquico, um filho tem um único pai, mas um pai pode ter vários filhos. Modelo hierárquico. CONSIDERAÇÕES FINAIS E finalmente encerramos a aula demonstrativa! A grande verdade é que essa matéria “fictícia”, chamada Análise de Informações, traz uma série de tópicos de Tecnologia da Informação espalhados. Neste começo, estamos estudando bancos de dados, cortando vários tópicos que parecem não se relacionar com o que deve ser cobrado para vocês. Nossa meta é fazer um conteúdo sob medida e que cumpra com sua função, que é preparar você adequadamente para a prova. Conto com sua presença, como um aluno(a) efetivo(a). Até a próxima aula! Victor Dalton 06549400880 06549400880 - Mauro de Almeida Loureiro
Compartilhar