Oracle9i: Tuning de Aplicações. Oracle9i: Tuning de Aplicações

Tamanho: px
Começar a partir da página:

Download "Oracle9i: Tuning de Aplicações. Oracle9i: Tuning de Aplicações"

Transcrição

1 Oracle9i: Tuning de Aplicações Oracle9i: Tuning de Aplicações I

2 Oracle9i: Tuning de Aplicações Sumário 1. Seguindo uma Metodologia de Tuning Objetivos Visão Geral Gerenciando a Performance Fatores a Serem Gerenciados Problemas de Performance Recursos Críticos Demanda Excessiva Metodologia de Tuning Responsabilidades do Tuning Tuning de Comandos SQL Aplicando a Metodologia Processamento de Comandos SQL Objetivos Visão Geral Shared SQL Areas Fases do Processamento de Comandos SQL Compartilhando Cursores: Benefícios Compartilhando Cursores: Requisitos Monitorando Cursores Compartilhados V$LIBRARYCACHE V$SQLAREA Monitorando o Uso de Cursores Compartilhados Escrevendo SQL para Compartilhar Cursores EXPLAIN e AUTOTRACE Objetivos Criando a Tabela PLAN_TABLE Comando EXPLAIN PLAN Exemplo de EXPLAIN PLAN Exibindo o Plano de Execução Interpretando o Plano de Execução AUTOTRACE do SQL*Plus Exemplos de AUTOTRACE do SQL*Plus Estatísticas do AUTOTRACE do SQL*Plus Exercícios SQL Trace e TKPROF Objetivos SQL Trace Utilizando o SQL Trace Parâmetros de Inicialização Habilitando o SQL Trace Encontrando seus Arquivos de Trace Formatando os Arquivos de Trace Opções do Comando TKPROF Resultado do Comando TKPROF

3 Oracle9i: Tuning de Aplicações Exemplo do Resultado do TKPROF: Sem Índice Exemplo do Resultado do TKPROF: Índice Único Algumas Armadilhas de Interpretação do TKPROF Exercícios Otimização Baseada em Regra Versus Otimização Baseada em Custo Objetivos Visão Geral Funções do Otimizador do Oracle9i Otimização Baseada em Regra Otimização Baseada em Custo Escolhendo entre RBO e CBO Configurando o Modo do Otimizador Características do RBO Esquema de Ranking do RBO Exemplo de Otimização Baseada em Regra Influenciando a Otimização Baseada em Regra Índices e Métodos de Acesso Básicos Objetivos ROWIDs do Oracle9i Índices Estrutura de Índice B-Tree Índices e Constraints Sintaxe do CREATE INDEX Índices e Foreign Keys Métodos de Acesso Básicos Coletando Estatísticas Objetivos Comando ANALYZE Estatísticas de Tabela Estatísticas de Índice Estatísticas de Coluna Estatísticas de Cluster Seletividade de Predicados Variáveis Bind e Seletividade de Predicados Histogramas Exemplo Comparativo de Histogramas Exemplo de Coleta de Estatísticas para Histogramas Dicas para Histogramas Quando Utilizar Histogramas Escolhendo um Sample Size Escolhendo o Número de Entradas Visualizando Estatísticas de Histogramas Exercícios Influenciando o Otimizador Objetivos Configurando o Modo de Otimização...8-3

4 Oracle9i: Tuning de Aplicações Alguns Parâmetros Adicionais do Otimizador Sintaxe de Hints para o Otimizador Regras para Hints Recomendações de Hints Exemplo de Hints de Otimização Categorias de Hints Hints de Caminhos de Acesso Básicos Hints de Caminhos de Acesso Avançados Hints Adicionais Hints e Visões Hints de Processamento de Visões Índices Avançados Objetivos Índices Bitmap Estrutura de Índices Bitmap Criando Índices Bitmap Utilizando Índices Bitmap para Consultas Combinando Índices Bitmap Quando Utilizar Índices Bitmap Vantagens de Índices Bitmap Dicas sobre Índices Bitmap Índices e Métodos de Acesso as Linhas Hints de Índices Exemplo do Hint INDEX_COMBINE Informações do Dicionário de Dados Workshops... 1 Workshop 1: Uma Única Tabela, Um Único Predicado... 2 Workshop 2: Ordenação, Agregação e Operações de Conjunto... 7

5 Oracle9i: Tuning de Aplicações 1. Seguindo uma Metodologia de Tuning

6 Seguindo uma Metodologia de Tuning Objetivos Descrever as causas de problemas de performance. Identificar as principais áreas de sistema que você pode afetar pelo processo de tuning. Descrever a metodologia de tuning. Apresentar as vantagens de seguir a metodologia de tuning em sua ordem correta. Listar os passos de tuning que são de responsabilidade do desenvolvedor da aplicação. 1-2

7 Seguindo uma Metodologia de Tuning Visão Geral Gerenciamento da performance. Problemas de performance. Metodologia de tuning. Tuning de comandos SQL. Metodologia de aplicação. Qualquer pessoa envolvida em tuning deve seguir uma metodologia de tuning para obter o máximo de performance. Tuning de comandos SQL é um passo importante que custa menos quando efetuado no momento correto dentro da metodologia. Em adição a efetuar o tuning no momento correto, você deve também possuir uma boa compreensão dos detalhes envolvidos no gerenciamento da performance e os tipos de problemas de performance que podem aparecer. 1-3

8 Seguindo uma Metodologia de Tuning Gerenciando a Performance Inicie no momento certo. Defina os objetivos. Efetue o tuning e monitore a conformidade. Trabalhe em equipe. Trate exceções e modificações. O processo de tuning exige vários passos: Inicie no Momento Certo O gerenciamento de performance deve acompanhar a aplicação ou projeto continuamente para ser totalmente efetivo. Você deve começar a considerá-lo no estágio de design. Defina os Objetivos Defina seus objetivos de uma forma aceita e acordada com todas as partes interessadas. Efetue o Tuning e Monitore a Conformidade Após você definir e acordar os objetivos, você estará pronto para efetuar o tuning e atingir estes objetivos, monitorando seu progresso a medida que efetua o tuning. Você deve manter registros detalhados sobre o nível de conformidade conforme a necessidade. Você deve publicar indicativos de medidas em intervalos regulares, destacando quaisquer divergências ou tendências. Trabalhe em Equipe Administradores de banco de dados, administradores de sistema e programadores devem trabalhar em equipe como um time, não como adversários. Trate Exceções e Modificações Uma vez que o monitoramento efetivo estiver sendo realizado e suportado no mesmo nível da aplicação, você deve reagir prontamente a exceções quando estas forem reportadas. Utilize os dados disponíveis para traçar um curso de ação e então analise a performance resultante para determinar se sua ação foi bem sucedida. Se mudanças globais no uso de padrões ou capacidade de equipamento ocorrerem, então você deve considerar a definição de novos objetivos. 1-4

9 Seguindo uma Metodologia de Tuning Fatores a Serem Gerenciados Schema. Design de dados. Índices. Aplicação Comandos SQL. Código procedural. Instância. Banco de dados. Expectativas do usuário. O gerenciamento de performance pode ser dividido nas quatro áreas seguintes. Embora as áreas estejam separadas, são também independentes e necessitam diferentes qualificações. Schema O tuning do schema trata da estrutura física dos dados. O tuning da aplicação trata das funções de negócio e dos módulos de programa que implementam as funções. Tuning do código procedural para o tipo de aplicação e tuning dos comandos SQL embutidos também estão incluídos neste estágio. O tuning da instância trata da instalação do Oracle9i Server e como a memória será utilizada. O tuning do banco de dados trata do gerenciamento da localização física dos dados no disco. Se uma aplicação possuir um design de dados inadequado ou inapropriado, então efetue o tuning da alocação física, provendo índices ou reescrevendo programas que não superaram o problema. Comandos SQL Se uma aplicação foi bem desenhada, ainda assim pode prover uma performance ruim. Uma razão comum para isto são comandos SQL escritos de forma incorreta. Expectativas do Usuário Usuários esperam uma performance consistente. Eles podem competir com funções de aplicação lentas se entenderem porque a aplicação está demorando mais que o habitual. A equipe do projeto deve colocar esforços em construir uma expectativa de usuário realista em relação a performance, possivelmente incluindo mensagens de aplicação para advertir operadores que eles estão requisitando operações que consumidoras de recursos. O melhor momento para fazer isto é antes das fases de design e construção, e como parte da fase de transição. 1-5

