Buscar

DBD_Tema_01_TEXTO DE APOIO AO ESTUDO

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

CURSO ENGENHARIA ELÉTRICA 
DISCIPLINA: DESENVOLVIMENTO DE APLICAÇÕES COM BANCO DE DADOS 
TEMA: 01 – INTRODUÇÃO, ARQUITETURA E AMBIENTE DE PROGRAMAÇÃO 
 
 
TEXTO PARA APOIO AO ESTUDO 
 
1) Introdução e Arquitetura 
 
Nosso objetivo nesta aula é fazer uma revisão geral sobre bancos de dados, de modo que tenham os 
insumos necessários para desenvolver as aplicações envolvendo o uso de bancos de dados. Não temos a pretensão 
de esgotar o assunto, tendo em vista que vocês já estudaram o assunto em outras disciplinas. 
Vamos iniciar com uma pergunta: por que é importante armazenar dados em um banco de dados? Antes 
de respondermos a esta pergunta, vamos pensar na UNICARIOCA, no seu funcionamento cotidiano, se não 
houvesse sistemas computacionais e, mais ainda, se não houvesse banco de dados. Seria um trabalho imenso lidar 
com os dados de tantos alunos e funcionários em fichas de papel por exemplo. Portanto, o uso de sistemas 
computacionais e, mais especificamente de bancos de dados, possibilitam, entre outras coisas, facilitar e agilizar o 
trabalho. 
Sem os dados, sistemas computacionais perdem o sentido. É comum estabelecer parâmetros de 
transmissão, capacidade de processamento e acesso aos dados como forma de comparação de eficiência entre 
sistemas computacionais. 
Além disso, a quantidade de dados gerados vem crescendo significativamente. Estamos vivendo a era do 
denominado Big Data. E com a ascensão de tecnologias como IoT, por exemplo, a quantidade de dados que 
precisam ser armazenados e, consequentemente, processados aumenta consideravelmente. 
Mas o que são, efetivamente, bancos de dados? Quais são as vantagens de se utilizar bancos de dados? Há 
desvantagens? Quais são os tipos de bancos de dados mais utilizados? Como referenciar um dado qualquer no 
banco de dados? As respostas a estas perguntas nos ajudarão a relembrar os conceitos introdutórios sobre bancos 
de dados e, portanto, serão nosso ponto de partida no nosso curso. 
Bancos de dados podem ser entendidos como coleções de tabelas que guardam alguma relação entre si e 
que são, normalmente, referenciadas, vinculadas ou integradas. 
Os bancos de dados têm por premissa a possibilidade de recuperação dos dados e, para isso, o banco de 
dados deve ser bem projetado e organizado, para não comprometer o trabalho de recuperação dos dados. 
São utilizados softwares específicos denominados Sistemas Gerenciadores de Bancos de Dados (SGBD) para 
fazer a criação, inserção, armazenamento, edição, recuperação e remoção de dados. 
Bancos de dados são amplamente utilizados e associados a outras tecnologias em diferentes segmentos 
como, por exemplo, nos setores financeiro, educacional, industrial, governamental, entre tantos outros. 
Vamos analisar agora algumas vantagens do uso de bancos de dados. Podemos citar o compartilhamento 
dos dados, ou seja, a possibilidade de disponibilização dos dados a usuários diferentes. Além disso, com SGBD, 
minimiza-se a redundância, tendo em vista que objetiva-se que não existam cópias dos dados e, 
consequentemente, proporciona a diminuição do espaço de armazenamento, reduzindo também o custo do 
sistema. Pelo fato de não existirem dados duplicados em um SGBD ideal, qualquer alteração em um dado deve ser 
feita em apenas um local, o que confere maior integridade ao sistema, reduzindo as possibilidades de erros. Se 
houver dados duplicados, ao se alterar um deles, o outro deverá ser alterado porque, caso contrário, haverá 
inconsistência dos dados e isso, naturalmente, não deve acontecer. Consequentemente, com dados duplicados, a 
possibilidade de erro aumenta consideravelmente. Outra característica importante em um SGBD é a padronização: 
as tabelas, os programas, enfim, seguem a uma padronização, que é muito importante porque diferentes 
profissionais podem trabalhar em SGBD e, se cada um seguisse suas convenções e convicções, seria desastroso. 
Certos dados não devem ser acessíveis a qualquer pessoa por questões de segurança da informação. Em relação a 
possíveis desvantagens, alguém poderia pensar no custo de implementação e manutenção de um SGBD, além da 
questão da segurança da informação que deve ser levada em conta, especialmente nos dias atuais, com tantas 
operações comerciais, financeiras, entre outras, realizadas digitalmente. Porém, é importante pensar no custo e na 
segurança da informação caso não se usem bancos de dados digitais. Imaginem a estrutura necessária para garantir 
os mesmos serviços sem o uso de bancos de dados digitais. 
Em relação aos tipos de bancos de dados, é possível desenvolver aplicações em que o banco de dados fique 
armazenado localmente no computador pessoal. Entretanto, há aplicações com grande quantidade de dados e de 
acesso a eles que se utilizam outras abordagens como armazenamento em servidores especializados. Imaginem a 
quantidade de dados envolvidos em todas as ferramentas e usuários do Google. Certamente, o SGBD não faz um 
uso de um desktop ou notebook para tal tarefa. Além disso, é importante pensar no backup do banco de dados. 
Imaginem um banco, com as informações de todos os seus clientes armazenadas em um único local. Se houver 
algum acidente ou incidente, enfim, gerando, por exemplo, a perda dos dados, seria problemático e inviabilizaria o 
negócio. Em uma situação crítica como essa, o backup, que pode estar até em outro local ou até mesmo em outro 
estado, é utilizado para que seja possível continuar com os serviços prestados pela instituição. 
Existem várias ferramentas de bancos de dados, como, por exemplo, MySQL, SQL Lite, Access, Oracle, entre 
outras. 
Um banco de dados relacional típico é constituído por tabelas, colunas ou campos, tipos de dados, regras, 
chaves primárias, chaves estrangeiras, índices, entre outros. Vamos descrever um pouco mais sobre cada um destes 
itens. 
● Tabelas: contém os dados; 
● Colunas ou campos: cada campo fornece alguma informação que complementa o dado. Como 
exemplos de Campos em um banco de dados que armazene os dados dos alunos da UNICARIOCA, 
podemos citar o Nome, Endereço, Telefone, Email, Curso, entre outros. Cada Coluna ou Campo 
deve ser único; 
● Tipos de dados: cada Campo tem apenas um único tipo de dado. Por exemplo, um campo 
denominado Nome deve ter um tipo de dado String de caracteres; 
● Regras: contribui para evitar que os dados que são inseridos estejam dentro do esperado. Por 
exemplo, um campo denominado Idade não pode aceitar valores negativos; 
● Chave Primária (PK): permite que os dados sejam individualizados. Por exemplo, considere o banco 
de dados da UNICARIOCA. Para que cada pessoa seja única no banco de dados, não é uma boa 
estratégia selecionar o nome para individualizar os dados porque podem ter homônimos. Por outro 
lado, podemos escolher o CPF porque ele deve ser único para cada pessoa, ou seja, não devem 
existir duas pessoas com o mesmo número de CPF; 
● Chaves Estrangeiras (FK): são colunas de uma tabela que fazem referência às chaves primárias de 
outras tabelas; 
● Índices: podem contribuir para agilizar as consultas, por exemplo. 
 
 
Antes de darmos sequência, vamos traçar um paralelo entre o uso de sistemas de arquivose SGBD. O 
Sistema Operacional interage com o sistema de arquivos, que é constituído por pastas e arquivos, como 
ilustra a Figura 1. 
 
 
Figura 1 - Ilustração de sistemas de arquivos. 
 
 
Com o uso de sistemas de arquivos, o acesso e gerenciamento dos dados é de responsabilidade dos 
programas aplicativos. Por outro lado, quando se utiliza banco de dados, o SGBD funciona como uma interface 
entre os programas aplicativos e os dados, ou seja, o acesso e gerenciamento dos dados é feito pelo SGBD e os 
programas aplicativos não acessam os dados diretamente. A Figura 2 ilustra o comparativo destas duas 
abordagens. 
 
 
 
 
Figura 2 - Comparativo entre uso de sistema de arquivos e SGBD. 
 
 
A Tabela 1 ilustra mais detalhes deste comparativo: 
 
