Apache Lucene

Software screenshot:
Apache Lucene
Dettagli del software:
Versione: 5.3.1 / 4.10.4 / 3.6.2 Aggiornato
Data di caricamento: 10 Dec 15
Licenza: Libero
Popolarità: 875

Rating: nan/5 (Total Votes: 0)

Apache Lucene è adatto per qualsiasi applicazione che richiede il supporto per la ricerca full-text, pur mantenendo il consumo di risorse server verso il basso e produrre risultati rapidi e di alta precisione.

Lucene è ampiamente considerato come uno dei migliori motori di ricerca di tutto, essendo al centro di molti altri strumenti di ricerca, il più famoso essere Apache Solr .

Lucene è scritto interamente in Java e da quando è stato rilasciato dalla Fondazione Apache, che è stato portato su molte altre lingue ed esistono vari attacchi e involucri da terze parti sviluppato il software.

Ciò che è nuovo in questa versione:

  • Tutti i file di accesso utilizza ora le API di Java NIO.2 che danno Lucene forte sicurezza indice in termini di migliore gestione degli errori e commit più sicure.
  • Ogni segmento Lucene memorizza ora un ID univoco per ogni segmento e per-commit per aiutare nella replica accurata dei file di indice.
  • Durante la fusione, IndexWriter ora controlla sempre i segmenti in arrivo per la corruzione prima di fondersi. Questo può significare, per l'aggiornamento a 5.0.0, che la fusione potrebbe scoprire di lunga data alla corruzione latente in un indice 4.x più vecchio.

Cosa c'è di nuovo nella versione 5.2.1 / 4.10.4 / 3.6.2:

  • Tutti i file di accesso ora utilizza le API di Java NIO.2 che danno Lucene forte sicurezza indice in termini di migliore gestione degli errori e commit più sicuri.
  • Ogni segmento Lucene memorizza ora un ID univoco per ogni segmento e per-commit per aiutare nella replica accurata dei file di indice.
  • Durante la fusione, IndexWriter ora controlla sempre i segmenti in arrivo per la corruzione prima di fondersi. Questo può significare, per l'aggiornamento a 5.0.0, che la fusione potrebbe scoprire di lunga data alla corruzione latente in un indice 4.x più vecchio.

Cosa c'è di nuovo nella versione 5.1.0 / 4.10.4 / 3.6.2:

  • Tutti i file di accesso ora utilizza le API di Java NIO.2 che danno Lucene forte sicurezza indice in termini di migliore gestione degli errori e commit più sicuri.
  • Ogni segmento Lucene memorizza ora un ID univoco per ogni segmento e per-commit per aiutare nella replica accurata dei file di indice.
  • Durante la fusione, IndexWriter ora controlla sempre i segmenti in arrivo per la corruzione prima di fondersi. Questo può significare, per l'aggiornamento a 5.0.0, che la fusione potrebbe scoprire di lunga data alla corruzione latente in un indice 4.x più vecchio.

Cosa c'è di nuovo nella versione 5.0.0 / 4.10.3 / 3.6.2:

  • Nuove Termini Metodi .getMin / Max per recuperare i termini bassi e più alti per campo.
  • Nuovo IDVersionPostingsFormat, ottimizzato per le ricerche di identificazione che associano una versione monotona crescente per ID.
  • Aggiornamento atomica, di un insieme di valori doc campi.
  • Numerose ottimizzazioni per le prestazioni valori doc ricerca-tempo.
  • Nuovo (default) Lucene49NormsFormat per comprimere meglio alcuni casi come i campi molto corti.
  • Nuovo SORTED_NUMERIC docvalues ​​tipo per il trattamento efficace di campi numerici multivalore.
  • indicizzatore passa precedente flusso di token per un più facile riutilizzo.
  • MoreLikeThis accetta più valori per campo.
  • Tutte le classi che stimano il loro utilizzo della RAM ora implementare una nuova interfaccia Accountable.
  • file Lucene sono ora scritto da (File) OutputStream su tutte le piattaforme, completamente non consentendo cercando con semplificate IO API.
  • Migliorare il messaggio di errore di confusione quando MMapDirectory non può creare una nuova mappa.

