Lucene

1. Lucene索引原理
http://blog.youkuaiyun.com/geekwang/archive/2008/11/29/3410187.aspx
1) 倒排文件索引结构
2) 关键词, 文章号[出现频率], 出现位置
3) 关键字是按字符顺序排列的(lucene没有使用B树结构),因此 lucene可以用二元搜索算法快速定位关键词
4) 减小索引文件的大小,Lucene 对索引还使用了压缩技术

 

2. Lucene:基于Java的全文检索引擎简介

http://www.chedong.com/tech/lucene.html

Index

IndexWriter write = new IndexWriter(indexPath, new SimpleAnalyzer(), false);
Document doc = new Document();
doc.add(Field.Text("body", (Reader) new InputStreamReader(is)));
writer.addDocument(doc);

 Search

Searcher searcher = new IndexSearcher(indexPath);
Query query = QueryParser.parse(queryString, "body", new SimpleAnalyzer());
Hits hits = searcher.search(query);
hits.doc(i).get("path")

Merge Index

IndexWriter indexWriter = new IndexWriter(to, sa, false);  
FSDirectory[] fs = { FSDirectory.getDirectory(from, false) };  
indexWriter.addIndexes(fs);  
indexWriter.optimize(); 
 

3. 亿级数据的高并发通用搜索引擎架构设计
http://www.kuqin.com/searchengine/20090215/35132.html

Index

信息处理入队列-->

信息写入搜索引擎数据存储层Tokyo Tyrant,异步入MySQL主表作备份, 也写增量表-->

每1分钟对增理表作索引,每3小时合并主索引且清空增量表

 

Search

查询Sphinx索引服务,取得满足查询条件的搜索引擎唯一ID (类别ID+原数据表主键ID) -->

通过Memcache协议一次性从Tokyo Tyrant中mget取回ID号对应的文本数据

 

4. 常用的分类算法
支持向量机(SVM),朴素贝叶斯(NB),神经网络(NN),K近邻(KNN),决策树(Decision Tree)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值