Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.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/Java的stu_Java_Apache Spark_Geospark - Fatal编程技术网

使用Spark/Java的stu

使用Spark/Java的stu,java,apache-spark,geospark,Java,Apache Spark,Geospark,我有以下数据帧: +-------------+-----------------+------------------+ |longitude |latitude |geom | +-------------+-----------------+------------------+ |-7.07378166 |33.826661 [00 00 00 00 01 0..| |-7.5952683 |33.544191

我有以下数据帧:

+-------------+-----------------+------------------+
|longitude    |latitude         |geom              |
+-------------+-----------------+------------------+
|-7.07378166  |33.826661        [00 00 00 00 01 0..|
|-7.5952683   |33.544191        [00 00 00 00 01 0..|                  
+-------------+-----------------+------------------+
我正在使用以下代码:

Dataset<Row> result_f = sparkSession.sql("select * from data_f where  ST_WITHIN(ST_GeomFromText(CONCAT('POINT(',longitude_f,' ',latitude_f,')',4326)),geom)");
result_f.show();
编辑

longitude : Double type
latitude  : Double type
geom      : Binary type
有什么想法吗?我需要你的帮助


谢谢

我不认为ST_GeomFromText可用作从文本构建几何体,但有:

  • ST_GeomFromWKT
  • 圣彼得堡
  • ST_GeomFromGeoJSON
  • 圣普
  • ST_PointFromText
  • ST_Polygon FromText
  • ST_LineStringFromText
  • ST_Polygon信封
  • 圣卢西亚
我建议使用
ST_点
ST_点fromtext
,然后在

大概是这样的:

Dataset<Row> result_f = sparkSession.sql("select * from data_f where  ST_WITHIN(ST_Point(CAST(data_f.latitude AS Decimal(24,20)), CAST(data_f.longitude AS Decimal(24,20))),geom)");
result_f.show();
Dataset result\u f=sparkSession.sql(“从数据中选择*,其中stu在其中(stu点(CAST(数据纬度为十进制(24,20)),CAST(数据经度为十进制(24,20))),geom)”;
结果显示();

感谢您的回复,但我总是收到相同的错误。请打印数据框架的架构。请查看编辑帖子
Dataset<Row> result_f = sparkSession.sql("select * from data_f where  ST_WITHIN(ST_Point(CAST(data_f.latitude AS Decimal(24,20)), CAST(data_f.longitude AS Decimal(24,20))),geom)");
result_f.show();