Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

brcontainer

myisam vs memory vs innod vs archive

Recommended Posts

Tenho projetos feitos tanto com UTF-8 quanto com latin1 e todos usam MyIsam. O que eu gostaria de saber é quais as principais diferenças de:

myisam, memory, innod e archive.

 

Todas dão suporte para UTF-8 e latin1?

Quais tem o melhor desempenho (não só em SELECT, mas em UPDATE e INSERT tambem)?

Qual tem menor gasto de memória?

Todas tem suporte para todos os servidores que utilizam MySQL?

Qual vocês me recomendam?

 

Eu li que o MyIsam, tem melhor desempenho geral, porem o innoDB tem melhor desempenho em INSERT e UPDATE, isso procede?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, isso varia muito de acordo com o que você guarda, o que você faz .. não é simplesmente melhor e pior InnoDB tem recursos que o MyISAM não tem, como Foreign Keys ( Chaves Estrangeiras ) entre outras coisas ..

 

E sim, eu acredito que quase todas dão suporte aos charsets que você usa ..

 

Você pode consultar umas referencias e executar alguns experimentos para fazer esses tipos de testes, com certeza, você vai ter uma noção de qual seria adaptado melhor ao seu projeto/aplicação .

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Andrey Knupp obrigado pela reposta, apesar de uma resposta meio vaga.

 

Todas minhas querys são bem simples.

Não uso subselect, join e nem outro tipo, pois minhas estruturas são sempre bem aproveitadas em SERVER-SIDE(php).

 

Muitos subselect/join/outros que usei perdem desempenho tanto em innoDB quanto em MyIsam.

 

O máximo que precisei usar foi o FULLTEXT para fazer um SCORE, de qual linha possuia maior numero de ocorrencias, isso só funciona em MyIsam. Hoje já consegui criar uma função que funciona tanto em innoDB quanto em MyIsam (combinando PHP ao MySql) e sem perda de desempenho.

 

Percebe-se com isso que minhas querys são sempre bem simples. Portanto não é por necessidade de funções, é só por querem adquirir um padrão, assim como comecei:

 

migrar de iso-8859-1 para utf-8.

Troquei o \r\n em arquivos por apenas \n (execeto quando vou usar sockets para webservice).

 

Tendo tudo isso em "mãos", entende agora? Assim como a pergunta que fiz:

Eu li que o MyIsam, tem melhor desempenho geral, porem o innoDB tem melhor desempenho em INSERT e UPDATE, isso procede?

O seja acredite li muito antes de vir perguntar, o que eu queria mesmo é que alguem que tive-se experiencia com innoDB e MyIsam, compartilha-se comigo essa experiencia. Pois para mim (e muitos outros) seria de grande valor.

 

Obrigado pela atenção amigo, lhe desejo um feliz ano novo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, pra você também .. mas na verdade minha resposta foi totalmente omitida em relação a alguns pontos, cada um trabalha de uma forma, a única diferença, são as tabelas que se usam em cada projeto e o que se precisa fazer ..

 

Foreign keys por exemplo, muita gente deixar de utilizar, ou não conhece, apesar de ser um belo recurso em certos casos ..

 

Entretanto, todas as Storage Engines tem diferenças, coisas boas e ruins, mas é como eu lhe disse, pra você ter uma PURA CERTEZA de qual utilizar, tem que realizar experimentos ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Prog em um dos links que você me passou, encontrei isso:

http://www.mysqlperformanceblog.com/2007/01/08/innodb-vs-myisam-vs-falcon-benchmarks-part-1/

 

Simplesmente demonstra de maneira bem prática, e esse FalconBenchmarks pode ser uma futura padronização, vou ler mais sobre ele.

 

Por enquanto vou me manter em MyIsam.

 

Vou ler sobre FalconBenchmarks e ver suas projeções (para uso futuro :) ).

Pode marcar como [resolvido].

 

Muito obrigado a todos e um feliz 2012

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não descarte a possibilidade de fazer seus próprios testes.

Deixa comigo, valeu Andrey (gerei um arquivo com 100000 registros, assim que tiver tempo vou fazer os testes conforme exemplo o link http://www.mysqlperformanceblog.com/2007/01/08/innodb-vs-myisam-vs-falcon-benchmarks-part-1/).

 

Obrigado mais uma vez :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.