CN108874956A - 海量文件检索方法、装置、计算机设备及存储介质 - Google Patents

海量文件检索方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN108874956A
CN108874956A CN201810574127.2A CN201810574127A CN108874956A CN 108874956 A CN108874956 A CN 108874956A CN 201810574127 A CN201810574127 A CN 201810574127A CN 108874956 A CN108874956 A CN 108874956A
Authority
CN
China
Prior art keywords
index
word
text
chinese
english
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
Application number
CN201810574127.2A
Other languages
English (en)
Inventor
陈飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN201810574127.2A priority Critical patent/CN108874956A/zh
Publication of CN108874956A publication Critical patent/CN108874956A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种海量文件检索方法、装置、计算机设备及存储介质。该方法包括:获取待建立索引的初始文本,判断初始文本是中文文本,或是英文文本;若初始文本是英文文本,对其进行分词得到英文分词结果,根据英文分词结果建立第一索引,将且存储在分布式内存网格中;若初始文本是中文文本,对其进行分词得到中文分词结果,根据中文分词结果建立第二索引,将其存储在分布式内存网格中;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。该方法通过分布式内存网格中存储索引,即使Lucene文件索引库过大时,也能快速的进行检索。

Description

海量文件检索方法、装置、计算机设备及存储介质
技术领域
本申请涉及文本检索技术领域,尤其涉及一种海量文件检索方法、装置、计算机设备及存储介质。
背景技术
目前中文海量全文检索的方法,用的最多的是基于Lucene内核(Lucene是一个开放源代码的全文检索引擎工具包)的Elasticsearch产品(ElasticSearch是一个基于Lucene的搜索服务器),所以Lucene固有的问题,同样存在于Elasticsearch中。当基于Lucene内核的Elasticsearch产品中,Lucene文件索引库过大时,会导致检索效率低下。
发明内容
本申请提供了一种海量文件检索方法、装置、计算机设备及存储介质,旨在解决现有技术中基于Lucene内核的中文全文检索,在Lucene文件索引库特别大的时候,导致查询效率低下的问题。
第一方面,本申请提供了一种海量文件检索方法,其包括:
获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;
若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;
若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;
获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;
若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
第二方面,本申请提供了一种海量文件检索装置,其包括:
初始文本类型判断单元,用于获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;
第一索引获取单元,用于若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;
第二索引获取单元,用于若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;
查询分词单元,用于获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;
查询结果发送单元,用于若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
第三方面,本申请又提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请提供的任一项所述的海量文件检索方法。
第四方面,本申请还提供了一种存储介质,其中所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行本申请提供的任一项所述的海量文件检索方法。
本申请提供一种海量文件检索方法、装置、计算机设备及存储介质。该方法通过获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。该方法通过分布式内存网格中存储索引,即使Lucene文件索引库过大时,也能快速的进行检索。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种海量文件检索方法的示意流程图;
图2是本申请实施例提供的一种海量文件检索方法的子流程示意图;
图3为本申请实施例提供的一种海量文件检索方法的另一子流程示意图;
图4为本申请实施例提供的一种海量文件检索方法的另一子流程示意图;
图5为本申请实施例提供的一种海量文件检索方法的另一子流程示意图;
图6为本申请实施例提供的一种海量文件检索装置的示意性框图;
图7为本申请实施例提供的一种海量文件检索装置的子单元示意性框图;
图8为本申请实施例提供的一种海量文件检索装置的另一子单元示意性框图;
图9为本申请实施例提供的一种海量文件检索装置的另一子单元示意性框图;
图10为本申请实施例提供的一种海量文件检索装置的另一子单元示意性框图;
图11为本申请实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1是本申请实施例提供的一种海量文件检索方法的示意流程图。该方法应用于服务器中。如图1所示,该方法包括步骤S101~S105。
S101、获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本。
在本实施例中,将待建立索引的初始文本输入Lucene内核的全文索引引擎时,需先判断其是中文文本,或是英文文本。其中初始文本中中文字符的占比超过90%即可视为中文文本,初始文本中英文字符的占比超过90%即可视为英文文本。通过将初始文本进行分类,能分别对中文文件创建索引,及对英文文本创建索引,能确保索引按文本类别精准分类,提高了索引建立的效率。
S102、若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储。
在本实施例中,对于英文来说,语句中单词之间是天然通过空格分开的,故可以通过单个字符串(单个字符串视为一个单词)作为索引单元也能实现精准查询。
在一实施例中,如图2所示,步骤S102包括:
S1021、根据英文分词结果创建英文索引字典,所述英文索引字典中包括的每一个单词均对应英文文本的文档编号;
S1022、将英文索引字典中包括的单词按照字典序进行排序;
S1023、将相同的单词进行合并,并将相同的单词对应的文档编号进行归集,得到第一索引。
在本实施例中,索引在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。通过第一索引,能够快速进行英文文本的全文检索。
S103、若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储。
在本实施例中,当服务器端接收了由其他终端或服务器发送的海量的中文文本作为基础数据时,服务器端需对所接收的海量中文文本进行分词后再进行存储。在数据库中若以全文的方式存储文档,则服务器端接收到检索的关键词时,不能从数据库中提取到对应的全文文档。这是因为在计算机中只能识别词语,而不能识别整句和全文。服务器端将所获取的中文文本进行分词,确保了后续检索结果的准确性。
在一实施例中,如图3所示,步骤S103包括:
S1031、按从左至右的顺序从中文文本中取出候选词;
S1032、在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;
S1033、计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;
S1034、以中文文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与中文文本所对应中文分词结果。
在本实施例中,通过基于概率统计模型的分词方法对文本数据进行分词,例如,令C=C1C2...Cm,C是待切分的汉字串,令W=W1W2...Wn,W是切分的结果,Wa,Wb,….Wk是C的所有可能的切分方案。那么,基于概率统计的切分模型就是能够找到目的词串W,使得W满足:P(W|C)=MAX(P(Wa|C),P(Wb|C)...P(Wk|C))的分词模型,上述分词模型得到的词串W即估计概率为最大之词串。
即对一个待分词的子串S,按照从左到右的顺序取出全部候选词w1、w2、…、wi、…、wn;获取文本中可能出现的所有词作为候选词,但要满足下列条件,即如果是长度大于1的词,则必须在词典中出现;如果是长度等于1,即为单字,可以不在词典中出现(例如对“有意见分歧”,从左到右进行一遍扫描,得到全部候选词:“有”,“有意”,“意见”,“见”,“分歧”);在词典中查出每个候选词的概率值P(wi),并记录每个候选词的全部左邻词;计算每个候选词的累积概率,同时比较得到每个候选词的最佳左邻词;如果当前词wn是字串S的尾词,且累积概率P(wn)最大,则wn就是S的终点词;从wn开始,按照从右到左顺序,依次将每个词的最佳左邻词输出,即S的分词结果。
在一实施例中,如图4所示,步骤S103还包括:
S1035、根据中文分词结果创建中文索引字典,所述中文索引字典中包括的每一个词语均对应中文文本的文档编号;
S1036、将中文索引字典中包括的词语按照字典序进行排序;
S1037、将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到第二索引。
在本实施例中,在根据分词结果创建索引时,该索引是初次创建时需要一定时间来完成,但是创建索引后,后续的全文检索即可通过索引来实现,无需再次进行全文扫描以完成检索(也即实现了一次索引的初始创建,方便后续的多次使用)。
在本实施例中,分词结果是由多个待分词的中文文本对应的子分词结果组成,例如有N篇待分词的中文文本(N为正整数),分别记为第1篇待分词的中文文本-第N篇待分词的中文文本,第1篇待分词的中文文本对应的分词结果集合记为第1子分词结果,第1子分词结果中每一词所对应的文档编号为1,第2篇待分词的中文文本对应的分词结果集合记为第2子分词结果,第2子分词结果中每一词所对应的文档编号为2,……,第N篇待分词的中文文本对应的分词结果集合记为第N子分词结果,第N子分词结果中每一词所对应的文档编号为N。在根据分词结果创建索引时,通过以下过程实现:
11)利用得到的分词结果创建一个索引字典;
例如,所创建的索引字典如下表:
表1
其中文档编号表示当前词在第N篇文档中出现。“今天”这个词在第1篇文档中出现,故表1中“今天”这个词的文档编号记为1。同样的,若“今天”这个词在其他文档编号的文本中出现,则“今天”这个词则对应多个文档编号。即在索引字典的建立过程中,是逐篇将各子分词结果依次填充至字典中。
12)将索引字典中包括的词语按照字典序进行排序;
例如,今天的拼音首字母是J,朋友的拼音首字母是P,字典序中J在P之前,故将“今天”排在“朋友”之前。
13)将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到索引。
即索引(索引可以视为一个目录)中包括多个索引项(例如表1中的每个词和该词对应的文档编号可视为一个索引项,每一索引项),每一索引项与其他索引项不存在重复的情况。
在11)中建立的如表1的索引字典是一未经去重及合并处理的初始化索引,此时将索引字典中相同的词语进行合并,并将相同的词语对应的文档编号进行统一编排,将相同的词语对应的文档编号均作为该词语的文档编号集合,例如表1中整理后对应得到的索引如表2:
文档编号
吃饭 2
今天 1
朋友 1,2
天气 1
…… ……
表2
通过创建索引,能在用户输入查询语句时,快速根据查询语句得到用户所需要的中文文本。即中文文本、及分词结果均与索引有映射关系,即索引——(中文文本,分词结果)。若用户输入某一关键词能在分词结果中内被检索到,则根据与分词结果对应的索引来快速查询到中文文本,从而实现了中文海量全文检索。
对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引的过程也可以参考上述根据中文分词结果建立第二索引的过程。
S104、获取客户端所发送的查询语句,将查询语句进行分词得到查询分词。
在本实施例中,用户在客户端(台式电脑、平板电脑、手提电脑等终端)上的检索引擎对应的UI界面上输入查询语句(UI界面上输入查询语句可以是通过用户端的键盘录入,也可以是语音输入等文本录入方式),该查询语句为一整句中文语句或是由几个关键词组成的中文语句,或是一整句英文,或是由几个英文单词组成的关键词语句。服务器端获取了客户端所发送的查询语句后,采取与对待分词的中文文本或对待分词的英文文本相同的分词方法进行分词,得到查询分词,以查询分词作为为关键词发起后续的文本查询。将查询语句进行分词,也是为了确保计算机能识别查询语句对应的查询分词,以完成后续的文本查询。
S105、若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
在本实施例中,第一索引或第二索引中包括多个索引项(索引项可以理解为表1中的词)。由于用户所录入查询语句中包括的查询分词,根据索引项的对应关系,查询到一篇或多篇中文文本或英文文本都存在这些查询分词,此时可通过列表的方式来展示中文文本或英文文本的查询结果,以供用户在中文文本或英文文本的查询结果中选择所需要的最终结果。这一展示过程类似于百度搜索,但是本申请中对文本数据的存储方式,以及建立索引的方式与百度搜索是不同的。
在一实施例中,如图5所示,步骤S105包括:
S1051、获取查询结果中查询分词对应的词语频次;
S1052、根据查询分词的词语频次对查询结果进行降序排序,得到降序排序结果;
S1053、将降序排序结果发送至客户端。
本实施例中,当在服务器端根据查询分词在索引中查询到对应的索引项后,为了将查询结果按照一定规则进行展示,此时可设定通过词频的降序方式对查询结果进行排序。影响一个词在一篇中文文本中的重要性主要有以下因素:Term Frequency(tf),即此词在此中文文本中出现了多少次,tf越大说明越重要。通过上述方式,实现了对查询结果的快速排序。
可见,该方法通过分布式内存网格中存储索引,即使Lucene文件索引库过大时,也能快速的进行检索。
本申请实施例还提供一种海量文件检索装置,该海量文件检索装置用于执行前述海量文件检索方法的任一实施例。具体地,请参阅图6,图6是本申请实施例提供的一种海量文件检索装置的示意性框图。海量文件检索装置100可以配置于服务器中。
如图6所示,海量文件检索装置100包括初始文本类型判断单元101、第一索引获取单元102、第二索引获取单元103、查询分词单元104、及查询结果发送单元105。
初始文本类型判断单元101,用于获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本。
在本实施例中,将待建立索引的初始文本输入Lucene内核的全文索引引擎时,需先判断其是中文文本,或是英文文本。其中初始文本中中文字符的占比超过90%即可视为中文文本,初始文本中英文字符的占比超过90%即可视为英文文本。通过将初始文本进行分类,能分别对中文文件创建索引,及对英文文本创建索引,能确保索引按文本类别精准分类,提高了索引建立的效率。
第一索引获取单元102,用于若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储。
在本实施例中,对于英文来说,语句中单词之间是天然通过空格分开的,故可以通过单个字符串(单个字符串视为一个单词)作为索引单元也能实现精准查询。
在一实施例中,如图7所示,第一索引获取单元102包括:
第一索引字典创建单元1021,用于根据英文分词结果创建英文索引字典,所述英文索引字典中包括的每一个单词均对应英文文本的文档编号;
第一字典序序排序单元1022,用于将英文索引字典中包括的单词按照字典序进行排序;
第一合并归集单元1023,用于将相同的单词进行合并,并将相同的单词对应的文档编号进行归集,得到第一索引。
在本实施例中,索引在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。通过第一索引,能够快速进行英文文本的全文检索。
第二索引获取单元103,用于若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储。
在本实施例中,当服务器端接收了由其他终端或服务器发送的海量的中文文本作为基础数据时,服务器端需对所接收的海量中文文本进行分词后再进行存储。在数据库中若以全文的方式存储文档,则服务器端接收到检索的关键词时,不能从数据库中提取到对应的全文文档。这是因为在计算机中只能识别词语,而不能识别整句和全文。服务器端将所获取的中文文本进行分词,确保了后续检索结果的准确性。
在一实施例中,如图8所示,第二索引获取单元103包括:
候选词选取单元1031,用于按从左至右的顺序从中文文本中取出候选词;
初始左邻词获取单元1032,用于在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;
最佳左邻词选取单元1033,用于计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;
分词结果输出单元1034,用于以中文文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与中文文本所对应中文分词结果。
在本实施例中,通过基于概率统计模型的分词方法对文本数据进行分词,例如,令C=C1C2...Cm,C是待切分的汉字串,令W=W1W2...Wn,W是切分的结果,Wa,Wb,….Wk是C的所有可能的切分方案。那么,基于概率统计的切分模型就是能够找到目的词串W,使得W满足:P(W|C)=MAX(P(Wa|C),P(Wb|C)...P(Wk|C))的分词模型,上述分词模型得到的词串W即估计概率为最大之词串。
即对一个待分词的子串S,按照从左到右的顺序取出全部候选词w1、w2、…、wi、…、wn;获取文本中可能出现的所有词作为候选词,但要满足下列条件,即如果是长度大于1的词,则必须在词典中出现;如果是长度等于1,即为单字,可以不在词典中出现(例如对“有意见分歧”,从左到右进行一遍扫描,得到全部候选词:“有”,“有意”,“意见”,“见”,“分歧”);在词典中查出每个候选词的概率值P(wi),并记录每个候选词的全部左邻词;计算每个候选词的累积概率,同时比较得到每个候选词的最佳左邻词;如果当前词wn是字串S的尾词,且累积概率P(wn)最大,则wn就是S的终点词;从wn开始,按照从右到左顺序,依次将每个词的最佳左邻词输出,即S的分词结果。
在一实施例中,如图9所示,第二索引获取单元103还包括:
第二索引字典创建单元1035,用于根据中文分词结果创建中文索引字典,所述中文索引字典中包括的每一个词语均对应中文文本的文档编号;
第二字典序序排序单元1036,用于将中文索引字典中包括的词语按照字典序进行排序;
第二合并归集单元1037,用于将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到第二索引。
在本实施例中,在根据分词结果创建索引时,该索引是初次创建时需要一定时间来完成,但是创建索引后,后续的全文检索即可通过索引来实现,无需再次进行全文扫描以完成检索(也即实现了一次索引的初始创建,方便后续的多次使用)。
通过创建索引,能在用户输入查询语句时,快速根据查询语句得到用户所需要的中文文本。即中文文本、及分词结果均与索引有映射关系,即索引——(中文文本,分词结果)。若用户输入某一关键词能在分词结果中内被检索到,则根据与分词结果对应的索引来快速查询到中文文本,从而实现了中文海量全文检索。
对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引的过程也可以参考上述根据中文分词结果建立第二索引的过程。
查询分词单元104,用于获取客户端所发送的查询语句,将查询语句进行分词得到查询分词。
在本实施例中,用户在客户端(台式电脑、平板电脑、手提电脑等终端)上的检索引擎对应的UI界面上输入查询语句(UI界面上输入查询语句可以是通过用户端的键盘录入,也可以是语音输入等文本录入方式),该查询语句为一整句中文语句或是由几个关键词组成的中文语句,或是一整句英文,或是由几个英文单词组成的关键词语句。服务器端获取了客户端所发送的查询语句后,采取与对待分词的中文文本或对待分词的英文文本相同的分词方法进行分词,得到查询分词,以查询分词作为为关键词发起后续的文本查询。将查询语句进行分词,也是为了确保计算机能识别查询语句对应的查询分词,以完成后续的文本查询。
查询结果发送单元105,用于若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
在本实施例中,第一索引或第二索引中包括多个索引项(索引项可以理解为表1中的词)。由于用户所录入查询语句中包括的查询分词,根据索引项的对应关系,查询到一篇或多篇中文文本或英文文本都存在这些查询分词,此时可通过列表的方式来展示中文文本或英文文本的查询结果,以供用户在中文文本或英文文本的查询结果中选择所需要的最终结果。这一展示过程类似于百度搜索,但是本申请中对文本数据的存储方式,以及建立索引的方式与百度搜索是不同的。
在一实施例中,如图10所示,查询结果发送单元105包括:
词语频次获取单元1051,用于获取查询结果中查询分词对应的词语频次;
降序排列单元1052,用于根据查询分词的词语频次对查询结果进行降序排序,得到降序排序结果;
降序结果发送单元1053,用于将降序排序结果发送至客户端。
本实施例中,当在服务器端根据查询分词在索引中查询到对应的索引项后,为了将查询结果按照一定规则进行展示,此时可设定通过词频的降序方式对查询结果进行排序。影响一个词在一篇中文文本中的重要性主要有以下因素:Term Frequency(tf),即此词在此中文文本中出现了多少次,tf越大说明越重要。通过上述方式,实现了对查询结果的快速排序。
可见,该装置通过分布式内存网格中存储索引,即使Lucene文件索引库过大时,也能快速的进行检索。
上述海量文件检索装置可以实现为一种计算机程序的形式,该计算机程序可以在如图11所示的计算机设备上运行。
请参阅图11,图11是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500设备可以是服务器。
参阅图11,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种海量文件检索方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种海量文件检索方法。
该网络接口505用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下功能:获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
在一实施例中,处理器502还执行如下操作:根据英文分词结果创建英文索引字典,所述英文索引字典中包括的每一个单词均对应英文文本的文档编号;将英文索引字典中包括的单词按照字典序进行排序;将相同的单词进行合并,并将相同的单词对应的文档编号进行归集,得到第一索引。
在一实施例中,处理器502还执行如下操作:按从左至右的顺序从中文文本中取出候选词;在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;以中文文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与中文文本所对应中文分词结果。
在一实施例中,处理器502还执行如下操作:根据中文分词结果创建中文索引字典,所述中文索引字典中包括的每一个词语均对应中文文本的文档编号;将中文索引字典中包括的词语按照字典序进行排序;将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到第二索引。
在一实施例中,处理器502还执行如下操作:获取查询结果中查询分词对应的词语频次;根据查询分词的词语频次对查询结果进行降序排序,得到降序排序结果;将降序排序结果发送至客户端。
本领域技术人员可以理解,图11中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图11所示实施例一致,在此不再赘述。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本申请的另一实施例中提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时实现:获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
在一实施例中,该程序指令被处理器执行时实现:根据英文分词结果创建英文索引字典,所述英文索引字典中包括的每一个单词均对应英文文本的文档编号;将英文索引字典中包括的单词按照字典序进行排序;将相同的单词进行合并,并将相同的单词对应的文档编号进行归集,得到第一索引。
在一实施例中,该程序指令被处理器执行时实现:按从左至右的顺序从中文文本中取出候选词;在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;以中文文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与中文文本所对应中文分词结果。
在一实施例中,该程序指令被处理器执行时实现:根据中文分词结果创建中文索引字典,所述中文索引字典中包括的每一个词语均对应中文文本的文档编号;将中文索引字典中包括的词语按照字典序进行排序;将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到第二索引。
在一实施例中,该程序指令被处理器执行时实现:获取查询结果中查询分词对应的词语频次;根据查询分词的词语频次对查询结果进行降序排序,得到降序排序结果;将降序排序结果发送至客户端。
所述存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种海量文件检索方法,其特征在于,包括:
获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;
若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;
若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;
获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;
若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
2.根据权利要求1所述的海量文件检索方法,其特征在于,所述根据英文分词结果建立第一索引,包括:
根据英文分词结果创建英文索引字典,所述英文索引字典中包括的每一个单词均对应英文文本的文档编号;
将英文索引字典中包括的单词按照字典序进行排序;
将相同的单词进行合并,并将相同的单词对应的文档编号进行归集,得到第一索引。
3.根据权利要求1所述的海量文件检索方法,其特征在于,所述对中文文本进行分词得到中文分词结果,包括:
按从左至右的顺序从中文文本中取出候选词;
在预先存储的词典中查询与每一候选词对应的概率值,并记录每一候选词的左邻词;
计算获取每一候选词的累积概率,及每一候选词的多个左邻词的累积概率,若每一候选词的多个左邻词中存在累积概率为多个左邻词的累积概率中最大值的左邻词,将累积概率中最大值的左邻词作为与候选词对应的最佳左邻词;
以中文文本的终点词为起点,从右至左依次输出与每一候选词对应的最佳左邻词,得到与中文文本所对应中文分词结果。
4.根据权利要求1所述的海量文件检索方法,其特征在于,所述根据中文分词结果建立第二索引,包括:
根据中文分词结果创建中文索引字典,所述中文索引字典中包括的每一个词语均对应中文文本的文档编号;
将中文索引字典中包括的词语按照字典序进行排序;
将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到第二索引。
5.根据权利要求1所述的海量文件检索方法,其特征在于,所述获取索引项对应的查询结果并发送至客户端,包括:
获取查询结果中查询分词对应的词语频次;
根据查询分词的词语频次对查询结果进行降序排序,得到降序排序结果;
将降序排序结果发送至客户端。
6.一种海量文件检索装置,其特征在于,包括:
初始文本类型判断单元,用于获取待建立索引的初始文本,判断初始文本是中文文本,或者是英文文本;
第一索引获取单元,用于若初始文本是英文文本,对英文文本进行分词得到英文分词结果,根据英文分词结果建立第一索引,将第一索引发送至预选建立的分布式内存网格中进行存储;
第二索引获取单元,用于若初始文本是中文文本,对中文文本进行分词得到中文分词结果,根据中文分词结果建立第二索引,将第二索引发送至所述分布式内存网格中进行存储;
查询分词单元,用于获取客户端所发送的查询语句,将查询语句进行分词得到查询分词;
查询结果发送单元,用于若第一索引或第二索引中存在与查询分词对应的索引项,获取索引项对应的查询结果并发送至客户端。
7.根据权利要求6所述的海量文件检索装置,其特征在于,所述第一索引获取单元,包括:
第一索引字典创建单元,用于根据英文分词结果创建英文索引字典,所述英文索引字典中包括的每一个单词均对应英文文本的文档编号;
第一字典序序排序单元,用于将英文索引字典中包括的单词按照字典序进行排序;
第一合并归集单元,用于将相同的单词进行合并,并将相同的单词对应的文档编号进行归集,得到第一索引。
8.根据权利要求6所述的海量文件检索装置,其特征在于,所述第二索引获取单元,包括:
第二索引字典创建单元,用于根据中文分词结果创建中文索引字典,所述中文索引字典中包括的每一个词语均对应中文文本的文档编号;
第二字典序序排序单元,用于将中文索引字典中包括的词语按照字典序进行排序;
第二合并归集单元,用于将相同的词语进行合并,并将相同的词语对应的文档编号进行归集,得到第二索引。
9.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5中任一项所述的海量文件检索方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-5任一项所述的海量文件检索方法。
CN201810574127.2A 2018-06-05 2018-06-05 海量文件检索方法、装置、计算机设备及存储介质 Pending CN108874956A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810574127.2A CN108874956A (zh) 2018-06-05 2018-06-05 海量文件检索方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810574127.2A CN108874956A (zh) 2018-06-05 2018-06-05 海量文件检索方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN108874956A true CN108874956A (zh) 2018-11-23

