[发明专利]一种数组构建、数组查询的方法、装置及电子设备有效
申请号: | 201611187039.4 | 申请日: | 2016-12-20 |
公开(公告)号: | CN108205577B | 公开(公告)日: | 2022-06-03 |
发明(设计)人: | 代兵 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2453 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数组 构建 查询 方法 装置 电子设备 | ||
1.一种数组构建的方法,其特征在于,包括:
根据待存储的各字段的取值,确定能存储各字段的取值所需的比特位数;其中,所述字段包括键值对,根据所述键值对的键值为所述键值创建键值映射bitmap数组;所述键值映射bitmap数组用于存储各键值对的键值;
将所述比特位数作为数组元素的容量建立所述数组;
将各字段的取值存储到所述数组的数组元素内。
2.根据权利要求1所述的数组构建的方法,其特征在于,所述根据待存储的各字段的取值,确定能存储各字段的取值所需的比特位数,包括:
根据待存储的各键值对的键值,确定存储最大键值占用的比特位数;或者
根据待存储的各键值对预设的键值容量,确定所述键值容量占用的比特位数。
3.根据权利要求2所述的数组构建的方法,其特征在于,所述将所述比特位数作为数组元素的容量建立数组时,包括:
按照所述数组元素在所述数组内的偏移位置,为所述数组元素设置下标。
4.根据权利要求3所述的数组构建的方法,其特征在于,所述将各字段的取值存储到所述数组的数组元素内,包括:
将各键值对的键值存储到所述数组中下标与各键值对的键名相对应的数组元素内。
5.根据权利要求1所述的数组构建的方法,其特征在于,所述键值对的键值类型为文本型。
6.根据权利要求1所述的数组构建的方法,其特征在于,通过键值映射数组实现数组的构建,需要采取以下步骤:
将各键值对的键值,与存储所述键值的键值映射数组的数组元素的下标,建立映射关系;
在所述根据待存储的各字段的取值的步骤中,所述待存储的各键值对的键值为:存储所述键值的键值映射数组的数组元素的下标。
7.根据权利要求1所述的数组构建的方法,其特征在于,若所述键值对的键名类型为文本型时,则为所述键名创建键名映射数组;所述键名映射数组用于存储各键值对的键名。
8.根据权利要求7所述的数组构建的方法,其特征在于,通过键名映射数组实现数组的构建,需要采取以下步骤:
将各键值对的键名,与存储所述键名的键名映射数组的数组元素的下标,建立映射关系;
在所述将各字段的取值存储到所述数组的数组元素内的步骤中,包括:将各键值对的键值存储到所述数组中下标与各键值对的键名相对应的数组元素内;所述各键值对的键名为:存储所述键名的键名映射数组的数组元素的下标。
9.一种数组构建的装置,其特征在于,包括:
比特位确定单元,用于根据待存储的各字段的取值,确定能存储各字段的取值所需的比特位数;其中,所述字段包括键值对,根据所述键值对的键值为所述键值创建键值映射bitmap数组;所述键值映射bitmap数组用于存储各键值对的键值;
数组建立单元,用于将所述比特位数作为数组元素的容量建立所述数组;
字段存储单元,用于将各字段的取值存储到所述数组的数组元素内。
10.一种电子设备,其特征在于,所述电子设备,包括:
显示器;
处理器;
存储器,用于存储数组构建程序,所述程序在被所述处理器读取执行时,执行如下操作:根据待存储的各字段的取值,确定能存储各字段的取值所需的比特位数;其中,所述字段包括键值对,根据所述键值对的键值为所述键值创建键值映射bitmap数组;所述键值映射bitmap数组用于存储各键值对的键值;将所述比特位数作为数组元素的容量建立所述数组;将各字段的取值存储到所述数组的数组元素内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611187039.4/1.html,转载请声明来源钻瓜专利网。