Tabela 1 - Comparativo entre sistema de arquivos e SGBD. 
 
 
 
 
 
No que diz respeito à arquitetura, a Figura 3 ilustra, de forma geral, os constituintes envolvendo um SGBD. 
São considerados quatro atores: usuários simples, programadores de aplicações, usuários ocasionais, administrador 
da base de dados. Os usuários simples são aqueles que utilizam os programas de aplicação que fazem uso do banco 
de dados. Os programadores de aplicações, como o próprio nome indica, desenvolvem as aplicações que serão 
utilizadas pelos usuários fazerem acesso ao banco de dados. Os usuários ocasionais são aqueles que fazem 
consultas ocasionais. Por fim, tem o administrador do banco de dados. É importante destacar o papel do 
Gerenciador da Base de Dados no SGBD porque o acesso dos usuários e programadores de aplicações aos arquivos 
de dados passa por ele. 
 
 
Figura 3 - Ilustração da arquitetura de um SGBD. 
 
Outro aspecto interessante diz respeito às ferramentas utilizadas. Quais são mais populares? A Figura 4 mostra o 
gráfico de popularidade de algumas ferramentas, obtido em Fevereiro de 2020. Observe que Oracle, MySQL e Microsoft SQL 
Server estão nas primeiras posições, próximas umas das outras, mas relativamente distantes de PostgreeSQL e MondoDB, que 
vêm na sequência. Entretanto, quando se aprende a teoria conceitual e, ainda, aplicá-la em alguma ferramenta, a eventual 
necessidade de utilização de outra abordagem se torna mais facilitada. 
 
 
 
Figura 4 - Popularidade de ferramentas utilizadas em SGBD. 
 
 
 
 
 
2) Ambiente de Desenvolvimento 
 
Existem várias possibilidades de desenvolvimento com banco de dados: 
 
 
 
Para o seu estudo, você poderá utilizar qualquer uma delas. Entretanto, para os trabalhos a serem avaliados como 
atividades em sala de aula e APS, será padronizado o NetBeans como ferramenta de desenvolvimento. Então, para evitar 
qualquer problema de eventuais incompatibilidades, sugiro utilizá-lo pelo menos para os trabalhos mencionados. 
Nós usaremos a estrutura do laboratório da UNICARIOCA. Entretanto, é importante que vocês ganhem desenvoltura 
sobre a instalação destes programas, assim como do MySQL. Então, é recomendável que vocês instalem e integrem o 
NetBeans e o MySQL em seus computadores pessoais. 
Na próxima aula, faremos uma revisão de SQL.

Continue navegando