PacktLib: Sphinx Search Beginner's Guide

Sphinx Search

Credits

About the Author

Acknowledgement

About the Reviewers

www.PacktPub.com

Preface

Setting Up Sphinx

What you need to know

Different ways of performing a search

Sphinx—a full-text search engine

Installation

Time for action - installation on Linux

Time for action - installation on Windows

Time for action - installation on a Mac

Summary

Getting Started

Checking the installation

Full-text search

Time for action - normal search in MySQL

Overview of Sphinx

Time for action - Sphinx in action

Why use Sphinx for full-text searching?

Summary

Indexing

What are indexes?

Index attributes

Data sources

Time for action - creating database tables for a blog

Time for action - populate the database tables

Time for action - creating the Sphinx configuration file

Time for action - adding attributes to the index

Time for action - Adding an MVA to the index

Time for action - creating index (without attributes)

Time for action - add attributes to schema

Time for action - create index with schema defined in configuration file

Summary

Searching

Client API implementations for Sphinx

Search using client API

Time for action - creating a basic search script

Time for action - searching with different matching modes

Time for action - searching using Boolean query syntax

Time for action - searching with extended query syntax

Filtering full-text search results

Time for action - filtering the result set

Weighting search results

Time for action - weighting search results

Sorting modes

Grouping search results

Summary

Feed Search

The application

Time for action - creating the MySQL database and tables

Time for action - setting up the feeds application

Time for action - creating a form to add feeds

Time for action - adding code to save feed

Time for action - create the index

Time for action - adding code to avoid duplicate items

Time for action - adding the delta index

Time for action - creating the search form

Time for action - adding code to perform a search query

Time for action - adding code to filter the results

Time for action - showing search form prefilled with last submitted data

Summary

Property Search

The application

Time for action - creating the MySQL database and structure

Time for action - populating the database

Time for action - setting up the application

Time for action - creating the form to add property

Time for action - creating the index

Time for action - creating the simple search form

Time for action - adding code to perform full-text search

Time for action - creating the Advanced search form

Time for action - adding ranged filters

Time for action - creating the search form

Time for action - adding code to perform geo distance search

Summary

Sphinx Configuration

Sphinx configuration file

Data source configuration

Time for action - creating a configuration with advanced source options

Index configuration

Time for action - creating indexes for distributed searching

Time for action - adding distributed index configuration

Time for action - using morphology for stemming

Search daemon configuration

Indexer configuration

Summary

What Next?

SphinxQL

Time for action - querying Sphinx using MySQL CLI

Use case scenarios

Popular websites using Sphinx

Summary