10 Seguindo uma Metodologia de Tuning Problemas de Performance Recursos consumidos inadequadamente. CPU I/O Memória (pode ser detectado como um problema de I/O) Recursos de comunicação de dados Recursos de design inadequados. Bloqueio (locking). Problemas de performance ocorrem quando uma função consome muito mais tempo para executar que o tempo permitido. Isto é devido a um recurso de um tipo particular ser insuficiente ou inadequado. O recurso pode ser um recurso físico, como buffers de memória disponíveis para armazenar blocos de dados, ou um recurso artificial, como um lock. Recursos Consumidos Inadequadamente Um recurso pode simplesmente ser inadequado para satisfazer a necessidade sob quaisquer circunstâncias. Por exemplo, se você deseja que uma função seja completada em até um segundo, uma rede com um tempo de resposta de dois segundos nunca irá atingir o objetivo. Se o fator limitante é um recurso consumível, como poder de CPU, todos os usuários deste recurso são afetados. Recursos de Design Inadequados Se o fator limitante for a contenção de processos para um recurso de design, como um lock, então somente os usuários destes processos específicos serão provavelmente afetados. Bloqueio (locking) Contenção devido a lock por outras transações ou aplicações pode ser um problema. 1-6

11 Seguindo uma Metodologia de Tuning Recursos Críticos A performance depende: Quantos clientes necessitam do recurso. Quanto tempo terão de esperar por ele. Quanto tempo irão segurá-lo. Considere a limitação da demanda para manter tempos de resposta aceitáveis. O tempo de resposta é definido como o tempo de serviço mais o tempo de espera para completar uma determinada tarefa. 1-7

12 Seguindo uma Metodologia de Tuning Demanda Excessiva Grandes aumentos no tempo de resposta. Reduz o troughput. Deve ser evitada sempre que possível limitando a demanda a um nível que mantenha sempre um troughput razoável. O troughput é definido como a quantidade total de trabalho realizado pelo sistema em uma determinada quantidade de tempo. Muitos processos utilizando um sistema simultaneamente podem resultar nos seguintes sintomas: Tempo de Resposta Maior A maioria dos usuários conhece e compreende os efeitos de filas no aumento do tempo de resposta. Eles podem ser preparados para aceitar repostas lentas em momentos de alta utilização do sistema se o efeito for linear. Entretanto, tanto teorias estatísticas quanto experiências mostram que uma vez que o tempo de resposta começa a deteriorar, pequenos aumentos na carga podem causar um efeito grava, o qual é completamente inaceitável para os usuários. Throughput Reduzido Qualquer degradação notável no tempo de resposta é como romper a taxa de trabalho dos usuários afetados. Muitas pessoas não entendem que adicionando mais usuários ao sistema significativamente diminui o throughput geral do sistema. Se o throughput do sistema for importante, você deve garantir que o número de usuários não exceda o limite no qual o throughput começa a diminuir. É melhor limitar o número de usuários mecanicamente. Isto pode forçar uma mudança nos padrões de trabalho para enfrentar a restrição, mas dividindo os períodos de pico através do dia de trabalho pode melhorar em muito a forma como o sistema é utilizado. 1-8

13 Seguindo uma Metodologia de Tuning Metodologia de Tuning 1. Tuning das funções de negócio. 2. Tuning do design de dados. 3. Tuning do design de processos. 4. Tuning de comandos SQL. 5. Tuning de estruturas físicas. 6. Tuning da alocação de memória. 7. Tuning de I/O. 8. Tuning da contenção de memória. 9. Tuning do sistema operacional. A lista acima apresenta as várias fases do ciclo de desenvolvimento nas quais o tuning pode ser aplicado. Seguir os passos nesta ordem é altamente recomendado pelas seguintes razões: Quanto mais anterior a etapa em que o tuning for iniciado, maior o potencial para melhoria na performance. Quanto mais posterior a etapa em que o tuning for iniciado, maior será custo para efetuar ou refazer isto depois. Por exemplo, modificações para as estruturas de dados e código de aplicação após o design inicial tendem a ser caras e necessitarem de gastos adicionais para retestar os componentes afetados. Decisões feitas em um passo podem influenciar os passos subseqüentes. Por exemplo, o comando SQL que você escreveu no passo 4 pode ter significante influência nos detalhes de parse e cache que são tratados no passo 6. Quanto mais extensivamente você utilizar as técnicas de design orientado a objeto e a arquitetura multi-tier, maior serão as chances de você seguramente conseguir efetuar quaisquer mudanças na aplicação a um custo razoável. 1-9

14 Seguindo uma Metodologia de Tuning Responsabilidades do Tuning Analista de Negócios Designer Desenvolvedor da Aplicação Administrador do Banco de Dados Administrador do Sistema Operacional 1. Tuning das funções de negócio 2. Tuning do design de dados 3. Tuning do design de processos 4. Tuning de comandos SQL 5. Tuning de estruturas físicas 6. Tuning da alocação de memória 7. Tuning de I/O 8. Tuning de contenção de memória 9. Tuning do sistema operacional O analista de negócios, designer, desenvolvedor da aplicação, administrador do banco de dados e administrador do sistema operacional são responsáveis por diferentes passos no processo de tuning. Em alguns casos, uma pessoa pode preencher vários destes papéis. Os passos efetuados pelo administrador do banco de dados e administrador do sistema operacional possuem menos efeito na performance do que os passos anteriores, mas eles podem ser efetuados a um custo relativamente baixo com resultados imediatamente disponíveis e observáveis. O quarto passo da metodologia é principalmente responsabilidade do desenvolvedor da aplicação. Entretanto, o entendimento de como o tuning de SQL é efetuado pode permitir aos designers projetar schemas que serão mais facilmente otimizados. Administrador de banco de dados com esta compreensão serão capazes de ajudar a definir as necessidades e solução do tuning de SQL, desta forma aliviando o fardo de seus bancos de dados. Isto é especialmente útil se a aplicação já estiver em produção e os desenvolvedores não estiverem mais disponíveis. 1-10

15 Seguindo uma Metodologia de Tuning Tuning de Comandos SQL Utilize ferramentas de análise de performance para verificar o resultado dos seguintes passos: 1. Tuning de schema. Adicione índices. Crie tabelas do tipo index organized. Crie clusters. 2. Escolha a linguagem: SQL ou PL/SQL. 3. Projete a reutilização da otimização de SQL. 4. Projete e otimize comandos SQL. 5. Maximize a performance com o otimizador. Durante os passos dentro do tuning de comandos SQL, técnicas de análise devem ser freqüentemente utilizadas para determinar metas e progresso. 1. Tuning de schema. O designer é responsável por determinar quais tabelas devem ser utilizadas, seus conteúdos e detalhes similares. O desenvolvedor da aplicação pode então necessitar decidir quando utilizar indexação, quando utilizar tabelas index organized e quando utilizar clusterização. Desnormalização pode ser necessária para se obter uma boa performance, especialmente em ambientes de data warehouse. As decisões destes passos podem ter grande efeito na performance de quaisquer comandos SQL que venham a utilizar estas estruturas. 2. Escolhendo a linguagem: SQL ou PL/SQL. Em alguns casos, você pode obter melhor performance utilizando a linguagem PL/SQL para executar um tarefa. 3. Projetando a reutilização do parse de SQL, otimização e esforços de tuning. O Oracle pode freqüentemente reutilizar alguns de seus esforços ao efetuar o parse e a otimização quando identificar comandos idênticos repetidos. Portanto, criando comandos SQL que sejam idênticos pode melhorar a performance. Ele também permite ao desenvolvedor da aplicação focar o tuning de comandos SQL individuais que são repetidamente utilizados. 4. Projetando e otimizando comandos SQL. Existe uma grande variedade de métodos para projetar comandos SQL de alta performance. O conhecimento das funções globais do otimizador ajuda a visualizar onde os esforços de tuning podem ser efetivos.considere reescrever comandos SQL em comandos semanticamente equivalentes. Além disso, utilize a linguagem correta (SQL ou PL/SQL) em cada situação. 5. Obtendo o máximo de performance com o otimizador. Para fazer o melhor uso do otimizador baseado em custo do Oracle, você deve entender como ele escolhe os métodos de acesso aos dados. Você deve auxiliar o otimizador baseado em custo utilizando o comando ANALYZE, e algumas vezes fornecendo hints sobre o melhor caminho de acesso. O otimizador baseado em regra também está disponível. Ambos os otimizadores serão discutidos no capítulo

