MST

星途 面试题库

面试题:MongoDB地理空间索引的构建基础

在MongoDB中,如何为一个包含地理位置信息的集合构建2dsphere索引?假设集合名为locations,地理位置字段为coordinates,文档结构为{name: '地点名称', coordinates: [longitude, latitude]} ,请写出相应的创建索引语句,并简要说明2dsphere索引适用的场景。
31.1万 热度难度
数据库MongoDB

知识考点

AI 面试

面试题答案

一键面试

创建索引语句

在MongoDB shell中,可使用以下语句为locations集合的coordinates字段创建2dsphere索引:

db.locations.createIndex( { coordinates : "2dsphere" } );

2dsphere索引适用场景

  1. 地理空间查询:适用于需要进行基于地理位置的查询场景,比如查找某个地点附近的其他地点、计算两个地理位置之间的距离等。例如,查找距离某个餐厅一定范围内的所有酒店。
  2. 地图应用:在地图相关应用中,用于处理和查询地图上的点、区域等地理信息。如在共享单车应用中,查找附近可用的单车位置。
  3. 位置服务:对于提供基于位置服务(LBS)的应用,2dsphere索引能高效支持位置相关的查询操作,提升查询性能。