==== Disciplinas para Graduação ==== === DCC011 - Introdução a Bancos de Dados -- Segundo Semestre de 2021 === == PLANO DE ENSINO REMOTO EMERGENCIAL == Plano aprovado pelos colegiados de graduação (BCC, BSI) [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/20211004 IBD plano de ensino remoto emergencial 2021_2|PDF]] 2021/2 **//As aulas síncronas (reuniões virtuais) devem ser entendidas como pontos de sincronização na condução da disciplina. Em geral, as aulas serão usadas para discussões e esclarecimento de dúvidas trazidas pelos alunos, após terem acompanhado o conteúdo assíncrono correspondente com antecedência, e não para reapresentação do conteúdo assíncrono. Assim, para melhor aproveitamento do tempo de todos, os encontros síncronos serão limitados a esses esclarecimentos. Não havendo dúvidas a esclarecer, pode-se usar parte do tempo para discussões sobre as atividades práticas.//** **//Com relação às avaliações, diante das circunstâncias excepcionais do Ensino Remoto Emergencial na UFMG, esperamos de todos um comportamento ético e responsável, de modo que seja possível avaliar adequadamente o aprendizado de cada aluno por meio dos instrumentos disponíveis.//** **Objetivos:** Introduzir os fundamentos que permitam ao aluno adquirir o domínio básico da tecnologia de banco de dados. **Ementa:** Conceitos básicos de banco de dados. Modelos de dados e linguagens. Projeto de bancos de dados. Novas tecnologias e aplicações de banco de dados. ==Material de apoio== **Livro** * Elmasri, R.; Navathe, S. B. Sistemas de Banco de Dados. 7ª. ed. Pearson, 2019. Outras edições podem ser usadas, inclusive edições em inglês. [[https://wps.pearsoned.com/aw_elmasri_fundatasys_7/|Student resources (em inglês)]] **Artigos selecionados** * Chen, P. (1976) The entity-relationship model — toward a unified view of data. ACM Transactions on Database Systems 1(1) (March 1976), 9–36. [[https://doi.org/10.1145/320434.320440|PDF]] * Codd, E. F. (1970) A Relational Model of Data for Large Shared Data Banks. Communications of the ACM 13(6):377-387. [[https://dl.acm.org/doi/pdf/10.1145/362384.362685|PDF]] [[https://dl.acm.org/doi/pdf/10.5555/77708|Livro online de Codd sobre o modelo relacional]] **Slides e material de aula:** vide abaixo ** Link para participação nas reuniões virtuais:** será informado por e-mail ** Playlist das reuniões virtuais:** link será informado por e-mail ==Recursos online== * [[http://aqui.io/geosql | GeoSQL+]] disponível por meio do [[http://labcsx.dcc.ufmg.br/ | Interdisciplinary Computer Science Lab]] da UFMG. Outros produtos e protótipos do LabCS+x estão disponíveis em [[http://aqui.io | aqui.io]]. * [[http://sqlfiddle.com/ | SQL Fiddle ]] ==Software recomendado== * [[http://www.postgresql.org | PostgreSQL ]] * Downloads: [[https://www.postgresql.org/download/|postgresql]] * Guias de instalação: [[https://www.devmedia.com.br/instalando-postgresql/23364|Windows]] [[https://www.hostinger.com.br/tutoriais/instalar-postgresql-ubuntu|Ubuntu]] [[https://www.postgresql.org/download/macosx/|Mac]] * Video sobre pgAdmin, no contexto da disciplina ==Datasets== Banco de dados de comércio exterior: script de criação de tabelas e carga de dados [[https://virtual.ufmg.br/20202/mod/resource/view.php?id=201456|No Moodle da disciplina]] Banco de dados Cinema/IMDb - [[https://www.dropbox.com/s/cbfuvezgt8jhj6c/cinemicro.sql.zip?dl=0|Backup do BD cinemicro]] == Unidades == **Playlist das aulas no YouTube:** [[https://www.youtube.com/playlist?list=PLPF3oU9gY8Cna2dM8Rw1OMfvBEKtsMRU7|Playlist]] 1. **Introdução** * Apresentação da disciplina [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD00 Apresentacao da disciplina.pdf|Slides]] [[https://www.youtube.com/watch?v=b_71EFBUGko|Video]] * Conceitos básicos * Parte 1 - conceitos [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD01a Conceitos.pdf|Slides]] [[https://www.youtube.com/watch?v=TksC9xRF-8o|Video]] * Parte 2 - memória [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD01b Conceitos - disco.pdf|Slides]] [[https://www.youtube.com/watch?v=KDihGJ4b0E8|Video]] * Parte 3 - modelos de dados e arquitetura de SGBD [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD01c Modelos e Arquitetura.pdf|Slides]] [[https://www.youtube.com/watch?v=J0HKxZ_eGvw|Video]] 2. **Modelos de Dados e Linguagens** * Modelo entidade-relacionamento * Parte 1 - Entidades [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD02a ER entidades.pdf|Slides]] [[https://www.youtube.com/watch?v=J3iPZ65HzDc|Video]] * Parte 2 - Relacionamentos [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD02b ER relacionamentos.pdf|Slides]] [[https://www.youtube.com/watch?v=lXNT4LjgyKU|Video]] * Parte 3 - Exemplos [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD02c ER exemplos.pdf|Slides]] [[https://www.youtube.com/watch?v=M2BQ1uzARYo|Video]] * Modelo ER: extensões e tópicos adicionais * ER estendido [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD03a ER estendido.pdf|Slides]] [[https://www.youtube.com/watch?v=HXgNwlPa964|Video]] * ER conceitos adicionais [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD03b ER conceitos adicionais.pdf|Slides]] [[https://www.youtube.com/watch?v=WOGnn_feLm4|Video]] * Notações alternativas de ER e ERE [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD03c ER-ERE notacoes alternativas.pdf|Slides]] [[https://www.youtube.com/watch?v=n_A_PSOmqF8|Video]] * UML [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD04 UML.pdf|Slides]] [[https://www.youtube.com/watch?v=weqWbgHTlPs|Video]] * Modelo Relacional * Modelo Relacional [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD05a Modelo Relacional.pdf|Slides]] [[https://www.youtube.com/watch?v=gmPZ5hBE6Jk|Video]] * Modelo Relacional: avançado [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD05b Modelo Relacional avancado.pdf|Slides]] [[https://www.youtube.com/watch?v=1vTQo9k4f1k|Video]] * Álgebra Relacional [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD05c Algebra Relacional parte 1.pdf|Slides parte 1]] [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD05d Algebra Relacional parte 2.pdf|Slides parte 2]] [[https://www.youtube.com/watch?v=1aqM6GXyK9Y|Video parte 1]] [[https://www.youtube.com/watch?v=CB51y47Y2D0|Video parte 2]] * SQL * Parte 1: SQL e consultas básicas [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD06a SQL parte 1.pdf|Slides parte 1]] [[https://youtu.be/1x4nVWxM9QA|Video parte 1]] * Parte 2: DDL e DML [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD06b SQL parte 2.pdf|Slides parte 2]] [[https://youtu.be/TcMmSI7oNZU|Video parte 2]] * Parte 3: Consultas avançadas [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD06c SQL parte 3.pdf|Slides parte 3]] [[https://youtu.be/s6JO_kI3XRI|Video parte 3]] 3. **Projeto de Bancos de Dados** * Projeto lógico e Mapeamento ER/Relacional [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD05e Projeto logico e mapeamento ER-relacional.pdf|Slides]] [[https://youtu.be/X7UoeQJER_E|Video]] * Normalização [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD05f Normalizacao.pdf|Slides]] [[https://www.youtube.com/watch?v=pLC2a_9_-t8|Video parte 1]] [[https://youtu.be/y2spYBzINPY|Video parte 2]] 4. **Novas tecnologias e aplicações de bancos de dados** * NoSQL: conceitos gerais [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Aulas/IBD07 NoSQL.pdf|Slides]] [[https://www.youtube.com/watch?v=Wc56iWEu--c|Video]] AVISO: video com 58 minutos de duração * Gerenciamento de dados geoespaciais [[https://youtu.be/BEIFe5QdHEo|Video: geoinformática]] * Gerência de Dados e Informação: a área de pesquisa no PPGCC/DCC [[https://www.youtube.com/watch?v=iDjkD0OZo14|Video]] * Mineração de Dados e Ciência dos Dados: a área de pesquisa no PPGCC/DCC [[https://photos.app.goo.gl/Ef45VC6fYSVa3uUc6|Video]] == Atividades Práticas e Avaliações == ** Exercícios de modelagem ** * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/Exercicio modelagem loja.pdf|Loja online (exemplo)]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/Exercicio modelagem loja diagrama ER|Diagrama ER]] * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/Exercicio modelagem aluguel de imoveis.pdf|Aluguel de imóveis]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/IBD02e1 Exercicio modelagem ER aluguel de imoveis.pdf|Resolução]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20211104 IBD02e1 Exercicio modelagem ER aluguel de imoveis MARCACOES.pdf|Diagramas dos alunos com marcações]] * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/Exercicio modelagem NetFlix.pdf|NetFlix]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/IBD02e2 Exercicio modelagem ER Netflix.pdf|Resolução]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20211109 IBD02e2 Exercicio modelagem ER Netflix MARCACOES.pdf|Diagramas dos alunos com marcações]] * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/Exercicio modelagem cadastro de imoveis.pdf|Cadastro de imóveis urbanos]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/IBD02e3 Exercicio modelagem ERE Cadastro Urbano.pdf|Resolução]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20211116 IBD02e3 Exercicio modelagem ERE cadastro urbano MARCACOES.pdf|Diagramas dos alunos com marcações]] * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/IBD02e9 Exercicio modelagem UML ocorrencias policiais.pdf|Ocorrências policiais]] -- [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/IBD02e9 Exercicio modelagem UML ocorrencias policiais.pdf|Resolução]] -- [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20211118 IBD02e9 Exercicio modelagem UML ocorrencias policiais MARCACOES.pdf|Diagramas dos alunos com marcações]] ** Exercícios de Álgebra relacional ** * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20210201 exercicio algebra relacional comercio exterior.pdf|Comércio exterior]] ** Exercícios de mapeamento ER-Relacional ** * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20211004 Exercicio mapeamento ER-Relacional cadastro de imoveis.pdf|Cadastro de imóveis urbanos]] [[https://www.dropbox.com/s/xop8jcamb1lu8nm/20211216%20RESOLUCAO%20exercicio%20mapeamento%20ER%20relacional%20cadastro%20urbano.pdf?dl=0|Slides da resolução - ver video]] ** Exercícios de SQL ** * CINEMA/IMDb: [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/BD/20211013 BD Cinema esquemas conceitual e logico.pdf|Esquema ER + esquema relacional]] - [[https://youtu.be/x_8Itkf3oVQ|Video: processo de criação do BD]] - [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/BD/20211006 Construção BD IMDB.pdf|Slides usados no video]] * [[https://www.dropbox.com/s/cbfuvezgt8jhj6c/cinemicro.sql.zip?dl=0|Backup do BD cinemicro (280 MB)]] * [[https://www.dropbox.com/s/zowrckitzvlrtjb/cine80.sql.zip?dl=0|Backup do BD cine80, menor que o cinemicro (44MB)]] * [[http://www.dcc.ufmg.br/~clodoveu/files/IBD/Exercicios/20211006 consultas SQL IMDB.pdf| Exercícios SQL banco CINEMA/IMDb (CINEMINHA/CINEMICRO)]] == Calendário == ^Aula ^Data ^Conteúdo previsto ^Modalidade ^Interação ^ |1 |14/10/2021 |Apresentação da disciplina |Síncrona - gravada |[[https://youtu.be/FWqX77pskWc|Reunião virtual]]| |2 |19/10/2021 |Conceitos básicos em bancos de dados. Modelos de dados, esquemas, instâncias |Assíncrona (video) | | |3 |21/10/2021 |Arquitetura de um SBD; componentes de um SGBD |Assíncrona (video) |[[https://youtu.be/fqLL3n_TjU8|Reunião virtual - aulas 2 e 3]]| |4 |26/10/2021 |Projeto conceitual: modelo ER |Assíncrona (video) | | |5 |28/10/2021 |Projeto conceitual: modelo ER; variações de notação em esquemas conceituais |Assíncrona (Video) |[[https://youtu.be/TuV-_eK-47U|Reunião virtual - aulas 4 e 5 - parte 1]] [[https://youtu.be/-mIKzknPafw|- parte 2]]| |6 |04/11/2021 |ER: exercício (entrega até 8:00h no Moodle) |Assíncrona - atividade individual | [[https://youtu.be/FplKFlPqBFc|Reunião virtual - correção]]| |7 |09/11/2021 |ER: exercício (entrega até 8:00h no Moodle) |Assíncrona - atividade individual |[[https://youtu.be/iP4v0_xttco|Reunião virtual - correção]]| |8 |11/11/2021 |Modelo ER estendido; UML |Assíncrona (video) |[[https://youtu.be/dt_3rEoMmqU|Reunião virtual]]| |9 |16/11/2021 |ERE: exercício (entrega até 8:00h no Moodle) |Assíncrona - atividade individual |[[https://youtu.be/c4WK3sWr4K8|Reunião virtual - correção]]| |10 |18/11/2021 |UML: exercício (entrega até 8:00h no Moodle) |Assíncrona - atividade individual |[[https://youtu.be/TTEda1Ry25w|Reunião virtual - correção]]| |11 |23/11/2021 |Modelo Relacional |Assíncrona (video) | | |12 |25/11/2021 |Restrições de integridade |Assíncrona (video) |[[https://youtu.be/IAviM7v8v5I|Reunião virtual - aulas 11 e 12; revisão para a prova 1]]| |13 |30/11/2021 |Prova 1: conceitos e modelagem conceitual |Prova remota -- individual | | |14 |02/12/2021 |Álgebra relacional |Assíncrona (Video) | | |15 |07/12/2021 |Álgebra relacional: exercícios |Assíncrona - atividade individual | [[https://youtu.be/vfBa9YfE194|Reunião virtual - correção da prova 1]]| |16 |09/12/2021 |Álgebra relacional: exercícios (entrega até 8:00 no Moodle) |Assíncrona - atividade individual |[[https://youtu.be/8oKjBPl3_SM|Reunião virtual - correção]]| |17 |14/12/2021 |Mapeamento ER/UML para relacional |Assíncrona (video) |[[https://youtu.be/wMu9saPGZD8|Reunião virtual]]| |18 |16/12/2021 |Mapeamento ER/UML para relacional: exercícios (entrega ate 8:00h no Moodle) |Assíncrona (video) |[[https://youtu.be/KQUXQoIG-BQ|Reunião virtual]] [[https://youtu.be/0d_PIdhWdhc|Resolução do exercício de mapeamento ER-relacional]]| |19 |04/01/2022 |Normalização |Assíncrona (Video) |[[https://youtu.be/ZXfA3UnNfZg|Reunião virtual; revisão para a prova 2]] | |20 |06/01/2022 |Prova 2: modelo relacional e álgebra |Prova remota -- individual | | |21 |11/01/2022 |A linguagem SQL: conceitos, DDL, mapeamento relacional-SQL |Assíncrona (video) |[[https://youtu.be/nsxmq7kVO9s|Reunião virtual]] | |22 |13/01/2022 |SQL: inserção e atualização |Assíncrona (Video)| | |23 |18/01/2022 |SQL: consultas |Assíncrona (Video) |[[https://youtu.be/GNkLzc-Gzh4|Reunião virtual: aulas 21, 22 e 23]] | |24 |20/01/2022 |SQL: exercícios |Assíncrona - atividade individual | | |25 |25/01/2022 |SQL: exercícios |Assíncrona - atividade individual | | |26 |27/01/2022 |SQL: exercícios (entrega até 8:00h no Moodle) |Assíncrona - atividade individual |[[https://youtu.be/r036-6u0Ae8|Reunião virtual - correção]]| |27 |01/02/2022 |NoSQL: conceitos gerais |Assíncrona (Video) |[[https://youtu.be/nCWpGfM1i6M|Reunião virtual - revisão para a prova 3]] | |28 |03/02/2022 |Prova 3: SQL e NoSQL |Prova remota -- individual | | |29 |08/02/2022 |Gerenciamento de dados não convencionais: dados geoespaciais |Assíncrona (Video) |[[https://youtu.be/0RCOmpneAj4|Reunião virtual]]| |30 |10/02/2022 |Tópico extra: a definir |Assíncrona (Video) |Prova de reposição + avaliação da disciplina pelos alunos (offline) |