6) 第二章 索引:Lucene索引的文档模型

本文深入探讨了Lucene索引和搜索的核心概念,包括文档与域的关系、域的高级设置以及Lucene与数据库之间的区别。文章详细介绍了如何在Lucene中使用灵活的模式、非规范化操作等特性,并通过实例说明了其在实际应用中的优势。

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

 

1. 文档(Document)和域(Field)

    Document是Lucene索引和搜索的最小单元。然而实际上它只是一个或多个Field的容器,Field中保存着真正的内容。

    Field由三部分组成:名称(作为域的唯一标识); 值(文本或二进制值); 选项(针对该域的一些细节描述)

 

2. Field的高级设置

    1) 值可以被索引或不索引。被索引的域才能被搜索到。只有文本域才能被索引,二进制值域只能被存储(store)

    2) 被索引的域可以增加检索词向量(term vectors)

    3) 值可以被存储

 

3. Lucene与数据库的区别

    1) 灵活的模式(schema)

      Lucene并不像数据库一样,拥有固定的全局模式。新加入的document和已有的document完全不同,它们可以拥有全新的域。

    2) 非规范化(Denormalization)

      Lucene需要对索引内容进行非规范化操作。

      一些开源框架如Hibernate Search, Compass, LuSQL, DBSight,Browse Engine 及 Oracle/Lucene integration能够完成此任务。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值