Family

ID=64337056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810574127.2A Pending CN108874956A (zh) 2018-06-05 2018-06-05 海量文件检索方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN108874956A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783444A (zh) * 2018-12-26 2019-05-21 亚信科技(中国)有限公司 多通道文件索引方法、装置、计算机设备和存储介质
CN110096478A (zh) * 2019-05-09 2019-08-06 中国联合网络通信集团有限公司 文档索引生成方法及设备
CN110851543A (zh) * 2019-11-08 2020-02-28 深圳市彬讯科技有限公司 一种数据建模的方法、装置、设备以及存储介质
CN110866091A (zh) * 2019-11-19 2020-03-06 杭州数梦工场科技有限公司 一种数据检索方法及装置
CN110909128A (zh) * 2019-11-08 2020-03-24 深圳市彬讯科技有限公司 一种利用词根表进行数据查询的方法、设备、及存储介质
CN113127421A (zh) * 2021-04-01 2021-07-16 山东英信计算机技术有限公司 一种存储系统检索文件内容的方法和设备
CN113779197A (zh) * 2021-09-09 2021-12-10 中国电子科技集团公司信息科学研究院 一种数据集搜索方法、装置、存储介质及终端
CN114937269A (zh) * 2022-05-05 2022-08-23 交通运输部水运科学研究所 一种基于英文和汉字联合的船舶号牌识别方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101600023A (zh) * 2009-06-30 2009-12-09 中兴通讯股份有限公司 终端短信息搜索方法及其装置
EP2506159A1 (en) * 2011-04-01 2012-10-03 Deutsche Telekom AG Method for providing multimedia related information to a plurality of users, method for updating at least one index file, system for providing multimedia related information to a plurality of users, program, and computer program product
CN102915365A (zh) * 2012-10-24 2013-02-06 苏州两江科技有限公司 基于Hadoop的分布式搜索引擎构建方法
CN103412933A (zh) * 2013-08-20 2013-11-27 南京物联网应用研究院有限公司 一种云搜索平台
CN106610937A (zh) * 2016-09-19 2017-05-03 四川用联信息技术有限公司 一种基于信息论的中文自动分词算法
CN107038225A (zh) * 2017-03-31 2017-08-11 江苏飞搏软件股份有限公司 信息智能检索系统的检索方法
CN107561564A (zh) * 2017-09-08 2018-01-09 广州祺智通信科技股份有限公司 一种北斗卫星信息传输的压缩实现方法
CN107818130A (zh) * 2017-09-15 2018-03-20 深圳市电陶思创科技有限公司 一种搜索引擎的建立方法及系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101600023A (zh) * 2009-06-30 2009-12-09 中兴通讯股份有限公司 终端短信息搜索方法及其装置
EP2506159A1 (en) * 2011-04-01 2012-10-03 Deutsche Telekom AG Method for providing multimedia related information to a plurality of users, method for updating at least one index file, system for providing multimedia related information to a plurality of users, program, and computer program product
CN102915365A (zh) * 2012-10-24 2013-02-06 苏州两江科技有限公司 基于Hadoop的分布式搜索引擎构建方法
CN103412933A (zh) * 2013-08-20 2013-11-27 南京物联网应用研究院有限公司 一种云搜索平台
CN106610937A (zh) * 2016-09-19 2017-05-03 四川用联信息技术有限公司 一种基于信息论的中文自动分词算法
CN107038225A (zh) * 2017-03-31 2017-08-11 江苏飞搏软件股份有限公司 信息智能检索系统的检索方法
CN107561564A (zh) * 2017-09-08 2018-01-09 广州祺智通信科技股份有限公司 一种北斗卫星信息传输的压缩实现方法
CN107818130A (zh) * 2017-09-15 2018-03-20 深圳市电陶思创科技有限公司 一种搜索引擎的建立方法及系统

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783444A (zh) * 2018-12-26 2019-05-21 亚信科技(中国)有限公司 多通道文件索引方法、装置、计算机设备和存储介质
CN110096478A (zh) * 2019-05-09 2019-08-06 中国联合网络通信集团有限公司 文档索引生成方法及设备
CN110851543A (zh) * 2019-11-08 2020-02-28 深圳市彬讯科技有限公司 一种数据建模的方法、装置、设备以及存储介质
CN110909128A (zh) * 2019-11-08 2020-03-24 深圳市彬讯科技有限公司 一种利用词根表进行数据查询的方法、设备、及存储介质
CN110909128B (zh) * 2019-11-08 2023-08-11 土巴兔集团股份有限公司 一种利用词根表进行数据查询的方法、设备、及存储介质
CN110866091A (zh) * 2019-11-19 2020-03-06 杭州数梦工场科技有限公司 一种数据检索方法及装置
CN110866091B (zh) * 2019-11-19 2023-07-11 杭州数梦工场科技有限公司 一种数据检索方法及装置
CN113127421A (zh) * 2021-04-01 2021-07-16 山东英信计算机技术有限公司 一种存储系统检索文件内容的方法和设备
CN113779197A (zh) * 2021-09-09 2021-12-10 中国电子科技集团公司信息科学研究院 一种数据集搜索方法、装置、存储介质及终端
CN113779197B (zh) * 2021-09-09 2023-07-04 中国电子科技集团公司信息科学研究院 一种数据集搜索方法、装置、存储介质及终端
CN114937269A (zh) * 2022-05-05 2022-08-23 交通运输部水运科学研究所 一种基于英文和汉字联合的船舶号牌识别方法及系统
CN114937269B (zh) * 2022-05-05 2023-01-24 交通运输部水运科学研究所 一种基于英文和汉字联合的船舶号牌识别方法及系统

