Bancos de Dados para Bibliotecarios
Upcoming SlideShare
Loading in...5
×
 

Bancos de Dados para Bibliotecarios

on

  • 9,085 views

Introdução ao modelo relacional para bibliotecários que conhecem principalmente o modelo de dados semiestruturado do CDS/ISIS e do padrão MARC

Introdução ao modelo relacional para bibliotecários que conhecem principalmente o modelo de dados semiestruturado do CDS/ISIS e do padrão MARC

Statistics

Views

Total Views
9,085
Views on SlideShare
9,029
Embed Views
56

Actions

Likes
3
Downloads
147
Comments
0

4 Embeds 56

http://www.slideshare.net 29
http://bddadosdigitais.blogspot.com 15
http://bddadosdigitais.blogspot.com.br 11
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Bancos de Dados para Bibliotecarios Bancos de Dados para Bibliotecarios Presentation Transcript

  • Bancos de dados para Bibliotecários Tudo o que você sempre quis saber sobre bancos de dados relacionais mas tinha medo de perguntar ou O ABC do SQL
  • Objetivo ● O objetivo deste mini-curso é mostrar na teoria e na prática as diferenças entre as visões que bibliotecários e analistas de sistemas têm sobre bancos de dados, contrastando as características de padrões como MARC e sistemas bibliográficos como o CDS/ISIS com os conceitos e recursos dos principais sistemas de bancos de dados utilizados no mercado, inclusive na automação de bibliotecas.
  • Apresentação ● Luciano Ramalho – Aluno do último ano de Biblioteconomia (ECA/USP) – Profissional de Tecnologia de Informação com 25 anos de experiência ● Desenvolvedor de sistemas na BIREME ● Diretor Técnico do BOL na Abril S/A (1994-1996) ● Consultor especializado em sistemas de gerenciamento de conteúdo para portais Web – Incubadora Virtual Fapesp – IDGNow, AOL Brasil, UOL, BOL, Serpro, Universidade Metodista etc... ● Colunista da Info Exame (1991-1994)
  • Conceitos comuns ● Entidade ● Registro – Pessoa ou coisa do – Coleção de campos mundo real cujos descrevendo uma dados se pretende entidade armazenar e recuperar (ex: aluno, produto, vôo) ● Atributo ● Campo – Dado a respeito de – Sequência de uma entidade (ex: caracteres, valor data de nascimento, numérico, data, hora preço, tipo do avião) ou outro tipo de dado
  • Estruturas de dados Terminologia de BD relacional bd_opac banco de dados livros autores usuários livros arquivo / tabela Fonte: Laudon & Laudon registro campo código ASCII do byte 00110100 caractere “4” bit 0
  • Estruturas de dados: vale notar que... ● Na bibliografia básica de TI, não se encontra a idéia de sub-campos ● Nos sistemas baseados em arquivos, não existe o conceito de banco de dados ● Uma coleção de registros pode ser um arquivo ou uma tabela ● O cilindro simboliza banco de dados
  • Tipos de Bancos de Dados ● Hierarquicos obsoletos ● Em rede (relacionamentos em rede) ● Relacionais ● “Pós-relacionais” ● Orientados a objetos ● Semiestruturados – Ex: CDS/ISIS
  • Modelo relacional ● Concebido por Edgar F. Codd, pesquisador britânico trabalhando na IBM em 1970 ● O nome “relacional” vem do termo “relação”, sinônimo aproximado de “lista” ou “tabela” – e não do relacionamento entre tabelas, embora isto seja outra característica marcante do modelo ● Jargão dos teóricos de BD – relação = tabela – tupla = registro – atributo = campo
  • Vantagens do modelo relacional ● Sólida fundação matemática – limites teóricos bem conhecidos ● Flexibilidade – comprovada em mais de 30 anos de uso em uma imensa variedade de aplicações ● Padronização – linguagem SQL – normas ISO/ANSI – razoável compatibilidade entre produtos ● Penetração de mercado – grande disponibilidade de profissionais, bibliografia, cursos, ferramentas etc.
  • Linguagem SQL ● Histórico – Desenvolvida pela IBM na década de 1970 ● aplicação pragmática do modelo relacional ● Dialetos – Além da IBM, centenas de empresas desenvolveram variantes da linguagem SQL para incorporar em seus produtos – ISO/ANSI SQL 1989, 1992 ● DDL: Data Definition Language – linguagem de definição de dados ● DML: Data Manipulation Language – linguagem de manipulação de dados
  • DDL: criar tabelas e índices ● Definir campos – tipos de dados – regras (NOT NULL, AUTO INCREMENT) ● Definir índices – campos simples – campos combinados – campos texto (alguns GBDR) – campos de valor único (UNIQUE) – chave primária
  • DDL: exemplo
  • Tipos de dados ● CHAR ● VARCHAR ● TEXT ● DATE ● TIMESTAMP ● INTEGER ● FLOAT ● BLOB ● etc. http://dev.mysql.com/doc/refman/4.1/pt/reference.html
  • Operações básicas no modelo relacional ● Projetar ● Selecionar ● Vincular ● Em SQL: – SELECT matricula, nome, curso FROM alunos, cursos WHERE alunos.ano_ingresso >= 2000 AND alunos.cod_curso = cursos.cod_curso
  • Projetar ● Selecionar campos de uma relação para produzir uma nova relação
  • Selecionar ● Selecionar registros de uma relação para produzir uma nova relação
  • Vincular ● Extrair campos de duas ou mais relações diferentes para produzir uma nova relação ● Os registros são vinculados (relacionados) por um campo-chave
  • DML: selecionar registros
  • Software para bancos de dados relacionais ● Gerenciadores de Banco de Dados Relacionais (GBDR) – arquitetura cliente-servidor – as estações de trabalho são os clientes – um computador mais poderoso é o servidor ● SQL Engines – “motores” para embutir em outros softwares ● Aplicativos de acesso – softwares para rodar em estação de trabalho, com base de dados local ou remota (cliente- servidor)
  • GBDR do mercado ● Proprietários – Oracle – Microsoft SQL Server – IBM DB2 – Sybase – etc. (dezenas) ● Livres – MySQL – PostgreSQL – Firebird – etc. (poucos)
  • Vantagens do gerenciador de banco de dados ● Independência entre dados e aplicações – maior flexibilidade para uso dos dados ● Segurança – controles de acesso centralizados no GBDR ● Desempenho – suporte a um grande número de clientes consultando, inserindo e modificando dados simultaneamente ● Integridade – controles de consistência – ex.: proibido deletar um curso se houverem alunos inscritos
  • Aplicativos de acesso ● Servem para gerar relatórios e formulários de acesso a bancos de dados locais ou remotos ● Localmente, armazenam dados em um arquivo, acessado através de um “SQL Engine” ● Remotamente, podem acessar todos os GBDR importantes ● Exemplos desta categoria: – Microsoft Access ● parte do MS Office Professional – OpenOffice Base ● parte do OpenOffice.org 2.0
  • Paradigmas de armazenagem de dados ● Armazenagem baseada em arquivos – os programas clientes acessam diretamente os arquivos de dados ● CDS/ISIS ● dBase, Clipper, FoxPro ● Microsoft Access, SQLite ● aplicações de mainframe (~ 1960-1980) ● Armazenagem baseada em gerenciadores bancos de dados – os programas clientes acessam os dados através de um servidor de banco de dados – padrão atual do mercado de informática
  • SQL Engines ● “Motores” de bancos de dados para embutir em outros programas – ex: agenda de contatos ● SQLite ● Jet: o motor do MS Access ● HSQL: o motor do OpenOffice Base ● Apache Derby
  • Desvantagens do modelo relacional ● Dificuldade de lidar com ...seria interessante notar o absurdo  ...seria interessante notar o absurdo  do padrão do MRN [Modelo  campos compostos e do padrão do MRN [Modelo  Relacional Normalizado]: se um  Relacional Normalizado]: se um  campos multivalorados livro tiver 3 autores e 5 assuntos,  livro tiver 3 autores e 5 assuntos,  será necessário representá­lo no  ● Dificuldade de lidar com será necessário representá­lo no  MRN por meio de uma linha na  MRN por meio de uma linha na  hierarquias tabela Livros, mais 3 na Nomes­de­ tabela Livros, mais 3 na Nomes­de­ – categorias, relações autores (que implementaria o  autores (que implementaria o  atributo multivalorado  atributo multivalorado  genéricas ou partitivas correspondente) e mais 5 na de  correspondente) e mais 5 na de  – sub-campos Assuntos, num total de 9 linhas em  Assuntos, num total de 9 linhas em  ● Rigidez das estruturas três tabelas distintas [...]. três tabelas distintas [...]. de dados V. W. Setzer, Banco de Dados,  V. W. Setzer, Banco de Dados,  2005 2005
  • Tendências ● Redução dos sistemas baseados em arquivo a nichos muito específicos ● Longevidade do modelo relacional ● Crescimento do modelo semiestruturado
  • GBD semiestruturados ● GT.M ● Apache CouchDB ● MongoDB ● Google Datastore ● Neo4j ● Amazon SimpleDB ● ThruDB ● Apache Cassandra ● Hypertable ● Hadoop Hbase ● Riak ● Redis Quase todos são projetos recentes (iniciados após o ano 2000)
  • Referências ● Laudon, Kenneth. Sistemas de informacao ̧ ̃ gerenciais administrando a empresa digital. 5th ed. Rio de Janeiro: Pearson Prentice Hall, 2005. ● Setzer, V. Bancos de dados aprenda o que sao, ̃ melhore seu conhecimento, construa os seus. ̃ ̈ 1st ed. Sao Paulo: Edgard Blucher, 2005. ● Abiteboul, S., Buneman, P., Suciu, D. - Data on the web: from relations to semistructured data and XML, San Francisco: Morgan Kaufmann, 1999.
  • Exercício: Dicas do Alex ● Procure os títulos abaixo usando o PHPMyAdmin – Heuser, Carlos Alberto - Projeto de Banco de Dados – Elmasri, R. / Navathe, S. - Sistemas de Banco de Dados Por sinal, ambos são ótimas referências Para quem quer estudar o modelo relacional