The invention discloses a chemical molecular retrieval method based on ES inverted index. The retrieval process is redesigned in combination with a large data platform. Firstly, the inverted index is established through the sub-structure obtained by partitioning the molecular formula in ES database, and the hash representation of the molecular formula in ES database is calculated; when searching, the sub-structure is obtained by partitioning the molecular formula and calculating. Hash representation uses inverted index to get the set of molecular formulas with substructure matching, and then compares it with the hash representation of the set of molecular formulas one by one. The similarity between the input molecular formulas and each molecular formula in the set of molecular formulas is obtained, and the retrieval results are output according to the application needs. The comparison range of the present invention is a set of molecular formulas, not all the molecular formulas in the database, which reduces the number of comparisons and further speeds up the retrieval of molecular formulas.
【技术实现步骤摘要】
一种基于es倒排索引的化学分子式检索方法
本专利技术属于信息检索领域,尤其涉及一种基于es倒排索引的化学分子式检索方法。
技术介绍
化学结构式(分子式)检索主要用在化学品的搜索中,对于拥有海量化学品的企业和研究机构,快速准确地检索到分子式对于生产和研究具有重要的价值。现有的化学分子式检索方法没有基于大数据平台,没有利用es数据库的倒排索引,化学分子式检索方法通常通过计算分子式的哈希表示来加速检索过程,虽然进行了加速,但这一过程仍然需要与数据库中全部的分子式进行一一比较来实现检索,加速效果有限。
技术实现思路
本专利技术在现有的分子式检索方法基础上,结合es(elasticsearch)的倒排索引技术,提出了一种在大数据平台下的检索方法,进一步加快了检索速度。本专利技术的目的是通过以下技术方案来实现的:一种基于es倒排索引的化学分子式检索方法,包括以下步骤:步骤1:对es数据库中的分子式建立倒排索引和哈希表示,具体为:1.1对es数据库中的每个分子式进行分词,得到分子式的子结构集合,子结构集合包含2个以上用化学键相连的原子,或单个的除常用原子以外的原子;1.2去掉子结构集合中的相同子结构;1.3把分子式得到的一系列子结构哈希映射到一个由32位整数组成的数组上,得到分子式的哈希表示;分子式得到的一系列子结构作为分子式的索引,建立es数据库中所有分子式的倒排索引。步骤2:检索过程,具体为:2.1检索时对输入的分子式进行分词,得到分子式的子结构集合,计算分子式的哈希表示;2.2用子结构集合在倒排索引中查找匹配项,即查找包含子结构集合中任一子结构的分子式,得到es数据库 ...
【技术保护点】
1.一种基于es倒排索引的化学分子式检索方法,其特征在于,包括以下步骤:步骤1:对es数据库中的分子式建立倒排索引和哈希表示,具体为:1.1对es数据库中的每个分子式进行分词,得到分子式的子结构集合,子结构集合包含2个以上用化学键相连的原子,或单个的除常用原子以外的原子;1.2去掉子结构集合中的相同子结构;1.3把分子式得到的一系列子结构哈希映射到一个由32位整数组成的数组上,得到分子式的哈希表示;分子式得到的一系列子结构作为分子式的索引,建立es数据库中所有分子式的倒排索引。步骤2:检索过程,具体为:2.1检索时对输入的分子式进行分词,得到分子式的子结构集合,计算分子式的哈希表示;2.2用子结构集合在倒排索引中查找匹配项,即查找包含子结构集合中任一子结构的分子式,得到es数据库中匹配的分子式集合T;2.3用输入分子式的哈希表示,与得到的分子式集合T对应的哈希表示一一比较,得到输入分子式与分子式集合T中每个分子式之间的相似度;2.4根据输入分子式与分子式集合T中每个分子式的相似度,按照应用需要,输出T中相似度大于阈值的分子式,或按照相似度从大到小排列,输出前n个最相似的分子式。
【技术特征摘要】
1.一种基于es倒排索引的化学分子式检索方法,其特征在于,包括以下步骤:步骤1:对es数据库中的分子式建立倒排索引和哈希表示,具体为:1.1对es数据库中的每个分子式进行分词,得到分子式的子结构集合,子结构集合包含2个以上用化学键相连的原子,或单个的除常用原子以外的原子;1.2去掉子结构集合中的相同子结构;1.3把分子式得到的一系列子结构哈希映射到一个由32位整数组成的数组上,得到分子式的哈希表示;分子式得到的一系列子结构作为分子式的索引,建立es数据库中所有分子式的倒排索引。步骤2:检索过程,具体为:2.1检索时对输入的分子式进行分词,得到分子式的子结构集合,计算分子式的哈希表示;2.2用子结构集合在倒排索引中查找匹配项,即查找包含子结构集合中任一子结构的分子式,得到es数据库中匹配的分子式集合T;2.3用输入分子式的哈希表示,与得到的分子式集合T对应的哈希表示一一比较,得到输入分子式与分子式集合T中每个分子式之间的相似度;2.4根据输入分子式与分子式集合T中每个分子式的相似度,按照应用需要,输出T中相似度大于阈值的分子式,或按照相似度从大到小排列,输出前n个最相似的分子式。2.根据权利要求1所述的一种基于es倒排索引的化学分子式检索方法,其特征在于,所述步骤1中,所述子结构的形成具体为:子结构是通过遍历分子式的原子树形成的,即依次从每一个原子A开始向前、向后遍历,将遍历到的全部原子、化学...
【专利技术属性】
技术研发人员:杨红飞,
申请(专利权)人:杭州费尔斯通科技有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。