暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

一文带你了解 KDP 中的全文检索引擎 Apache Solr (上)

原创 KaiwuDB 2024-03-13
192

在当下大数据浪潮中,数据服务平台已然成为了企业信息化核心,集数据集成、数据治理、数据挖掘、数据门户等功能于一体,为企业提供全面的数据服务支持。

由 KaiwuDB 自主研发的 KDP 数据服务平台是一款面向 AIoT 场景的数据服务平台——以一体多模的大数据基础平台作为基座,提供 OLTP、OLAP、HTAP、时序、图、全文检索、宽表等多种数据存储和计算服务。

今天主要为大家介绍其中的全文检索功能。

1. KDP 全文检索功能概述

KDP 全文检索功能实现采用的全文检索引擎 Apache Solr 组件。全文检索功能在 KDP 中对应的是数据门户中的综合查询功能,采用 Solr 组件针对于数据门户所有业务部门人员的全量化数据检索,即根据关键字进行面向整个业务元数据、主数据、代码、非结构化等所有数据建设范畴的内容信息匹配检索。支持大量数据下的快速检索,对检索出来的信息能进一步进行明细查询。提供非结构化数据预览服务,包含图片、视频、Excel、PDF、Word 文档预览。

2. 什么是全文检索?

计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。

在 KDP中,还有很多非结构化的数据,将非结构化数据中的一部分信息提取出来,重新组织,使其变得有一定结构,然后对此有一定结构的数据进行搜索,从而达到搜索相对较快的目的。

3. 为什么要用全文搜索搜索引擎?

有人可能会有这个疑问,直接通过数据库查询不就可以了吗?
确实如此,大部分的查询功能都可以通过数据库查询获得,如果查询效率低下,还可以通过建数据库索引,优化 SQL 等方式提升效率,甚至通过引入缓存来加快数据的返回速度。如果数据量大,还可以分库分表来分担查询压力。那为什么还要全文搜索引擎呢?主要从以下几个原因分析:

  1. 全文索引搜索支持非结构化数据的搜索,可以更好地快速搜索大量存在的任何单词或单词组的非结构化文本。
  2. 如果使用数据库进行全文检索,会增加索引维护难度。
  3. 使用数据库存非结构化数据影响性能,全文检索会降低查询效率。

4. 什么是 Solr ?

Solr 是一个基于 Lucene 的 Java 搜索引擎服务器。提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。并在大量大型网站中使用。

其特点如下:

  • RESTful API: 要与 Solr 通信,可以使用 RESTful 服务与 Solr 通信,可以使用 XML、JSON、CSV 等格式的文件作为输入文档,并以相同的文件格式获取结果;
  • 全文搜索: Solr 提供了全文搜索所需的所有功能:令牌、短语、拼写检查、通配符、自动完成;
  • 企业准备: 根据企业或组织的需要,Solr 可以部署在任何类型的系统:独立、分布式、云;
  • 灵活可扩展: 通过扩展 Java 类并进行相关配置,可以定制 Solr 组件;
  • NoSQL 数据库: Solr,可以用作大数量级的 NoSQL 数据库,可以沿着集群分布搜索任务。

下一篇>>一文带你了解 KDP 中的全文检索引擎 Apache Solr (下)

最后修改时间:2024-03-13 16:04:18
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论