16 Seguindo uma Metodologia de Tuning Aplicando a Metodologia Seja pró-ativo comece no topo da metodologia e siga os passos. Se você tiver que ser reativo, siga os passos de baixo para cima, utilizando as seguintes dicas: Estabeleça objetivos quantificáveis. Trabalhe a um mínimo de testes repetitivos. Faça perguntas aos usuários afetados e evite preconcepções. Teste hipóteses e mantenha anotações. Pare quando você alcançar o objetivo. Freqüentemente, especialistas em performance são chamados muito tarde no ciclo de vida de um projeto, quando os sistemas estão em produção e a performance ficou inaceitável. Nesta situação, inicie pelo final da lista de métodos de tuning e siga para os passos anteriores. Os itens do final são mais baratos e rápidos para se obter resultados. Se eles não resolverem o problema, você terá que trabalhar os itens mais acima da lista, e isto irá aumentar os custos e os tempos para execução. 1-12

17 Oracle9i: Tuning de Aplicações 2. Processamento de Comandos SQL

18 Processamento de Comandos SQL Objetivos Descrever os passos básicos envolvidos no processamento de um comando SQL. Monitorar o uso de shared SQL areas. Escrever comandos SQL para obter vantagens das shared SQL areas. 2-2

19 Processamento de Comandos SQL Visão Geral Shared SQL areas. Fases do processamento de SQL. Shared cursors. Padrões de codificação SQL. Conhecendo como funcionam áreas de SQL compartilhadas, as fases de processamento SQL e cursores compartilhados, você pode entender como padrões de codificação permitem a você minimizar a freqüência com que comandos necessitam ser compilados e otimizados. Adicionalmente, a medida que comandos que você escreveu tornem-se mais e mais padronizados, você será capaz de identificar que ocorrem freqüentemente e dedicar tuning adicional a eles. 2-3

20 Processamento de Comandos SQL Shared SQL Areas A shared pool é parte da System Global Area (SGA), que contém o cache do dicionário e a shared SQL area. A shared SQL area é também conhecida como library cache, embora não seja exatamente o mesmo; a shared SQL area é parte da library cache. A shared pool é automaticamente mantida por um mecanismo de envelhecimento. Este mecanismo utiliza o algorítmo least recently used (LRU) para determinar o que está mais tempo sem utilização removendo-o quando espaço for requisitado. O administrador do banco de dados (DBA) pode modificar o espaço disponível para o dicionário e shared SQL areas alterando o parâmetro de inicialização SHARED_POOL_SIZE. O DBA pode efetuar isto como parte de um esforço global de tuning do banco de dados. Cursores Dentro da shared SQL area, cada comando SQL é compilado (parsed) em sua própria área, conhecida como context area ou cursor. Cada cursor armazena as seguintes informações: O comando compilado (SQL estático, dinâmico e recursivo, mais unidades de programas como procedures e triggers de banco de dados). O plano de execução. Uma lista de objetos referenciados. Se dois usuários enviarem o mesmo comando SQL, então podem utilizar o mesmo cursor. O comando é recompilado se a representação na shared pool estiver inválida. Isto acontece, por exemplo, se comando da linguagem de definição de dados (DDL) como um ALTER TABLE foi utilizado em um dos objetos que estão referenciados no comando, ou se uma tabela dependente foi analisada. 2-4

21 Processamento de Comandos SQL Fases do Processamento de Comandos SQL As quatro fases mais importantes no processamento de um comando SQL são parse, bind, execute e fetch. As setas indicam os cenários do processamento, por exemplo: Parse Bind FETCH (RE)BIND EXECUTE FETCH A fase FETCH aplica-se somente a consultas. O servidor Oracle9i: Procura pelo comando na shared pool. Verifica a sintaxe do comando, determinando a gramática e especificações da linguagem SQL. Verifica a semântica, garantindo que os objetos referenciados no comando SQL são válidos e satisfazem as regras de segurança. Transforma um consulta sobre uma visão em uma consulta sobre sua definição, e tenta simplificar um comando com uma subconsulta reescrevendo-o em um join. Determina e armazena o plano de execução. O servidor Oracle9i verifica o comando por referências de variáveis bind. O servidor Oracle9i atribui ou reatribui um valor para cada variável. Nota: esta ordem das fases implica que o servidor Oracle9i não conhece os valores das variáveis bind no momento da otimização de um comando. Isto permite uma rápida operação de rebind-execute sem a necessidade de recompilação, desta forma economizando tempo e memória, sendo que a desvantagem é a impossibilidade de o otimizador estimar a seletividade. Execute O servidor Oracle9i aplica a parse tree aos buffers de dados. Múltiplos usuários podem compartilhar a mesma parse tree. O servidor Oracle9i efetua leituras físicas ou leituras/escritas lógicas para comandos DML, e também ordena os dados quando necessário. 2-5

22 Fetch Processamento de Comandos SQL O servidor Oracle9i recupera as linhas para um comando SELECT durante a fase de fetch. Cada fetch normalmente recupera múltiplas linhas, utilizando um array fetch. Cada ferramenta Oracle oferece suas próprias formas de influenciar o tamanho do array. No SQL*Plus você efetuar isto utilizando o parâmetro ARRAYSIZE: SQL> show arraysize SQL> set arraysize 1 Com esta configuração o SQL*Plus irá processar uma linha de cada vez. O valor default é

23 Processamento de Comandos SQL Compartilhando Cursores: Benefícios Quando um comando SQL é encontrado na shared SQL area, então a fase de parse é reduzida e o cursor existente é utilizado. O compartilhamento de cursores reduz a atividade de parse e economiza tempo de processamento. A memória ajusta-se dinamicamente ao SQL executado. A utilização de memória pode melhorar dramaticamente, mesmo para ferramentas que armazenam SQL dentro da aplicação. 2-7

24 Processamento de Comandos SQL Compartilhando Cursores: Requisitos Cursores podem ser compartilhados somente por comandos SQL idênticos: O texto dos comandos SQL deve ser exatamente o mesmo, incluindo distinção entre maiúsculas e minúsculas, espaços em branco e comentários. Os objetos referenciados nos comandos SQL devem apontar para os mesmos objetos no banco de dados. Os tipos das variáveis bind utilizadas nos comandos SQL deve ser o mesmo. Nota: antes de enviar comandos SQL para o servidor Oracle9i, a maioria dos utilitários (como PL/SQL, pré-compiladores e o Oracle Developer) pré-processam os comandos SQL para torná-los o mais idênticos possíveis removendo comentários, comprimindo espaços em branco e convertendo para maiúsculas ou minúsculas. O SQL*Plus entretanto, envia comandos SQL para o servidor Oracle9i no mesmo formato que eles foram inseridos. 2-8

