So far, you have seen how to use views and N1QL to query your data in Couchbase Server. Both of these techniques have strengths and weaknesses, but the one thing they have in common is that they focus on finding exact matches for values. For example, in Chapter 5 you used a view to retrieve rants based on ranters ranting about them. To do so, you indexed the value of the rantAbout.userName property and used the username of ranters to search the index. This kind of querying is typical for most databases system, which allow you to search based on exact values. But sometimes exact values are not enough. Just like most social applications, RanteR needs to allow its users to search for rants and ranters based on more flexible parameters, such as some of the rant content.