11.2.1. Introduction

This section introduces the concepts of schema indexes and fulltext schema indexes.

Indexes are used to speed up search.

When we talk about indexes we often mean schema indexes. Schema indexes are created and dropped using Cypher. Users typically do not have to know about the index in order to use it, since Cypher’s query planner decides which index to use in which situation. Schema indexes are good at exact lookups, range scans, full scans, and prefix searches.

For details on the configuration aspects of schema indexes, see Section 11.2.2, “Schema indexes”. For details on creating, using and dropping schema indexes, see Cypher Manual → Indexes.

Fulltext schema indexes are sometimes referred to as fulltext indexes. They are used for queries that demand an understanding of language. For example, a fulltext index is useful if we wish to parse a book for a certain term, and take advantage of the knowledge that the book is written in a certain language. The use of an analyzer for that language will, among other things, allow for excluding words that are not relevant for the search (for example if and and) and include conjugations of words that are. In contrast to schema indexes, fulltext indexes are created, used and dropped using built-in procedures. The use of fulltext indexes do require a familiarity with how the indexes operate.

For details on the configuration aspects of schema indexes, see Section 11.2.3, “Fulltext schema indexes”. For details on creating, using and dropping schema indexes, see Cypher Manual → Fulltext schema index.