CN111104431B - 一种关于多维有限枚举数据的压缩检索方法 - Google Patents
一种关于多维有限枚举数据的压缩检索方法 Download PDFInfo
- Publication number
- CN111104431B CN111104431B CN201911382817.9A CN201911382817A CN111104431B CN 111104431 B CN111104431 B CN 111104431B CN 201911382817 A CN201911382817 A CN 201911382817A CN 111104431 B CN111104431 B CN 111104431B
- Authority
- CN
- China
- Prior art keywords
- retrieval
- data
- structured data
- retrieved
- binary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种关于多维有限枚举数据的压缩检索方法。它具体包括如下步骤:(1)用户输入检索条件,根据用户输入的检索条件来获取对应的多个待检索的结构化数据以及相对应的结构化数据的数值;(2)根据待检索的结构化数据和设置的存储配置信息来获得该结构化数据所在的位置;并将相对应的结构化数据的数值变换成二进制数值,获得多个结构化数据的检索参数;(3)多个结构化数据的检索参数根据设置的压缩配置信息生成待检索的二进制数值;(4)将待检索的二进制数值组装成SQL查询条件,执行SQL查询条件获得检索结果。本发明的有益效果是:只需执行一次运算即可完成检索匹配;被检索的有限枚举字段越多,可减少检索时运算次数。
Description
技术领域
本发明涉及数据处理相关技术领域,尤其是指一种关于多维有限枚举数据的压缩检索方法。
背景技术
在一些结构化数据存储中,经常会使用int、long等数据类型来存储,而有些时候结构化数据是有限枚举值,只需少数几位字节存储即可,但受限于数据库字段类型的限制即使采用最小存储单元往往也是小几十位,浪费存储空间。
在实际的业务场景中,动态视频结构化数据有大量有限枚举结构化数据,比如:对视频流中的每一帧进行结构化分析,会得到人脸、形体、物体等等大量结构化数据,这些结构化数据中包含大量:是否戴眼镜、衣服颜色、是否戴帽子、年龄、性别等等有限枚举数据,这些数据采用传统的数据类型存储会占用大量存储空间。
同时,在业务应用上经常还需要对这些多个结构化数据进行特定条件的检索,以匹配检索出目标记录。传统关系型数据库对于多个结构化数据往往存储多列,检索查询时也需要进行多列联合查询。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种加快检索速度的关于多维有限枚举数据的压缩检索方法。
为了实现上述目的,本发明采用以下技术方案:
一种关于多维有限枚举数据的压缩检索方法,具体包括如下步骤:
(1)用户输入检索条件,根据用户输入的检索条件来获取对应的多个待检索的结构化数据以及相对应的结构化数据的数值;
(2)根据待检索的结构化数据和设置的存储配置信息来获得该结构化数据所在的位置;并将相对应的结构化数据的数值变换成二进制数值,获得多个结构化数据的检索参数;
(3)多个结构化数据的检索参数根据设置的压缩配置信息生成待检索的二进制数值;
(4)将待检索的二进制数值组装成SQL查询条件,执行SQL查询条件获得检索结果。
本发明中所有对于字节位都是从0开始计算。传统对于多个结构化数据存储会存储多个字段,在检索时要执行多次运算,本发明可对压缩存储的结构化数据进行快速检索,只需执行一次运算即可完成检索匹配;被检索的有限枚举字段越多,检索速度相较于传统模式越快,可减少检索时运算次数,可通过一次运算完成多个结构化数据的检索计算。
作为优选,在步骤(1)中,结构化数据都是有限枚举数据,有限枚举数据是指在业务可知范围内是可以确定枚举出具体几种取值的数据类型;结构化数据的检索参数指的是有限枚举数据的取值。
作为优选,在步骤(2)和步骤(3)中,压缩配置指的是一个定义结构化数据存储先后及每个结构化数据最大取值的业务规则定义,固化在业务逻辑中或存储在数据库中;压缩配置的首字节位为预留位,压缩配置的后续字节位根据业务的每个结构化数据最大取值来确定所占位数。
作为优选,在步骤(4)中,具体操作方法为:将生成待检索的二进制数值转化为十进制,同时根据被检索数据的表名和压缩存储字段组装成SQL查询条件,使用异或运算符进行运算,如果与被检索数据不匹配,异或运算后检索结果会为非0,即检索结果不匹配;如果与被检索数据匹配,异或运算后检索结果会为0,即检索结果匹配;其中:被检索数据的表名和压缩存储字段是每个业务逻辑写好的,即在压缩检索前已经获得。
本发明的有益效果是:对压缩存储的结构化数据进行快速检索,只需执行一次运算即可完成检索匹配;被检索的有限枚举字段越多,检索速度相较于传统模式越快,可减少检索时运算次数。
附图说明
图1是本发明的方法流程图;
图2是生成待检索的二进制数值的流程图;
图3是获得检索结果的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步的描述。
如图1所述的实施例中,一种关于多维有限枚举数据的压缩检索方法,具体包括如下步骤:
(1)用户输入检索条件,根据用户输入的检索条件来获取对应的多个待检索的结构化数据以及相对应的结构化数据的数值;结构化数据都是有限枚举数据,有限枚举数据是指在业务可知范围内是可以确定枚举出具体几种取值的数据类型;结构化数据的检索参数指的是有限枚举数据的取值。如果输入检索条件不正确,比如说用户输入的检索维度数值超过了压缩配置的最大值,则抛出异常,提升越界;输入数据的正确性和压缩配置的对应关系,需要业务层来维护和保证。
(2)根据待检索的结构化数据和设置的存储配置信息来获得该结构化数据所在的位置;并将相对应的结构化数据的数值变换成二进制数值,获得多个结构化数据的检索参数;压缩配置指的是一个定义结构化数据存储先后及每个结构化数据最大取值的业务规则定义,固化在业务逻辑中或存储在数据库中;压缩配置的首字节位为预留位,默认为1,压缩配置的后续字节位根据业务的每个结构化数据最大取值来确定所占位数。
(3)多个结构化数据的检索参数根据设置的压缩配置信息生成待检索的二进制数值,如图2所示。
(3)将待检索的二进制数值组装成SQL查询条件,执行SQL查询条件获得检索结果;如图3所示,具体操作方法为:将生成待检索的二进制数值转化为十进制,同时根据被检索数据的表名和压缩存储字段组装成SQL查询条件,使用异或运算符进行运算,如果与被检索数据不匹配,异或运算后检索结果会为非0,即检索结果不匹配;如果与被检索数据匹配,异或运算后检索结果会为0,即检索结果匹配;其中:被检索数据的表名和压缩存储字段是每个业务逻辑写好的,即在压缩检索前已经获得。
例如:在所有的结构化数据中查询戴眼镜、戴帽子且穿白色衣服的记录。
(1)用户输入的检索条件为:查询索引戴眼镜、戴帽子且穿白色衣服的记录,即:a=2,b=2,c=2;
(2)是否戴眼镜取值:1未知;2戴眼镜;3不带眼镜;用变量a表示;
是否戴帽子取值:1未知;2戴帽子;3不带帽子;用变量b表示;
衣服颜色取值有:1未知;2白色;3黑色;4红色;5绿色;用变量c表示;
那么压缩存储配置为:1(预留位);a(max=3);b(max=3);c(max=5);
根据检索参数和压缩配置,生成待检索参数DP,DP作为步骤(3)的一个输入。
(3)假设被检索表名为table,压缩存储字段为colum_name,组织执行SQL和异或运算算法,如果被检索数据不匹配,异或运算后结果会为非0,即检索结果不匹配。
传统对于多个结构化数据存储会存储多个字段,在检索时要执行多次运算,本发明可对压缩存储的数据进行快速检索,只需执行一次异或运算即可完成检索匹配;被检索的有限枚举数据字段越多,检索速度相较于传统模式越快,可减少检索时运算次数,可通过一次异或运算完成多个结构化数据的检索计算。
Claims (1)
1.一种关于多维有限枚举数据压缩的检索方法,其特征是,具体包括如下步骤:
(1)用户输入检索条件,根据用户输入的检索条件来获取对应的多个待检索的结构化数据以及相对应的结构化数据的数值;结构化数据都是有限枚举数据,有限枚举数据是指在业务可知范围内是可以确定枚举出具体几种取值的数据类型;结构化数据的检索参数指的是有限枚举数据的取值;
(2)根据待检索的结构化数据和设置的存储配置信息来获得该结构化数据所在的位置;并将相对应的结构化数据的数值变换成二进制数值,获得多个结构化数据的检索参数;
(3)多个结构化数据的检索参数根据设置的压缩配置信息生成待检索的二进制数值;
(4)将待检索的二进制数值组装成SQL查询条件,执行SQL查询条件获得检索结果;具体操作方法为:将生成待检索的二进制数值转化为十进制,同时将生成待检索的二进制数值根据被检索数据的表名和压缩存储字段组装成SQL查询条件,使用异或运算符进行运算,如果与被检索数据不匹配,异或运算后检索结果会为非0,即检索结果不匹配;如果与被检索数据匹配,异或运算后检索结果会为0,即检索结果匹配;其中:被检索数据的表名和压缩存储字段是每个业务逻辑写好的,即在压缩检索前已经获得;
在步骤(2)和步骤(3)中,压缩配置指的是一个定义结构化数据存储先后及每个结构化数据最大取值的业务规则定义,固化在业务逻辑中或存储在数据库中;压缩配置的首字节位为预留位,压缩配置的后续字节位根据业务的每个结构化数据最大取值来确定所占位数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911382817.9A CN111104431B (zh) | 2019-12-28 | 2019-12-28 | 一种关于多维有限枚举数据的压缩检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911382817.9A CN111104431B (zh) | 2019-12-28 | 2019-12-28 | 一种关于多维有限枚举数据的压缩检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111104431A CN111104431A (zh) | 2020-05-05 |
CN111104431B true CN111104431B (zh) | 2022-04-01 |
Family
ID=70423477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911382817.9A Active CN111104431B (zh) | 2019-12-28 | 2019-12-28 | 一种关于多维有限枚举数据的压缩检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111104431B (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978350B (zh) * | 2014-04-10 | 2019-04-12 | 腾讯科技(深圳)有限公司 | 二进制特征的检索方法和系统 |
US20180041224A1 (en) * | 2016-08-04 | 2018-02-08 | International Business Machines Corporation | Data value suffix bit level compression |
-
2019
- 2019-12-28 CN CN201911382817.9A patent/CN111104431B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111104431A (zh) | 2020-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11132346B2 (en) | Information processing method and apparatus | |
CN110019218B (zh) | 数据存储与查询方法及设备 | |
US9740718B2 (en) | Aggregating dimensional data using dense containers | |
US9836519B2 (en) | Densely grouping dimensional data | |
CN108205577B (zh) | 一种数组构建、数组查询的方法、装置及电子设备 | |
CN107203640B (zh) | 通过数据库运行记录建立物理模型的方法及系统 | |
CN107368527B (zh) | 基于数据流的多属性索引方法 | |
RU2005105582A (ru) | База данных и система управления знаниями | |
WO2017204965A1 (en) | Methods and apparatus to provide group-based row-level security for big data platforms | |
WO2015116221A1 (en) | Managing database with counting bloom filters | |
CN113918605A (zh) | 数据查询方法、装置、设备以及计算机存储介质 | |
CN113901135A (zh) | 一种跨源异构数据智能可视化分析展示方法和设备 | |
KR101544560B1 (ko) | 대용량 데이터를 처리하기 위하여 sql 파싱에 의한 2단계 쿼리 및 결과 캐싱을 이용한 온라인 분석 프로세싱 방법 | |
CN111274454B (zh) | 时空数据的处理方法、装置、电子设备和存储介质 | |
CN111104431B (zh) | 一种关于多维有限枚举数据的压缩检索方法 | |
CN106933907B (zh) | 数据表扩展指标的处理方法及装置 | |
KR101136457B1 (ko) | 데이터베이스 관리 시스템에서 구조화 질의어(SQL)실행경로(Trace) 분석 방법 및 장치 | |
CN111177170B (zh) | 一种关于多维有限枚举数据的压缩更新方法 | |
JP2018045441A (ja) | データ統合方法、データ統合装置、データ処理システム及びコンピュータプログラム | |
KR101820108B1 (ko) | 캐시 테이블 통합 기반 2단계 쿼리 처리 시스템 | |
CN114969036A (zh) | 数据检索方法及装置 | |
US11126622B1 (en) | Methods and apparatus for efficiently scaling result caching | |
US9753963B2 (en) | System and method for determining an index of an object in a sequence of objects | |
US10990649B2 (en) | Computer architecture for emulating a string correlithm object velocity detector in a correlithm object processing system | |
RU2417424C1 (ru) | Способ компрессии многомерных данных для хранения и поиска информации в системе управления базами данных и устройство для его осуществления |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |