Practical Apache Lucene 8: Uncover the Search Capabilities of Your Application
內容描述
Gain a thorough knowledge of Lucene's capabilities and use it to develop your own search applications. This book explores the Java-based, high-performance text search engine library used to build search capabilities in your applications.
Starting with the basics of Lucene and searching, you will learn about the types of queries used in it and also take a look at scoring models. Applying this basic knowledge, you will develop a hello world app using basic Lucene queries and explore functions like scoring and document level boosting.
Along the way you will also uncover the concepts of partial searching and matching in Lucene and then learn how to integrate geographical information (geospatial data) in Lucene using spatial queries and n-dimensional indexing. This will prepare you to build a location-aware search engine with a representative data set that allows location constraints to be specified during a search. You'll also develop a text classifier using Lucene and Apache Mahout, a popular machine learning framework.
After a detailed review of performance bench-marking and common issues associated with it, you'll learn some of the best practices of tuning the performance of your application. By the end of the book you'll be able to build your first Lucene patch, where you will not only write your patch, but also test it and ensure it adheres to community coding standards.
What You'll Learn
Master the basics of Apache Lucene
Utilize different query types in Apache Lucene
Explore scoring and document level boosting
Integrate geospatial data into your application
Who This Book Is For
Developers wanting to learn the finer details of Apache Lucene by developing a series of projects with it.
作者介紹
Atri is a distributed systems engineer with expertise in building and scaling large data oriented systems, and an Apache Lucene/Solr committer. He has worked for Microsoft, where he was responsible for scaling the storage and query engines for Azure CosmosDB. He is also a long time PostgreSQL contributor and an Apache committer and PMC member for HAWQ, MADLib, and Apex.