Cosa c'è di nuovo nella versione 4.8.0:

  • Lucene ha una nuova API Rescorer / QueryRescorer per eseguire secondo passaggio rescoring o riclassificazione dei risultati di ricerca tramite le funzioni di punteggio più costosi dopo la raccolta di primo passaggio successo.
  • AnalyzingInfixSuggester ora supporta autosuggest near-real-time.
  • post-impatto ordinato semplificate (con SortingMergePolicy e EarlyTerminatingCollector) per utilizzare la classe di Lucene Ordina per esprimere il tipo di ordinamento.
  • punteggio di massa e normale punteggio basato iteratore-sono stati separati, in modo da alcune query possono fare punteggio di massa in modo più efficace.
  • Switched per MurmurHash3 hash termini durante l'indicizzazione.
  • IndexWriter ora supporta l'aggiornamento dei campi di valore doc binari.
  • HunspellStemFilter ora utilizza 10 a 100 volte meno RAM. Carica anche tutti i dizionari di OpenOffice note senza errori.
  • Lucene ora fsyncs anche i metadati directory sul commit, se il sistema operativo e il file system lo permettono (Linux, MacOSX sono noti a lavorare).
  • Lucene ora utilizza Java 7 funzioni del file system sotto il cofano, così i file di indice possono essere cancellati su Windows, anche quando i lettori sono ancora aperte.
  • Un grave bug in NativeFSLockFactory è stato fissato, che potrebbe consentire a più IndexWriters di acquisire lo stesso blocco. Il file di blocco non viene eliminato dalla directory di indice, anche quando il blocco non viene mantenuto.

Cosa c'è di nuovo nella versione 4.7.0:

  • Quando si ordina da String (SortField.STRING), ora è possibile specificare se i valori mancanti devono essere ordinati prima (il default), o l'ultima.
  • Supporto NRT per i file system che non hanno cancellare scorso vicino o non può cancellare durante la semantica di riferimento.
  • Aggiunto LongBitSet per la gestione di più di 2.1B bit (altrimenti utilizzare FixedBitSet).
  • Aggiunto Analyzer for curda.
  • Supporto Payload Aggiunto a FileDictionary (suggerisca) e renderlo più configurabile.
  • Aggiunta una nuova BlendedInfixSuggester, che è come AnalyzingInfixSuggester ma aumenta i suggerimenti che hanno abbinato i token con posizioni più basse.
  • Aggiunto SimpleQueryParser:. parser per le query umani inseriti
  • Aggiunto multitermquery (jolly, prefisso, ecc) per PostingsHighlighter.

Cosa c'è di nuovo nella versione 4.6.0:

  • Aggiunto il supporto per gli aggiornamenti sul campo NumericDocValues ​​(senza ri- indicizzazione del documento) attraverso IndexWriter.updateNumericDocValue (Term, String, Long).
  • Nuovo FreeTextSuggester in grado di prevedere la parola successiva con un semplice Ngram modello di linguaggio utile per & quot; lunga coda & quot; suggerimenti.
  • Un nuovo modulo permette di espressione personalizzata classifica con sintassi dello script-like.
  • Una nuova DirectDocValuesFormat può contenere tutti i valori doc nel mucchio come java compresso array native.
  • Term.hasFreqs possono ora determinare se un determinato campo indicizzato per-doc
  • frequenze termine.

Cosa c'è di nuovo nella versione 4.5.0:

  • Nuovi in ​​memoria implementazioni DocIdSet che sono particolarmente meglio che FixedBitSet su piccoli insiemi:. WAH8DocIdSet, PFORDeltaDocIdSet e EliasFanoDocIdSet
  • CachingWrapperFilter ora memorizza i filtri con WAH8DocIdSet di default, che ha lo stesso utilizzo della memoria come FixedBitSet nel peggiore dei casi, ma è più piccolo e più veloce su piccoli insiemi.
  • TokenStreams ora impostare l'incremento posizione finale (), in modo che in grado di gestire finali fori.
  • IndexWriter clona più la data IndexWriterConfig.
  • Varie correzioni di bug e ottimizzazioni dal rilascio 4.4.

