- Este tópico contém 15 respostas, 5 vozes e foi atualizado pela última vez 16 anos, 6 meses atrás por
vieri.
-
AutorPosts
-
14 de setembro de 2009 às 5:15 pm #89642
Anônimo
Olá pessoal
Alguem já teve alguma experiência com particionamento de tabelas utilizando oracle RAC, com ASM – oracle versão 10.2.0.4?
É viável e possivel fazer isso ?
Abraços
Marco Aurelio
14 de setembro de 2009 às 6:24 pm #89647vieri
ParticipanteO particionamento é até uma boa prática em ambientes RAC,
pois minimiza a carga de dados trasmitida enter-instâncias
pelo inter connect.Sua preocupação seria criar essa tabela em um ambiente de testes e verificar se os planos de exec. em cima dela iram melhorar.
Outro detalhe que pata table partitioning sua versão deve ser enterprise.
normalmente o pessoal quando cria cluster de dois nós colocam
em versão standart.14 de setembro de 2009 às 6:35 pm #89649Anônimo
Ola Vieri
Muito obrigado pelo seu post.
Então é realmente possivel usar o particionamento utilizando ASM, eu tinha a idéia de que em ASM, o particionamento não teria muito efeito positivo.Na verdade, no meu caso, como o pessoal de desenvolvimento não querem mudar a escrita de sql, eu estou tentando fazer mágica.
Tenho algumas tabelas gigantescas e algumas sqls se utilizam dessas tabelas para gerarem um relatório semanal, o problema é que ao executar essa sql, eles varrem essas tabelas todas e isso causa um transtorno danado, pra vc ter uma ideia um desses jobs que roda demora cinco dias para finalizar.
De qualquer forma, valeu mesmo pelo post, e se você tiver alguma outra sugestão, por favor relate para mim.
Abraços
Marco Aurelio
14 de setembro de 2009 às 6:49 pm #89650Thiago Vilhena
ParticipanteBom dia…
rsrsr Tbm tenho muitos problemas com esses caras de desenvolvimento, Po a melhor recomendação seria utilizar o maior numero de bind variaveis possivel, Mas já que esse pelas nao querem mudar os SQL, tenta ver se o Oracle ta usando um metodo de coleta adequado. Se voce implantar um metodo de coleta de statistica legal, voce força o oracle a procurar por melhores planos de acessos aos blocos de dados…Lembrando tbm que criação de indices tbm ajuda bastante. O foda que cada caso é um caso diferente, o grande problema nao é o Oracle em si, nosso grande problema sao as pessoas envolvidas no sistema!!
já ouviu falar de CBO, cata algo ai pela net e da uma lidinha… é bom é bom =D
abraços
Espero ter ajudado.14 de setembro de 2009 às 6:56 pm #89652Anônimo
Olá Thiago
Valeu pelo seu post.
Realmente é complicado lidar com esses caras, eles se acham o tal, e a gente que faça mágica pra fazer o negócio rodar.Valeu pela dica de CBO, embora já tenha pesquisado algo sobre isso, mas vou rever essa possibilidade.
Valeu mesmo.
Abraços
Marco Aurelio
14 de setembro de 2009 às 7:01 pm #89653David Siqueira
ParticipantePeres como vai?
Uma sugestão, antes de implementar seu particionameto, faça um estudo de qual é a melhor pratica para tal, de acordo com os dados de suas tabelas, se vale mais a pena particionar por DATA, por HASH ou ainda sim particionar e Subparticionar para melhorar ainda mais, atente também para os indices, se você usará GLOBAL ou particionados.
Feito isso já pense em uma rotina de expurgos de dados obsoletos para produção, porém necessários para efeitos juridicos, crie uma base de Histórico e de tempos em tempos mova seus dados “obsoletos” em produção para essa base Histórico, assim você diminui as contenções em cima das tabelas gigantescas e minimiza os picos de processamentos e memória que provavelmente as query’s mau escritas devem gerar.
Abraço!!!
14 de setembro de 2009 às 7:01 pm #89654Thiago Vilhena
ParticipanteBeleza parceirao.. se tuh kiser eu tenho um livro aki na maquina de CBO, se quiser que eu te mande, blz veio..
Vamo arregaçar esses desenvolvedores de M**** kkkk..
14 de setembro de 2009 às 7:58 pm #89659vieri
ParticipanteNão da mole para desenvolvedores não .. eles acham que adm. banco de dados Oracle é moleza…. sem eles nos encherem de problemas já temos muito oque fazer e estudar com problema então .. putz !!
Mas segue esse linha.
1)Verifque se essas tabelas podem sofrer expurgo de dados,
caso tenha campo date, faça um MIN e va direto no gerente, perguntar se isso é importante para o negócio. Desenvolvedor(90% deles) são bitolados, não tem visão da empresa, apenas do nicho de negócio que eles desenvolvem.2) Realize o particinamento por date (range partitioning) existem muitos exemplos da internet, se tiver dúvidas poste aqui, caso tenha tempo pra isso estude outros metodos, mas sugiro deixar isso pra depois, pois é bastante extenso.
3) Verifique se a coleta de estatistisca está em dia e qual metódo está utilizando, de preferência usar a dbms_stat com percent =>100 e com cascade para fazer dos indices também.
4)Quando rodarem o processo, monitore o banco, pode ser
via enterprise manager, análise as querues que estão consumindo mais tempo e cpu, de uma olhada nos planos, as X alguns índices podem salvar a pátria, as vezes tem índice demais…
Da umas olhadas nos wait event da base também(v$session_event).abraços !
14 de setembro de 2009 às 8:23 pm #89660David Siqueira
ParticipanteOlá!!!
Outra dica, pesquise sobre indices de chave reversa, em ambientes RAC podem lhe ser bem uteis.
Ats.
14 de setembro de 2009 às 8:25 pm #89661Anônimo
Ola Vieri
Mais uma vez obrigado pelo seu post, aqui onde trabalho, é muito complicado, não tenho nem o apoio do meu gerente, embora já tenha repassado a ele alguns problemas criticos em relação a sql horriveis que rodam aqui.
Mas de qualquer forma vou estudar o que você sugeriu.
Valeu
Marco Aurelio
14 de setembro de 2009 às 8:27 pm #89662Anônimo
Ola David.
Obrigado pelo seu post, vou ler algo sobre o que você sugeriu.
Obrigado mesmo
Abraços
Marco Aurelio
15 de setembro de 2009 às 1:51 pm #89675ramasine
ParticipanteSe alguem quiser dicas de como se eliminar desenvolvedores, fale comigo..rsss
Aqui sou eu e + dois dba´s contra uma equipe de 98 “developers”…. 😮
15 de setembro de 2009 às 3:24 pm #89676Anônimo
Olá Ramasine
Aqui é um pouco pior sou eu e mais um dba para 150 developers, acho que vou precisar da sua técnica.
Abraços
Marco Aurelio
15 de setembro de 2009 às 4:19 pm #89677ramasine
ParticipanteJá viu KILL BILL ?? rsss
Recomendo a vc, o salmo dos DBA´s..!!
O Metalink é meu salvador, nada me escapará
Deitar-me faz em estáveis bancos de dados, guia-me mansamente a
restores tranquilos.
Refrigera a minha mente; guia-me pelas veredas dos complex tunnings,
por amor a nossa profissão
Ainda que eu andasse pelo vale da sombra da morte, não temeria nenhum desenvolvedor, porque Tom Kyte está comigo; as suas notes e os seus exemplos me esclarecem;
Ilumina-me para que prepares um statspack report, e na mesa de
reunião, na frente dos Chief’s Developers eu os faça ajoelhar,
enche a minha cabeça com notes, artigos e dicas, para que meu cérebro
transborde;
Assim certamente que a paciência e a tolerância me seguirão todos os
dias da minha vida; e habitarei com paz meu posto de DBA por longos dias. 😀15 de setembro de 2009 às 5:49 pm #89679vieri
ParticipanteRamasine,
acho que vc está assustado atoa.. essa ai é a média da maioria das empresas. 1DBA/30Desenv .
Sendo que desenvolvedores podemAqui são 3 DBA’s contra uns 100desenv…
até ai tudo bem.. mas eu sou o único especialista em Oracle da empresa!
ai já viu né…“””PELOS PODERES DE GREYSKULL, EU TENHO A FORÇA”””
Quando entrei aqui tive bom stresses e discussões,
como eu também nem sou marrento… hehehe
mas a médida que vc vai resolvendo os problemas,
acaba fazendo amizades e depois flui naturalmente…
mas no inicio “a porrada comeu” … hehe😀
-
AutorPosts
- Você deve fazer login para responder a este tópico.