Conceitos e Arquiteturas
A Historia dos Dados As Origens dos Dados As pessoas tem estado interessadas em dados pelo menos nos ultimos 12.000 anos. Embora hoje frequentemente associemos o conceito de dados com o computador, historicamente tem existido muitos metodos mais primitivos de armazenamento e manipulacao de dados. Nos tempos antigos, no Oriente Medio, pastores de ovelhas mantinham controle de seus rebanhos com pedras. A Medida que cada ovelha deixava seu cercado para pastar, o pastor colocava uma pedra em um pequeno saco. Quando todas as ovelhas jĂĄ tinham saido, ele tinha um registro de quantas estavam pastando. Quando elas retornavam, o pastor retirava do saco um pedra para cada animal; se houvesse mais pedras do que ovelhas, ele sabia que algumas ainda nĂŁo haviam retornado ou estavam perdidas. Este foi, na verdade, um exemplo primitivo porem legitiimo de armazenamento e recuperacao de dados.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
1
Conceitos e Arquiteturas
A Historia dos Dados Os Dados Atraves dos Tempos Da mesma forma que com Susa e Uruk (Antigas Cidades no que hoje comecemos no Ira) muito do interesse antigo nos dados pode ser associado ao crescimento das cidades. Cacada e coleta simplesmente para subsistencia e, mais tarde, agricultura tinham apenas uso limitado do conceito de dados. Contudo, quando as pessoas vivem em cidades, elas tendem a se especializar nas mercadorias e servicos que produzem. Elas se tornam dependentes umas das outras, realizando escambo e usando dinheiro para negociar estas mercadorias e servicos para sobrevivencia mutua. Este conceito encorajou a manutencao de registros – o registro de dados para controlar quanto uma pessoa produziu e pelo que pode ser trocado ou por quanto pode ser vendido.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
2
Conceitos e Arquiteturas
A Historia dos Dados A Origem dos Dispositivos de Calculo Tambem foi no seculo XVII que as pessoas comecaram a se interessar por dispositivos que pudesem procesar seus dados automaticamente, ainda que de uma maneira rudimentar. Blaise Pascal produziiu um dos primeiros e mais conhecidos dispositivos desse tipo na Franca na decada de 1640, pretensamente para ajudar seu pai a manter registros dos dados relativos a seu trabalho como coletor de impostos. Era uma pequena caixa que continha engrenagens interligadas e capaz de realizar somas e subracoes. Este foi o precursos dos odometros mecanicos de automoveis de hoje. Em 1805, Joseph Marie Jacquard, da Franca, inventou um dispositivo que automaticamente reproduzia padroes durante o processo de tecelagem. O cerne do dispositivo era uma serie de cartoes com furos. Esses furos permitiam que fios do material fossem entrelacados em um sequencia que produzia o padrao desejado. Embora o tear de Jacquard nĂŁo fosse um dispositivo de calculo em si, seu metodo de armazenar padroes de tecido, uma forma de dados graficos, com furos em cartoes perfurados, era um meio muito inteligente de armazenamento de dados, o que teria grande importancia para dispositivos de computacao a seguir com Charles Babbage, um matematico e inventor ingles do seculo XIX, que pegou o conceito de armazenamento de dados em cartoes perfurados de Jacquard, iniciando em 1833 um projeto para construcao do que seria Maquina Analitica (nĂŁo foi concluida). Mas muitos dos principios dos computadores modernos estavam incluidos no seu projeto.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
3
Conceitos e Arquiteturas
A Historia dos Dados Imerso em Dados No final do seculo XIX, um enorme problema de armazenamento e recuperacao de dados e uma tecnologia de maquinas grandemente melhorada conduziram a era do moderno processamento de informacoes. O Censo americano de 1880 levou cerca de sete anos para ser compilado a mao. Com uma populacao em rapida expansao, estimulada pela imigracao macica, foi estimado que, se as mesmas tecnicas manuais fossem usadas, a cimpilacao do censo de 1890 não seria completada antes que os dados do censo de 1900 tivesem comecado a ser coletados. A solucao para o processamento dos dados do censo foi fornecidad por um engenheiro do governo chamado Herman Hollerith. Baseando seu trabalho no conceito de cartoes perfurados de Jacquard, ele conseguiu fazer com que os dados do censo fossem armazenados em cartoes perfurados, construindo dispositivos para perfurar e ordenar os cartoes com fios tocando os cartoes fechavam os circuitos ao passar pelos furos e incrementavam os contadores. Usando este equipamento a contagem total da populacao do censo de 1890 foi completada um mês após a entrada de todos os dados. Em 1896, Hollerith formou a Tabulating Machine Company para produzir e comercializar seus dispositivos. Essa Companhia, combinada com varias outras, acabou for formar o que hoje e a International Business Machines Corporation (IBM).
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
4
Conceitos e Arquiteturas
A Historia dos Dados Meios Modernos de Armazenamento de Dados Dos dias de Hollerith e Power (fundador da divisao UNIVAC, posteriormente Unisys Corporation) passando pela decada de 1940, o processamento de dados comerciais foi executado por uma variedade de dispositivos eletromecanicos baseados em cartoes perfurados, incluindo calculadoras, perfuradoras, ordenadoras e impressoras. Os dados eram armazenados em cartoes perfurados, enquanto as instrucoes de processamento eram por sua vez inseridas em encaixes nos dispositivos eletromecanicos, posteriormente sendo substituidos por computadores eletronicos os quais foram introduzidos comercialmente nos meados do decada de 1950. A introducao de computadores eletronicos em 1950, coincidiu com uma grande expansao do desenvolvimento economico, o que aumentou o nivel de exigencia de armazenamento e recuperacao de dados. Este periodo apĂłs a segunda Guerra Mundial foi um tempo de rapido crescimento comercial nos Estados Unidos e de reconstrucao da Europa e do Extremo Oriente. Deste ponto em diante, tornou-se nebuloso o ritmo intenso dos novos requisitos de armazenamento e recuperacao dos dados, a medida que mais e mais funcoes e procedimentos comerciais eram automatizados e avancos tecnologicos eram feitos nos dispositivos computacionais.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
5
Conceitos e Arquiteturas
Os Dados no Ambiente Atual dos SI Usando Dados para Obter Vantagens Competitivas Os computadores de hoje são maravilhosas tecnologias. Sua velocidade, capacidade, facilidade de uso, preco relacionado a sua capacidade e, sem, sua capacidade de armazenamento de dados são realmente espantosos. E, ainda hoje, nosso principal interesse em computadores não e diferente do interesse que os pastores de ovelhas do antigo Oriente Medio tinham em suas pedras e sacos: eles são veiculos que precisamos para armazenar e utilizar os dados importantes para nos no nosso ambiente. De fato, os dados tem se tornado indispensaveis em todo tipo de organizacoes modernas de negocios e governamentais. Os dados, as aplicacoes que processam os dados e os computadores no quais as aplicacoes são executadas são fundamentais em todos os aspectos de cada tipo de empreendimento. Ao falar de recursos corporativos, as pessoas costumam listar itens como capital, instalacoes e equipamentos, estoque, pessoal e patentes. Hoje, qualquer lista de recursos corporativos deve incluir os dados da empresa. Tem sido sugerido que os dados são os recursos Corporativos mais importantes porque descrevem todo os outros. Dados podem dar a uma empresa vantagem competitiva crucial. Falamos rotineiramente de dados e da informacao derivada deles como armas competitivas. (Exemplo: FedEx quando foi o primeiro a fornecer acesso aos dados de reatreamento de pacotes em seu Web site)
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
6
Conceitos e Arquiteturas
Os Dados no Ambiente Atual dos SI Dados como um Recursos Corporativo Cada Recurso corporativo tem que ser gerenciado cuidadosamente para que uma empresa possa acompanha-lo, protege-lo e distribui-lo para aquelas pessoas e propositos da empresa que precisem dele. Alem disso, empresas publicas tem para com seus acionistas a responsabilidade de gerenciar completamente os bens das mesmas. Voce consegue imaginar o dinheiro de uma empresa largado em algum lugar sem ser gerenciado cuidadosamente ? Os dados não são exececao !!!! Todavia, os dados podem ser o recurso corporativo mais dificil de gerenciar. Em dados, temos um recurso de volume enorme, bilhoes, trilhoes e mais de pedacos individuais de dados, cada um sendo diferente do proximo. E eles tem a caracteristica de que uma grande parte dos mesmos esta mudando o tempo todo. Voltando ao inicio ate meados da decada de 1960, pouco mais de dez anos após a introducao de computadores eletronicos comercialmente viavies, algumas empresas, olhando para o futuro, comecaram a perceber que armazenar os dados de cada aplicacao separadamente, em arquivos simples, estava se tornando problematico e não iria funcionar a longo prazo, devido precisamente sobre os seguintes motivos: Aumento do volume de dados, Aumento na demanda de acesso aos dados, necessidade de seguranca e privacidade de dados, copias de seguranca e recuperacao, e o desejo de compartilhar dados e diminuir sua redundancia. Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
7
Conceitos e Arquiteturas
Os Dados no Ambiente Atual dos SI Dados como um Recursos Corporativo Diversas coisas estavam ficando claras. A tarefa iria requerer um novo tipo de software para ajudar a gerenciar os dados e hardware cada vez mais rapido para acompanhar as demandas do crescente volume de dados e acessos a dados. Em termos de pessoal, especialistas em gerencia de dados teriam que ser desenvolvidos, educados e receberr a responsablidade pela gerencia de dados como um recurso corporativo. Desta necessidade nasceu um novo tipo de software, o Sistema de Gerencia de Banco de Dados (SGBD), e uma nova categoria de pessoal, com titulos como Administrador de Banco de Dados e especialistas em gerencia de Dados. E, sim, o hardware ficou progressivamente mais rapido e barato considerando o grau de desempenho que ele fornece.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
8
Conceitos e Arquiteturas
Os Dados no Ambiente Atual dos SI O Ambiente do Banco de Dados No inicio da decada de 1960, a enfase no que era entao chamado de processamento de dados estava na programacao. Os dados não eram muito mais que algo a ser pensado depois, durante o processo de desenvolvimento da aplicacao e na execucacao da instalacao do processamento de dados, devido basicamente aos fatores (equipamentos com memorias principais muito pequenas e sistemas operacionais muito simplistas). Mas entao, enquanto avancavamos pela decada de 1960 de pois, dois eventos ocorridos simultaneamente fizeram este quadro se alterar para sempre. Um foi que as memorias principais se tornaram progressivamente maiores e mais baratas e os sistemas operacionais mais poderosos. O segundo foi que os computadores se tornaram cada vez mais rapidos e baratos com base em seu preco/desempenho. Logoo uso de linguagens de programacao de mais alto nivel sendo usadas por uma quantidade maior de pessoas, permitindo que algumas enfases mudassem de foco. Entao empresas comecaram a ver o valor de pensar nos dados como um recurso Corporativo e em usa-los como arma Competitiva. O Resultado foi o desenvolvimento do software de Sistemas de Gerencia de Banco de Dados (SGBD) e a criacao do ambiente de Banco de Dados. O ambiente de BD e projetado para corrigir em grande parte todos os problemas do ambiente que não sejam os de banco de dados. Ele encoraja o compartilhamento de dados e controle de redundancia, com importantes melhorias na correcao dos dados. Permite o armazenamento de grandes volumes com tempos aceitaveis de acesso e de respostas as consultas e ainda fornece ferramentas para controlar a seguranca e privacidade, copia de seguranca e recuperacao. Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
9
Conceitos e Arquiteturas
Conceitos Basicos Bancos de Dados Fazem parte do nosso dia-a-dia: Operacao bancaria Reserva em hotel Matricula em um curso da Universidade Cadastro na Video Locadora
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
10
Conceitos e Arquiteturas
Conceitos Basicos Area de Banco de Dados Pesquisa e Desenvolvimento de Tecnologias para dar suporte eficiente ao gerenciamento de dados de Sistemas de Informacao.
Dados Fato do mundo real que esta registrado e possui um significado implicito no contexto de um dominio de aplicacao. Exemplo: CEP, Data de Nascimento
Informacao Fato util que pode ser extraido direta ou indiretamente a partir dos dados. Exemplo: Endereco, Idade.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
11
Conceitos e Arquiteturas
Conceitos Basicos Banco de Dados Colecao de dados inter-relacionados e persistentes que representa um sub-conjunto dos fatos presentes em um dominio de aplicacao (universo de discurso).
SGBD Colecao de Programas que permitem aos usuarios criarem e manipularem uma base de dados. Um SGBD e, assim um sistema de software de proposito geral que facilita o processo de definir, construir e manipular bases de Dados de diversas aplicacoes: Definir uma base de dados envolve a especificacao de tipos de dados a serem armazenados na base de dados. Construir uma base de dados e o processo de armazenar os dados em algum meio que seja controlado pelo SGBD. Manipular uma base de dados indica a utilizacao de funcoes como a de consulta, para recuperar dados especificos da base para refletir mudancas no mini-mundo (insercoes, atualizacoes e remocoes), e geracao de relatorios.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
12
Conceitos e Arquiteturas
Quem e o DBA Administrador de Banco de Dados São profissionais responsaveis pela criacao, manutencao e seguranca do Banco de Dados das empresas – programa que centraliza todas as informacoes relevantes da empresa. E a autoridade maxima para gerenciar um Banco de Dados. Ele possui uma conta privilegiada no SGBD, a qual permite que o Administrador tenha alguns direitos que não estao disponiveis para usuarios comuns. Cada banco de dados requer pelo menos um DBA A tarefa de um Administrador de Banco de Dados (DBA) pode ser exercida por uma única pessoa ou por um grupo de pessoas, dependendo do tamanho da empresa Principal meta de um ABD: configurar o manter o BD de modo a torná-lo robusto, seguro e rápido nos serviços prestados DBA deve ser pró-ativo: implementar práticas e procedimentos para evitar que ocorram problemas.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
13
Conceitos e Arquiteturas
DBA X Mercado Um Mundo de Oportunidades Information Week Dez/2000 mostrou numa pesquisa com gerentes de TI que as duas mais importantes questões relativas à gerência de BD são: Facilidade de administração Disponibilidade de administradores qualificados Outra pesquisa mostra que as vagas para DBA demoram mais a ser preenchidas do que outras posições Acessando o Bureau of Labor Statistics Occupational Handbook Web site (www.bls.gov/oco), buscando por database administrator, entrontra-se que a ocupação de DBA é esperado crescer a uma taxa maior que a média (>36%) até 2012. O U.S. Department of Labor Statistics lista DBA como uma das 10 mais profissões em rápido crescimento. O governo americano prevê 66% de aumento na demanda por DBa até o final desta década. Por ser um “hot job”, DBAs requerem e obtêm salários altos!!!!
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
14
Conceitos e Arquiteturas
DBA X Mercado Nem tudo são Flores Administração de BD é uma tarefa ininterrupta (24X7) Prepare-se para muitas horas extras de trabalho, especialmente em horários incovenientes (madrugadas e fins-de-semana), ou seja, fora das horas de pico Média de trabalho de DBA (fonte META Group) é de mais de 50 horas por semana. Mas, as vantagens se sobrepõem às desvantagens como veremos neste curso ☺ ...
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
15
Conceitos e Arquiteturas
DBA X Mercado Avaliando uma Oferta de Emprego Além do salário ☺, é preciso indagar outras questões: A empresa oferece treinamento regular aos DBAs? A empresa permite DBA participar reuniões de user groups? Existe mais de um DBA (de modo que você não seja o único responsável por 24X7)? Existe Analista (ou Administrador) de Dados e administrador de sistemas? DBAs participam de revisões de design, discussões de orçamento e outros comitês de TI da empresa?
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
16
Conceitos e Arquiteturas
Atividades do DBA Principais Tarefas Separar os aspectos de negócio da gestão de dados dos aspectos tecnológicos. Entender o negócio e traduzir para um modelo conceitual e lógico Fazer coleta de requisitos, análise e projeto de BD Identificar e catalogar os dados requeridos por usuários do negócio Produzir modelos de dados conceitual e lógico com a visão global da empresa, e dos diversos relacionamentos entre dados para processos de negócio Política de dados para a organização Estabelecimento de padronização Documentação, compartilhamento e implementação dos dados Uso de um repositório para metadados
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
17
Conceitos e Arquiteturas
Atividades do DBA Principais Tarefas Separar os aspectos de negócio da gestão de dados dos aspectos tecnológicos. Entender o negócio e traduzir para um modelo conceitual e lógico Fazer coleta de requisitos, análise e projeto de BD Identificar e catalogar os dados requeridos por usuários do negócio Produzir modelos de dados conceitual e lógico com a visão global da empresa, e dos diversos relacionamentos entre dados para processos de negócio Política de dados para a organização Estabelecimento de padronização Documentação, compartilhamento e implementação dos dados Uso de um repositório para metadados
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
18
Conceitos e Arquiteturas
Atividades do DBA Principais Tarefas Fazer Auditoria Controlar e monitorar acesso dos usuários Migrar Banco de Dados para outras tecnologias Manter ambientes de BD de Teste e Produção Monitorar e otimizar performance Assegurar disponibilidade do SGBD Fazer backup e recuperação a falhas Integridade dos dados Migração de dados Contactar fabricante para suporte Participar de reuniões estratégicas e de projeto Descobrir e testar novas tecnologias Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
19
Conceitos e Arquiteturas
Atividades do DBA Principais Tarefas Entender os modelos de dados produzidos pelo DA e comunicar estes modelos com os desenvolvedores de aplicações Instalar e fazer upgrades do SGBD Inicializar e Finalizar o SGBD Alocar memória e planejar futuros requisitos de memória (crescimento) Criar estruturas de armazenamento de banco de dados (tablespaces) para as aplicações Criar tabelas, visões e índices Modificar esquemas Atribuir papéis a usuários e manter segurança
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
20
Conceitos e Arquiteturas
Arquiteturas Plataforma Centralizada Na arquitetura centralizada, existe um computador com grande capacidade de processamento, o qual é o hospedeiro do SGBD e emuladores para os vários aplicativos. Esta arquitetura tem como principal vantagem a de permitir que muitos usuários manipulem grande volume de dados. Sua principal desvantagem est no seu alto custo, pois exige ambiente especial para mainframes e soluções centralizadas.
Sistema de Computador Pessoal Os computadores pessoais trabalham em sistema stand-alone, ou seja, fazem seus processamentos sozinhos. No começo esse processamento era bastante limitado, porém, com a evolução do hardware, tem-se hoje PCs com grande capacidade de processamento. Eles utilizam o padrão Xbase e quando se trata de SGBDs, funcionam como hospedeiros e terminais. Desta maneira, possuem um único aplicativo a ser executado na maquina. A principal vantagem desta arquitetura é a simplicidade.
Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain
www.unip.br
21
Conceitos e Arquiteturas
Arquiteturas Banco de Dados Cliente-Servidor Na arquitetura Cliente-Servidor, o cliente (front-end) executa as tarefas do aplicativo, ou seja, fornece a interface do usuário (tela, e processamento de entrada e saída). O Servidor (back-end) executa as consultas no DBMS e retorna os resultados ao cliente. Apesar de ser uma arquitetura bastante popular, são necessárias soluções sofisticadas de software que possibilitem: o tratamento de transações, as confirmações de transações (commits), desfazer transações (rollbacks), linguagens de consultas (stored procedures) e gatilhos (triggers). A principal vantagem desta arquitetura é a divisao do processamento entre dois sistemas, o que reduz o trafego de dados na rede.
Banco de Dados Distribuidos (N Camadas) Nesta arquitetura, a informação está distribuída em diversos servidores. Cada Servidor atua como no sistema cliente_servidor, porem as consultas oriundas dos aplicativos são feitas para qualquer servidor indistintamente. Caso a informação solicitada seja mantida por outro servidor ou servidores, o sistema encarrega-se de obter a informação necessária, de maneira transparente para o aplicativo, que passa a atuar consultando a rede, independente de conhecer seus servidores. Exemplos típicos são as bases de dados corporativas, em que o volume de informação é muito grande e, por isso, deve ser distribuídos em diversos servidores. Porém, não é dependente de aspectos lógicos de carga de acesso aos dados, ou base de dadso fracamente acoplados, em que uma informação solicitada vai sendo coletada numa propagação da consulta numa cadeia de servidores. A característica básica é a existência de diversos programas aplicativos consultando a rede para acessar os dados necessários, porém, sem o conhecimento explicito de quais servidores dispõem desses dados. Faca sempre a coisa certa. Isso gratificara algumas pessoas, e apavorara as restantes – Mark Twain 22
www.unip.br