25 Processamento de Comandos SQL Monitorando Cursores Compartilhados V$LIBRARYCACHE fornece informações gerais. V$SQLAREA verifica comandos individuais. Quando não existe espaço para compilar um comando na shared SQL area, o cursor mais antigo e seu espaço é reutilizado. Se o comando original for necessário novamente, o servidor terá que recompilá-lo novamente. A shared pool deve ser grande o suficiente para manter o número de comandos que são compilados pelo menos mais de uma vez. Você pode monitorar seus sistema para visualizar com que freqüência o servidor não encontra um comando em memória. Você pode utilizar o Oracle Enterprise Manger, ou o Oracle Server Manager ou consultar as visões apropriadas do dicionário de dados, V$LIBRARYCACHE e V$SQLAREA. 2-9

26 Processamento de Comandos SQL V$LIBRARYCACHE NAMESPACE GETS GETHITS GETHITRATIO PINS PINHITS PINHITRATIO O nome da área da library cache O número de vezes que um lock foi requisitado O número de vezes que um handle de um objeto foi encontrado em memória A proporção de GETHITS em relação aos GETS O número de vezes que um PIN foi requisitado O número de vezes que todos os pedaços do objeto foram encontrados em memória A proporção de PINHITS em relação aos PINS Esta visão armazena informações sobre o gerenciamento da library cache. Os valores para PINHITRATIO e GETHITRATIO próximos de 1 indicam uma boa performance da library cache. A visão V$LIBRARYCACHE é utilizada na consulta abaixo para verificar a quantidade de cache. SQL> select gethitratio, pinhitratio 2 from v$librarycache 3 where namespace = 'SQL AREA'; Get Hit Ratio Pin Hit Ratio

27 Processamento de Comandos SQL V$SQLAREA SQL_TEXT Texto do comando SQL VERSION_COUNT Número de versões deste cursor LOADS Número de vezes que o cursor foi carregado INVALIDATIONS Número de vezes que o conteúdo foi invalidado PARSE_CALLS Número de vezes que um usuário solicitou o cursor SORTS Número de sorts efetuados pelo comando COMMAND_TYPE Tipo do comando PARSING_USER_ID ID do usuário que efetuou o parse (SYS = 0) A visão V$SQLAREA armazena informações sobre todos os cursores compartilhados no cache. VERSIONT_COUNT > 1 LOADS > 1 COMMAND_TYPE Indica que o mesmo texto é utilizado por diferentes usuários, em sua própria versão de uma tabela. Indica recargas do cursor após o envelhecimento ou invalidação. 2: INSERT 3: SELECT 6: UPDATE 7: DELETE Nota: somente as colunas mais importantes da visão V$SQLAREA estão listadas acima. 2-11

28 Processamento de Comandos SQL Monitorando o Uso de Cursores Compartilhados Um LOAD por comando é o ideal. Um LOAD por versão/invalidação é aceitável. Mais de um LOAD por versão indica um benefício potencial a partir do aumento do tamanho da shared pool. No melhor cenário, deveria haver uma versão de cada comando que nunca é invalidada ou envelhecida. Se o número de loads é significativamente maior que a soma de versões e invalidações, especialmente se o número de loads é similar ao número de chamadas (calls), então os cursores provavelmente estão sendo recarregados devido ao envelhecimento e o sistema pode beneficiar-se do aumento do tamanho da shared pool. SQL> select sql_text, version_count, loads, 2 invalidations, parse_calls, sorts 3 from v$sqlarea 4 where parsing_user_id > 0 5 and command_type = 3 6 order by sql_text; version invali parse sql_text count loads dations calls sorts select * from employees where EMP_ID = select * from employees where emp_id = O comando acima exclui informações sobre SQL recursivo (parsing user SYS) e exibe somente comandos SELECT (command type 3). Existe duas versões do primeiro comando, provavelmente porque eles referenciam dois objetos EMPLOYEES diferentes. Entretanto, cada versão foi carregada somente uma vez. O comando foi enviado três vezes (PARSE_CALLS). Existe somente uma versão do segundo comando, mas este foi carregado duas vezes, sendo invalidado uma vez (provavelmente por algum DDL na tabela ou índice relacionado). Nota: o Oracle SQL Analyze, um componente do Oracle Enterprise Manager Tuning Pack, oferece uma excelente interface gráfica sobre a V$SQLAREA. 2-12

29 Processamento de Comandos SQL Escrevendo SQL para Compartilhar Cursores Se houver diferença entre maiúsculas e minúsculas ou a quantidade de espaço em branco for diferente, então os comandos não são idênticos. SQL> select * from employees where emp_id = 70727; SQL> select * from EMPLOYEES where EMP_ID = 70727; Se os objetos pertencerem a usuários diferentes, então os comandos não são idênticos. SQL> select * from employees where EMP_ID = 70727; SQL> select * from employees where EMP_ID = 70727; Comandos SQL devem ser idênticos para poderem compartilhar os cursores. Observe que o compartilhamento de comandos não é importante em um ambiente DSS, porque a maioria dos comandos será diferente de qualquer maneira. Distinção de Maiúsculas/Minúsculas Os primeiros dois exemplos acima não são idênticos. Observe a diferença de maiúsculas e minúsculas nos nomes da tabela e coluna. Devido a esta diferença, os comandos não são idênticos e portanto não compartilham uma única SQL area. Objetos Idênticos Mesmo quando dois comandos parecem idênticos, se os objetos na verdade referirem-se a objetos diferentes do banco de dados, então os dois comandos não são idênticos. Nos dois últimos exemplos, os comandos são enviados por dois diferentes usuários e cada um possui sua própria tabela EMPLOYEES. Desta forma os comandos não são idênticos e não compartilham uma única SQL area. Variáveis Bind e Cursores Compartilhados SQL> select * from employees where emp_id = :c; SQL> select * from employees where emp_id = :d; Ambos os comandos são traduzidos para: SQL> select * from employees where emp_id = :b1; Se duas variáveis bind possuem diferentes tipos de dados, então os comandos não são idênticos. Se os tipos de dados da variável bind correspondem mas seus nomes não são idênticos, como no exemplo acima, não há problema, porque variáveis bind são internamente renomeadas. A primeira variável é sempre chamada :b1, a segunda :b2 e assim por diante. Escrevendo SQL para Compartilhar Cursores Desenvolva convenções de codificação para comandos SQL em consultas, scripts SQL e chamadas OCI. 2-13

PL/SQL Developer. Solução para Ambiente de Desenvolvimento Integrado Oracle

PL/SQL Developer. Solução para Ambiente de Desenvolvimento Integrado Oracle Solução para Ambiente de Desenvolvimento Integrado Oracle PL/SQL Developer é um ambiente de desenvolvimento integrado (IDE) que foi especialmente destinado ao desenvolvimento de programas armazenados em

Leia mais

Sumário. Capítulo 2 Conceitos Importantes... 32 Tópicos Relevantes... 32 Instance... 33 Base de Dados... 36 Conclusão... 37

Sumário. Capítulo 2 Conceitos Importantes... 32 Tópicos Relevantes... 32 Instance... 33 Base de Dados... 36 Conclusão... 37 7 Sumário Agradecimentos... 6 Sobre o Autor... 6 Prefácio... 13 Capítulo 1 Instalação e Configuração... 15 Instalação em Linux... 15 Instalação e Customização do Red Hat Advanced Server 2.1... 16 Preparativos

Leia mais

Oracle PL/SQL Overview

Oracle PL/SQL Overview Faculdades Network Oracle PL/SQL Overview Prof. Edinelson PL/SQL Linguagem de Programação Procedural Language / Structured Query Language Une o estilo modular de linguagens de programação à versatilidade

Leia mais

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL. Carga horária: 32 Horas

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL. Carga horária: 32 Horas ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL Carga horária: 32 Horas Pré-requisito: Para que os alunos possam aproveitar este treinamento ao máximo, é importante que eles tenham participado dos treinamentos

Leia mais