Cosa c'è di nuovo nella versione 4.4.0:

  • Nuovo modulo Replicator: replica revisioni indice tra server e cliente.
  • Nuovo AnalyzingInfixSuggester:. ritrova suggerimenti basati su partite a qualsiasi token nella suggestione, e non solo sulla base di puro corrispondente prefisso
  • Nuovo PatternCaptureGroupTokenFilter:. emettere più token, uno per ogni gruppo di cattura in una o più espressioni regolari Java
  • Nuovo modulo Lucene Facet.

Cosa c'è di nuovo nella versione 4.3.0:

  • Nuovo SearcherTaxonomyManager gestisce quasi in tempo reale riapre di sia IndexSearcher e TaxonomyReader (per sfaccettature).
  • Aggiunto nuovo metodo sfaccettatura al modulo sfaccettatura per calcolare sfaccettatura conta usando SortedSetDocValuesField, senza un indice di tassonomia separata.
  • Miglioramenti significativi delle prestazioni per minShouldMatch BooleanQuery a causa di salto con conseguente query fino a 4000% più veloce.
  • Varie correzioni di bug e ottimizzazioni dal rilascio 4.2.1.

Cosa c'è di nuovo nella versione 4.1.0:

  • Lucene non cerca più durante la scrittura di file (tutti i campi sono scritti in modo append-only). Ciò significa che funziona di default con sola aggiunta flussi, HDFS, etc ..
  • Nuovo suggerisce implementazioni: AnalyzingSuggester, dove il modulo sottostante (calcolato da un lucene Analyzer) utilizzato per proposte è separato dal testo restituito e FuzzySuggester, che consente inoltre di corrispondenze inesatte sull'ingresso
  • .
  • Supporto quasi in tempo reale è stato aggiunto al modulo sfaccettatura.
  • Nuovo Highlighter (postingshighlighter) ha aggiunto al modulo evidenziatore.
  • Aggiunto FilterStrategy per FilteredQuery maggiore flessibilità nella esecuzione della query filtrata.
  • Aggiunto CommonTermsQuery per accelerare le query con termini molto altamente frequenti. Frequenze termine sono rilevate in modo efficiente in fase di query -. Non c'è tempo indice di preparazione richiesto
  • Diverse correzioni e ottimizzazioni dal rilascio 4.0.

Cosa c'è di nuovo nella versione 4.0-alpha:

  • I formati di indice per i termini, le liste di affissioni, immagazzinate campi, termine
  • vettori, ecc, sono a innesto tramite l'API codec. È possibile scegliere tra le implementazioni fornite o personalizzare il formato indice con il proprio codec per soddisfare le vostre esigenze.
  • prestazioni sostanzialmente più veloce quando si utilizza un filtro durante la ricerca.

  • directory in base
  • file system possono votare limite IO (MB / sec) di fili di unione, di ridurre IO contesa tra la fusione e la ricerca discussioni.
  • FuzzyQuery è 100-200 volte più veloce rispetto alle versioni precedenti.
  • Un nuovo correttore ortografico, DirectSpellChecker, trova possibili correzioni
  • direttamente contro il principale indice di ricerca senza bisogno di un indice separato.

Cosa c'è di nuovo nella versione 3.6.0:

  • Oltre a Java 5 e Java 6, questo release è ora pieno supporto Java 7 (minimo 7u1 JDK richiesto).
  • filtri TypeTokenFilter token in base al loro TypeAttribute.
  • bug compensate fisse in un certo numero di CharFilters, tokenizers e TokenFilters che potrebbero portare ad eccezioni durante evidenziare.
  • Aggiunto encoder fonetiche: metaphone, Soundex, Caverphone, Beider-Morse, etc
  • .
  • CJKBigramFilter e CJKWidthFilter sostituire CJKTokenizer.
  • Kuromoji analizzatore morfologico tokenizes testo giapponese, che produce entrambe le parole composte e la loro segmentazione.
  • Static indice potatura (Carmelo potatura) rimuove le registrazioni a bassa frequenza all'interno-termine documento.
  • QueryParser ora interpreta '*' come una estremità aperta per le interrogazioni raggio.
  • FieldValueFilter esclude documenti mancanti campo specificato.
  • CheckIndex e IndexUpgrader consentono di specificare l'implementazione specifica FSDirectory da utilizzare con la nuova opzione -dir-impl-riga di comando.
  • fsts ora può fare ricerca inversa (da uscita) in alcuni casi, e possono essere confezionati per ridurne le dimensioni. Vi è ora un metodo per recuperare migliori N cammini minimi da un nodo di partenza in un FST.
  • Nuovo WFSTCompletionLookup suggester supporta grana fine classifica per i suggerimenti.
  • suggesters basate FST ora usano un offline (su disco) specie, invece di in-memory sorta, quando prespartizione i suggerimenti.
  • ToChildBlockJoinQuery si unisce nella direzione opposta (genitore fino a documenti figlio).
  • Nuova query in tempo unisce è più flessibile (ma meno performante) rispetto indice tempo unisce.
  • Aggiunto HTMLStripCharFilter a striscia markup HTML.

