2017-08-10 18 views
1

GeoTrellisを初めてお使いになり、geopyspark readmeのサンプルスクリプトに関する質問がありました:https://github.com/locationtech-labs/geopysparkここで GeoTrellisとGeoPySpark - TypeError: 'JavaPackage'オブジェクトが呼び出し可能ではありません

は、スクリプトの簡略版です(私たちはexample.pyそれを呼ぶことにします):

import json 
from functools import partial 

from geopyspark.geopycontext import GeoPyContext 
from geopyspark.geotrellis.constants import SPATIAL, ZOOM 
from geopyspark.geotrellis.geotiff_rdd import get 
from geopyspark.geotrellis.catalog import write 

from shapely.geometry import Polygon, shape 
from shapely.ops import transform 
import pyproj 


# Create the GeoPyContext 
geopysc = GeoPyContext(appName="example", master="local[*]") 

# Read in the NLCD tif that has been saved locally. 
# This tif represents the state of Pennsylvania. 
raster_rdd = get(geopysc=geopysc, rdd_type=SPATIAL, 
uri='/tmp/NLCD2011_LC_Pennsylvania.tif', 
options={'numPartitions': 100}) 

を私はpython3 example.pyを使用してEMRクラスタ上でこれを実行することだけど、私がしようとするときspark-submit example.pyを実行しますTypeErrorが発生します。 'JavaPackage'オブジェクトは呼び出し可能ではありません。

これは、この行を指すように思わgeopyspark/geotrellis/geotiff_rdd.py: geotiff_rdd = geopysc._jvm.geopyspark.geotrellis.io.geotiff.GeoTiffRDD

私は​​を使用してこのコードを実行することができます任意の方法はありますか?私が読んだことに基づいて、python example.pyを使って自分のコードをクラスタ上で実行することはできないようです。これは本当ですか?もしそうなら、GeoPySparkコードをクラスタ上で実行するにはどうすればこの問題を回避できますか?

私はスカラを学び、その代わりに使うべきですか?

答えて

2

@ charlie-hofmann。私はGeoPySparkの開発者の一人で、あなたにいくつかの助けを与えることができます。

昨日私が指摘したいのは、昨日GeoPySpark v0.2.0をリリースしたことです。このリリースでは、サンプルコードに反映されていないAPIに大きな変更が加えられました。これ以降、0.2.0リリースで動作するサンプルが更新されました。

あなたが以前に直面していたエラーは、実際にはバックエンドのJARをインストールしていないためです(PyPiのサイズ制限のために別途ダウンロードする必要があります)。 EMRのコード。 Dockerに精通している場合は、EMRを含むGeoPySparkを実行するために必要な環境を持つコンテナがあります。

それは、このコマンド経由でダウンロードすることができます。私たちはコンテナにEMRを展開

docker pull quay.io/geodocker/jupyter-geopyspark

一つの方法は、​​に渡されたアーカイブにバイナリの依存関係を入れていました。残念ながら、私はEMRについてよく知らないので、それ以上に多くの助けをすることはできません。私たちはrepositoryを持っていますが、EMRでGeoPySparkを使用する例が含まれています。また、Gitter channelがあります。このトピックについて詳しく知っている開発者があなたの質問に答えることができます。

ご質問すべてにお答えできなくて申し訳ありませんが、少なくとも私はいくつかの援助を提供したいと思っていました。

更新の例とベスト、

ジェイク

+0

リンク:https://github.com/locationtech-labs/geopyspark#a-quick-exampleドッキングウィンドウコンテナリポジトリへ – jbouffard

+0

リンク:https://でgithub.com/geodocker/geodocker-jupyter-geopyspark – jbouffard

+0

この@ jbouffardにあなたの助けをしてくれてありがとう - 今すぐEMRクラスターを開始してテストします! –

関連する問題