美文网首页
python操作spark——集群中文分词demo

python操作spark——集群中文分词demo

作者: 枫隐_5f5f | 来源:发表于2019-04-11 20:24 被阅读0次

数据示例

8920397333      王铮亮 时间都去哪了 《私人订制》插曲
8920408333      Locked Out Of Heaven 音乐高清视频MV
8920422333      影视-心上人啊快给我力量KTV(电影《神圣的使命》插曲
8920491333      068_奥特曼
8920492333      影视-幸福不会从天降KTV(电影《我们村里的年轻人》插
8920527333      邓紫棋 GEM 2013 X.X.X. LIVE 演唱会 【全场高清】
8920529333      067_外婆的澎湖湾
8920588333      卓依婷-纸飞机
8920622333      073_小红帽儿歌
8920623333      072_字母歌

代码

import sys
from pyspark import SparkContext,SparkConf
import jieba
reload(sys)
sys.setdefaultencoding("utf-8")

def fenci_func(line):
        string = line.strip().split("\t")[1]
        word_list = jieba.cut(string)
        result_li = []
        result_li.append(string.strip())
        for word in word_list:
                if len(word) > 1:
                        result_li.append(word)
        return "\t".join(result_li)




if __name__ == "__main__":
        conf = SparkConf().setMaster("spark://master:7077").setAppName("fenci_jieba_test")
        sc = SparkContext(conf=conf)
        infile = sc.textFile("/music_meta.txt.small")

        re = infile.map(fenci_func) \
                .saveAsTextFile("/music_word_seg")
        sc.stop()

提交命令

spark-submit   --py-files jieba.tar.gz  run.py

1.需要把依赖的包jieba 压缩 以--py-files 上传 多个包之间","隔开

  1. --py-files 等参数需要放置在执行脚本run.py之前 否则会报错找不到依赖的包

相关文章

网友评论

      本文标题:python操作spark——集群中文分词demo

      本文链接:https://www.haomeiwen.com/subject/xtoxwqtx.html