如何选择搜索型数据库?
创始人
2024-07-11 16:29:33
0次

搜索型数据库除了存储数据外,还为数据编制索引,因此用户可以使用关键字搜索数据集合。目前有多种搜索型数据库可供选择,让我们来看看大家比较关注的一些常见功能。

Apache Lucene 索引

Apache Lucene 是一个用 Java 编写的开源库,支持跨平台。Lucene 是最常用的搜索引擎软件之一,被 Apache Solr 和 Elasticsearch 等采用。因为它具有高性能和各种功能,如全文搜索、增量和批量索引、较少的 RAM 需求、排序、具有合并结果的多个索引、连接和分组、可插拔的排名模型以及可配置的搜索引擎。它还支持基于排名和字段的搜索结果,以及不同类型的查询,如短语、通配符、范围和邻近性查询。

文档格式

大多数搜索型数据库支持以 JSON、XML 和 CSV 等常用格式解析文档并编制索引。对于其他文档格式,大多数搜索型数据库都支持 Apache Tika。Tika 是一个软件工具包,支持上千种不同文件类型的文本和元数据提取。

全文搜索

有些搜索型数据库只搜索预定义的标题、元数据或文档摘要,而不是完整的文档文本。可以通过使用关键字、指定字段或短语,或根据与搜索词相近的词进行近似搜索来改进全文搜索。

近实时搜索

近实时(NRT)搜索可在更新完成后的几毫秒内对文档进行搜索。NRT 对用户是透明的,通过有效的 RAM 管理和使用 RAM 来缓存更新,而不是将每次更新与磁盘同步,从而减少了输入/输出 (I/O) 开销。

模式 API(Schema API)

Lucene 支持使用 HTTP URL(语法为 http://:/solr/)搜索集合的 Schema API。使用模式 API,可以添加、更新、搜索和删除集合中的字段。支持的输出格式有 JSON 和 XML。

词干化(Stemming)

词干化是将转折词还原为词干,这样在搜索某个术语时,也会返回带有转折词的文档。例如,下面是从三个不同的文档中提取的三个语句:

  • 经过大量测试,应用程序已经开发完成(developed)。
  • 应用程序正在开发中(development)。
  • 开发应用程序需要大量测试(develop)。

如果这三个文档都被编入索引,在不支持词干处理的情况下,搜索 “develop ”只会返回第三个文档。但如果支持词干处理,则会返回带有“development”和“developed”转折词的文档。

分布式、可扩展和高可用性

大多数搜索型都是分布式的,这意味着它们部署在机器集群上,使数据库具有容错性。大家也比较关注搜索型数据库是否具有可扩展性,以便根据需要增减集群规模。分片用于对索引数据进行分区,这样分片本身就可以复制,从而实现高可用性。

这些功能是大多数搜索型数据库的共同特点,因此在数据库选型时,请结合业务场景需要选择。

关于作者

Deepak Vohra

相关内容

热门资讯

微科电源取得基于供电前馈与电子... 国家知识产权局信息显示,深圳市微科电源系统有限公司取得一项名为“一种基于供电前馈与电子阻尼的开关驱动...
股市必读:华虹宏力新发布《华虹... 截至2026年9月11日收盘,华虹宏力(688347)报收于219.07元,下跌2.25%,换手率3...
扬州鼎锋旗下基金完成备案,投资... 近日,扬州鼎锋引领股权投资合伙企业(有限合伙)完成中国证券投资基金业协会备案,正式进入投资运作阶段。...
深夜,全线跳水!AI芯片,重大... 芯片股集体杀跌! 北京时间13日晚间,芯片股在暗盘交易中集体大跳水,SK海力士跌超4%,英特尔跌近4...
股市必读:深南电路新发布《北京... 截至2026年9月11日收盘,深南电路(002916)报收于396.68元,上涨1.11%,换手率1...
股市必读:中瓷电子(00303... 截至2026年9月11日收盘,中瓷电子(003031)报收于118.06元,下跌1.71%,换手率2...
Anthropic对人工智能的... 9月13日,市场观察人士指出,人工智能高管们呼吁放缓技术发展的言论,短期内可能会对芯片制造商及供应链...
并入光洋股份版图:PCB利基龙... 恰逢近期光洋股份(002708.SZ)完成对常熟东南相互电子有限公司100%股权收购的工商变更登记,...
两大PCB牛股澄清:传闻不实 9月13日晚,两只PCB(印制电路板)大牛股金安国纪、超声电子发布股票交易异常波动公告称,未向英伟达...
《星星说》下周引言(9.14—... 作者:王祯的幻世界 下周引言: 上周我们说要注意情感关系的稳定性,放下猜忌,打开心扉好好沟通,尽量...