Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过Spark查询MongoDB进行地理空间查询_Mongodb_Apache Spark - Fatal编程技术网

如何通过Spark查询MongoDB进行地理空间查询

如何通过Spark查询MongoDB进行地理空间查询,mongodb,apache-spark,Mongodb,Apache Spark,有没有办法将MongoDB与Spark一起用于地理空间查询?我不知道如何使用Stratio实现这一点。有很多方法可以从spark查询地理空间数据。使用麦哲伦或hive esri地理空间工具包。 我从未尝试过stratio中的mongo Librarie,但使用spark数据源api或mongo连接器,我认为您可以使用mongo语法运行地理查询,然后将其转换为RDD或数据帧。您可以使用此工具从spark SQL查询MongoDB。 MongoDB允许应用程序对地理空间数据执行以下类型的查询:包含、

有没有办法将MongoDB与Spark一起用于地理空间查询?我不知道如何使用Stratio实现这一点。

有很多方法可以从spark查询地理空间数据。使用麦哲伦或hive esri地理空间工具包。
我从未尝试过stratio中的mongo Librarie,但使用spark数据源api或mongo连接器,我认为您可以使用mongo语法运行地理查询,然后将其转换为RDD或数据帧。

您可以使用此工具从spark SQL查询MongoDB。 MongoDB允许应用程序对地理空间数据执行以下类型的查询:包含、交叉、接近

显然,您将能够使用除地理空间操作符之外的所有其他操作符。现在让我们看一些具体的例子

以下是一个例子: 找到加州所有的机场。为此,您需要获取加利福尼亚位置(多边形),并在查询中使用命令$geointen。从外壳上看,它看起来像:

use geo
var cal = db.states.findOne(  {code : "CA"}  );

db.airports.find( 
  { 
    loc : { $geoWithin : { $geometry : cal.loc } } 
  },
  { name : 1 , type : 1, code : 1, _id: 0 } 
);
结果是:

{“名称”:“莫德斯托市-县”,“类型”:“代码”:“MOD”} ... {“名称”:“旧金山国际”,“类型”:“国际”,“代码”:“SFO”} {“名称”:“圣何塞国际”,“类型”:“国际”,“代码”:“SJC”}


如果您想尝试其他示例,请查看这篇博文。

麦哲伦目前无法进行近距离查询。Esri听起来很有趣。如何使用stratio运行邻近查询?