售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Sphinx Search
Table of Contents
Sphinx Search
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book covers
Who this book is for
Conventions
Time for action - heading
What just happened?
Pop quiz - heading
Have a go hero - heading
Reader feedback
Customer support
Errata
Piracy
Questions
1. Setting Up Sphinx
What you need to know
Different ways of performing a search
Searching on a live database
Searching an index
Sphinx—a full-text search engine
Features
A brief history
License
Installation
System requirements
Sphinx on a Unix-based system
Time for action - installation on Linux
What just happened?
Options to the configure command
Known issues during installation
Sphinx on Windows
Time for action - installation on Windows
What just happened?
Sphinx on Mac OS X
Time for action - installation on a Mac
What just happened?
Other supported systems
Summary
2. Getting Started
Checking the installation
Full-text search
What is full-text search?
Traditional search
Time for action - normal search in MySQL
What just happened?
MySQL full-text search
Advantages of full-text search
When to use a full-text search?
Overview of Sphinx
Primary programs
Time for action - Sphinx in action
What just happened?
Data to be indexed
Creating the Sphinx configuration file
Searching the index
Have a go hero -
Why use Sphinx for full-text searching?
Summary
3. Indexing
What are indexes?
Indexes in Sphinx
Index attributes
Types of attributes
Multi-value attributes (MVA)
Data sources
How to define the data source?
SQL data sources
Creating Index using SQL data source (Blog)
Creating a simple index without any attributes
Time for action - creating database tables for a blog
What just happened?
Time for action - populate the database tables
What just happened?
Time for action - creating the Sphinx configuration file
What just happened?
The indexing workflow
Adding attributes to the index
Time for action - adding attributes to the index
What just happened?
Adding an MVA to the index
Time for action - Adding an MVA to the index
What just happened?
Filtering without searching for a specific phrase
xmlpipe data source
xmlpipe2 data source
Indexing with schema defined in XML stream
Time for action - creating index (without attributes)
What just happened?
Time for action - add attributes to schema
What just happened?
Indexing with schema defined in configuration file
Time for action - create index with schema defined in configuration file
What just happened?
Summary
4. Searching
Client API implementations for Sphinx
Search using client API
Time for action - creating a basic search script
What just happened?
Matching modes
Time for action - searching with different matching modes
What just happened?
Boolean query syntax
Time for action - searching using Boolean query syntax
What just happened?
Extended query syntax
Time for action - searching with extended query syntax
What just happened?
Filtering full-text search results
Time for action - filtering the result set
What just happened?
Weighting search results
Time for action - weighting search results
What just happened?
Sorting modes
Grouping search results
Summary
5. Feed Search
The application
Tools and software used while creating this application
Database structure
Time for action - creating the MySQL database and tables
What just happened?
Basic setup
Time for action - setting up the feeds application
What just happened?
Add feed
Time for action - creating a form to add feeds
What just happened?
Saving the feed data
Time for action - adding code to save feed
What just happened?
Indexing the feeds
Time for action - create the index
What just happened?
Check for duplicate items
Time for action - adding code to avoid duplicate items
What just happened?
Index merging
Time for action - adding the delta index
What just happened?
Search form
Time for action - creating the search form
What just happened?
Perform the search query
Time for action - adding code to perform a search query
What just happened?
Applying filters
Time for action - adding code to filter the results
What just happened?
Time for action - showing search form prefilled with last submitted data
What just happened?
Re-indexing
Have a go hero - trying different search queries
Summary
6. Property Search
The application
Tools and software used while creating this application
Database structure
Time for action - creating the MySQL database and structure
What just happened?
Initial data
Time for action - populating the database
What just happened?
Basic setup
Time for action - setting up the application
What just happened?
Adding a property
Time for action - creating the form to add property
What just happened?
Indexing the properties
Time for action - creating the index
What just happened?
Simple search form
Time for action - creating the simple search form
What just happened?
Full-text search
Time for action - adding code to perform full-text search
What just happened?
Have a go hero - try setting different field weights
Advanced search
Time for action - creating the Advanced search form
What just happened?
Ranged filters
Time for action - adding ranged filters
What just happened?
Have a go hero - adding filter for amenities
Geo distance search
Time for action - creating the search form
What just happened?
Add geo anchor
Time for action - adding code to perform geo distance search
What just happened?
Have a go hero - adding the delta index using the index merging technique
Summary
7. Sphinx Configuration
Sphinx configuration file
Rules for creating the configuration file
Data source configuration
SQL related options
Connection options
sql_port
sql_sock
odbc_dsn
Options to fetch data (SQL data source)
sql_query_pre
sql_query_post
sql_query_post_index
sql_ranged_throttle
Configuration file using advanced options
Time for action - creating a configuration with advanced source options
What just happened?
MS SQL specific options
mssql_winauth
mssql_unicode
Index configuration
Distributed searching
Set up an index on multiple servers
Time for action - creating indexes for distributed searching
What just happened?
Set up the distributed index on the primary server
Time for action - adding distributed index configuration
What just happened?
agent_blackhole
agent_connect_timeout
agent_query_timeout
Distributed searching on single server
charset configuration
charset_type
charset_table
Data related options
stopwords
min_word_len
ignore_chars
html_strip
html_index_attrs
html_remove_elements
Word processing options
Morphology
Time for action - using morphology for stemming
What just happened?
morphology
min_stemming_len
Wordforms
Search daemon configuration
listen
log
query_log
read_timeout
client_timeout
max_children
pid_file
max_matches
seamless_rotate
Indexer configuration
mem_limit
max_iops
max_iosize
max_xmlpipe2_field
Summary
8. What Next?
SphinxQL
SphinxQL in action
Time for action - querying Sphinx using MySQL CLI
What just happened?
SELECT
Column list clause
FROM clause
WHERE clause
GROUP BY clause
ORDER BY clause
LIMIT clause
OPTION clause
SHOW WARNINGS
SHOW STATUS
SHOW META
Use case scenarios
Popular websites using Sphinx
Summary
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