Banco de Dados Oracle 10g: Introdução à Linguagem SQL

Banco de Dados Oracle 10g: Introdução à Linguagem SQL Oracle University Entre em contato: 0800 891 6502 Banco de Dados Oracle 10g: Introdução à Linguagem SQL Duração: 5 Dias Objetivos do Curso Esta classe se aplica aos usuários do Banco de Dados Oracle8i,

Leia mais

Banco de Dados Oracle. Faculdade Pernambucana - FAPE

Banco de Dados Oracle. Faculdade Pernambucana - FAPE Faculdade Pernambucana - FAPE Visão Geral dos Componentes Principais da Arquitetura Oracle Servidor Oracle É o nome que a Oracle deu ao seu SGBD. Ele consiste de uma Instância e um Banco de Dados Oracle.

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

Manter estatísticas atualizadas é uma das regras de ouro na busca por performance.

Manter estatísticas atualizadas é uma das regras de ouro na busca por performance. Atualização de Estatísticas Um objeto de estatística pode ser atualizado manualmente pelo usuário, através dos comandos SP_UPDATESTATS e/ou UPDATE STATISTICS. Enquanto que a procedure SP_UPDATESTATS atualiza

Leia mais

Prof. Omero, pág. 63. Banco de Dados InterBase.

Prof. Omero, pág. 63. Banco de Dados InterBase. Prof. Omero, pág. 63 O que é o InterBase? O InterBase é um SGBDR - Sistema Gerenciador de Banco de Dados Cliente/Servidor Relacional 1 que está baseado no padrão SQL ANSI-9, de alta performance, independente

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Guia de administração para a integração do Portrait Dialogue 6.0. Versão 7.0A

Guia de administração para a integração do Portrait Dialogue 6.0. Versão 7.0A Guia de administração para a integração do Portrait Dialogue 6.0 Versão 7.0A 2013 Pitney Bowes Software Inc. Todos os direitos reservados. Esse documento pode conter informações confidenciais ou protegidas

Leia mais

Cada banco de dados Oracle possui uma lista de usuários válidos, identificados por USERNAMES.

Cada banco de dados Oracle possui uma lista de usuários válidos, identificados por USERNAMES. SEGURANÇA DE USUÁRIOS Cada banco de dados Oracle possui uma lista de usuários válidos, identificados por USERNAMES. Todos os usuários são cadastrados no Dicionário de Dados do Banco em tabelas e views

Leia mais

Manual de Instalação e Configuração

Manual de Instalação e Configuração e Configuração MyABCM 4.0 Versão 4.00-1.00 2 Copyright MyABCM. Todos os direitos reservados Reprodução Proibida Índice Introdução... 5 Arquitetura, requisitos e cenários de uso do MyABCM... 7 Instalação

Leia mais

NORMA TÉCNICA PARA DEFINIÇÃO DE OBJETOS DE BANCO DE DADOS E DE ESTRUTURAS DE ARMAZENAMENTO QUE CONSTITUEM O BANCO DE DADOS CORPORATIVO

NORMA TÉCNICA PARA DEFINIÇÃO DE OBJETOS DE BANCO DE DADOS E DE ESTRUTURAS DE ARMAZENAMENTO QUE CONSTITUEM O BANCO DE DADOS CORPORATIVO NORMA TÉCNICA PARA DEFINIÇÃO DE OBJETOS DE BANCO DE DADOS E DE ESTRUTURAS DE ARMAZENAMENTO QUE CONSTITUEM O BANCO DE DADOS CORPORATIVO Referência: NT-AI.04.04.01 http://www.unesp.br/ai/pdf/nt-ai.04.04.01.pdf

Leia mais

Quando se seleciona os modos OS ou XML, arquivos são criados com os registros de auditoria, eles se localizam parâmetro audit_file_dest.

Quando se seleciona os modos OS ou XML, arquivos são criados com os registros de auditoria, eles se localizam parâmetro audit_file_dest. Auditoria é a habilidade do banco de dados Oracle poder gerar logs de auditoria (XML, tabelas, arquivos de SO, ) em atividades suspeitas do usuário, como por exemplo: monitorar o que um determinado usuário

Leia mais

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix

Leia mais

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Introdução à Engenharia da Computação. Banco de Dados Professor Machado Introdução à Engenharia da Computação Banco de Dados Professor Machado 1 Sistemas isolados Produção Vendas Compras Banco de Dados Produtos... Banco de Dados Produtos... Banco de Dados Produtos... Desvantagens:

Leia mais

Estatística, monitoramento e diagnóstico através do catálogo do PostgreSQL

Estatística, monitoramento e diagnóstico através do catálogo do PostgreSQL Estatística, monitoramento e diagnóstico através do catálogo do PostgreSQL O trabalho Estatística, monitoramento e diagnóstico através do catálogo do PostgreSQL de Fabiano Machado Dias e Eduardo Wolak

Leia mais

Banco de Dados 1 Prof. MSc Wagner Siqueira Cavalcante

Banco de Dados 1 Prof. MSc Wagner Siqueira Cavalcante Banco de Dados 1 Programação sucinta do curso:. Conceitos fundamentais de Banco de Dados.. Arquitetura dos Sistemas Gerenciadores de Banco de Dados (SGBD ou DBMS).. Características típicas de um SGBD..

Leia mais

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

SQL Linguagem de Definição de Dados. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SQL Linguagem de Definição de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix Ingress SQL

Leia mais

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico

BANCO DE DADOS. Introdução a Banco de Dados. Conceitos BásicosB. Engenharia da Computação UNIVASF. Aula 1. Breve Histórico Banco de Dados // 1 Banco de Dados // 2 Conceitos BásicosB Engenharia da Computação UNIVASF BANCO DE DADOS Aula 1 Introdução a Banco de Dados Campo representação informatizada de um dado real / menor unidade

Leia mais

Introdução ao SQL. O que é SQL?

Introdução ao SQL. O que é SQL? Introdução ao SQL 1 O que é SQL? Inicialmente chamada de Sequel, SQL (Structured Query Language), é a linguagem padrão utilizada para comunicar-se com um banco de dados relacional. A versão original foi

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Oracle Performance Diagnostics & Tuning Ricardo Portilho Proni

Oracle Performance Diagnostics & Tuning Ricardo Portilho Proni Oracle Performance Diagnostics & Tuning Ricardo Portilho Proni Mitificação Métodos antigos o o o o o o Experiência Intuição Imprecisão Tempo Sorte Recursos Top Tuning Verificar maior consumidor de CPU

Leia mais

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível

Leia mais

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível de independência do

Leia mais

INICIAL. Guia de Criação da Base Produção Paralela IMPORTANTE: MESMO QUE SEJAM EXECUTADOS

INICIAL. Guia de Criação da Base Produção Paralela IMPORTANTE: MESMO QUE SEJAM EXECUTADOS Guia de Criação da Base Produção Paralela INICIAL SEQUENCES, tabelas de BMF e CADASTRO. Atualização de Bancos de Dados. Validações necessárias. IMPORTANTE: MESMO QUE SEJAM EXECUTADOS OS PROCEDIMENTOS DA

Leia mais

Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br

Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br 1. Abordagem geral Structure Query Language SQL Guilherme Pontes lf.pontes.sites.uol.com.br Em primeiro plano, deve-se escolher com qual banco de dados iremos trabalhar. Cada banco possui suas vantagens,

Leia mais

ADMINISTRAÇÃO DE BANCO DE DADOS

ADMINISTRAÇÃO DE BANCO DE DADOS ADMINISTRAÇÃO DE BANCO DE DADOS ARTEFATO 02 AT02 Diversos I 1 Indice ESQUEMAS NO BANCO DE DADOS... 3 CRIANDO SCHEMA... 3 CRIANDO TABELA EM DETERMINADO ESQUEMA... 4 NOÇÕES BÁSICAS SOBRE CRIAÇÃO E MODIFICAÇÃO

