15
Proposta técnico- comercial ANÁLISE DE DESEMPENHO “BANCO DE DADOS ORACLE 11 G” A/C KEYSON GILVANNE DE OLIVEIRA NETO NOVO RIO COMÉRCIO DE VEICULOS, SERVIÇOS E PEÇAS LTDA

Proposta Técnico -Comercial (Jose Eduardo Desenv de Software LTDA)

Embed Size (px)

DESCRIPTION

Proposta comercial

Citation preview

Proposta tcnico -comercial

Proposta tcnico-comercialANLISE DE dESEMPENHO Banco de Dados Oracle 11 GA/C Keyson Gilvanne de Oliveira NetoNovo rio Comrcio de Veiculos, servios e peas ltdaContedoInstitucionalObjetivo Qualificao da necessidadeForma de trabalhoDiagnstico atualSistema operacionalBanco de DadosConsideraes e exemplos de recomendaesPrazos e equipeCondies de fornecimento

Jose Eduardo Desenv. de Software LTDAA Jos Eduardo Desenvolv. de Software LTDA uma empresa brasileira especializada em desempenho de aplicaes. YAMAN uma empresa brasileira especializada no Gerenciamento de Desempenho de Aplicaes. Nossa versatilidade e comprometimento nos posicionam no mercado como provedora de solues para as tpicas situaes de baixo desempenho e indisponibilidades de TI, garantindo o rpido restabelecimento do servio e continuidade do negcio.Nascida da unio de 2 profissionais que somam mais de 20 anos de experincia neste segmento, a Jos Eduardo Desenv. de Software tem como diferenciais:

Estrutura enxuta, que garante menor custo e maior agilidade;Independncia e iseno, pois no representamos nenhum vendor de hardware ou ferramenta;Orientao proatividade;Capacidade de traduzir o tecniqus em linguagem executiva.J tendo atuado com xito em vrios segmentos da economia, principalmente nos setores Bancrio e Telecomunicaes, nos sentiremos honrados em pod-los apoiar em mais esta oportunidade

ObjetivoEste documento descreve os termos tcnicos e comerciais para prestao de servios de Anlise de Desempenho de Banco de Dados 11G para a Novo rio Comrcio de Veculos, servios e peas Ltda..

Qualificao da necessidadeA Novo rio Comrcio de Veculos, servios e peas LTDA necessita de uma anlise de desempenho para seu Sistema de Banco de Dados Oracle 11g release 11.2.0.1 que vem apresentando lentido e em alguns momentos ficando indisponvel para os usurios finais. O servidor e BD que sero analisados contm as seguintes configuraes:8 GB RAM100 GB discoWindows server 2008 R2 Standard (64 Bits)Oracle 11 G (Release 11.2.0.1) Novorio

Forma de trabalhoInstrumentao do servidor Foi realizado em 02/Julho/2015 a instrumentao do servidor de Banco de Dados com as seguintes ferramentas: Statspack e Perfmon.Diagnstico Realizado em 03/Julho/2015, onde foi analisado os indicadores coletados e documentado os problemas encontrados. Anlise e elaborao das sugestes de melhoriaAnlise das informaes geradas no item anterior identificando as oportunidades de melhorias que sero aplicadas diretamente no Banco de Dados e no Servidor, afim de, atingirmos a estabilidade do ambiente.Implementao e documentaoImplementao das oportunidades de melhoria encontradas para o servidor e banco de dados e a documentao das atividades realizadas.

Soluo propostaAcompanhamento e monitoramentoManter os monitoramentos habilitados realizando um comparativo do consumo de recursos: Antes e Depois das Implementaes realizadas.

Diagnstico atual (Banco de Dados)

Wait Events: o retrato comportamental da base de dadosNos mostra claramente atravs dos eventos Enq: TM Contention (locks), Read by other session (Concorrncia na consulta de registros hot blocks), direct path read (muitas operaes de ordenao), log file sync e db file scattered read (muitas operaes de I/O)Redo log Switches 12 % abaixo do recomendado troca de 15 em 15 min, conforme manualDiagnstico atual (Banco de Dados)

