こんにちは、私は Disco を初めて使用し、既存のコードをそれに統合しています。Disco は、マップ/リデュース関数をグローバル関数ではなくクラス内の関数として呼び出すことができますか? 次のコードは、より明確に説明している可能性があります。
class Segmenter(object):
def map_fun(line, params):
....
def reduce_fun(iter, params):
....
def disco_mp(self):
job = Job().run(input=["raw://word_to_segment_......"],
map=map_fun,
reduce=reduce_fun)
...
実行結果は
NameError: global name 'map_fun' is not defined
しかし、map_fun、reduce_fun をグローバル関数に変更すると、期待どおりに機能します。ただし、クラス関数として機能させる方法を見つける必要があります。それを行う方法はありますか?
ありがとう、
チャンドラー