JOIN é uma das operações de query mais custosas para o banco.

Não existe uma "alternativa" padrão. A idéia é manter a modelagem do seu banco 
da forma que evite ao máximo a necessidade de se fazer um JOIN.

Além disso, atraves da aplicação você pode as vezes armazenar pequenos 
resultados que evitem a necessidade de um JOIN em uma query que retornará 
muitos registros. Por exemplo:
Você tem um cadastro de itens relacionados com uma tabela que guarda icones de 
status dos itens.

Você pode no começo da página percorrer esses icones de status (que 
provavelmente são poucos) e guardar num array. Depois quando estiver 
percorrendo os itens basta pegar a imagem correspondente através do array que 
você armazenou.

Não sei se ficou claro... mas já que o tópico nem é sobre esse assunto, não vou 
aprofundar pra não perder o foco.
  ----- Original Message ----- 
  From: Vinicius Cruz 
  To: CodeIgniter Brasil 
  Sent: Thursday, September 18, 2008 2:40 PM
  Subject: Re: [CodeIgniter]Internacionalização - Ajuda com conceitos


  uma pergunta meio off-topic, 

  o JOIN diminui a performance nas consultas? Qual seria a alternativa?

  Vinicius


  2008/9/18 Marcus Cavalcanti <[EMAIL PROTECTED]>

    Ah, e não menos importante, ter uma modelagem de dados que além de tratar a 
organização, trate a questão de performance, como por exemplo evitando JOINS o 
tempo todo.


    2008/9/18 Marcus Cavalcanti <[EMAIL PROTECTED]>


      Você pode definir o idioma de diversas maneiras:

      - Lendo o header do navegador para definir idioma;
      - Guardando na seção qual idioma (eu prefiro assim, menos processamento);
      - Apendando na URL o idioma.

      Eu prefiro armazenar em sessão, pq ao meu ver vc usando Hook, vc acaba 
toda vez fazendo um processamento "desnecessário" para verificar os idiomas e 
tomar partido do que usar, você guardando isso uma única vez em sessão, é muito 
muitos menos custoso em termos de performance.

      Só não se esqueça:
      - Questão de Unicode, de preferência usar UTF-8 (DB e arquivos);
      - Internacionalização é muito mais do que textos, tem toda questão de 
moedas, datas, separadores e validações por exemplo.

      http://www.w3.org/TR/i18n-html-tech-lang/

      
http://www.translate.com/technology/multilingual_standard/software_i18n_article.html

      http://www.mihai-nita.net/article.php?artID=20051025a



      2008/9/18 Edinho Almeida <[EMAIL PROTECTED]>


        No hook daria para setar também a configuração do DB para acessar o DB
        no idioma em questão.

        Abs
        Edinho

        2008/9/18 Henrique de Castro <[EMAIL PROTECTED]>:

        > Cara, o CI já separa todas as mensagens, se eu fosse vc usaria hooks 
para
        > setar a localidade e assim carregar os arquivos necessários de 
mensagem.
        >
        > 2008/9/18 Cleyverson Costa <[EMAIL PROTECTED]>
        >>
        >> Pessoal,
        >>
        >> Qual a melhor forma de se trabalhar com Internacionalização??
        >>
        >> 1) Da primeira vz q o usuario entra vcs selecionam o idioma baseado 
em q,
        >> idioma do navegador, local de origem, outros??
        >>
        >> 2) Vcs fazem a conferencia via cookie, session, outros??
        >>
        >> 3) Quanto a tradução em si, é sugerido colocar tudo no mesmo arquivo,
        >> dividir um arquivo por página, outros??
        >>
        >> Caso alguém tenha alguma observação extra por favor incluir.
        >>
        >> Atenciosamente
        >>
        >> --
        >> Cleyverson Pereira Costa
        >> MSc Candidate in Computer Science
        >> Federal University of Pernambuco, Brazil
        >> +55 81 8785-1289 | +55 81 3274-4180
        >>
        >> _______________________________________________
        >> Lista mailing list
        >> [email protected]
        >> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
        >>
        >
        >
        > _______________________________________________
        > Lista mailing list
        > [email protected]
        > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
        >
        >




        --
        Abs
        Edinho Almeida
        11 8962-9406

        _______________________________________________
        Lista mailing list
        [email protected]
        http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br






    _______________________________________________
    Lista mailing list
    [email protected]
    http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br






------------------------------------------------------------------------------


  _______________________________________________
  Lista mailing list
  [email protected]
  http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a