Alert.log: anlise do arquivo de registro de logs de toda a base de dados que contm dois erros principaisORA-01555 Snapshot too old (erro na parametrizao do banco de dados e por falta de commits em alguns sqls da aplicao)ORA-00060 Deadlock detected (erro da aplicao, possvel encontrarmos as operaes que esto ocasionando este problema) para posterior tratamentoFreezingsCongelamento da base de dados por falta de redologs inativos em alguns momentos por 15 segundos, falha grave que pode alm de congelar, derrubar a baseConsideraes e exemplos (Statspack collector) TOP SQLS ordenados por Tempo de CPU (SQL 1: demora 1h53 e ocupa 55 min de CPU)

CPU Elapsd Time (s) Time (s) Buffer Gets ---------- ---------- --------------- 3328.86 6820.41 28,007,342 Module: crmPrem.exeSelect a.cod_empresa, a.desc_evento, b.cod_grupo, b.desc_tipo_evento, a.cod_evento, c.andamento, a.data_evento, a.data_novo_contato, a.tempo, nvl(a.data_novo_contato, a.data_evento) as data_evento_atual, a.responsavel_pelo_evento,a.responsavel_orig

CPU Elapsd Time (s) Time (s) Buffer Gets ---------- ---------- ---------------2068.67 2643.25 604,001 Module: DBMS_SCHEDULERINSERT INTO NBS_LOG(LOG_ID, DATAHORA, USUARIO, ESQUEMA, TABELA,CAMPO, ROW_ID, OPERACAO, OLD_VALUE, NEW_VALUE, PROGRAMA) SELECTSEQ_NBS_LOG.NEXTVAL, C1.TIMESTAMP DATAHORA, NVL(RETORNAR_VALOR_DA_LISTA(C1.SESSION_INFO, 'CLIENT_INFO'), C1.USERNAME) USUARIO, :

