主权项 |
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对所应得属性树,并在其中查找对应的属性值,再根据属性值描述进行范围筛选,并将筛选出来的结果对象存入集合之中,然后进行下一轮属性值的查找和筛选,并与结果集合作相交运算,直到找到最终的对象。 |