问题标签 [geospark]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
360 浏览

apache-spark - GeoSpark 转换 SQL 函数失败

我正在使用 GeoSpark 1.3.1,我试图找到包含在一个圆中的所有地理点,给定一个以米为单位的中心和半径。为此,我不想将中心从度数转换为米,创建圆(使用ST_Buffer),然后将返回的多边形转换回度数,然后ST_Contains在与所有地理点的连接中应用函数。请参阅下面的 SQL:

但是,当我按照指南GeoSpark将依赖项添加到我的 pom 文件并创建一个提交(使用spark2-submit)的 uber jar 时,我收到以下错误(仅在使用ST_Transform函数时)

我试图在我的构建中隐藏和重新定位“org.hsqldb”,但这并没有改变任何东西,并且在 uber jar 中不包括 GeoSpark jar,而是将它们作为spark2-submit我得到相同错误的一部分加载。我真的找不到解决这个问题的方法,只有当我使用该ST_Transform方法时才会发生?

看起来我的 Spark 平台的版本org.hsqldb比 GeoSpark 提供的版本更旧!

我的阴影看起来像这样:

0 投票
1 回答
70 浏览

java - st_geomfromtext 断言使用 spark java 失败

当我朗姆酒以下代码

我收到以下错误:

我需要你的帮助

谢谢

0 投票
1 回答
373 浏览

java - ST_WITHIN 使用 Spark/Java

我有以下数据框:

我正在使用以下代码:

但我收到以下错误:

编辑

任何想法 ?我需要你的帮助

谢谢

0 投票
0 回答
282 浏览

java - org.apache.spark.sql.types.Decimal 不能使用 Spark / Java 转换为 org.apache.spark.unsafe.types.UTF8String ___

我有以下数据框:

我正在使用以下代码:

执行时出现以下异常:

你有什么想法吗?

我需要你的帮助 。

谢谢

0 投票
1 回答
154 浏览

java - 使用 GeoSpark 断言失败

我有以下数据框:

当我执行以下代码时:

我得到以下异常:

我需要你的帮助 。

谢谢

0 投票
0 回答
114 浏览

java - GeoSpark 函数使用 java 语言

我有一个二进制列类型的数据框:

这是 的二进制表示:

我正在尝试执行以下代码:

我收到以下错误:

当我尝试以下代码时:

我得到以下输出:

代替 :

0 投票
1 回答
305 浏览

java - 使用java语言读取spark中的二进制列

我有一个 DataFrame 女巫包含一个Binary列类型。

数据框:

我正在尝试阅读此专栏以提取几何格式。

根据我的研究,我发现 geospark 库中有一个函数是 ST_GeomFromWKB,它需要一个长二进制文件作为参数。

所以我正在执行以下代码:

我得到以下输出女巫不正确:

如何阅读本专栏以获得正确的几何值?

编辑

MySQL 上的列结构 在此处输入图像描述

当我跟踪数据时,它看起来像这样: 在此处输入图像描述

当我点击 [GEOMETRY - 113 o] 一个文本文件下载。

文本文件包含以下数据:

编辑2

我在 MySQL 数据库上有这张表

当我在 Spark 中加载此表时,我得到:

然后获取原始数据“多边形......”我执行以下代码:

但我收到以下错误:

编辑3 在此处输入图像描述

0 投票
1 回答
392 浏览

java - 几何 ST_GeomFromWKB(binary wkb) 在 Spark 上使用 Java 语言

我有一个Binary列类型的数据框:

我想将众所周知的二进制 wkb 转换为几何。

从我的研究中,我发现该ST_GeomFromWKB函数返回一个ST_Geometry值,该值是从一个LONG BINARY包含.Well Known Binary (WKB)ST_Geometry

我正在尝试将其应用于我的数据框,但该BinaryGeometry列的Binary类型类似于Array[Byte].

我的问题是:如何LONG BINARY从 spark 的二进制列中获取值?

我试过hex函数。

我得到以下输出女巫不正确:

编辑

另见 http://www.h2gis.org/docs/dev/ST_GeomFromWKB/

0 投票
1 回答
308 浏览

python - 使用 upload_jars 函数获取 GeoSpark 错误

我正在尝试在 AWS EMR 集群中运行 GeoSpark。代码是:

我在函数中收到以下错误upload_jars()

我该如何解决这个错误?

0 投票
1 回答
174 浏览

apache-spark - GeoSpark 显示 SQL 结果失败

我正在使用 GeoSpark 1.3.1,我正在尝试查找 POLYGON 中包含的所有地理点。我使用 sql 命令:

查询工作正常,但是当我尝试显示结果时失败。似乎是图书馆的输出问题。我在 zeppelin notebook 中这样做。有人可以告诉我我做错了什么吗?我收到以下错误:

org.apache.spark.SparkException:作业因阶段失败而中止:阶段 10.0 中的任务 0 失败 4 次,最近一次失败:阶段 10.0 中丢失任务 0.3(TID 15、10.42.22.236、执行程序 3):java.lang。 ClassCastException: org.apache.spark.unsafe.types.UTF8String 不能在 org.apache.spark.sql.geosparksql.strategy.join.TraitJoinQueryExec$$anonfun$ 处转换为 org.apache.spark.sql.catalyst.util.ArrayData toSpatialRdd$1.apply(TraitJoinQueryExec.scala:164) at org.apache.spark.sql.geosparksql.strategy.join.TraitJoinQueryExec$$anonfun$toSpatialRdd$1.apply(TraitJoinQueryExec.scala:163) at scala.collection.Iterator$$ anon$11.next(Iterator.scala:410) at scala.collection.Iterator$class.foreach(Ite​​rator.scala:891) at scala.collection.AbstractIterator.foreach(Ite​​rator.scala:1334) at scala.collection.TraversableOnce$ scala 中的 class.foldLeft(TraversableOnce.scala:157)。collection.AbstractIterator.foldLeft(Iterator.scala:1334) at scala.collection.TraversableOnce$class.aggregate(TraversableOnce.scala:214) at scala.collection.AbstractIterator.aggregate(Iterator.scala:1334) at org.apache.spark .rdd.RDD$$anonfun$aggregate$1$$anonfun$22.apply(RDD.scala:1122) at org.apache.spark.rdd.RDD$$anonfun$aggregate$1$$anonfun$22.apply(RDD.scala: 1122) 在 org.apache.spark.SparkContext$$anonfun$36.apply(SparkContext.scala:2157) 在 org.apache.spark.SparkContext$$anonfun$36.apply(SparkContext.scala:2157) 在 org.apache.spark .scheduler.ResultTask.runTask(ResultTask.scala:90) at org.apache.spark.scheduler.Task.run(Task.scala:121) at org.apache.spark.executor.Executor$TaskRunner$$anonfun$10.apply (Executor.scala:402) 在 org.apache.spark.executor.Executor$TaskRunner 的 org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1360)。在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 在 java.lang.Thread 的 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 运行(Executor.scala:408) .run(Thread.java:748)