CPU Elapsd Time (s) Time (s) Buffer Gets ---------- ---------- --------------- 828.12 911.75 97,277,887 Module: NFSeService.exeSELECT A.ID_MOVIMENTO, A.TIPO_RPS, A.SERIE_RPS,A.SERIE_NFSE, A.NUMERO_RPS, A.NUMR_CNPJ, A.ID_EMPRESA, A.XML_NOTA, A.XML_RETORNO, A.STATUS_IMPRESSAO, A.DATA_RECEBIMENTO, A.DATA_PROCESSAMENTO, A.TIPO_AMBIEConsideraes e exemplos (Statspack collector) SELECT a.cod_empresa, a.desc_evento, b.cod_grupo, b.desc_tipo_evento, a.cod_evento, c.andamento, a.data_evento, a.data_novo_contato, a.tempo, nvl(a.data_novo_contato, a.data_evento) AS data_evento_atual, a.responsavel_pelo_evento, a.responsavel_original, decode(nvl(a.cod_cliente,1),1, a.nome_cliente_avulso, j. nome) nome_cliente, b.eh_fluxo_loja, b.eh_Test_drive, f.desc_fechamento, f.tipo_fechamento, a.status, a.fluxo_foi_preferencia, a.Tem_recado, k.desc_motivo Motivo_perda, m.descricao_descarteFROM crm_eventos a, crm_eventos_tipo b, crm_andamento c, crm_tipo_fechamento f, cliente_diverso j, crm_motivo_perdas k, crm_descartes mWHERE trunc(nvl(a.data_novo_contato, a.data_evento)) = :1 AND a.cod_empresa = COALESCE(NULLIF(TO_NUMBER(:2), 0), a.cod_empresa) AND a.cod_tipo_evento = b.cod_tipo_evento AND a.cod_tipo_fechamento = f.cod_tipo_fechamento (+) AND a.cod_andamento = c.cod_andamento AND a.cod_cliente = j.cod_cliente (+) AND (b.eh_fluxo_loja = 'S OR b.eh_Test_drive = 'S') AND a.cod_motivo_perda =k.cod_motivo_perda(+) AND a.cod_descarte = m.cod_descarte(+)ORDER BY data_evento_atual--------------------------------------------------------------------------| Id | Operation | Name | Rows |--------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 375 || 1 | SORT ORDER BY | | 375 || 2 | NESTED LOOPS OUTER | | 375 ||* 3 | HASH JOIN RIGHT OUTER | | 375 || 4 | TABLE ACCESS FULL | CRM_DESCARTES | 22 ||* 5 | HASH JOIN RIGHT OUTER | | 375 || 6 | TABLE ACCESS FULL | CRM_MOTIVO_PERDAS | 16 ||* 7 | HASH JOIN RIGHT OUTER | | 375 || 8 | TABLE ACCESS FULL | CRM_TIPO_FECHAMENTO | 3 ||* 9 | HASH JOIN | | 375 ||* 10 | TABLE ACCESS FULL | CRM_EVENTOS_TIPO | 13 || 11 | MERGE JOIN | | 1682 || 12 | TABLE ACCESS BY INDEX ROWID| CRM_ANDAMENTO | 14 || 13 | INDEX FULL SCAN | SYS_C0012177 | 14 ||* 14 | SORT JOIN | | 1682 ||* 15 | TABLE ACCESS FULL | CRM_EVENTOS | 1682 || 16 | TABLE ACCESS BY INDEX ROWID | CLIENTE_DIVERSO | 1 ||* 17 | INDEX UNIQUE SCAN | SYS_C0011318 | 1 |--------------------------------------------------------------------------TOP SQLS ordenados por Tempo de CPU (SQL 1: demora 1h53 e ocupa 55 min de CPU)Plano de execuo: forma de acesso aos dados

O que d pra melhorar:Leitura integral na tabela CRM_EVENTOS que possui mais de 500 mil linhas, para acessar apenas 1600 linhas ( < 3 %) dos registrosCriar um ndice baseado em funo com as colunas data_novo_contrato e data_eventoConsideraes e exemplos (Statspack collector) Backup e Arquivos de DadosTodos no mesmo disco (esto com algum nvel de Raid ?)O correto para essa mquina ter no mnimo 3 discos (c, d e f), por exemplo

Control Files: arquivos de controle da base de dados, essencial para restore em caso de desastre o correto ter 3 arquivos e em discos distintosNAME TYPE VALUEcontrol_files string C:\APP\ADMINISTRADOR\ORADATA\N OVORIO\CONTROL01.CTL, C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\CONTROL02.CTL

Redolog files: Redologs tambm todos no mesmo disco, novamente essencial para restore incremental at a data de um crash.

GROUP# STATUS TYPE MEMBER---------- ------- ------- ------------------------------------------------- 1 ONLINE C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\REDO01.LOG 2 ONLINE C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\REDO02.LOG 3 ONLINE C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\REDO03.LOG 3 ONLINE C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\REDO03B.LOG 2 ONLINE C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\REDO02B.LOG 1 ONLINE C:\APP\ADMINISTRADOR\ORADATA\NOVORIO\REDO01B.LOG

Prazos e equipe

IDAtividadeEsforo (horas)IncioFimDependncia1Anlise de desempeno Banco de Dados Oracle 11G6802/07/201513/07/20152 - Instrumentar de ambiente402/07/201503/07/201513 - Realizar diagnstico803/07/201503/07/201524 - Analisar e elaborar sugestes de melhoria4005/07/201509/07/201535 - Implementar as melhorias de banco de dados 2408/07/201510/07/201546 - Repassar as melhorias relacionadas a alteraes na aplicao2408/07/201510/07/201547 Confeccionar entregvel1611/07/201513/07/20157Equipe: (Fase de Anlise paralelizada)Jos Eduardo Fiamengui JniorRafael TrevisanCondies comerciais

InvestimentoValor: R$ 6.000 (seis mil reais), que podero ser divididos em at 3 parcelas mensais de 2.000,00 (dois mil reais)

Consideraes GeraisO incio previsto das atividades de at 2 dias teis aps o aceite formal (assinaturas) da proposta;A Jose Eduardo Desenv. de Sofware LTDA somente poder iniciar o trabalho perante a Ordem de Compra emitida.Obrigado Jos Eduardo Fiamengui JniorConsultor de tecnologia

Contatos: [email protected](11) 9.5999-1001