AzureDirectory Library for Lucene.Net

本文介绍了如何在SQL Azure环境中使用Lucene.NET和Azure Storage实现全文索引,包括建索引过程、注意事项及性能表现。通过实践案例,展示了在Azure平台上构建高效全文搜索系统的可能性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原帖地址:http://www.cnblogs.com/dotey/archive/2013/05/31/3109905.html

Sql Azure不支持全文索引的,所以微软官方推荐的做法是基于lucene来做全文索引,而且也有一个基于Azure Storage的Lucene.Net开源组件,已经支持到了最新的lucene.net 3.0.3。可以在CodePlex上下载到最新代码“AzureDirectory Library for Lucene.Net” http://azuredirectory.codeplex.com/ ,也可以通过NuGet获取。

在使用过程中,发现检索速度还可以,虽然是基于同一区的Azure Storage远程的存储,但是基本都能在1秒内,还是可以接受的。

建索引的过程也可以,配置好Storage Account和Catalog Name (其实就是Storage的Container),就会将索引文件同步到Storage。在使用过程中,被坑过一次,最开始我一次索引1000个帖子(一次indexwriter打开和关闭之间),还是比较顺利,后来贪快,一次索引10000帖子,过了半天才发现压根就没索引上,索引文件没写入,去看了一下文档,才发现它建索引实际上上是先建在本地,本地好了后,在close的时候,就同步到Storage上去,如果本地的文件太大,所以根本就同步不上去。另外它也建议不要去调用indexWriter的optimize()优化操作(Calling Optimize() is a really bad idea because it causes ALL SEGMENTS to be merged into ONE SEGMENT),因为这会将索引文件会合并成为一个很大的索引文件,而这样会导致整个索引文件都要重建,重新下载上传。

详细说明还是请参考其文档:http://azuredirectory.codeplex.com/

如果有兴趣体验,可以访问:http://www.openlab.co/search?q=%E8%A5%BF%E5%B7%A5%E5%A4%A7

目前已经将我自己的网站全部迁移到Azure: Web Role + Sql Azure + Azure Storage + Service Bus

后面会分享一些迁移过程中遇到的问题和心得。

 

 

本文链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值