一种处理数据的方法和装置制造方法及图纸

技术编号:37348624 阅读:11 留言:0更新日期:2023-04-22 21:45
本发明专利技术公开了一种处理数据的方法和装置,涉及大数据技术领域。该方法的一具体实施方式包括:能够响应于数据处理请求,从预先设置的多种类型的索引树中,确定与数据包含的索引字段匹配的索引树,其中每一种索引树存储于堆外内存中,索引树中各个节点的节点信息包括自身节点信息以及关联节点;根据所述索引树中各个节点包括的字段值,定位到所述数据处理请求包括的待处理的字段值所对应的一个或多个目标节点;通过目标节点定位数据源中的数据并对定位到的数据进行处理。本发明专利技术的实施例提高了数据处理的稳定性和效率,提升了用户体验。提升了用户体验。提升了用户体验。

【技术实现步骤摘要】
一种处理数据的方法和装置


[0001]本专利技术涉及大数据
,尤其涉及一种处理数据的方法和装置。

技术介绍

[0002]目前大数据技术广泛应用于互联网应用中,随着互联网应用包含的业务类型越多越多、越来越复杂,对数据处理的复杂度的要求也越来越高。
[0003]现有技术中主要是基于SQL语句从数据源中直接查询或处理数据,当高频访问数据时,由于网络时延会导致性能损耗较大;在将数据放入到本地内存中时,数据量过大会可能影响应用的垃圾回收导致性能衰退,并且,通常使用的key