Cosa c'è di nuovo nella versione 3.5.0:

  • Aggiunta una molto consistente (3-5x) RAM riduzione richiesto il possesso della indice di termini sull'apertura di un IndexReader.
  • Aggiunto IndexSearcher.searchAfter che restituisce risultati dopo un ScoreDoc specifico (per esempio ultimo documento nella pagina precedente) a sostegno di casi d'uso di paging profonde.
  • Aggiunto SearcherManager per gestire la condivisione e IndexSearchers riapertura tra più thread di ricerca. Istanze IndexReader sottostanti sono chiusi in modo sicuro se non si fa riferimento più.
  • Aggiunto SearcherLifetimeManager che fornisce in modo sicuro una visione coerente dell'indice attraverso più richieste (ad esempio paging / drill-down).
  • Rinominato IndexWriter.optimize a ForzaUnione di scoraggiare l'uso di questo metodo perché è terribilmente costoso e raramente giustificata più.

Cosa c'è di nuovo nella versione 3.3.0:

  • Il modulo di controllo ortografico ora include suggerire / completamento automatico funzionalità, con tre implementazioni:. Jaspell, Ternario Trie, e stati finiti
  • Supporto per unire i risultati da più frammenti, sia per & quot; normale & quot; risultati della ricerca (TopDocs.merge), così come i risultati raggruppati utilizzando il modulo di raggruppamento (SearchGroup.merge, TopGroups.merge).
  • Una implementazione ottimizzata di KStem, un stemmer meno aggressivo per l'inglese.
  • single-pass raggruppamento implementazione basata sul documento di blocco indicizzazione.
  • Miglioramenti agli MMapDirectory (ora anche l'implementazione di default restituito da FSDirectory.open su Linux a 64 bit).
  • NRTManager semplifica la gestione quasi in tempo reale di ricerca con più thread di ricerca, che consente all'applicazione di controllare che l'indicizzazione modifiche devono essere visibili a cui le richieste di ricerca.
  • TwoPhaseCommitTool facilita l'esecuzione di un multi-risorsa in due fasi commit, compreso IndexWriter.
  • Il criterio predefinito di unione, TieredMergePolicy, ha un nuovo metodo (insieme / getReclaimDeletesWeight) per controllare il livello di aggressività che si rivolge a segmenti con delezioni, ed è ora più aggressivo rispetto a prima per impostazione predefinita.
  • strumento PKIndexSplitter divide un indice da un punto medio termine.

Cosa c'è di nuovo nella versione 3.2.0:

  • Un nuovo modulo raggruppamento, sotto Lucene / contrib / i risultati di ricerca di raggruppamento, permette di essere raggruppati in un campo indicizzato valore singolo.
  • Un nuovo strumento IndexUpgrader converte completamente un vecchio indice del formato corrente.
  • Una nuova implementazione Directory, NRTCachingDirectory, memorizza piccoli segmenti in RAM, per ridurre il carico di I / O per applicazioni con veloce NRT riaprire i tassi.
  • Una nuova implementazione Collezionista CachingCollector, è in grado di raccogliere successi di ricerca (ID dei documenti ed eventualmente anche punteggi) e poi riprodurli. Questo è utile per i collezionisti che richiedono due o più passaggi per produrre risultati.
  • Indice un blocco documento utilizzando nuove addDocuments o updateDocuments metodi di IndexWriter. Queste API sperimentali assicurano che il blocco dei documenti rimarrà per sempre contigui nell'indice, consentendo interessante futuro caratteristiche come il raggruppamento e si unisce.
  • Una nuova politica di unione predefinito, TieredMergePolicy, che è più efficiente a causa di essere in grado di unire i segmenti non contigui.
  • NumericField è ora restituito correttamente quando si carica un documento salvato (in precedenza si è ricevuto un campo normale indietro, con la stringa di valore numerico convertito).

Cosa c'è di nuovo nella versione 3.1.0:.

  • ConstantScoreQuery ora consente direttamente avvolgendo una query
  • IndexWriter è ora configurato con una nuova API costruttore indipendente, IndexWriterConfig. È ora possibile controllare limite filettatura interna precedentemente fissato di IndexWriter chiamando setMaxThreadStates.
  • IndexWriter.getReader è sostituito dal IndexReader.open (IndexWriter). Inoltre è ora possibile specificare se le eliminazioni dovrebbero essere risolti quando si apre un lettore di NRT.
  • MultiSearcher è deprecato; ParallelMultiSearcher è stata assorbita direttamente in IndexSearcher.
  • 64 bit di Windows e Solaris JVM, MMapDirectory è ora l'implementazione di default (restituito da FSDirectory.open). MMapDirectory consente anche unmapping se la JVM lo supporta.
  • Nuovo TotalHitCountCollector solo conta il numero totale di visite.
  • ReaderFinishedListener API consente cache esterni per sfrattare le voci una volta un segmento è finito.

Cosa c'è di nuovo nella versione 3.0.1:.

  • Rimuovi sincronizzazione non necessari in FuzzyTermEnum
  • Quando si risolve termini cancellati, lo fanno in modo sorta termine per migliorare le prestazioni.
  • Non erroneamente tenere avvertimento circa la stessa immensa termine, quando IndexWriter.infoStream è acceso.
  • Fix Min / MaxPayloadFunction restituisce 0 quando un solo carico utile è presente.
  • Interrogazioni costituito da tutte le clausole zero Boost (per esempio, il testo: foo ^ 0) allineati in modo errato e prodotto docids invalidi
  • .
  • Rimosso il ScoreTerm classe interna protetta da FuzzyQuery. Il cambiamento è necessario poiché il comparatore di questa classe doveva essere cambiato in modo incompatibile. La classe non è mai stato destinato ad essere pubblico.

Cosa c'è di nuovo nella versione 2.9.2:

  • BooleanQuery stava ignorando disableCoord nella sua hashCode e uguale metodi , causare brutte cose accadano quando il caching BooleanQueries.
  • Non erroneamente tenere avvertimento circa la stessa immensa termine, quando IndexWriter.infoStream è acceso.
  • Ad alti tassi di indicizzazione, lettore NRT potrebbe perdere temporaneamente le eliminazioni.

Cosa c'è di nuovo nella versione 3.0.0:

  • Rimosso la proprietà di sistema per impostare implementazione della classe SegmentReader.
  • Cambia tipo di ritorno di SnapshotDeletionPolicy # snapshot () da IndexCommitPoint a IndexCommit. Il codice che utilizza questo metodo deve essere ricompilato contro Lucene 3.0 per funzionare. Il IndexCommitPoint precedentemente deprecato viene rimosso anche.
  • Fornire un AttributeFactory convenienza che crea un'istanza token per tutti gli attributi di base.
  • Rimuovi ricorsione in NumericRangeTermEnum.
  • Ottimizza Levenshtein Distanza calcolo in FuzzyQuery.

Programmi simili

PHP Search Engine
PHP Search Engine

13 May 15

ack
ack

10 Feb 16

Lunr.js
Lunr.js

10 Apr 16

anysearch.js
anysearch.js

13 May 15

Altri software di sviluppo Apache Software Foundation

Commenti a Apache Lucene

I commenti non trovato
Aggiungi commento
Accendere le immagini!