发明名称 一种基于扩展Tag云的高效数据查找方法
摘要 本发明公开了一种基于扩展Tag云的高效数据查找方法。本发明基于稀疏矩阵实现算法采用了链表,由于链表只能容纳数据,无法提供搜索和定位的功能,通过hash表和AVL树相结合的方式,对链表进行了改造,从而支持了数据的快速定位,并提供了搜索支持。本发明将Tag从普通标签,转变成可以赋值的容器。从而标签不仅仅提供了分类的作用,还可以容纳一定的信息。并且通过这个信息提供更为具体的定位作用。
申请公布号 CN101430713A 申请公布日期 2009.05.13
申请号 CN200810236120.6 申请日期 2008.11.24
申请人 南京大学 发明人 吕 琦;李文中;陆桑璐;陈道蓄
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 南京苏高专利商标事务所(普通合伙) 代理人 柏尚春
主权项 1、一种基于扩展Tag云的高效数据查找方法,其特征在于包括以下步骤:1)对象存储数据结构的建立:首先建立对象存储的数据结构,该数据结构的行数据组织采用hash表,而纵数据组织采用AVL树;2)插入数据:获取插入对象的一系列属性值,查找已存在的属性树,并将属性值插入属性树,对不存在的属性树则创建之,最后将对象与所有的属性树中的值关联在一起,形成十字链表的横向,而每个属性树则对应十字链表的纵向;3)针对Tag对进行查找:通过下面描述的BNF格式对查找指令进行解析获得语义,包括属性树以及属性值描述;BNF格式的Tag云的语法:Tags::=[LogicOP2]Tag[LogicOP1[LogicOP2]Tag]Tag::=Letter|ExpressionsLetter::=″A″...″Z″|″a″..″z″Digit::=″0″. .″9″Expression::=Letter 0p ValueValue::=String|NumberString::=″Letter*″Number::=Non_Zero Digit*|″0″Non_Zero::=″1″..″9″Op::=″==″|″<=″|″<″|″>″|″>=″|″=″LogicOP1::=″and″|″or″LogicOP2::=″not″随后获得每一个Tag对所应得属性树,并在其中查找对应的属性值,再根据属性值描述进行范围筛选,并将筛选出来的结果对象存入集合之中,然后进行下一轮属性值的查找和筛选,并与结果集合作相交运算,直到找到最终的对象。
地址 210093江苏省南京市汉口路22号