私はPySparkの初心者です。最近、単純なpythonアプリケーション(バッチサイズ変更ピクチャ)を自分のsparkクラスタに送信しようとしました。私は正常にpycharmを介してアプリケーションを実行することができます、私は火花に私のアプリケーションを提出すると、画像も同様にサイズ変更されます。通常のPythonアプリケーションをPySparkバージョンに正しく変換するには
これが私の元のPythonコードです:
import os
from PIL import Image
size_64 = (64,64)
for f in os.listdir('.')
if f.endswith('.jpg'):
i = Image.open(f)
fn, fext = os.path.splitext(f)
i.thumbnail(size_64)
i.save('resize/{}_64'.format(fn, fext))
それから私は私がきちんと自分のPythonアプリケーションを提出することができると思った道へと変換:
import os
from PIL import Image
from pyspark import SparkContext, SparkConf
APP_NAME = "ImageResizer"
def main(sc):
size_64 = (64,64)
for f in os.listdir('.')
if f.endswith('.jpg'):
i = Image.open(f)
fn, fext = os.path.splitext(f)
i.thumbnail(size_64)
i.save('resize/{}_64'.format(fn, fext))
print 'done'
if __name__ == "__main__":
conf = SparkConf().setAppName(APP_NAME)
conf = conf.setMaster("spark://10.233.70.48:7077")
sc = SparkContext(conf=conf)
main(sc)
しかし、私は私と言われました実際にはスパークをまったく使用していませんでした(私もそうだと思いますが、どういう風には分かりません)。元のコードをPysparkに正しく変換するにはどうすればいいですか?
pysparkに精通している人なら誰でも助けてくれますか?また、PySparkアプリケーションの作成方法を正しく、体系的に学ぶことができる場所についての提案はありますか? ありがとうございます
は、このタイプミスです?:I - Image.open(F) –
@nfrezeはい、申し訳ありません。 –