Similar Documents

Publication Publication Date Title
CN108874956A (zh) 海量文件检索方法、装置、计算机设备及存储介质
CN108804642A (zh) 检索方法、装置、计算机设备及存储介质
US10579661B2 (en) System and method for machine learning and classifying data
JP6231668B2 (ja) キーワード拡張方法及びシステム並びに分類コーパス注釈方法及びシステム
CN107992477B (zh) 文本主题确定方法及装置
US20080059512A1 (en) Identifying Related Objects Using Quantum Clustering
CN108647322B (zh) 基于词网识别大量Web文本信息相似度的方法
CN108399227A (zh) 自动打标签的方法、装置、计算机设备及存储介质
CN106547864B (zh) 一种基于查询扩展的个性化信息检索方法
Crabtree et al. Improving web clustering by cluster selection
WO2022160454A1 (zh) 医疗文献的检索方法、装置、电子设备及存储介质
Noaman et al. Naive Bayes classifier based Arabic document categorization
CN108875065B (zh) 一种基于内容的印尼新闻网页推荐方法
CN107844493B (zh) 一种文件关联方法及系统
US20190121905A1 (en) Identifying categories within textual data
Ahmed et al. Revised n-gram based automatic spelling correction tool to improve retrieval effectiveness
US9552415B2 (en) Category classification processing device and method
CN110134970B (zh) 标题纠错方法和装置
CN111259660A (zh) 基于文本对的关键词抽取方法、装置、设备及存储介质
CN109885651B (zh) 一种问题推送方法和装置
Bahassine et al. Arabic text classification using new stemmer for feature selection and decision trees
CN105159927B (zh) 目标文本主题词的选取方法、装置及终端
CN105653553B (zh) 词权重生成方法和装置
US20150227515A1 (en) Robust stream filtering based on reference document
JP5869948B2 (ja) パッセージ分割方法、装置、及びプログラム

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20181123