发明名称 一种串数据词典的有序构造及检索方法
摘要 一种串数据词典的有序构造及检索方法,本发明包括:S1、将串数据逐一输入到一个临时迸发树中;S2、当临时迸发树中数据量达到阈值条件时,将其合并入最终迸发树中;S3、将最终迸发树转换为六元组结构有限状态转换器;S4、将六元组结构有限状态转换器编译为三数组结构形式;S5、根据应用需求,利用编译后的三数组结构有限状态转换器实现对数据词典的检索或顺序遍历。利用本发明,能够对上千万数据项进行高效的词典构造,同时满足不同环境和应用中的检索需求。
申请公布号 CN103761270B 申请公布日期 2017.02.01
申请号 CN201410006131.0 申请日期 2014.01.06
申请人 大连理工大学 发明人 马云龙;林鸿飞
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 大连星海专利事务所 21208 代理人 徐雪莲
主权项 一种串数据词典的有序构造及检索方法,其特征在于,包括以下步骤:S1、将串数据逐一输入到临时迸发树中:通过数据采集系统采集到的文档集合进行处理并读取其中的串数据,根据串数据中的字节序列创建临时迸发树并将其初始化,将串数据逐一输入到初始化状态的临时迸发树中并将其更新;S2、将临时迸发树合并入最终迸发树:预先创建空的最终迸发树,当临时迸发树中的串数据量达到阈值条件时,将临时迸发树中的串数据合并入最终迸发树中;此时,若文档集合中尚有未处理的串数据,则将临时迸发树中的内容清空,将未处理的串数据按照S1步骤输入到临时迸发树中;若文档集合中的所有串数据均处理完毕,则将临时迸发树及其内部数据全部释放;S3、将最终迸发树转换为六元组结构有限状态转换器:按词典顺序遍历最终迸发树的各个节点,对于最终迸发树的每个分支所表示的词典条目首先将其分支最末端节点所存储的统计数据保存至外存并记录其外存地址,将各分支对应的字节序列作为键而将所述外存地址作为值,并以键值对的形式添加入有限状态转换器中,最后判断有限状态转换器中的键值对数据是否满足保存条件,若满足保存条件则以六元组的形式保存并继续遍历;所述六元组由字节内容、同父状态序号、子状态数量、首个子状态序号、状态输出值、是否为终止状态组成;S4、将六元组结构有限状态转换器构造成为三数组结构有限状态转换器:遍历六元组有限状态转换器中的键值对数据,将六元组有限状态转换器编译为以三数组为主配合辅助表的数据结构存储,所述三数组由基地址数组、状态输入数组和同源状态数组组成;所述辅助表为不同字节输入对应的内码表、子状态表和状态输出表,其中,内码表由对所述六元组中字节内容进行顺序编码而获得,所述子状态表由所述六元组中的首个子状态号获得,状态输出表由所述六元组中的状态输出值和是否为终止状态内容获得;S5、根据应用需求,利用编译后的三数组结构有限状态转换器对数据词典做检索或顺序遍历:在对串数据进行检索时,将查询串的字节序列依次作为输入变量,参照内码表及状态输出表中当前输入变量的内码以及当前状态序号在基地址数组中寻找后续状态,循环操作直至可判断该状态是否存在,并读取状态输出表将循环中所有状态输出值的和输出;在遍历需求应用中,利用路径状态栈,通过同源状态数组和各辅助表中数据在基地址数组中进行词典顺序寻址,并配合状态输出表,完成词典顺序遍历。
地址 116023 辽宁省大连市高新园区凌工路2号