value数据访问方式也难以满足用户的多元化数据访问需求,影响了用户体验。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供一种处理数据的方法和装置,能够响应于数据处理请求,从预先设置的多种类型的索引树中,确定与数据包含的索引字段匹配的索引树,其中每一种索引树存储于堆外内存中,索引树中各个节点的节点信息包括自身节点信息以及关联节点;根据所述索引树中各个节点包括的字段值,定位到所述数据处理请求包括的待处理的字段值所对应的一个或多个目标节点;通过目标节点定位数据源中的数据并对定位到的数据进行处理。本专利技术的实施例提高了数据处理的稳定性和效率,提升了用户体验。
[0005]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种处理数据的方法,其特征在于,包括:响应于数据处理请求,在确定出所述数据处理请求指示了索引字段的情况下,从预先设置的多种类型的索引树中,确定与所述索引字段匹配的第一索引树,其中,每一种类型的索引树包括的节点包括有同一种索引字段的字段值;所述第一索引树存储于从堆外内存中获取的内存空间中,所述第一索引树包含的各个节点的节点信息存储于所述内存空间中的存储块中,其中,所述节点信息包含自身节点信息以及所述第一索引树的数据结构中与所述节点具有关联关系的关联节点;根据所述第一索引树中各个节点包括的字段值,定位到所述数据处理请求包括的待处理的字段值所对应的一个或多个目标节点;利用查找到的一个或多个所述目标节点,定位数据源中的数据,并对定位到的数据进行处理。
[0006]可选地,所述处理数据的方法,包括:确定用户定义的索引类型,其中,所述索引类型包括有一个或多个索引字段;从所述数据源中获取所述索引类型包括的一个或多个所述索引字段的字段值;利用获取到的一个或多个所述索引字段的字段值构建索引树。
[0007]可选地,所述处理数据的方法,还包括:从所述数据源中获取数据的主键;所述利用获取到的一个或多个所述索引字段的字段值构建索引树,包括:利用获取到的一个或多个所述索引字段的字段值以及所述主键的主键键值作为索引树的节点,构建索引树。
[0008]可选地,所述构建索引树,进一步包括:在堆外内存中获取存储所述索引树的内存空间;针对所述索引树包含的每一个节点,执行:从所述内存空间中获取存储所述节点的存储块;利用所述存储块存储所述节点的节点信息,所述节点信息包含自身节点信息,以及所
述索引树的数据结构中与所述节点具有关联关系的关联节点。
[0009]可选地,所述处理数据的方法,进一步包括:接收一条新增数据,其中,所述新增数据包含的主键键值未存在于所述数据源中;针对所述新增数据,执行下述操作:将所述新增数据添加至所述数据源;从所述新增数据中解析出一个或多个索引字段,并将所述新增数据对应发送至消息队列;利用与所述数据源关联的各个第二索引树从所述消息队列中获取所述新增数据,并在所述第二索引树中增加对应于所述新增数据的节点,其中,各个所述第二索引树基于新增的所述节点执行排序。
[0010]可选地,所述处理数据的方法,进一步包括:
[0011]接收一条新增数据,其中,所述新增数据包含的主键键值已存在于所述数据源中;针对所述新增数据,执行下述操作:将所述新增数据替换所述数据源中匹配于所述主键键值的原有数据;从所述新增数据中解析出一个或多个索引字段,并将被替换的原有数据、以及所述新增数据发送至消息队列;利用与所述数据源关联的各个第二索引树从所述消息队列中获取所述被替换的原有数据以及所述新增数据,在所述第二索引树中删除原有数据对应的节点,并增加对应于所述新增数据的节点,其中,各个所述第二索引树基于删除原有数据对应的节点、以及新增的所述节点分别执行排序。
[0012]可选地,所述处理数据的方法,还包括:利用第一计数器记录所述数据源中更新数据到消息队列的次数,利用第二计数器累加记录各个所述第二索引树根据所述消息队列完成更新所述第二索引树中的节点的次数;判断所述第一计数器与索引字段总数的乘积是否与所述第二计数器相等,如果是,确定所述数据源对应的各个索引树处于就绪状态。
[0013]可选地,所述处理数据的方法,进一步包括:在判断出所述第一计数器与索引字段总数的乘积与所述第二计数器不相等的情况下,阻塞针对所述新增数据的数据查询请求,直到所述第二计数器的记录值与所述第一计数器的记录值相等。
[0014]可选地,所述利用查找到的一个或多个所述目标节点,定位数据源中的数据,包括:获取所述目标节点的节点值,从所述节点值中解析出主键对应的键值,根据所述键值从所述数据源中查询,得到所述数据处理请求所查询的数据。
[0015]为实现上述目的,根据本专利技术实施例的第二方面,提供了一种处理数据的装置,其特征在于,包括:确定索引树模块、定位节点模块和处理数据模块;其中,
[0016]所述确定索引树模块,用于响应于数据处理请求,在确定出所述数据处理请求指示了索引字段的情况下,从预先设置的多种类型的索引树中,确定与所述索引字段匹配的第一索引树,其中,每一种类型的索引树包括的节点包括有同一种索引字段或者同一种索引字段组合的字段值;所述第一索引树存储于从堆外内存中获取的内存空间中,所述第一索引树包含的各个节点的节点信息存储于所述内存空间中的存储块中,其中,所述节点信息包含自身节点信息以及所述第一索引树的数据结构中与所述节点具有关联关系的关联节点;
[0017]所述定位节点模块,用于根据所述第一索引树中各个节点包括的字段值,定位到所述数据处理请求包括的待处理的字段值所对应的一个或多个目标节点;
[0018]所述处理数据模块,用于利用查找到的一个或多个所述目标节点,定位数据源中的数据,并对定位到的数据进行处理。
[0019]可选地,所述处理数据的装置,用于确定用户定义的索引类型,其中,所述索引类
型包括有一个或多个索引字段;从所述数据源中获取所述索引类型包括的一个或多个所述索引字段的字段值;利用获取到的一个或多个所述索引字段的字段值构建索引树。
[0020]可选地,所述处理数据的装置,还用于从所述数据源中获取数据的主键;所述利用获取到的一个或多个所述索引字段的字段值构建索引树,包括:利用获取到的一个或多个所述索引字段的字段值以及所述主键的主键键值作为索引树的节点,构建索引树。
[0021]可选地,所述处理数据的装置,进一步用于在堆外内存中获取存储所述索引树的内存空间;针对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理数据的方法,其特征在于,包括:响应于数据处理请求,在确定出所述数据处理请求指示了索引字段的情况下,从预先设置的多种类型的索引树中,确定与所述索引字段匹配的第一索引树,其中,每一种类型的索引树包括的节点包括有同一种索引字段的字段值;所述第一索引树存储于从堆外内存中获取的内存空间中,所述第一索引树包含的各个节点的节点信息存储于所述内存空间中的存储块中,其中,所述节点信息包含自身节点信息以及所述第一索引树的数据结构中与所述节点具有关联关系的关联节点;根据所述第一索引树中各个节点包括的字段值,定位到所述数据处理请求包括的待处理的字段值所对应的一个或多个目标节点;利用查找到的一个或多个所述目标节点,定位数据源中的数据,并对定位到的数据进行处理。2.根据权利要求1所述的方法,其特征在于,还包括:确定用户定义的索引类型,其中,所述索引类型包括有一个或多个索引字段;从所述数据源中获取所述索引类型包括的一个或多个所述索引字段的字段值;利用获取到的一个或多个所述索引字段的字段值构建索引树。3.根据权利要求2所述的方法,其特征在于,还包括:从所述数据源中获取数据的主键;所述利用获取到的一个或多个所述索引字段的字段值构建索引树,包括:利用获取到的一个或多个所述索引字段的字段值以及所述主键的主键键值作为索引树的节点,构建索引树。4.根据权利要求2所述的方法,其特征在于,所述构建索引树,进一步包括:在堆外内存中获取存储所述索引树的内存空间;针对所述索引树包含的每一个节点,执行:从所述内存空间中获取存储所述节点的存储块;利用所述存储块存储所述节点的节点信息,所述节点信息包含自身节点信息,以及所述索引树的数据结构中与所述节点具有关联关系的关联节点。5.根据权利要求1所述的方法,其特征在于,进一步包括:接收一条新增数据,其中,所述新增数据包含的主键键值未存在于所述数据源中;针对所述新增数据,执行下述操作:将所述新增数据添加至所述数据源;从所述新增数据中解析出一个或多个索引字段,并将所述新增数据对应发送至消息队列;利用与所述数据源关联的各个第二索引树从所述消息队列中获取所述新增数据,并在所述第二索引树中增加对应于所述新增数据的节点,其中,各个所述第二索引树基于新增的所述节点执行排序。6.根据权利要求1所述的方法,其特征在于,进一步包括:接收一条新增数据,其中,所述新增数据包含的主键键值已存在于所述数据源中;针对所述新增数据,执行下述操作:
将所述新增数据替换所述数据源中匹配于所述主键键值的原有数据;从所述新增数据中解析出一个或多个索引字段,并将被替换的原有数据、以及所述新增数据发送至消息队列;利用...

【专利技术属性】
技术研发人员:柳兆飞侯德才
申请(专利权)人:中国证券登记结算有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1