In the previous recipe, we saw how to execute aggregation operations in Mongo using PyMongo. In this recipe, we will work on the same use case as we did for the aggregation operation, but using MapReduce. The intent is to aggregate the data based on state names and get the top five state names by the number of documents they appear in.
Programming language drivers provide us with an interface to let us invoke MapReduce jobs written in JavaScript on the server.
To execute the MapReduce operations, we need to have a server up and running. A simple single node is what we will need. Refer to the Single node installation of MongoDB recipe in Chapter 1, Installing and Starting the MongoDB Server, to learn how to start the server. The data on which we will be operating needs to be imported in the database. The steps to import the data are given in the Creating test data recipe in Chapter 2, Command-line Operations and Indexes. Python is expected to be...