O
Apache Solr é um servidor de pesquisa de código aberto, livre de plataforma e de alto desempenho, baseado no projeto Apache Lucene, que usa APIs XML / HTTP e JSON. O projeto está atualmente sob incubação na Apache Software Foundation.
Recursos em resumo
Os principais recursos incluem realce de hits, pesquisa facetada, armazenamento em cache, replicação, interface de administração baseada na Web, recursos avançados de pesquisa de texto completo, otimizado para tráfego da Web de alto volume e interfaces abertas baseadas em padrões, como HTTP , XML e JSON.
Além disso, ele vem com interfaces de administração HTML abrangentes, estatísticas do servidor, replicação automática de índice, recuperação automática e failover, indexação quase em tempo real, adaptável e flexível com configuração XML e uma arquitetura de plug-in extensível.
O projeto não tem esquema, permitindo que o usuário inicie rapidamente com o Apache Solr. Os modos schemaless e schemaless são suportados neste momento, mas o último levará a um ambiente de produção forte.
Vários tipos são suportados pelo Solr, incluindo os Tipos de campo, que ajudarão você a misturar e combinar analisadores Lucene sem escrever qualquer parte do código. Além disso, o projeto suporta campos dinâmicos que podem ser ativados em tempo real.
Entre outros recursos interessantes, podemos mencionar a funcionalidade de campo de cópia que permite aos usuários analisar facilmente o mesmo conteúdo usando métodos diferentes, suporte a tipos explícitos para eliminar a necessidade de adivinhar tipos de campos, configurações personalizadas com base em arquivos externos, como bem como vários componentes adicionais de análise de texto.
Sob o capô e disponibilidade
Olhando sob o capô do Apache Solr, podemos notar que o aplicativo foi escrito inteiramente na linguagem de programação Java e suporta distribuições de 32 bits e 64 bits do Linux, bem como do Microsoft Windows e Mac OS. X sistemas operacionais.
Para sua conveniência, ele é distribuído como arquivos binários e de origem, para que você possa começar facilmente com o Apache Solr no menor tempo possível e sem muito trabalho.
O que é novo nesta versão:
- O supervisor nunca pode processar algumas últimas mensagens.
- Renomear core no modo stand-alone solr não é mantido.
- A análise de parâmetros rq do QueryComponent não considera mais o parâmetro defType.
- Corrija NPE no SolrQueryParser quando os termos da consulta dentro de uma cláusula de filtro forem reduzidos a zero.
O que há de novo na versão:
- Além de muitas outras melhorias na estrutura de segurança, o Solr agora inclui um AuthenticationPlugin implementando o HTTP Basic Auth que armazena credenciais com segurança no ZooKeeper. Essa é uma maneira simples de exigir um nome de usuário e senha para qualquer pessoa que acesse a tela de administrador ou as APIs do Solr.
- No AuthorizationPlugin criado, que fornece um controle refinado sobre a implementação de ACLs para vários recursos com regras de permissão que são armazenadas no ZooKeeper.
- A API do JSON Facet agora pode alterar o domínio para os comandos facetados, essencialmente fazendo uma junção em bloco e passando de pais para filhos ou filhos para pais antes de calcular os dados da faceta.
- Principais melhorias no desempenho da nova API Facet Module / JSON Facet.
- Query e Range Facets em Facets dinâmicos. Assim como a API do JSON Facet, as facetas dinâmicas podem incluir como aninhar outros tipos de facetas, como facetas de intervalo e de consulta.
- Mais como opções deste analisador de consulta. O MoreLikeThis QParser agora suporta todas as opções fornecidas pelo manipulador de MLT. O analisador de consulta é muito mais versátil que o manipulador, pois funciona no modo de nuvem, bem como em qualquer lugar em que uma consulta normal possa ser especificada.
- Adicionado suporte à API de esquema no SolrJ
- Adicionado o modo de pontuação para a junção em tempo de consulta e a associação em bloco.
- Adicionado formato de resposta do Smile
O que há de novo na versão 4.10.3:
- O Solr 4.10.2 inclui 10 correções de bugs, bem como o Lucene 4.10.2 e suas 2 correções de bugs.
O que há de novo na versão 4.6.1:
- Apache Tika 1.4
- Carrot2 3.8.0
- Velocity 1.7 e Velocity Tools 2.0
- Apache UIMA 2.3.1
- Apache ZooKeeper 3.4.5
- Correções de bugs:
- SOLR-5408: A pontuação do CollapsingQParserPlugin é incorreta quando vários critérios de classificação são usados
- (Brandon Chapman, Joel Bernstein)
- SOLR-5416: O método CollapsingQParserPlugin interrompe o Tag / Exclude Faceting
- (David Boychuck, Joel Bernstein)
- SOLR-5442: O cliente Python não pode analisar a resposta em proxy quando é servido pelo Tomcat.
- (Patrick Hunt, Gregory Chanan, Vamsee Yarlagadda, Romain Rigaux, Mark Miller)
- SOLR-5445: As respostas procuradas devem propagar todos os cabeçalhos, em vez do primeiro para cada chave.
- (Patrick Hunt, Mark Miller)
- SOLR-5479: A lógica de nova tentativa do SolrCmdDistributor pára se um líder para a solicitação não puder ser encontrado em 1 segundo.
- (Mark Miller)
- SOLR-5532: A validação do tipo de conteúdo do SolrJ é muito restrita para alguns webcontainers / proxies.
- (Jakob Furrer, hossman, Shawn Heisey, Uwe Schindler, Mark Miller)
- SOLR-5547: A criação de um alias de coleta usando CollectionAdminRequest do SolrJ configura o nome do alias e as coleções para o alias para o mesmo valor.
- (Aaron Schram, Mark Miller)
- SOLR-5577: A expiração provável do ZooKeeper não deve reduzir a velocidade de atualizações em um determinado valor, mas sim cortar as atualizações após um determinado período.
- (Mark Miller, Christine Poerschke, Ramkumar Aiyengar)
- SOLR-5580: NPE ao criar um núcleo com shard explícito e coreNodeName.
- (YouPeng Yang, Mark Miller)
- SOLR-5552: O processo de recuperação do líder pode selecionar o líder errado se todas as réplicas de um fragmento estiverem inativas e tentando se recuperar, além de perder as atualizações que deveriam ter sido recuperadas.
- (Timothy Potter, Mark Miller)
- SOLR-5569 Uma réplica não deve tentar se recuperar de um líder até que tenha publicado que é ATIVA.
- (Mark Miller)
- SOLR-5568 Um SolrCore não pode decidir ser o líder apenas porque o estado do cluster diz que nenhum outro SolrCore está ativo.
- (Mark Miller)
- SOLR-5496: Devemos compartilhar um gerenciador de conexões http em HttpClients que não sejam de pesquisa e garantir que todos os gerenciadores de conexões http sejam desligados.
- (Mark Miller)
- SOLR-5583: ConcurrentUpdateSolrServer # blockUntilFinished pode esperar para sempre se o serviço do executor for encerrado.
- (Mark Miller)
- SOLR-5586: Todos os ZkCmdExecutor's devem ser inicializados com o tempo limite do cliente zk.
- (Mark Miller)
- SOLR-5587: As implementações do ElectionContext devem usar o ZkCmdExecutor # ensureExists para garantir que seus caminhos de eleição sejam criados corretamente.
- (Mark Miller)
- SOLR-5540: O HdfsLockFactory deve criar explicitamente o diretório pai de bloqueio, se necessário.
- (Mark Miller)
- SOLR-4709: O recarregamento do núcleo após a replicação, se os arquivos de configuração foram alterados, pode falhar devido a uma condição de corrida. (Mark Miller, Hossman))
- SOLR-5503: Repetir solicitações 'encaminhar para o líder' de maneira menos agressiva - em vez de usar IOException e status 500, ConnectException.
- (Mark Miller)
- SOLR-5588: O PeerSync não conta todas as falhas de conexão como sucesso.
- (Mark Miller)
- SOLR-5564: hl.maxAlternateFieldLength deve ser aplicado ao campo original quando o fallback é tentado
- (janhoy)
- SOLR-5608: Não permita que um SolrCore fechado publique o estado no ZooKeeper.
- (Mark Miller, Shawn Heisey)
- SOLR-5615: Impasse ao tentar recuperar após uma expiração da sessão ZK.
- (Ramkumar Aiyengar, Mark Miller)
- SOLR-5543: As trocas de núcleo resultaram em entradas de núcleo duplicadas em solr.xml ao usar a persistência de solr.xml.
- (Bill Bell, Alan Woodward)
- SOLR-5618: Corrigir ocorrências de cache falso em queryResultCache quando os hashCodes são iguais e existem consultas de filtro duplicadas em uma das solicitações
- (hossman)
- SOLR-4260: ConcurrentUpdateSolrServer # blockUntilFinished pode retornar antes que todas as atualizações adicionadas anteriormente sejam concluídas. Isso pode causar atualizações distribuídas para que as réplicas sejam perdidas.
- (Markus Jelsma, Timothy Potter, Joel Bernstein e Mark Miller)
- SOLR-5645: Um recarregamento do SolrCore através do CoreContainer tentará se registrar no zk novamente com o novo SolrCore.
- (Mark Miller)
- SOLR-5636: SolrRequestParsers faz algumas pesquisas de xpath em todas as solicitações, o que pode causar problemas de simultaneidade.
- (Mark Miller)
- SOLR-5658: commitWithin e overwrite não estão sendo distribuídos para réplicas agora que o SolrCloud usa o javabin para distribuir atualizações.
- (Mark Miller, Varun Thacker, Elodie Sannier, Shalin)
- Otimizações:
- SOLR-5576: Melhore a simultaneidade ao registrar e aguardar que todos os SolrCore registrem um estado DOWN.
- (Christine Poerschke via Mark Miller)
O que há de novo na versão 4.6.0:
- Muitos aprimoramentos e aprimoramentos para opções de divisão de shards
- Novo AnalyzingInfixLookupFactory para aproveitar o AnalyzingInfixSuggester
- Novo CollapsingQParserPlugin para recolhimento de campo de alto desempenho em campos de alta cardinalidade
- Novas APIs do SolrJ para gerenciamento de coleções
- Novo DocBasedVersionConstraintsProcessorFactory que fornece suporte para regras de versão centradas em doc configuradas pelo usuário
- Novo formato de índice padrão: Lucene46Codec
- Novo tipo EnumField
O que há de novo na versão 4.5.1:
- O Solr 4.5.1 contém um punhado de correções de bugs, incluindo 2 que são consideradas bastante severas.
O que há de novo na versão 4.5.0:
- Suporte a sharding personalizado, roteamento aprimorado e lapidação multithread.
O que há de novo na versão 4.2.0:
- Uma API REST de leitura para o esquema. Sempre quis fazer introspecção no esquema via http? Agora você pode. Parece que o lado da escrita virá em seguida.
- DocValues foram integrados no Solr. DocValues pode ser carregado muito mais rápido que o cache de campo e também pode usar diferentes algoritmos de compactação, bem como em RAM ou em representações de disco. Todas as consultas de faceta, classificação e função beneficiam. Como sobre o sistema operacional lidar com faceting e classificação de caches off heap? Não mais sintonizar 60 gigabytes heaps? Que tal um novo método de lapidação DocValues por segmento? Lapidação numérica aprimorada? Doce
- Aliasing de coleção. Tem dados baseados no tempo? Quer re-indexar em uma coleção temporária e depois trocá-la em produção? Feito. Fique atento ao aliasing de estilhaços.
- Respostas da API de coleção. A API de coleções ainda era muito nova na versão 4.0 e, embora tenha melhorado um pouco em 4.1, as respostas foram certamente necessárias, mas perderam o corte. Inicialmente, tomamos a decisão de tornar a API de coleta super tolerante a falhas, o que tornou as respostas mais difíceis de serem executadas. Ninguém quer caçar arquivos de logs para ver como as coisas acabaram. Feito em 4.2.
- Interaja com qualquer coleção em qualquer nó. Até 4.2, você só poderia interagir com um nó no cluster se ele hospedasse pelo menos uma réplica da coleção que você desejasse consultar / atualizar. Não mais - consulta qualquer nó, tenha ou não uma parte de sua coleção pretendida e obtenha uma resposta com proxy.
- Permitir nomes de fragmentos personalizados para que novos endereços de host possam assumir os shards aposentados. Trabalhando na Amazon sem ips elásticos? Isto é para você.
- Otimizações do Lucene 4.2, como vetores de termo compactado.
O que há de novo na versão 3.3.0:
- Recolhimento de agrupamento / campo
- Uma nova implementação de autocompletar / sugestão baseada em autômato, oferecendo uma ordem de magnitude menor de consumo de RAM.
- KStemFilterFactory, uma implementação otimizada de um stemmer menos agressivo para o inglês.
- O padrão do Solr é uma nova política de mesclagem mais eficiente (TieredMergePolicy). Veja http://s.apache.org/merging para mais informações.
- Correções de erros importantes, incluindo uso extremamente alto de RAM na verificação ortográfica.
- Correções de bugs e melhorias do Apache Lucene 3.3
O que há de novo na versão 3.2.0:
- Capacidade de especificar sobrescrever e confirmar como parâmetros de solicitação ao usar o formato de atualização JSON
- TermQParserPlugin, útil ao gerar consultas de filtro a partir de termos retornados do facetamento de campo ou do componente de termos.
- O DebugComponent agora suporta o uso de um NamedList para modelar objetos Explanation em suas respostas, em vez de Explanation.toString
- Melhorias nas integrações do UIMA e do Carrot2
- Correções de bugs e melhorias do Apache Lucene 3.2
O que há de novo na versão 3.2.0:
- melhorias na atualização do JSON foram feitas.
- O agrupamento de resultados de pesquisa e a integração do UIMA foram aprimorados.
- Os bugs foram corrigidos.
Comentários não encontrado