如何选择搜索型数据库?
创始人
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

相关内容

热门资讯

奥地利外长怂恿:中国是大国,要... 【文/观察者网 柳白】 西方仍在喋喋不休炒作“中国施压俄罗斯”的戏码。奥地利外长迈因尔-赖辛格当地...
丰台上半年GDP同比增长5.1... 人民网北京9月13日电(记者鲍聪颖)9月12日,北京市“一把手发布·京华巡礼”系列主题发布会丰台专场...
新华社权威速览|六方面显成效!... 记者:申铖、刘开雄 设计:赵薇 新华社国内部、摄影部,新华网联合出品 责任编辑:向勤如(EN006)
餐厅预制菜需要明示!国标草案已... 红星资本局9月13日消息,据第一财经报道,国家卫健委主导的《预制菜食品安全国家标准》草案已通过审查,...
原创 日... 钓鱼岛问题,已经成为中日两国历史中挥之不去的一道伤痕。对于这个问题,国际社会的关注程度从未间断过。近...
西贝开放后厨自证变“自曝”,输... 极目新闻评论员 屈旌 9月10日,罗永浩在个人社交平台吐槽西贝,称店内菜品几乎全是预制菜,价格贵,直...
孙菲菲发文官宣离婚:没有必要假... 搜狐娱乐讯 今日,孙菲菲发文官宣离婚:“我离婚了。没有必要假装婚姻美满的样子,现在很好,谢谢朋友们一...
部分信用卡被盗刷,网友:已报警... 每经编辑|何小桃 今天(9月13日)凌晨,浦发银行信用卡中心发布《关于我行万事达卡交易情况的说明》...
扬州女富豪斥资22.18亿元,... 文/新苏商记者耿朴凡 在终止原收购方案2个月后,9月11日晚间,扬州上市公司扬杰科技发布公告称,公司...
共赴光影之约 第二届金熊猫奖在... 在成都,公园转角的慢时光、火锅里的热辣味道、街巷市井里的烟火气,都曾在光影里流淌。 这里既是生活的舞...