The process of data indexing can be divided into parts. One of the parts, actually one of the last parts of that process, is data analysis. It's one of the crucial parts of data preparation. It defines how your data will be written into an index. It defines its structure and so on. In Solr, data behavior is defined by types. A type's behavior can be defined in the context of the indexing process or the context of the query process, or both. Furthermore, a type definition is composed of a tokenizer (or multiple ones–one for querying and one for indexing) and filters (both token filters and character filters).
A tokenizer specifies how your data will be pre-processed after it is sent to the appropriate field. Analyzer operates on the whole data that is sent to the field. Types can only have one tokenizer. The result of the tokenizer's work is a stream of objects called tokens. Next in the analysis chain are the filters. They operate on the tokens in the token stream. They...