Baixe o app para aproveitar ainda mais
Prévia do material em texto
Informática Para Internet Roberto Douglas da Costa Danielle Gomes de Freitas Medeiros Charles Cesar Magno de Freitas 2015 Natal-RN Banco de Dados Curso Técnico Nível Médio Subsequente Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Aula 01 Conceitos Básicos de Banco de Dados Presidência da República Federativa do Brasil Ministério da Educação Secretaria de Educação a Distância GOVERNO DO BRASIL Presidenta da República Dilma Vana Rousseff Ministro da Educação Aloizio Mercadante Diretor de Educação a Distância da CAPES Jean Marc Mutzig Reitor do IFRN Belchior De Oliveira Rocha Pró-Reitor de Pesquisa e Inovação José Yvan Pereira Leite Coordenador da Editora do IFRN Paulo Pereira Da Silva Diretor do Campus EaD/IFRN Erivaldo Cabral Diretor Acadêmico do Campus EaD/IFRN Wagner de Oliveira Coordenador Rede e-Tec Brasil no IFRN Roberto Douglas da Costa Coordenador do Curso Técnico Subsequente em Informática para Internet Charles César Magno de Freitas BANCO DE DADOS AULA 01 CONCEITOS BÁSICOS DE BANCO DE DADOS Professor-autor Danielle Gomes de Freitas Medeiros Roberto Douglas da Costa Charles Cesar Magno de Freitas Projeto Gráfico Eduardo Meneses e Fábio Brumana Direção da Produção de Material Didático Rosemary Pessoa Borges Coordenação de Produção de Mídia Impressa Leonardo dos Santos Feitoza Coordenação de Revisão Wagner Ramos Campos Revisão ABNT Edineide da Silva Marques Revisão Linguística Elizeth Herlein Revisão Pedagógica Vanilton Pereira da Silva Diagramação Georgio Nascimento Este Caderno foi elaborado em parceria entre o Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte e o Programa Escola Técnica Aberta do Brasil – e-Tec Brasil. Ficha catalográfica C837i Costa, Roberto Douglas da. Informática para Internet. Banco de dados. Aula 01 : Conceitos básicos de banco de dados. / Roberto Douglas da Costa, Daniele Gomes de Freitas Medeiros, Charles Cesar Magno de Freitas. – Natal : IFRN Editora, 2015. 13 f. : il. color. Disciplina do Curso Técnico Nível Médio Subsequente – Rede e-Tec Brasil. 1. Banco de Dados. 2. Banco de Dados - Tipos. 3. Informática - Internet. I. Medeiros. Daniele Gomes de Freitas. II. Freitas, Charles Magno de. III. Título. RN/IFRN/EaD CDU 004.6 Ficha elaborada pela bibliotecária Edineide da Silva Marques, CRB 15/488 e-Tec Brasil3 Apresentação da disciplina Nesta primeira aula, iremos abordar os conceitos de banco de dados relacionais, redundância de dados e sistema de gerenciamento de banco de dados como também o conceito de banco de dados não relacionais e-Tec Brasil 4 Informática Para Internete-Tec Brasil 4 e-Tec Brasil Aula 1 - Conceitos Básicos de Banco de Dados Desenvolvendo o conteúdo 1. Banco de dados relacionais Você pode estar, neste momento, se perguntando, o que seria um banco de dados? Poderíamos desmembrar esse conceito explicando separadamente as duas palavras desse termo. Primeiro, vamos conceituar a palavra “banco” que podemos entender como local de armazenamento, como por exemplo, um banco comercial que nada mais é que o local onde guardamos dinheiro. E a palavra “dados” que podemos entender como informações ou conhecimentos de alguma coisa ou de alguém. Objetivos entender os principais conceitos de banco de dados; identificar os tipos de banco de dados e suas diferenças; compreender a importância de banco de dados para um sistema. Figura 1: Banco de Dados Fo nt e: ht tp :// go o. gl /0 rtw SS e-Tec BrasilAula 01 - Conceitos Básicos de Bancos de Dados 5 Juntando as duas palavras temos “banco de dados” que podemos conceituar como um local definido para armazenar (guardar) informações ou conhecimentos ou, ainda, como um conjunto de dados integrados que tem, por objetivo, atender a uma comunidade de usuários. Esses dados armazenados podem ou não se relacionar uns com os outros. Quando eles se relacionam, chamamos de banco de dados relacionais, que podemos definir como uma coleção de informações relacionadas a um determinado assunto ou finalidade, como por exemplo, o controle de pedidos dos clientes ou manutenção de uma coleção musical. Para entendermos melhor, vamos usar o exemplo de uma indústria que compra matéria-prima para fabricar certo produto e depois vendê-lo no mercado. Então, essa empresa manipularia três sistemas, um de compra, um de produção e outro de venda. O sistema de compra acompanharia as atividades relacionadas à aquisição da matéria-prima junto aos fornecedores, como cotação de preços, compra do produto, acompanhamento do seu fornecimento e estoque; o sistema de produção controlaria a fabricação do produto, como quantidade, qualidade e variedade do produto e o sistema de venda gerenciaria o fornecimento do produto final para os clientes, como quantidade a ser vendida, preços de venda e distribuição. Observe que, nesse exemplo, os dados do produto final a ser produzido são utilizados pelos três sistemas. Pois, para vender, é preciso conhecer informações essenciais do produto como seu preço final de venda, quantidade em estoque, data de fabricação, etc. E para fabricá-lo, foi preciso conhecer o processo de produção, como o tempo gasto na sua produção e que itens são agregados ao produto. E, para comprar a matéria-prima, é necessário conhecer os componentes que se agregam ao produto final. Se essas informações forem descritas de forma separada, ou seja, para cada sistema for criado um arquivo do produto sem levar em consideração as informações dos demais sistemas, acontecerá o que chamamos de redundância de dados. (Figura 2). Informática Para Internete-Tec Brasil 6 1.1. Redundância de dados Mas o que seria uma redundância de dados? É quando uma determinada informação está representada em um sistema computacional repetidas vezes. No caso do nosso exemplo, o arquivo PRODUTOS aparece de forma repetida nos três sistemas. A redundância de dados pode acontecer de duas formas: redundância controlada de dados e a redundância não controlada de dados. A redundância controlada de dados acontece quando o software tem conhecimento da múltipla representação da informação e garante a sincronia entre as diversas representações. Para o usuário externo ao sistema computacional, isso acontece de forma transparente, sem que ele perceba, pois, para ele, é como se a informação existisse apenas em um único local. Esse tipo de redundância acontece em alguns tipos de sistemas para melhorar o desempenho geral. É como acontece em sistemas distribuídos, nos quais a mesma informação pode ser armazenada em vários computadores diferentes, o que permite o acesso rápido a essa informação a partir de qualquer um deles. E a redundância não controlada de dados acontece quando a replicação dos dados é de responsabilidade do próprio usuário que armazena a mesma informação em diversos locais dentro do mesmo sistema. Esse tipo de redundância pode causar vários tipos de problemas ao sistema tais como: Redigitação de dados, que nada mais é que o usuário digitar a mesma informação várias vezes dentro do mesmo sistema, causando ao usuário um acúmulo desnecessário de trabalho e, ainda, correndo o risco de digitações erradas, o que levaria ao segundo problema que é a inconsistência de dados, que, como o próprio termo já diz, pode ocasionar informações Figura 2: Sistemas Isolados Fo nt e: N as cim en to (2 01 5) . e-Tec BrasilAula 01 - Conceitos Básicos deBancos de Dados 7 inconsistentes no sistema, que não condizem com a realidade dos dados contidos no sistema. No caso do exemplo da figura 2, se o usuário digitar uma informação referente ao produto que está armazenado no sistema de vendas e digitar alguma informação diferente para o mesmo produto no sistema de compras, ele deixa de ser o mesmo produto e, para o sistema, será tratado como um novo produto, causando inconsistência nos dados do sistema. Para evitar esses danos ao sistema, ocasionados pela redundância de dados não controlada, é que usamos o compartilhamento de dados, que pode ser entendido como um conjunto de arquivos associados que pode atender a um conjunto de sistemas, o qual podemos chamar de Banco de Dados. Pois, nessa forma de processamento, cada informação é armazenada em um repositório de dados uma única vez e pode ser acessado pelos vários sistemas que precisam usar essas informações no seu processamento. 1.2. Sistema de Gerenciamento de Banco de Dados (Sgb) Um banco de dados de um sistema computacional é gerenciado por um conjunto de aplicações denominado de Sistema de Gerenciamento de Banco de Dados, conhecido pela sigla – SGBD, e a integração desses aplicativos nos permite definir, construir e manipular um banco de dados em suas diversas aplicações. O principal objetivo de um SGBD é disponibilizar um ambiente que seja adequado e eficiente para uso na recuperação, alteração e armazenamento de informações. Figura 3: Sistemas Integrados com dados compartilhados Fo nt e: N as cim en to (2 01 5) . Informática Para Internete-Tec Brasil 8 Um SGBD é uma coleção de programas de propósito geral que facilita o processo de definir, construir e manipular bancos de dados para várias aplicações que incorpora as funções de criação, recuperação e alteração de dados em banco de dados. (MACHADO, 2004) Então, concluindo, um banco de dados pode ser caracterizado por representar uma coleção lógica coerente de dados devidamente relacionados, onde os dados podem ser entendidos como as informações conhecidas que podem ser armazenadas e que possuem um significado importante. 2. Banco de dados não relacioais Desde o seu surgimento, por volta dos anos 70, os bancos de dados relacionais são padrões para desenvolvimento de aplicações com base de dados por muitos desenvolvedores em muitas empresas espalhadas pelo mundo afora. Ninguém imaginava outra forma de trabalhar com uma grande quantidade de dados que não fosse através de um sistema que manipulasse dados armazenados em tabelas e de forma relacional. Com o crescimento das aplicações WEB, a internet passou a exigir bancos de dados de tamanhos que antes não eram imaginados e as empresas provedoras de serviços via internet começaram a trabalhar com a possibilidade de criar bases de dados gigantescas que pudessem satisfazer seu apetite de controlar os cidadãos. Nas aplicações WEB, que trabalham com um grande fluxo de dados, ocorreu o aumento da quantidade de informações que deveriam ser manipuladas, surgindo assim a necessidade da escalabilidade de servidores de banco de dados. Figura 4: Sistema de Gerenciamento de Bando de Dados – SGBD Fo nt e: N as cim en to (2 01 5) . e-Tec BrasilAula 01 - Conceitos Básicos de Bancos de Dados 9 Escalabilidade é a capacidade de um sistema de manipular uma crescente quantidade de dados de forma uniforme. (MACHADO, 2004) Essa escalabilidade pode ser realizada de duas maneiras, de forma vertical, quando é feita uma atualização na capacidade de memória, processamento e armazenamento do servidor, ou a horizontal, que visa o aumento no número de servidores, com maiores aplicações, distribuindo, assim, a memória, o processamento e o armazenamento em várias máquinas. Servidor - é um sistema de computação centralizada que fornece serviços a outras estações (equipamentos) ligadas a uma rede de computadores. (MACHADO, 2004) Para solucionar o problema de escalabilidade do servidor, dando suporte a suas demandas de mercado, grandes empresas que trabalham com alto fluxo de informações na WEB, com é o caso da Google e Facebook, criaram um banco de dados não-relacional também conhecido pela sigla “NoSQL” que quer dizer “Not Only SQL” ou no português não apenas “SQL”. Agora, os bancos deixaram de ser relacionais, abandonaram o padrão SQL e o conceito ACID (Atomicidade, Consistência, Isolamento e Durabilidade), esquecendo as formas normais (N1, N2, N3...) e passaram a ser não relacionais através da adoção de novas técnicas de modelagem visando sempre à velocidade de acesso e resposta às requisições priorizando a alta performance e alta escalabilidade. A diferença entre eles é que no modelo convencional de banco de dados, uma informação está dividida em várias tabelas, reduzindo, assim, a redundância de informações, porém quando a quantidade de registros é muito grande, a busca se torna lenta, já no NoSQL, os registros encontram-se, em geral, agrupados, isso melhora a velocidade de busca e, em contrapartida, aumenta a repetição de informações. O modelo não-relacional (NoSQL) não veio para substituir o modelo relacional, veio para solucionar os problemas que o atual modelo não solucionava ou fazia de forma não tão eficaz e muito mais trabalhosa. É importante ressaltar que cada modelo tem suas particularidades e atende a casos diferentes. Informática Para Internete-Tec Brasil 10 ATIVIDADE 1) Faça uma pesquisa na internet sobre os principais bancos de dados rela- cionais e sua importância para o mercado nos dias atuais, destacando suas características e depois compare com os bancos de dados não relacionais pesquisados por vocês. RESUMINDO Nesta aula, aprendemos que banco de dados é um conjunto de dados inte- grados que tem por objetivo atender a uma comunidade de usuários. Esses dados armazenados podem ou não se relacionar uns com os outros. Tam- bém vimos como se dá a redundância de dados e como se processa o siste- ma de gerenciamento de banco de dados. Na próxima aula, estudaremos sobre a modelagem de dados de um banco. LEITURAS COMPLEMENTARES Revista SQL MAGAZINE: • http://www.devmedia.com.br/revista-sql-magazine • http://www.devmedia.com.br/bancos-de-dados-relacionais-artigo-revis- ta-sql-magazine-86/20401 Revista IMASTER • http://imasters.com.br/secao/banco-de-dados/ e-Tec BrasilAula 01 - Conceitos Básicos de Bancos de Dados 11 Referências COSTA, Robério Luís de Carvalho. SQL guia prático. Rio de Janeiro: Brasport, 2004. HEUSER, Carlos Alberto. Projeto de banco de dados. Porto Alegre: Sagra Luzzatto, 2001. IANNI, Vinicius. Introdução aos bancos de dados NoSQL. [20--]. Disponível em: <http://www.devmedia.com.br/introducao-aos-bancos-de-dados-nosql/26044>. Acesso em: 30 jun. 2015. MACHADO, Felipe Nery Rodrigues. Banco de dados: projeto e implementação. São Paulo: Érica, 2004. MOURA, Paulo. NoSQL: uma nova necessidade! 2013. Disponível em: <http://devbrasil. net/profiles/blogs/nosql-uma-nova-necessidade>. Acesso em: 30 jun. 2015. PEREIRA, Cristian. NoSQL e o conceito de banco de dados não relacional. 2011. Disponível em: <http://www.fxplabs.com.br/blog/nosql-conceito-de-banco-de-dados-nao- relacional/>. Acesso em: 30 jun. 2015. Informática Para Internete-Tec Brasil 12 e-Tec BrasilAula 01 - Conceitos Básicos de Bancos de Dados 13
Compartilhar