Docs Menu

Docs HomeLaunch & Manage MongoDBMongoDB Atlas

How to Run an Atlas Search Compound Geo JSON Query

On this page

  • Create the Atlas Search Index
  • Run a Combined Geo, Number, and Text Fields Query

This tutorial describes how to create an index on the listingsAndReviews collection in the sample_airbnb database and run a query that returns documents with the name, address, and property_type for each property within the specified polygon defined using coordinates.

This tutorial takes you through the following steps:

  1. Set up an Atlas Search index on the address field in the sample_airbnb.listingsAndReviews collection.

  2. Run a query that returns 10 documents with the name, address, and property_type of each property within the specified geographic coordinates. Atlas Search results reflect a preference for properties of type condominium, and each document in the result is assigned a relevance score, returned in order from highest to lowest.

Before you begin, ensure that your Atlas cluster meets the requirements described in the Prerequisites.

To create an Atlas Search index, you must have Project Data Access Admin or higher access to the project.

In this section, you will create an Atlas Search index on the address field in the sample_airbnb.listingsAndReviews collection.

1
  1. If it is not already displayed, select the organization that contains your desired project from the Organizations menu in the navigation bar.

  2. If it is not already displayed, select your desired project from the Projects menu in the navigation bar.

  3. Click your cluster's name.

  4. Click the Atlas Search tab.

2
3
  • For a guided experience, select the Atlas Search Visual Editor.

  • To edit the raw index definition, select the Atlas Search JSON Editor.

4
  1. In the Index Name field, enter geo-json-tutorial.

    Note

    If you name your index default, you don't need to specify an index parameter when using the $search pipeline stage. Otherwise, you must specify the index name using the index parameter.

  2. In the Database and Collection section, find the sample_airbnb database, and select the listingsAndReviews collection.

5

You can use the Atlas Search Visual Editor or the Atlas Search JSON Editor in the Atlas user interface to create the index. The following index definition specifies that Atlas Search must index:

  • All of the fields in the collection automatically.

  • The address.location field of a document as type geo.

6
7

A modal window appears to let you know your index is building. Click the Close button.

8

The index should take about one minute to build. While it is building, the Status column reads Build in Progress. When it is finished building, the Status column reads Active.


Use the Select your language drop-down menu on this page to set the language of the examples in this section.


In this section, you will run a query that returns 10 documents with the name, address, and property_type for each property within the specified geographic coordinates. A field specifying each documents score is also returned, and results are ordered with a preference for properties of type condominium.

← How to Define a Custom Analyzer and Run an Atlas Search Diacritic-Insensitive Query