Lucene 4 cookbook over 70 hands-on recipes to quickly and effectively integrate Lucene into your search application

This book is for software developers who are new to Lucene and who want to explore the more advanced topics to build a search engine. Knowledge of Java is necessary to follow the code samples. You will learn core concepts, best practices, and also advanced features, in order to build an effective se...

Descripción completa

Detalles Bibliográficos
Otros Autores: Ng, Edwood, author (author), Mohan, Vineeth, author
Formato: Libro electrónico
Idioma:Inglés
Publicado: Birmingham, England ; Mumbai, [India] : Packt Publishing 2015.
Edición:1st edition
Colección:Quick answers to common problems
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009629955606719
Tabla de Contenidos:
  • Cover; Copyright; Credits; About the Authors; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Introducing Lucene; Introduction; Installing Lucene; Setting up a simple Java Lucene project; Obtaining an IndexWriter; Creating an analyzer; Creating fields; Creating and writing documents to an index; Deleting documents; Obtaining an IndexSearcher; Creating queries with the Lucene QueryParser; Performing a search; Enumerating results; Chapter 2: Analyzing Your Text; Introduction; Obtaining a common analyzer; Obtaining a TokenStream; Obtaining TokenAttribute values
  • Using PositionIncrementAttributeUsing PerFieldAnalyzerWrapper; Defining custom TokenFilters; Defining custom analyzers; Defining custom tokenizers; Defining custom attributes; Chapter 3: Indexing Your Data; Introduction; Obtaining an IndexWriter; Creating a StringField; Creating a TextField; Creating a numeric field; Creating a DocValue Field; Transactional commits and index versioning; Reusing field and document objects per thread; Delving into field norms; Changing similarity implementation used during indexing; Chapter 4: Searching Your Indexes; Introduction; Obtaining IndexReaders
  • Un-inverting single-valued fields in memory with FieldCacheTermVectors; IndexSearcher; Constructing queries; Specifying sort logic; Forming a search result; Pagination; Using Collectors; Sorting with custom FieldComparator; Chapter 5: Near Real-time Searching; Introduction; Using the DirectoryReader to open index in Near Real-Time; Using the SearcherManager to refresh IndexSearcher; Generational indexing with TrackingIndexWriter; Maintaining search sessions with SearcherLifetimeManager; Performance tuning: latency and throughput; Chapter 6: Querying and Filtering Data; Introduction
  • Performing advanced filteringCreating a custom filter; Searching with QueryParser; TermQuery and TermRangeQuery; BooleanQuery; PrefixQuery and WildcardQuery; PhraseQuery and MultiPhraseQuery; FuzzyQuery; NumericRangeQuery; DisjunctionMaxQuery; RegexpQuery; SpanQuery; CustomScoreQuery; Chapter 7: Flexible Scoring; Introduction; Overriding similarity; Implementing the BM25 model; Implementing the language model; Implementing the divergence from randomness model; Implementing the information-based model; Chapter 8: Introducing Elasticsearch; Introduction; Getting Elasticsearch
  • Creating a new indexPredefine field mappings; Adding a document; Deleting a document; Updating a document; Performing bulk indexing; Searching the index; Scaling Elasticsearch; Chapter 9: Extending Lucene with Modules; Introduction; Exploring spatial search; Implementing joins; Performing faceting; Implementing grouping; Employing autosuggest; Implementing highlighting; Index