Leia mais

Treinamento. DBA Oracle 11g. Duração: 120 horas

Treinamento. DBA Oracle 11g. Duração: 120 horas Treinamento DBA Oracle 11g Duração: 120 horas Neste curso no primeiro módulo (Introdução ao Oracle 11g SQL e PL_SQL) é oferecido um curso introdutório à tecnologia do banco de dados Oracle 11g. Também

Leia mais

OTIMIZAÇÃO DE CONSULTAS NO SGBD ORACLE 11G. Resumo: Este artigo apresenta diversas técnicas e ferramentas para otimizar consultas

OTIMIZAÇÃO DE CONSULTAS NO SGBD ORACLE 11G. Resumo: Este artigo apresenta diversas técnicas e ferramentas para otimizar consultas OTIMIZAÇÃO DE CONSULTAS NO SGBD ORACLE 11G BRENO MARCELO DE SOUZA 1 IREMAR NUNES DE LIMA 2 Resumo: Este artigo apresenta diversas técnicas e ferramentas para otimizar consultas SQL no Sistema Gerenciador

Leia mais

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 03: Estruturas dos SOs Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com OBJETIVOS Descrever os serviços que um sistema operacional oferece aos usuários e outros sistemas

Leia mais

BI: Um estudo de Oracle MÉLODY BALLOUARD (MAMB)

BI: Um estudo de Oracle MÉLODY BALLOUARD (MAMB) BI: Um estudo de Oracle MÉLODY BALLOUARD (MAMB) Roteiro Introdução Motivação Objetivos Historico Conceitos Arquitetura Estado da arte Exemplos Referências Introdução Quantidade infinita de dados Ferramentas

Leia mais

SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela

SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela SQL Server Triggers Aprenda a utilizar triggers em views e auditar as colunas atualizadas em uma tabela Certamente você já ouviu falar muito sobre triggers. Mas o quê são triggers? Quando e como utilizá-las?

Leia mais

14/09/2008. Curso Superior de Tecnologia em Bando de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan

14/09/2008. Curso Superior de Tecnologia em Bando de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan Faculdade INED Curso Superior de Tecnologia em Bando de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan Unidade 2.2 1 2 Material usado na montagem dos Slides Bibliografia

Leia mais

Sumário Agradecimentos... 19 Sobre.o.autor... 20 Prefácio... 21 Capítulo.1..Bem-vindo.ao.MySQL... 22

Sumário Agradecimentos... 19 Sobre.o.autor... 20 Prefácio... 21 Capítulo.1..Bem-vindo.ao.MySQL... 22 Sumário Agradecimentos... 19 Sobre o autor... 20 Prefácio... 21 Capítulo 1 Bem-vindo ao MySQL... 22 1.1 O que é o MySQL?...22 1.1.1 História do MySQL...23 1.1.2 Licença de uso...23 1.2 Utilizações recomendadas...24

Leia mais

As principais estruturas são a SGA (System Global Area ou Área Global do Sistema) e a PGA (Program Global Area ou Área Global de Programa).

As principais estruturas são a SGA (System Global Area ou Área Global do Sistema) e a PGA (Program Global Area ou Área Global de Programa). ARQUITETURA ORACLE O conhecimento da arquitetura interna do ORACLE é de extrema importância para a compreensão das técnicas de otimização do produto. Basicamente, os seus mecanismos de execução são as

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL 1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)

Leia mais

PostgreSQL Performance

PostgreSQL Performance PostgreSQL Performance André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) PostgreSQL Performance February 24, 2012 1 / 45 Sumário 1 Armazenamento 2 Índices

Leia mais

um mecanismo, chamado de perfil, para controlar o limite desses recursos que o usuário pode

um mecanismo, chamado de perfil, para controlar o limite desses recursos que o usuário pode 1 ADMINISTRAÇÃO DE USUÁRIOS NO SGBD ORACLE 11G JUVENAL LONGUINHO DA SILVA NETO 1 IREMAR NUNES DE LIMA 2 Resumo: Este artigo apresenta como criar, modificar e excluir usuários, privilégios, atribuições

Leia mais

Arquitetura de BDs Distribuídos. Victor Amorim - vhca Pedro Melo pam2

Arquitetura de BDs Distribuídos. Victor Amorim - vhca Pedro Melo pam2 Victor Amorim - vhca Pedro Melo pam2 Arquitetura de BDs Distribuídos Sistemas de bds distribuídos permitem que aplicações acessem dados de bds locais ou remotos. Podem ser Homogêneos ou Heterogêneos: Homogêneos

Leia mais

Novidades Oracle 11g. Rio Grande Energia - RGE

Novidades Oracle 11g. Rio Grande Energia - RGE Novidades Oracle 11g Daniel Güths Rio Grande Energia - RGE 1 Agenda Oracle Database 11g new features SQL e PL/SQL new features Performance e gerenciamento de recursos Gerenciamento de mudanças Gerenciamento

Leia mais

Usando PostgreSQL na Regra de Negócio de um ERP. Fabiano Machado Dias Eduardo Wolak

Usando PostgreSQL na Regra de Negócio de um ERP. Fabiano Machado Dias Eduardo Wolak Usando PostgreSQL na Regra de Negócio de um ERP Fabiano Machado Dias Eduardo Wolak Regra de negócio? São todas as regras existentes num sistema de informação, que ditam seu comportamento, suas restrições

Leia mais

BANCO DE DADOS E BUSINESS INTELIGENCE. C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03)

BANCO DE DADOS E BUSINESS INTELIGENCE. C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03) MBA em Gestão de TI MÓDULO: BANCO DE DADOS E BUSINESS INTELIGENCE C/H: 20 horas (20/02, 25/02, 27/02, 04/03, 06/03) PROFESSOR: Edison Andrade Martins Morais prof@edison.eti.br http://www.edison.eti.br

Leia mais

SQL Introdução ao Oracle

SQL Introdução ao Oracle SQL Introdução ao Oracle Estagiários: Daniel Feitosa e Jaqueline J. Brito Sumário Modelo de armazenamento de dados Modelo físico Modelo lógico Utilizando o SQL Developer Consulta de Sintaxe Sumário Modelo

Leia mais

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados

Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados Sistemas de Banco de Dados Aspectos Gerais de Banco de Dados 1. Conceitos Básicos No contexto de sistemas de banco de dados as palavras dado e informação possuem o mesmo significado, representando uma

Leia mais

SQL Structured Query Language

SQL Structured Query Language Janai Maciel SQL Structured Query Language (Banco de Dados) Conceitos de Linguagens de Programação 2013.2 Structured Query Language ( Linguagem de Consulta Estruturada ) Conceito: É a linguagem de pesquisa

Leia mais

FAPLAN - Faculdade Anhanguera Passo Fundo Gestão da Tecnologia da Informação Banco de Dados II Prof. Eder Pazinatto Stored Procedures Procedimento armazenados dentro do banco de dados Um Stored Procedure

Leia mais

Aula 2 Arquitetura Oracle

Aula 2 Arquitetura Oracle Aula 2 Arquitetura Oracle Instancia Oracle Uma instância Oracle é composta de estruturas de memória e processos. Sua existência é temporária na memória RAM e nas CPUs. Quando você desliga a instância em

Leia mais

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários

Leia mais

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

BANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 10 - PROCEDIMENTOS ARMAZENADOS - STORED PROCEDURES 1. INTRODUÇÃO Em muitas situações será necessário armazenar procedimentos escritos com a finalidade de se utilizar recursos como loop, estruturas

Leia mais

PgAdmin. O pgadmin é um software gráfico para administração do SGBD PostgreSQL disponível para Windows e UNIX.

PgAdmin. O pgadmin é um software gráfico para administração do SGBD PostgreSQL disponível para Windows e UNIX. 1/20 PgAdmin O pgadmin é um software gráfico para administração do SGBD PostgreSQL disponível para Windows e UNIX. Site para download. Caso queira a última versão - http://www.pgadmin.org/download/ É uma

