Alta performance                                com Lucene                                               ROd              ...
ROd                             Desenvolvedor                             especialista em                             arqu...
Léo Nickel                 Desenvolvedor de                             sistemas com                    experiência de 6  ...
LUCENE       • Apache Top Level Project desde 02/2005       • Orientado a documento       • Schemaless       • Instância ú...
MOTIVAÇÃO       • Substituição do motor de busca FAST SEARCH       • Requisitos não funcionais            - Baixa latência...
IMPLEMENTAÇÃO   22/10/2011                6Saturday, October 22, 2011
TIMELINE                SERVIDOR LINUX 1                             NFS PARAMS                             24 QPS   22/10...
TIMELINE                              OTIMIZAÇÃO                                COMPOUND FILE                             ...
TIMELINE                SERVIDOR LINUX 1                             NFS PARAMS                             30 QPS   22/10...
TIMELINE                         DESKTOP LINUX                             DISCO LOCAL                             200 QPS...
TIMELINE                SERVIDOR LINUX 2                             DISCO LOCAL                             500 QPS   22/...
TIMELINE                SERVIDOR LINUX 2                             NFS DEFAULT + RO                             450 QPS ...
TIMELINE                             QUESTÃO:                    VÁRIOS SEARCHERS NO MESMO                     NFS DEGRADA...
TIMELINE          SERVIDOR LINUX 1 e 2                        CARGA: SERVIDOR LINUX 3 e 4                              900...
EM PRODUÇÃO...          SERVIDOR LINUX 1 e 2                             NFS DEFAULT + RO             27 → 413 → 962 QPS  ...
LIÇÕES APRENDIDAS       • Otimização constante do índice       • Configuração de File Descriptor no SO       • Diferentes ...
Obrigado =)                    http://www.slideshare.net/rzdrigo/alta-                            performance-com-lucene  ...
Próximos SlideShares
Carregando em…5
×

Alta perfomance com Lucene

1.643 visualizações

Publicada em

Apresentação realizada no no:sql(br)/v2 em 22/10/2011 sobre o caso de sucesso utilizando Apache Lucene na substituição de uma ferramenta proprietária de busca.

  • Seja o primeiro a comentar

Alta perfomance com Lucene

  1. 1. Alta performance com Lucene ROd Léo NickelSaturday, October 22, 2011
  2. 2. ROd Desenvolvedor especialista em arquiteturas de alta performance relacionadas a publicação e busca de conteúdo @rzdrigo 22/10/2011 2Saturday, October 22, 2011
  3. 3. Léo Nickel Desenvolvedor de sistemas com experiência de 6 anos em aplicações Java EE em telefonia, marketing online e busca orgânica @leonardonickel 22/10/2011 3Saturday, October 22, 2011
  4. 4. LUCENE • Apache Top Level Project desde 02/2005 • Orientado a documento • Schemaless • Instância única de IndexWriter por índice • Quebra da API entre: – 2.4 → 2.9 – 3.1 → 3.2 (incompatibilidade entre índices) 22/10/2011 4Saturday, October 22, 2011
  5. 5. MOTIVAÇÃO • Substituição do motor de busca FAST SEARCH • Requisitos não funcionais - Baixa latência de indexação - Alta disponibilidade de busca - Sharding 22/10/2011 5Saturday, October 22, 2011
  6. 6. IMPLEMENTAÇÃO 22/10/2011 6Saturday, October 22, 2011
  7. 7. TIMELINE SERVIDOR LINUX 1 NFS PARAMS 24 QPS 22/10/2011 7Saturday, October 22, 2011
  8. 8. TIMELINE OTIMIZAÇÃO COMPOUND FILE READ ONLY FIELD SELECTOR ESTRATÉGIA DE REOPEN 22/10/2011 8Saturday, October 22, 2011
  9. 9. TIMELINE SERVIDOR LINUX 1 NFS PARAMS 30 QPS 22/10/2011 9Saturday, October 22, 2011
  10. 10. TIMELINE DESKTOP LINUX DISCO LOCAL 200 QPS 22/10/2011 10Saturday, October 22, 2011
  11. 11. TIMELINE SERVIDOR LINUX 2 DISCO LOCAL 500 QPS 22/10/2011 11Saturday, October 22, 2011
  12. 12. TIMELINE SERVIDOR LINUX 2 NFS DEFAULT + RO 450 QPS 22/10/2011 12Saturday, October 22, 2011
  13. 13. TIMELINE QUESTÃO: VÁRIOS SEARCHERS NO MESMO NFS DEGRADA A PERFORMANCE? 22/10/2011 13Saturday, October 22, 2011
  14. 14. TIMELINE SERVIDOR LINUX 1 e 2 CARGA: SERVIDOR LINUX 3 e 4 900 QPS 22/10/2011 14Saturday, October 22, 2011
  15. 15. EM PRODUÇÃO... SERVIDOR LINUX 1 e 2 NFS DEFAULT + RO 27 → 413 → 962 QPS 22/10/2011 15Saturday, October 22, 2011
  16. 16. LIÇÕES APRENDIDAS • Otimização constante do índice • Configuração de File Descriptor no SO • Diferentes politicas de Sharding • Fieldable != Field • MultiReader com ExecutorServices • Evitar o uso de PrefixQuery - Validar se campo existe 22/10/2011 16Saturday, October 22, 2011
  17. 17. Obrigado =) http://www.slideshare.net/rzdrigo/alta- performance-com-lucene ROd (rzaccara@uolinc.com) Léo Nickel (lnickel@uolinc.com) @rzdrigo @leonardonickelSaturday, October 22, 2011

×