Lucene6.0分析(一)——数据分析接口

   Analyer作为数据分析的主要数据模型,他通过TokenStreams分析文本。也可以说它是从文本中提取索引字段的一种策略。为了实现分析的目的,内部采用 TokenStreamComponents组件进行实现。Analyzer本身集成自Closable接口,即调用Close方法,可以释放资源。该对象通过 tokenStream方法获取TokenStream对象。

   TokenStream方法的处理流程先通过 reuseStrategy获取 TokenStreamComponents对象。如果对象为空,创建该对象,并根据字段设置Analyzer对象;如果对象不为空,则直接将Reader直接写入 TokenStreamComponents。

   StandAnalyzer是作为标准的一个文本分析器,其处理的流程包括字符小写和停用词处理。而其中的路程处理上采用流式的管道处理。即首先将字符按照字符的分割规范将其处理为流式的字符流,根据字符处理流在进行大小写和停用词的处理。流程的处理需要StandardTokenizer和Tokenizer两个对象。StandardTokenizer是将是将输入字符转换为流式字符,其中具体的实施类为 StandardTokenizerImpl。管道处理类都继承自 TokenFilter,StandAnalyzer的流式处理采用 LowerCaseFilter和 StopFilter对象。处理完成后返回 TokenStreamComponents,Lucene根据TokenStreamComponenets构造索引字段。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值