Leia mais

Linguagem de Consulta Estruturada SQL- DML

Linguagem de Consulta Estruturada SQL- DML Linguagem de Consulta Estruturada SQL- DML INTRODUÇÃO A SQL - Structured Query Language, foi desenvolvido pela IBM em meados dos anos 70 como uma linguagem de manipulação de dados (DML - Data Manipulation

Leia mais

Comandos de Manipulação

Comandos de Manipulação SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

Instruções de Instalação do IBM SPSS Modeler (Licença de Usuário Autorizado)

Instruções de Instalação do IBM SPSS Modeler (Licença de Usuário Autorizado) Instruções de Instalação do IBM SPSS Modeler (Licença de Usuário Autorizado) Índice Instruções de Instalação....... 1 Requisitos do sistema........... 1 Código de autorização.......... 1 Instalando...............

Leia mais

CONCORRÊNCIA. 1. Introdução. Recursos exclusivos. Não necessita controle. Abundância de recursos compartilhados. Controle necessário mas mínimo

CONCORRÊNCIA. 1. Introdução. Recursos exclusivos. Não necessita controle. Abundância de recursos compartilhados. Controle necessário mas mínimo CONCORRÊNCIA 1. Introdução Recursos exclusivos Não necessita controle Abundância de recursos compartilhados Controle necessário mas mínimo Harmonia, provavelmente não haverá conflito Recursos disputados

Leia mais

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário

Centro de Computação - Unicamp Gerência de Atendimento ao Cliente (e-mail:apoio@turing.unicamp.br) Sumário Sumário Conceitos Microsoft Access 97... 01 Inicialização do Access... 02 Convertendo um Banco de Dados... 03 Criando uma Tabela... 06 Estrutura da Tabela... 07 Propriedades do Campo... 08 Chave Primária...

Leia mais

2 Auto-sintonia de Bancos de Dados e Agentes de Software

2 Auto-sintonia de Bancos de Dados e Agentes de Software 2 Auto-sintonia de Bancos de Dados e Agentes de Software A uso da abordagem de agentes de software 1 pode trazer benefícios a áreas de aplicação em que é necessário construir sistemas autônomos, ou seja,

Leia mais

Administração de Banco de Dados

Administração de Banco de Dados Administração de Banco de Dados Professora conteudista: Cida Atum Sumário Administração de Banco de Dados Unidade I 1 INTRODUÇÃO A BANCO DE DADOS...1 1.1 Histórico...1 1.2 Definições...2 1.3 Importância

Leia mais

Administração de Banco de Dados

Administração de Banco de Dados Administração de Banco de Dados Adriano J. Holanda http://holanda.xyz 28/8/2015 Índices Para os testes com os índices criaremos uma tabela chamada tteste com o comando teste=> CREATE TABLE tteste (id int4);

Leia mais

Manual de Instalação e Configuração

Manual de Instalação e Configuração e Configuração MyABCM 4.2 Versão 4.20-1.00 2 Copyright MyABCM. Todos os direitos reservados Reprodução Proibida Índice Introdução... 5 Arquitetura, requisitos e cenários de uso do MyABCM... 7 Instalação

Leia mais

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de 2007. Unidade 03-002 Sistemas de Arquivos Sistema de Arquivos Prof. Edwar Saliba Júnior Março de 2007 1 Objetivos Facilitar o acesso dos usuários ao conteúdo dos arquivos; Prover uma forma uniforme de manipulação de arquivos, independente dos

Leia mais

DOCUMENTO DE REQUISITOS

DOCUMENTO DE REQUISITOS DOCUMENTO DE REQUISITOS ID documento: Data: / / Versão : Responsável pelo documento: ID Projeto: HISTÓRICO DE REVISÕES Data de criação/ atualização Descrição da(s) Mudança(s) Ocorrida(s) Autor Versão do

Leia mais

PROCEDIMENTOS PARA ATUALIZAÇÃO DE VERSÃO DO APLICATIVO

PROCEDIMENTOS PARA ATUALIZAÇÃO DE VERSÃO DO APLICATIVO PROCEDIMENTOS PARA ATUALIZAÇÃO DE VERSÃO DO APLICATIVO MASTERSAFDW VERSÃO 5-25/04/12 PÁGINA 1 Índice Informações Importantes... 3 Atualizando o aplicativo... 4 Procedimentos para atualização da base de

Leia mais

Oracle 10g: SQL e PL/SQL

Oracle 10g: SQL e PL/SQL Oracle 10g: SQL e PL/SQL PL/SQL: Visão Geral Enzo Seraphim Visão Geral Vantagens de PL/SQL Suporte total à linguagem SQL Total integração com o Oracle Performance Redução da comunicação entre a aplicação

Leia mais

*O RDBMS Oracle é um sistema de gerenciamento de banco de dados relacional.

*O RDBMS Oracle é um sistema de gerenciamento de banco de dados relacional. Arquitetura Oracle e seus componentes Hoje irei explicar de uma forma geral a arquitetura oracle e seus componentes. Algo que todos os DBA s, obrigatoriamente, devem saber de cabo a rabo. Vamos lá, e boa

Leia mais

Projeto de Banco de Dados: Empresa X

Projeto de Banco de Dados: Empresa X Projeto de Banco de Dados: Empresa X Modelo de negócio: Empresa X Competências: Analisar e aplicar o resultado da modelagem de dados; Habilidades: Implementar as estruturas modeladas usando banco de dados;

Leia mais

Crash recovery é similar ao instance recovery, onde o primeiro referencia ambientes de instância exclusiva e o segundo ambientes parallel server.

Crash recovery é similar ao instance recovery, onde o primeiro referencia ambientes de instância exclusiva e o segundo ambientes parallel server. Recover no Oracle O backup e recuperação de dados em um SGBD é de grande importância para a manutenção dos dados. Dando continuidade a nossos artigos, apresentamos abaixo formas diferentes de se fazer

Leia mais

Estruturando um aplicativo

Estruturando um aplicativo Com o Visual FoxPro, é possível criar facilmente aplicativos controlados por eventos e orientados a objetos em etapas. Esta abordagem modular permite que se verifique a funcionalidade de cada componente

Leia mais

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

Structured Query Language (SQL) Ambiente Simplificado de um SGBD Structured Query Language (SQL) Ambiente Simplificado de um SGBD 2 1 Características dos SGBDs Natureza auto-contida de um sistema de banco de dados: metadados armazenados num catálogo ou dicionário de

Leia mais

Excel 2010 Modulo II

Excel 2010 Modulo II Excel 2010 Modulo II Sumário Nomeando intervalos de células... 1 Classificação e filtro de dados... 3 Subtotais... 6 Validação e auditoria de dados... 8 Validação e auditoria de dados... 9 Cenários...

Leia mais

ESTRUTURA INTERNA DO SISTEMA ESTRUTURA GERAL DO SGBD. Desempenho do BD ÙSatisfação do usuário. A performance do sistema depende:

ESTRUTURA INTERNA DO SISTEMA ESTRUTURA GERAL DO SGBD. Desempenho do BD ÙSatisfação do usuário. A performance do sistema depende: ESTRUTURA INTERNA DO SISTEMA ESTRUTURA GERAL DO SGBD Desempenho do BD ÙSatisfação do usuário USUÁRIO A performance do sistema depende: da eficiência das estruturas de dados utilizadas; como o sistema opera

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 2 INTERAÇÃO COM O BANCO DE DADOS AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,

Leia mais

Rational Quality Manager. Nome: Raphael Castellano Campus: AKXE Matrícula: 200601124831

Rational Quality Manager. Nome: Raphael Castellano Campus: AKXE Matrícula: 200601124831 Rational Quality Manager Nome: Raphael Castellano Campus: AKXE Matrícula: 200601124831 1 Informações Gerais Informações Gerais sobre o RQM http://www-01.ibm.com/software/awdtools/rqm/ Link para o RQM https://rqmtreina.mvrec.local:9443/jazz/web/console

Leia mais

GERENCIAMENTO CENTRALIZADO DELL POWERVAULT DL 2000 BASEADO EM TECNOLOGIA SYMANTEC

GERENCIAMENTO CENTRALIZADO DELL POWERVAULT DL 2000 BASEADO EM TECNOLOGIA SYMANTEC GERENCIAMENTO CENTRALIZADO DELL POWERVAULT DL 2000 BASEADO EM TECNOLOGIA SYMANTEC RESUMO EXECUTIVO O PowerVault DL2000, baseado na tecnologia Symantec Backup Exec, oferece a única solução de backup em

Leia mais

DIRETÓRIOS. Diretórios ZIM. Estabelecer um diretório de aplicativo. Campos do objeto Diretórios. Diretórios estrangeiros. Zim 8.

DIRETÓRIOS. Diretórios ZIM. Estabelecer um diretório de aplicativo. Campos do objeto Diretórios. Diretórios estrangeiros. Zim 8. DIRETÓRIOS Um diretório é um objeto do aplicativo. Diretórios de aplicativos são usados para organizar os objetos definidos no Dicionário de Objetos para a aplicação. Diretórios ZIM ZIM 8 proporciona uma

Leia mais

DESENVOLVIMENTO DE SOFTWARE

DESENVOLVIMENTO DE SOFTWARE VARIAÁ VEL Antes de iniciarmos os comandos referentes a Banco de Dados, precisamos de uma breve descrição técnica sobre Variáveis que serão uma constante em programação seja qual for sua forma de leitura.

Leia mais

Documentação Symom. Agente de Monitoração na Plataforma Windows

Documentação Symom. Agente de Monitoração na Plataforma Windows Documentação Symom de Monitoração na Plataforma Windows Windows Linux Windows Linux Plataforma Windows Instalação A instalação do de Monitoração do Symom para Windows é feita através do executável setup.exe

Leia mais

SQL. Structured Query Language

SQL. Structured Query Language SQL Structured Query Language Construções básicas Junção de Tabelas Join O uso da operação JOIN numa cláusula FROM especifica como se deseja que as tabelas sejam vinculadas. Use INNER JOIN para associar

Leia mais

Introdução ao Delphi. Introdução. Edições do Software. Capítulo 1. InforBRás - Informática Brasileira Ltda. O Que é o Delphi.

Introdução ao Delphi. Introdução. Edições do Software. Capítulo 1. InforBRás - Informática Brasileira Ltda. O Que é o Delphi. Capítulo 1 O Que é o Delphi Diferenças entre Delphi Client/Server do Delphi for Windows Características que compõem o Integrated Development Invironment (IDE) Como o Delphi se encaixa na família Borland

Leia mais

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

Leia mais

MANUAL DO ADMINISTRADOR DO MÓDULO

MANUAL DO ADMINISTRADOR DO MÓDULO MANUAL DO ADMINISTRADOR DO MÓDULO ÍNDICE Relatórios Dinâmicos... 3 Requisitos de Sistema... 4 Estrutura de Dados... 5 Operadores... 6 Tabelas... 7 Tabelas x Campos... 9 Temas... 13 Hierarquia Relacionamento...

Leia mais

Unidade III. Unidade III

Unidade III. Unidade III Unidade III 4 ADMINISTRAÇÃO DE SGBDs As pessoas que trabalham com um banco de dados podem ser categorizadas como usuários de banco de dados ou administradores de banco de dados. 1 Entre os usuários, existem

Leia mais

DO BÁSICO AO AVANÇADO PARA MANIPULAÇÃO E OTIMIZAÇÃO DE DADOS. Fábio Roberto Octaviano

DO BÁSICO AO AVANÇADO PARA MANIPULAÇÃO E OTIMIZAÇÃO DE DADOS. Fábio Roberto Octaviano DO BÁSICO AO AVANÇADO PARA MANIPULAÇÃO E OTIMIZAÇÃO DE DADOS Fábio Roberto Octaviano Controlando Acesso dos Usuários Após o término do Capítulo: Diferenciar privilégios de sistema e privilégios de objetos.

Leia mais

Oracle Advanced Compression x External Tables (Armazenamento de dados históricos)

Oracle Advanced Compression x External Tables (Armazenamento de dados históricos) Oracle Advanced Compression x External Tables (Armazenamento de dados históricos) Agenda Sobre Rodrigo Mufalani Clico de dados Visão Geral Avanced Compression Visão Geral External Tables Performance Disponibilidade

Leia mais

Controle de transações em SQL

Controle de transações em SQL Transações Controle de transações em SQL Uma transação é implicitamente iniciada quando ocorre uma operação que modifica o banco de dados (INSERT, UPDATE ou DELETE). Uma transação pode terminar normalmente

Leia mais

UNISA Universidade de Santo Amaro. http://www.unisa.br. Material de Estudo. Módulo I: Básico Banco de dados SQL Server. http://www.unisa-sis.

UNISA Universidade de Santo Amaro. http://www.unisa.br. Material de Estudo. Módulo I: Básico Banco de dados SQL Server. http://www.unisa-sis. UNISA Universidade de Santo Amaro http://www.unisa.br Material de Estudo Módulo I: Básico Banco de dados SQL Server http://www.unisa-sis.info Junho/2010 Objetivo do Workshop Compartilhar e apresentar

Leia mais

Faculdade Lourenço Filho - ENADE 2011-1

Faculdade Lourenço Filho - ENADE 2011-1 1. Quando se constrói um banco de dados, define-se o modelo de entidade e relacionamento (MER), que é a representação abstrata das estruturas de dados do banco e seus relacionamentos. Cada entidade pode

Leia mais

MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE PELOTAS UNIDADE DE PASSO FUNDO

MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DE PELOTAS UNIDADE DE PASSO FUNDO 3. Controle de Acesso Permissões de Compartilhamento e Permissões NTFS Segurança, sem dúvidas, é um dos temas mais debatidos hoje, no mundo da informática. Nesse capitulo vamos estudar algumas opções do

Leia mais

Iniciando o MySQL Query Brower

Iniciando o MySQL Query Brower MySQL Query Brower O MySQL Query Browser é uma ferramenta gráfica fornecida pela MySQL AB para criar, executar e otimizar solicitações SQL em um ambiente gráfico. Assim como o MySQL Administrator foi criado

Leia mais

Disciplina: Unidade V: Prof.: E-mail: Período:

Disciplina: Unidade V: Prof.: E-mail: Período: Encontro 17 Disciplina: Sistemas de Banco de Dados Unidade V: Introdução à Linguagem SQL Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM 13. Introdução à Linguagem SQL Introdução

Leia mais

Instalação do IBM SPSS Modeler Server Adapter

Instalação do IBM SPSS Modeler Server Adapter Instalação do IBM SPSS Modeler Server Adapter Índice Instalação do IBM SPSS Modeler Server Adapter............... 1 Sobre a Instalação do IBM SPSS Modeler Server Adapter................ 1 Requisitos de

Leia mais

BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart.

BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart. 16/08/2013 BI Citsmart Fornece orientações necessárias para instalação, configuração e utilização do BI Citsmart. Versão 1.0 19/12/2014 Visão Resumida Data Criação 19/12/2014 Versão Documento 1.0 Projeto

Leia mais

Criando um banco de dados

Criando um banco de dados Após ter projetado o banco de dados, você pode criá-lo utilizando a interface ou com a linguagem. É possível que você queira adicionar tabelas existentes ao banco de dados e depois modificá-las para aproveitar

Leia mais

Kerio Exchange Migration Tool

Kerio Exchange Migration Tool Kerio Exchange Migration Tool Versão: 7.3 2012 Kerio Technologies, Inc. Todos os direitos reservados. 1 Introdução Documento fornece orientações para a migração de contas de usuário e as pastas públicas

Leia mais