CN114281921A - 数据的处理方法、装置、存储介质及设备 - Google Patents
数据的处理方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN114281921A CN114281921A CN202111493020.3A CN202111493020A CN114281921A CN 114281921 A CN114281921 A CN 114281921A CN 202111493020 A CN202111493020 A CN 202111493020A CN 114281921 A CN114281921 A CN 114281921A
- Authority
- CN
- China
- Prior art keywords
- data
- segmented
- file
- newly added
- searched
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 22
- 230000011218 segmentation Effects 0.000 claims abstract description 57
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012216 screening Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 238000013480 data collection Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 208000025174 PANDAS Diseases 0.000 description 2
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 2
- 240000004718 Panda Species 0.000 description 2
- 235000016496 Panda oleosa Nutrition 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供的一种数据的处理方法、装置、存储介质及设备,首先获取搜索引擎的数据源设备中的新增数据,随后,根据新增数据的类型,将新增数据中的预设信息组合为待分词数据,然后,对待分词数据进行分词,生成待搜索数据。通过该方式,可以实时或定期地获取数据源设备中的新增数据,并根据新增数据的类型确定待搜索数据,从而可以对多种类型的数据进行采集及处理,进而提高了搜索引擎返回的搜索结果的全面性。
Description
技术领域
本发明涉及数据搜索技术领域,尤其涉及一种数据的处理方法、装置、存储介质及设备。
背景技术
随着信息技术的快速发展,数据的来源越来越多,数据量也日益增加。为了终端设备可以全面、准确地查找到所需资料或信息,搜索引擎的数据处理***需要具备能够接收海量的、多数据源的数据的能力。
现有的搜索引擎的数据处理***,通过搜寻程序采集各个数据源中的文本数据并存储在搜索引擎数据库中,然后根据搜索关键词对搜索引擎数据库中的数据进行检索,并将检索到的数据返回给终端设备。
然而,现有技术中,只能采集文本类的结构化数据并进行搜索调优,从而导致数据采集及处理的局限性大,进而降低了搜索引擎返回的搜索结果的全面性。
发明内容
本申请提供一种数据的处理方法、装置、存储介质及设备,以解决现有技术中数据采集及处理的局限性大的技术问题。
第一方面,本申请提供一种数据的处理方法,所述方法包括:
获取搜索引擎的数据源设备中的新增数据;
根据所述新增数据的类型,将所述新增数据中的预设信息组合为待分词数据;
对所述待分词数据进行分词,生成待搜索数据。
一种可选的实施方式中,所述新增数据的类型与所述预设信息存在映射关系。
一种可选的实施方式中,若所述新增数据的类型为文件类数据,则所述将所述新增数据中的预设信息组合为待分词数据,包括:
获取所述文件类数据对应的文件读取组件;
使用所述文件读取组件从所述文件类数据中提取所述文件类数据对应的第一预设信息;
将所述第一预设信息组合为所述待分词数据。
一种可选的实施方式中,若所述新增数据的类型为非文件类数据,则所述将所述新增数据中的预设信息组合为待分词数据,包括:
确定所述非文件类数据是否为结构化数据;
若否,则从所述非文件类数据中提取所述非文件类数据对应的第二预设信息;
将所述第二预设信息组合为所述待分词数据。
一种可选的实施方式中,在所述确定所述非文件类数据是否为结构化数据之后,所述方法还包括:
若是,则将所述非文件类数据作为所述待分词数据。
一种可选的实施方式中,所述对所述待分词数据进行分词,生成待搜索数据,包括:
根据所述待分词数据的分词需求,将所述待分词数据中的至少一个预设信息确定为待分词字段;
根据所述待分词字段对应的预设信息的类型,确定所述待分词数据的分词器;
使用所述分词器对所述待分词字段进行分词,生成所述待搜索数据。
一种可选的实施方式中,在所述对所述待分词数据进行分词,生成待搜索数据之后,还包括:
根据所述待搜索数据对应的数据源设备,将所述待搜索数据存储至索引库中;
根据预设的第一搜索关键词,在所述索引库中建立所述第一搜索关键词与所述待搜索数据之间的倒排索引。
一种可选的实施方式中,在所述建立所述第一搜索关键词与待搜索数据之间的倒排索引之后,还包括:
接收终端设备发送的查询请求,所述查询请求中包含第二搜索关键词;
根据所述第二搜索关键词,从所述索引库的待搜索数据中确定出搜索数据;
将所述搜索数据输入至中文分词模型中,确定筛选后的搜索数据,所述中文分词模型用于根据预设的词汇权重参数对所述搜索数据进行筛选。
一种可选的实施方式中,在所述获取数据源设备中的新增数据之后,还包括:
将所述新增数据缓存至所述新增数据的类型对应的存储***中。
第二方面,本申请提供一种数据的处理装置,所述装置包括:
获取模块,用于获取搜索引擎的数据源设备中的新增数据;
处理模块,用于根据所述新增数据的类型,将所述新增数据中的预设信息组合为待分词数据;对所述待分词数据进行分词,生成待搜索数据。
一种可选的实施方式中,所述新增数据的类型与所述预设信息存在映射关系。
一种可选的实施方式中,若所述新增数据的类型为文件类数据,则所述处理模块,具体用于获取所述文件类数据对应的文件读取组件;使用所述文件读取组件从所述文件类数据中提取所述文件类数据对应的第一预设信息;将所述第一预设信息组合为所述待分词数据。
一种可选的实施方式中,若所述新增数据的类型为非文件类数据,则所述处理模块,具体用于确定所述非文件类数据是否为结构化数据;若否,则从所述非文件类数据中提取所述非文件类数据对应的第二预设信息;将所述第二预设信息组合为所述待分词数据。
一种可选的实施方式中,在所述确定所述非文件类数据是否为结构化数据之后,所述处理模块,还用于若是,则将所述非文件类数据作为所述待分词数据。
一种可选的实施方式中,所述处理模块,具体用于根据所述待分词数据的分词需求,将所述待分词数据中的至少一个预设信息确定为待分词字段;根据所述待分词字段对应的预设信息的类型,确定所述待分词数据的分词器;使用所述分词器对所述待分词字段进行分词,生成所述待搜索数据。
一种可选的实施方式中,所述处理模块,还用于根据所述待搜索数据对应的数据源设备,将所述待搜索数据存储至索引库中;根据预设的第一搜索关键词,在所述索引库中建立所述第一搜索关键词与所述待搜索数据之间的倒排索引。
一种可选的实施方式中,所述处理模块,还用于接收终端设备发送的查询请求,所述查询请求中包含第二搜索关键词;根据所述第二搜索关键词,从所述索引库的待搜索数据中确定出搜索数据;将所述搜索数据输入至中文分词模型中,确定筛选后的搜索数据,所述中文分词模型用于根据预设的词汇权重参数对所述搜索数据进行筛选。
一种可选的实施方式中,所述处理模块,还用于将所述新增数据缓存至所述新增数据的类型对应的存储***中。
第三方面,本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面任意一项所述的方法。
第四方面,本发明还提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如第一方面任意一项所述的方法。
第五方面,本申请还提供一种电子设备,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如第一方面任意一项所述的方法。
本申请提供的一种数据的处理方法、装置、存储介质及设备,首先获取搜索引擎的数据源设备中的新增数据,随后,根据新增数据的类型,将新增数据中的预设信息组合为待分词数据,然后,对待分词数据进行分词,生成待搜索数据。通过该方式,可以实时或定期地获取数据源设备中的新增数据并进行处理,根据新增数据的类型确定待搜索数据,从而可以对多种类型的数据进行采集及处理,进而提高了搜索引擎返回的搜索结果的全面性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种数据的处理方法的应用场景示意图;
图2为本申请实施例提供的一种数据的处理方法的流程示意图;
图3为本申请实施例提供的另一种数据的处理方法的流程示意图;
图4为本申请实施例提供的一种数据处理及搜索***的框架示意图;
图5为本申请实施例提供的一种基于Elasticsearch集群的分词插件的安装框架示意图;
图6为本申请实施例提供的一种开源的Kibana-ES状态管理界面的示意图;
图7为本申请实施例提供的一种数据的处理装置的结构示意图;
图8为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
随着信息技术的快速发展,数据的来源越来越多,数据量也日益增加。为了终端设备可以全面、准确地查找到所需资料或信息,搜索引擎的数据处理***需要具备能够接收海量的、多数据源的数据的能力。
现有的搜索引擎的数据处理***,通过搜寻程序采集各个数据源中的文本数据并存储在搜索引擎数据库中,然后根据搜索关键词对搜索引擎数据库中的数据进行检索,并将检索到的数据返回给终端设备。
然而,现有技术中,只能采集文本类的结构化数据并进行搜索调优,从而导致数据采集及处理的局限性大,进而降低了搜索引擎返回的搜索结果的全面性。
为解决上述技术问题,本申请实施例提供一种数据的处理方法、装置、存储介质及设备,通过实时或定期地获取搜索引擎的数据源设备中的新增数据,并根据新增数据的类型确定待搜索数据,从而可以对多种类型的数据进行采集及处理,进而提高了搜索结果的全面性。
下面对于本申请涉及的一种数据的处理方法的应用场景进行说明。
图1为本申请实施例提供的一种数据的处理方法的应用场景示意图。如图1所示,包括有服务器101及终端设备102,其中,终端设备102可以包括搜索引擎的数据源设备。首先,服务器101可以获取终端设备102中的新增数据,随后,根据新增数据的类型,生成待搜索数据,并将待搜索数据存储至索引库中。当接收到终端设备102发送的查询请求时,服务器101可以根据查询请求中的搜索关键词,从索引库的待搜索数据中确定出搜索数据,并将搜索数据输入至中文分词模型中,得到筛选后的搜索数据。
需要说明的是,上述终端设备102可以是单个终端设备,用于向服务器101提供搜索引擎所需的数据源并发送查询请求;也可以包含多个终端设备,其中一部分终端设备用于向服务器101提供搜索引擎所需的数据源,一部分终端设备用于向服务器101发送查询请求,本申请实施例对此不不作限制。
其中,上述服务器可以是但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算的由大量计算机或网络服务器构成的云。
上述终端设备可以为手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、智慧家庭(smart home)中的无线终端等。本申请实施例中,用于实现终端的功能的装置可以是终端,也可以是能够支持终端实现该功能的装置,例如芯片***,该装置可以被安装在终端中。本申请实施例中,芯片***可以由芯片构成,也可以包括芯片和其它分立器件。
应理解,本申请技术方案的应用场景可以是图1中的数据的处理场景,但不限于此,还可以应用于其它需要对数据进行处理的场景中。
可以理解,上述数据的处理方法可以通过本申请实施例提供的数据的处理装置实现,数据的处理装置可以是某个设备的部分或全部,例如服务器。
下面以集成或安装有相关执行代码的服务器为例,以具体的实施例对本申请实施例的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请实施例提供的一种数据的处理方法的流程示意图,本实施例涉及的是搜索引擎的数据源设备中的新增数据的获取及处理过程。如图2所示,该方法包括:
S201、获取搜索引擎的数据源设备中的新增数据。
在本申请实施例中,服务器可以首先获取搜索引擎的数据源设备中的新增数据,然后对获取到的新增数据进行处理,确定待搜索数据。
其中,搜索引擎可以为任意类型的搜索引擎,本申请实施例对此不不作限制。在一些实施例中,搜索引擎的类型可以包括全文搜索引擎、目录搜索引擎等,示例性地,可以为基于Elasticsearch(ES)集群建立的分布式的全文搜索引擎。数据源设备可以为任意设备,在一些实施例中,可以根据搜索引擎的搜索范围进行确定上述数据源设备。示例性地,若搜索引擎的搜索范围为业务***A或数据源B,则数据源设备可以为业务***A或数据源B所对应的设备。新增数据可以为任意类型的数据,在一些实施例中,按数据处理方式的不同,新增数据可以分为文本类数据、非文本类数据。示例性地,文本类数据可以包含文本存储文件(SequenceFile)、映射文件(MapFile)、可携带文档文件(Portable Document Format,PDF)、演示文稿文件(PowerPoint,PPT)、文档文件(Document,DOC)、文本文件(Text,TXT)、电子表格文件(Excel)、逗号分隔值(Comma-Separated Values,CSV)等类型的数据,非文本类数据可以包含除文本类数据之外的结构化数据、非结构化数据等类型的数据。
本申请实施例对于服务器如何获取上述新增数据不不作限制,可以根据实际情况具体设置。在一些实施例中,服务器可以获取搜索引擎的数据源设备中的任意新增数据,也可以按照要求获取搜索引擎的数据源设备中的部分新增数据。示例性地,服务器可以按照预先的配置要求,获取指定范围内所有日志文件数据(Log.txt)。在另一些实施例中,服务器可以实时地获取搜索引擎的数据源设备中的新增数据,也可以定时地获取新增数据。示例性地,服务器可以实时地接收数据源设备通过应用程序编程接口(ApplicationProgramming Interface,API)的方式推送的新增数据,也可以通过配置安全文件传送协议(Secure File Transfer Protocol,SFTP)的方式定时采集数据源设备中的新增数据。
在另一些实施例中,在获取数据源设备中的新增数据之后,服务器还可以根据新增数据的类型,将新增数据缓存至对应的存储***中。示例性地,可以使用分布式文件存储***(Ceph)缓存文件类数据,使用分布式日志***(Kafka)缓存非文件类数据。通过将新增数据缓存至对应的存储***中,可以避免因数据获取吞吐量超过数据处理容量而造成的数据丢失问题。其中,Ceph是一个可靠、自治、可扩展的分布式存储***,可以快速且稳定的将文件类数据分开存放在Ceph节点中,满足存储的多样性需求;Kafka以时间复杂度为O(1)的方式提供消息持久化能力,对万亿字节(Trillionbyte,TB)级以上数据也能保证常数时间的访问性能。
S202、根据新增数据的类型,将新增数据中的预设信息组合为待分词数据。
在本步骤中,当获取到新增数据后,服务器可以根据新增数据的类型,将新增数据中的预设信息组合为待分词数据。
在本申请实施例中,新增数据的类型可以与上述预设信息存在映射关系。在一些实施例中,若新增数据的类型为文件类数据,则预设信息可以包括文件名称、文件类型、文件路径、文件属性、文件内容等信息;若新增数据的类型为非文件类数据、且为非结构化数据,则预设信息可以包括每一条数据的时间戳、数据类型、数据归属、数据内容等信息。其中,时间戳用于指示该条数据的生成时间,数据归属指示数据的来源并可以作为后续对该数据进行分类、分片、批量存储、查询的参考信息。
本申请实施例对于如何根据新增数据的类型,将预设信息组合为待分词数据不不作限制。在一些实施例中,若新增数据的类型为文件类数据,则获取文件类数据对应的文件读取组件,并使用文件读取组件从文件类数据中提取文件类数据对应的第一预设信息,然后将第一预设信息组合为待分词数据。示例性地,若新增数据的类型为PDF格式的文件类数据,则可获取PDF文件读取组件(PDFminer),通过PDFminer提取该PDF文件中的文件名称、文件类型、文件路径、文件属性、文件内容等信息,并将提取到的信息组合为待分词数据。
应理解,在一些实施例中,文件读取组件的类型可以根据文件类数据的类型进行确定。示例性地,文件读取组件可以包括PDF文件读取组件(PDFminer)、Excel与CSV等文件读取组件(Pandas)、PPT与DOC等文件读取组件(Win32com)等。
在另一些实施例中,若新增数据的类型为非文件类数据,则首先确定该非文件类数据是否为结构化数据,若该非文件类数据是结构化数据,则将该非文件类数据作为待分词数据。若该非文件类数据不是结构化数据,则从非文件类数据中提取该非文件类数据对应的第二预设信息,并将第二预设信息组合为待分词数据。示例性地,若新增的非文件类数据不是结构化数据,则从该数据中提取时间戳、数据类型、数据归属、数据内容等信息,并将提取到的信息组合为待分词数据。
S203、对待分词数据进行分词,生成待搜索数据。
在本步骤中,在将新增数据中的预设信息组合为待分词数据后,服务器可以对待分词数据进行分词,生成待搜索数据。
本申请实施例对于如何将待分词数据进行分词的方法不不作限制。在一些实施例中,服务器可以根据待分词数据的分词需求,将待分词数据中的至少一个预设信息确定为待分词字段,然后根据待分词字段对应的预设信息的类型,确定待分词数据的分词器,最后使用分词器对待分词字段进行分词,生成待搜索数据。
示例性地,若搜索引擎中预设的分词需求是对文件标题及内容进行分词,则将待分词数据中的文件标题、文件内容等信息作为待分词字段,并将分词器确定为中文分词器(IKAnalyzer,IK),使用IK分词器对待分词数据中的文件标题、文件内容两个字段进行分词后,生成待搜索数据。本申请实施例对于待分词字段对应的具体预设信息及分词器的类型不不作限制,可以根据实际分词需求具体设置。
在另一些实施例中,在生成待搜索数据之后,服务器还可以根据待搜索数据对应的数据源设备,将待搜索数据存储至索引库中,并根据预设的第一搜索关键词,在索引库中建立第一搜索关键词与待搜索数据之间的倒排索引。
进一步地,本申请实施例对于如何将待搜索数据存储至索引库中不作限制。在一些实施例中,服务器可以根据搜索引擎的搜索需求,对来源于某一部分数据源设备中的数据设立对应的索引库,并将来源于该部分数据源设备的待搜索数据存储至该索引库中。示例性地,若搜索引擎的搜索需求是对***A中的所有的公文附件文件进行搜索,则可将来源于***A中的所有的公文附件文件对应的待搜索数据存储于一个索引库。
本申请实施例对于如何在索引库中建立第一搜索关键词与待搜索数据之间的倒排索引不作限制。在一些实施例中,可以通过在待搜索数据中获取包含该第一搜索关键词的所有数据,并将获取到的数据组合为倒排列表的方法建立倒排索引。示例性地,若第一搜索关键词为“套餐”,其词汇编号为1,待搜索数据中包含词汇“套餐”的数据的编号为1、3、8,则词汇“套餐”的倒排列表为{1,3,8}。在另一些实施例中,服务器可以在将待搜索数据存储至索引库中时,建立第一搜索关键词与待搜索数据之间的倒排索引。
在另一些实施例中,在建立第一搜索关键词与待搜索数据之间的倒排索引之后,服务器还可以接收终端设备发送的查询请求,并根据查询请求中包含的第二搜索关键词,从索引库的待搜索数据中确定出目标搜索数据;然后,将目标搜索数据输入至中文分词模型中,根据预设的词汇权重参数对目标搜索数据进行筛选,确定筛选后的目标搜索数据并将其返回至终端设备。
本申请提供的一种数据的处理方法,首先获取搜索引擎的数据源设备中的新增数据,随后,根据新增数据的类型,将新增数据中的预设信息组合为待分词数据,然后,对待分词数据进行分词,生成待搜索数据。通过该方式,可以实时或定期地获取数据源设备中的新增数据并进行处理,根据新增数据的类型确定待搜索数据,从而可以对多种类型的数据进行采集及处理,进而提高了搜索引擎返回的搜索结果的全面性。
在上述实施例的基础上,下面对于如何将新增数据中的预设信息组合为待分词数据进行说明。图3为本申请实施例提供的另一种数据的处理方法的流程示意图,如图3所示,该方法包括:
S301、获取搜索引擎的数据源设备中的新增数据。
S302、确定新增数据的类型是否为文件类数据。
若是,则执行步骤S303-S304,若否,则执行S305。
S303、获取文件类数据对应的文件读取组件。
S304、使用文件读取组件从文件类数据中提取第一预设信息。
本步骤执行结束后,执行步骤S308。
S305、确定非文件类数据是否为结构化数据。
若是,则执行步骤S306,若否,则执行S307。
S306、将非文件类数据作为待分词数据。
本步骤执行结束后,执行步骤S309。
S307、从非文件类数据中提取第二预设信息。
本步骤执行结束后,执行步骤S308。
S308、将第一或第二预设信息组合为待分词数据。
S309、对待分词数据进行分词,生成待搜索数据。
S301-S309的技术名词、技术效果、技术特征,以及可选实施方式,可参照图2所示的S201-S203理解,对于重复的内容,在此不再累述。
在上述实施例的基础上,下面对于如何根据新增数据生成待搜索数据,并根据待搜索数据确定目标搜索数据进行说明。图4为本申请实施例提供的一种数据处理及搜索***的框架示意图,如图4所示,该数据处理及搜索***包括:
数据采集组件401,自然语言处理(Natural language processing,NLP)组件402、搜索引擎组件403、对外服务组件404。其中,对外服务组件404包括配置层4041、解析层4042、查询层4043。
在数据采集组件401中,服务器可以通过应用程序接口(Reatful API)的方式,从数据源设备中实时地获取各种类型的新增数据。新增数据可以为文件类数据,也可以为非文件类数据,文件类数据的类型可以包括数据库文件(Datebase,db)、文本文件(File)、日志文件(Log)、原始数据文件(Rawdata)等。在获取新增数据时,若数据的类型为非文件类数据,且为非结构化数据,则直接提取该条数据的时间戳、数据归属、数据类型、数据内容等信息,并将提取到的信息组合为待分词数据;若数据的类型为其它类型,则在获取该数据时,不对数据进行提取。在获取新增数据后,服务器可以将新增数据传入至数据缓存组件中。其中,使用分布式文件存储***Ceph缓存文件类数据,使用分布式日志***Kafka缓存非文件类数据。
在NLP组件402中,服务器可以从上述数据缓存组件中获取缓存后的新增数据。若新增数据的类型为文本类数据,则将文本类数据传入预处理组件,然后根据文本类数据的类型,确定该文本类数据对应的文件读取组件,通过文件读取组件提取该文本类数据的文件名称、文件类型、文件路径、文件属性、文件内容等信息,并将提取到的信息组合为待分词数据。文件读取组件的类型可以包括PPT文件读取组件(Pypptx)、PDF读取组件(Pdfminer)、DOC文件读取组件(Pydocx)、Excel与CSV等读取组件(Pandas)、文本文件读取组件(Numpy)等。若新增数据的类型为非文本类数据,且为结构化数据,则将该数据作为待分词数据。然后,服务器可以将待分词数据传入至分词组件中,并根据预设的分词需求确定分词器,通过分词器对待分词数据进行分词,生成待搜索数据。分词器可以包括汉语言处理分词器(HanLanguage Processing,Hanlp)、IK分词器、汉语词法分析器(THU Lexical Analyzer forChinese,Thulac)等。
在对待分词数据进行分词之前,可以预先将分词插件安装在Elasticsearch集群中,配置成不同的分词器。在后续的分词过程中,针对不同的分词需求,可以选择不同的分词处理模式。图5为本申请实施例提供的一种基于Elasticsearch集群的分词插件的安装框架示意图,如图5所示,分词插件包括汉语言处理包(Analysis-hanlp)、中文分词器插件(Analysis-ik或Analysis-smartcn)、拼音分词插件(Analysis-pinyin)等。
在搜索引擎组件403中,服务器可以从上述NLP组件402中获取待搜索数据,并待搜索数据存储至对应的索引库中并建立倒排索引。
需要说明的是,搜索引擎组件403可以基于分布式的Elasticsearch集群建立,并通过管理节点(Node)的方式实现对搜索引擎组件403的扩展。例如,Elasticsearch集群中的节点可以配置为主节点、数据节点和客户端节点。其中,主节点用于控制集群,负责集群的管理工作,例如创建或删除数据索引;数据节点用于存储数据分片和对数据进行增删改查等操作;客户端节点用于将接收到的查询请求转发至其它节点,具有负载均衡的作用。节点是运行Elasticsearch集群的实例,可以通过开源的数据分析和可视化平台(Kibana)进行图形化显示。
图6为本申请实施例提供的一种开源的Kibana-ES状态管理界面的示意图,如图6所示,服务器可以通过Kibana-ES状态管理界面获取Java虚拟机(Java Virtual Machine,JVM)堆内存的容量使用状态、在“过去一小时”时间段内的请求数量等信息。其中,“Filebeat”为本地文件的日志数据采集器。
当需要存储超出单个服务器容量的数据时,服务器可自动将超出容量的数据分别发送至多个存储搜索引擎(Lucene)索引(分片(Shard)索引)的其它服务器上,同时Elasticsearch集群通过副本(Replica)机制对分片进行数据冗余,保证了集群的高可用。
在对外服务组件404中,配置层4041用于提供个性化的搜索配置功能,配置功能可以包括权重配置、查询模式配置等。例如,可以通过该搜索配置功能,为不同的子业务***配置不同的查询模式及搜索关键词的权重比例。其中,配置层4041中的前端配置界面可以采用任意类型的前端框架开发,例如采用React前端框架进行开发。需要说明的是,当接收到用户在前端发起查询请求(Query)时,查询请求中可能存在多个搜索关键词时,每个搜索关键词的重要程度不同。在本申请实施例中,在基于词召回的基础上,可以通过权重配置对搜索关键词设置权重比例或优先级,以便最终返回的搜索结果与通过查询请求表达的搜索目的相对应。进一步地,还可通过权重配置功能对各个索引库的优先级进行设置。在配置层4041中,服务器还可以集成基于查询和数据稳定之间的统计特征,例如统计查询请求及对应返回的搜索结果中的词汇的词频、共现、点击量等,通过预设的词权重模型得到词权重分布,并根据词权重分布动态地调整查询请求中的搜索关键词的权重。
在对外服务组件404的解析层4042中,服务器可以通过API接口的形式接收查询请求,并对查询请求进行解析得到查询参数,然后根据查询参数动态地生成查询指令(QueryDomain Specific Language,Query DSL),并将查询指令传递给查询层4043。
在本申请实施例中,服务器可以直接将搜索引擎接入具有搜索引擎需求的***上,通过配置层4042实现查询模式、权重的配置,然后对外提供搜索功能。
在对外服务组件404中的查询层4043在,服务层可以从解析层4042中接收查询指令,将查询指令中的相关参数传入搜索引擎组件403中的待搜索数据中获取目标搜索数据。然后,在基于条件随机场(Conditional Random Field,CRF)的中文分词模型中,按照预先配置的词汇权重比例参数,对目标搜索数据进行权重、权限的筛选,重新确定目标搜索数据中的每条数据的优先级。最后,按照优先级由高到低的顺序,将筛选后的目标搜索数据返回给请求方。
在本申请实施例中,服务器可以便捷地接入多种类型的数据,从中提取预设信息得到待分词数据;然后利用多元化的分词插件,结合分词器对待分词数据进行分词,得到待搜索数据;再将待搜索数据存储至对应的索引库中并建立倒排索引。同时,提供了个性化的搜索配置功能,通过引入解析层,生成了动态的查询指令,提高了搜索结果的准确性。
本申请提供的一种数据的处理方法,首先获取搜索引擎的数据源设备中的新增数据,随后,根据新增数据的类型,将新增数据中的预设信息组合为待分词数据,然后,对待分词数据进行分词,生成待搜索数据。通过该方式,可以实时或定期地获取数据源设备中的新增数据并进行处理,根据新增数据的类型确定待搜索数据,从而可以对多种类型的数据进行采集及处理,进而提高了搜索引擎返回的搜索结果的全面性。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图7为本申请实施例提供的一种数据的处理装置的结构示意图。该数据的处理装置可以通过软件、硬件或者两者的结合实现,可例如上述实施例中的服务器,以执行上述实施例中的数据的处理方法。如图7所示,该数据的处理装置700包括:
获取模块701,用于获取搜索引擎的数据源设备中的新增数据;
处理模块702,用于根据新增数据的类型,将新增数据中的预设信息组合为待分词数据;对待分词数据进行分词,生成待搜索数据。
一种可选的实施方式中,新增数据的类型与预设信息存在映射关系。
一种可选的实施方式中,若新增数据的类型为文件类数据,则处理模块702,具体用于获取文件类数据对应的文件读取组件;使用文件读取组件从文件类数据中提取文件类数据对应的第一预设信息;将第一预设信息组合为待分词数据。
一种可选的实施方式中,若新增数据的类型为非文件类数据,则处理模块702,具体用于确定非文件类数据是否为结构化数据;若否,则从非文件类数据中提取非文件类数据对应的第二预设信息;将第二预设信息组合为待分词数据。
一种可选的实施方式中,在确定非文件类数据是否为结构化数据之后,处理模块702,还用于若非文件类数据是结构化数据,则将非文件类数据作为待分词数据。
一种可选的实施方式中,处理模块702,具体用于根据待分词数据的分词需求,将待分词数据中的至少一个预设信息确定为待分词字段;根据待分词字段对应的预设信息的类型,确定待分词数据的分词器;使用分词器对待分词字段进行分词,生成待搜索数据。
一种可选的实施方式中,处理模块702,还用于根据待搜索数据对应的数据源设备,将待搜索数据存储至索引库中;根据预设的第一搜索关键词,在索引库中建立第一搜索关键词与待搜索数据之间的倒排索引。
一种可选的实施方式中,处理模块702,还用于接收终端设备发送的查询请求,查询请求中包含第二搜索关键词;根据第二搜索关键词,从索引库的待搜索数据中确定出搜索数据;将搜索数据输入至中文分词模型中,确定筛选后的搜索数据,中文分词模型用于根据预设的词汇权重参数对搜索数据进行筛选。
一种可选的实施方式中,处理模块702,还用于将新增数据缓存至新增数据的类型对应的存储***中。
需要说明的,图7所示实施例提供的数据的处理装置,可用于执行上述任意实施例所提供的数据的处理方法,具体实现方式和技术效果类似,这里不再进行赘述。
图8为本申请实施例提供的一种电子设备的结构示意图。如图8所示,该电子设备800可以包括:至少一个处理器801和存储器802。图8示出的是以一个处理器为例的电子设备。
存储器802,用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。
存储器802可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器801用于执行存储器802存储的计算机执行指令,以实现上述数据的处理方法;
其中,处理器801可能是一个中央处理器(Central Processing Unit,CPU),或者是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。
可选的,在具体实现上,如果通信接口、存储器802和处理器801独立实现,则通信接口、存储器802和处理器801可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果通信接口、存储器802和处理器801集成在一块芯片上实现,则通信接口、存储器802和处理器801可以通过内部接口完成通信。
本申请实施例还提供了一种芯片,包括处理器和接口。其中接口用于输入输出处理器所处理的数据或指令。处理器用于执行以上方法实施例中提供的方法。该芯片可以应用于数据的处理装置中。
本申请实施例还提供一种程序,该程序在被处理器执行时用于执行以上方法实施例提供的数据的处理方法。
本申请实施例还提供一种程序产品,例如计算机可读存储介质,该程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述方法实施例提供的数据的处理方法。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、磁盘或者光盘等各种可以存储程序代码的介质。具体地,该计算机可读存储介质中存储有程序信息,程序信息用于上述数据的处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字终端设备线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种数据的处理方法,其特征在于,所述方法包括:
获取搜索引擎的数据源设备中的新增数据;
根据所述新增数据的类型,将所述新增数据中的预设信息组合为待分词数据;
对所述待分词数据进行分词,生成待搜索数据。
2.根据权利要求1所述的方法,其特征在于,所述新增数据的类型与所述预设信息存在映射关系。
3.根据权利要求2所述的方法,其特征在于,若所述新增数据的类型为文件类数据,则所述将所述新增数据中的预设信息组合为待分词数据,包括:
获取所述文件类数据对应的文件读取组件;
使用所述文件读取组件从所述文件类数据中提取所述文件类数据对应的第一预设信息;
将所述第一预设信息组合为所述待分词数据。
4.根据权利要求2所述的方法,其特征在于,若所述新增数据的类型为非文件类数据,则所述将所述新增数据中的预设信息组合为待分词数据,包括:
确定所述非文件类数据是否为结构化数据;
若否,则从所述非文件类数据中提取所述非文件类数据对应的第二预设信息;
将所述第二预设信息组合为所述待分词数据。
5.根据权利要求4所述的方法,其特征在于,在所述确定所述非文件类数据是否为结构化数据之后,所述方法还包括:
若是,则将所述非文件类数据作为所述待分词数据。
6.根据权利要求1所述的方法,其特征在于,所述对所述待分词数据进行分词,生成待搜索数据,包括:
根据所述待分词数据的分词需求,将所述待分词数据中的至少一个预设信息确定为待分词字段;
根据所述待分词字段对应的预设信息的类型,确定所述待分词数据的分词器;
使用所述分词器对所述待分词字段进行分词,生成所述待搜索数据。
7.根据权利要求1所述的方法,其特征在于,在所述对所述待分词数据进行分词,生成待搜索数据之后,还包括:
根据所述待搜索数据对应的数据源设备,将所述待搜索数据存储至索引库中;
根据预设的第一搜索关键词,在所述索引库中建立所述第一搜索关键词与所述待搜索数据之间的倒排索引。
8.根据权利要求7所述的方法,其特征在于,在所述建立所述第一搜索关键词与待搜索数据之间的倒排索引之后,还包括:
接收终端设备发送的查询请求,所述查询请求中包含第二搜索关键词;
根据所述第二搜索关键词,从所述索引库的待搜索数据中确定出搜索数据;
将所述搜索数据输入至中文分词模型中,确定筛选后的搜索数据,所述中文分词模型用于根据预设的词汇权重参数对所述搜索数据进行筛选。
9.根据权利要求2所述的方法,其特征在于,在所述获取数据源设备中的新增数据之后,还包括:
将所述新增数据缓存至所述新增数据的类型对应的存储***中。
10.一种数据的处理装置,其特征在于,所述装置包括:
获取模块,用于获取搜索引擎的数据源设备中的新增数据;
处理模块,用于根据所述新增数据的类型,将所述新增数据中的预设信息组合为待分词数据;对所述待分词数据进行分词,生成待搜索数据。
11.一种计算机存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至9任意一项所述的方法。
12.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1至9任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111493020.3A CN114281921A (zh) | 2021-12-08 | 2021-12-08 | 数据的处理方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111493020.3A CN114281921A (zh) | 2021-12-08 | 2021-12-08 | 数据的处理方法、装置、存储介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114281921A true CN114281921A (zh) | 2022-04-05 |
Family
ID=80871421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111493020.3A Pending CN114281921A (zh) | 2021-12-08 | 2021-12-08 | 数据的处理方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114281921A (zh) |
-
2021
- 2021-12-08 CN CN202111493020.3A patent/CN114281921A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112800095B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN105472045A (zh) | 数据库迁移的方法和装置 | |
CN110858172A (zh) | 一种自动化测试代码生成方法和装置 | |
CN110688096B (zh) | 包含插件的应用程序的构建方法、装置、介质及电子设备 | |
CN113204621B (zh) | 文档入库、文档检索方法,装置,设备以及存储介质 | |
US20200204688A1 (en) | Picture book sharing method and apparatus and system using the same | |
CN112732663A (zh) | 一种日志信息处理方法及装置 | |
CN110990350B (zh) | 日志的解析方法及装置 | |
US11762687B2 (en) | Processing of messages and documents carrying business transactions | |
CN113190517B (zh) | 数据集成方法、装置、电子设备和计算机可读介质 | |
CN108959294B (zh) | 一种访问搜索引擎的方法和装置 | |
CN113656737A (zh) | 网页内容展示方法、装置、电子设备以及存储介质 | |
US20230153357A1 (en) | Method of processing an observation information, electronic device and storage medium | |
CN110555178B (zh) | 数据代理方法及装置 | |
CN113761565A (zh) | 数据脱敏方法和装置 | |
US9904663B2 (en) | Information processing apparatus, information processing method, and information processing program | |
CN113792232B (zh) | 页面特征计算方法、装置、电子设备、介质及程序产品 | |
CN107977381B (zh) | 数据配置方法、索引管理方法、相关装置以及计算设备 | |
CN114281921A (zh) | 数据的处理方法、装置、存储介质及设备 | |
CN115374078A (zh) | 一种数据存储与读取***及其工作方法 | |
CN117009430A (zh) | 数据管理方法、装置和存储介质及电子设备 | |
CN113468529A (zh) | 一种数据搜索方法和装置 | |
CN111782834A (zh) | 图像检索的方法、装置、设备及计算机可读存储介质 | |
CN111400623A (zh) | 用于搜索信息的方法和装置 | |
CN113704242A (zh) | 一种数据处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |