Spark中使用多个正则循环匹配数据,速度慢的问题 10C

uaParserConfigs 是正则的List,里边是格map对应的{"regex":"************"}

 JavaRDD<String> inputWords = lines.map(new Function<String, String>() {

           @Override
           public String call(String s) throws Exception {
               for(int size = 0;size<uaParserConfigs.size();size++){
                    Matcher matcher = Pattern.compile(uaParserConfigs.get(size).get("regex")).matcher(s);
                    if(matcher.find()){
                        return  new String(s+"1");
                    }
                }
               return new String(s + "0");
           }
       });

速度特别慢,每分钟才处理几百条数据,怎么提高性能或者有没有其他的解决方案。

2个回答

wangwwenhui1321
QG_PASS 循环匹配数据 看代码片段
大约 2 年之前 回复

Pattern.compile(uaParserConfigs.get(size).get("regex")) 放外面

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