spark集群环境下使用hanlp进行中文分词

Posted qian770903

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spark集群环境下使用hanlp进行中文分词相关的知识,希望对你有一定的参考价值。

1、将下载的hanlp-portable-1.6.2.jar复制到集群spark/jar文件夹下面

2、启动spark集群

       spark/bin/spark-shell --executor-memory 6g  --driver-memory 1g --executor-cores 2 --num-executors 2 --master spark://master:7077 --jars ansj_seg-5.1.6.jar hanlp-portable-1.6.2.jar

3,执行如下指令:

    import com.hankcs.hanlp.tokenizer.StandardTokenizer

    val data = sc.textFile("hdfs://master:8020/clob.txt")

    val splits = data.filter(line => !line.contains("BODY")).map(line => line.replace("【","")).map(line => line.replace("】","")).map(line=>StandardTokenizer.segment(line.toString()))

     splits.first

提示结果没有序列化:

18/04/06 09:08:25 ERROR TaskSetManager: Task 0.0 in stage 0.0 (TID 0) had a not serializable result: com.hankcs.hanlp.seg.common.Term
Serialization stack:
        - object not serializable (class: com.hankcs.hanlp.seg.common.Term, value: 监/ng)
        - writeObject data (class: java.util.ArrayList)
        - object (class java.util.ArrayList, [监/ng, 所/u, 每日/r, 动态/n, 济南市/ns, 公安局/n, 监管/vn, 支队/n, 秘书处/n,  /w, 2012/m, 年/q, 9/m, 月/q, 11/m, 日/j, 情况/n, 统计/v, 今天/t, ,/w, 全市/n, 看守所/n, 新/a, 收押/v, 14/m, 人/n, ,/w, 出/v, 所/u, 14/m, 人/n, ,/w, 在押/v, 人员/n, 总数/n, 2596/m, 人/n, (/w, 其中/r, 包括/v, 死刑犯/n, 27/m, 人/n, ,/w, 死缓/j, 犯/v, 14/m, 人/n, ,/w, 无期徒刑/l, 犯/v, 8/m, 人/n, ,/w, 法/j, 轮功/nr, 人员/n, 1/m, 人/n, )/w, 。/w, 全市/n, 拘留所/n, 新/a, 收押/v, 47/m, 人/n, ,/w, 出/v, 所/u, 20/m, 人/n, ,/w, 在/p, 所/u, 人员/n, 总数/n, 213/m, 人/n, 。/w, 项目/n, 单位/n, 被/p, 监管/vn, 人员/n, 情况/n, 在押/v, 总数/n, 新/a, 收/v, 出/v, 所/u, 未决犯/n, 法/j, 轮功/nr, 重点/n, 人员/n, 病号/n, 市/n, 看守所/n, 164179144117873/m, 历城/ns, 看守所/n, 302502550143/m, 章丘/ns, 看守所/n, 24220227066/m, 长/a, 清/a, 看守所/n, 1050292050/m, 平/v, 阴/a, 看守所/n, 860169022/m, 济阳/ns, 看守所/n, 14401113091/m, 商/n, 河/n, 看守所/n, 760162020/m, 合计/v, 25961414962121685/m, 市/n, 拘留所/n, 1273315/m, 长/a, 清/a, 拘留所/n, 2420/m, 章丘/ns, 拘留所/n, 2332/m, 平/v, 阴/a, 拘留所/n, 1600/m, 济阳/ns, 拘留所/n, 2033/m, 商/n, 河/n, 拘留所/n, 1160/m, 合计/v, 2214720/m, 收/v, 教/v, 所/u, 30001/m])
        - element of array (index: 0)
        - array (class [Ljava.util.List;, size 1); not retrying

 

 

 

   

以上是关于spark集群环境下使用hanlp进行中文分词的主要内容,如果未能解决你的问题,请参考以下文章

2 中文分词工具 jieba 和 HanLP

推荐中文自然语言处理利器-HanLP

NLP文本处理的基本方法(超详解)

Hanlp中文分词工具最新安装教程

Elasticsearch安装以及配置hanlp中文分词插件

hanlp只能分析中文吗