CN112579608B - 案件数据查询方法、***、设备及计算机可读存储介质 - Google Patents
案件数据查询方法、***、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112579608B CN112579608B CN202011558721.6A CN202011558721A CN112579608B CN 112579608 B CN112579608 B CN 112579608B CN 202011558721 A CN202011558721 A CN 202011558721A CN 112579608 B CN112579608 B CN 112579608B
- Authority
- CN
- China
- Prior art keywords
- data
- query
- target data
- target
- sequence number
- 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
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000003860 storage Methods 0.000 title claims description 19
- 238000005192 partition Methods 0.000 claims abstract description 56
- 238000004590 computer program Methods 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000001174 ascending effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/22—Indexing; Data structures therefor; Storage structures
- G06F16/221—Column-oriented storage; Management thereof
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- 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
-
- 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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种案件数据查询方法,包括从数据查询指令中获取查询账号和查询条件;将查询账号和查询条件转换为索引数据,索引数据包括第一行键和列簇字段,第一行键包括查询账号倒序数据、时间范围以及第一序号,第一序号表示数据获取位置;根据查询账号倒序数据,确定目标分区;根据时间范围,在目标分区中确定数据查询范围;根据列簇字段以及第一序号,在数据查询范围中提取一个目标数据块,或者根据列簇字段以及第一序号及第一序号的后续序号,在数据查询范围中提取多个目标数据块;及切分一个目标数据块或多个目标数据块,得到目标数据集。本发明实施例提高了司法案件数据的查询效率,满足了海量司法案件数据查询的时效性要求。
Description
技术领域
本发明实施例涉及大数据技术领域,尤其涉及一种案件数据查询方法、***、计算机设备及计算机可读存储介质。
背景技术
银行有配合司法查案进行数据提取的义务,针对司法场景下的数据查询要求,特别是流水查询要求,一般的处理方式是通过人工进行根据提数的要求手工提取数据。
由于数据存放的底层是hive数据仓库,hive数据仓库是分布式***基础架构中的数据仓库基础架构,针对大量数据的查询效率极低,占用资源大。另外,还可以采用搜索引擎进行分页场景查询,通过多次翻页查询案件数据,然而多次翻页查询无法满足司法查询中对于时效性的要求。
因此,采用人工查询数据以及借助搜索引擎查询司法案件中数据,发明人发现均存在以下缺陷:查询效率低,时效性差。
发明内容
有鉴于此,本发明实施例提供了一种案件数据查询方法、***、计算机设备及计算机可读存储介质,用于解决采用人工查询数据或借助搜索引擎查询司法案件中数据,出现的查询效率低、时效性差的问题。
本发明实施例是通过下述技术方案来解决上述技术问题:
一种案件数据查询方法,包括:
接收数据查询指令,并从所述数据查询指令中获取查询账号和查询条件;
将所述查询账号和所述查询条件转换为索引数据,所述索引数据包括第一行键和列簇字段,所述第一行键包括查询账号倒序数据、时间范围以及第一序号,所述第一序号表示数据获取位置;
根据所述查询账号倒序数据,确定目标分区;
根据所述时间范围,在所述目标分区中确定数据查询范围;
根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取一个目标数据块,或者根据所述列簇字段以及连续的多个序号,在所述数据查询范围中提取多个目标数据块,所述多个序号包括所述第一序号以及与所述第一序号连续的至少一个后续序号;及
切分所述一个目标数据块或所述多个目标数据块,得到目标数据集。
可选地,所述方法包括:
在初始数据库中创建多个分区;
为所述多个分区中的每个分区分别定义生成开始键和终止键,以生成预设数据库。
可选地,所述方法包括:
获取多个样本账号的多个样本数据;
基于预设置的行键规则,生成所述多个样本账号的多个样本数据对应的多个行键;
当所述多个行键满足预设条件时,将所述多个样本数据写入所述预设数据库的所述多个分区中。
可选地,所述当所述多个行键满足预设条件时,将所述多个样本数据写入所述数据库的多个分区中的步骤,包括:
基于所述多个分区对应的开始键和终止键,确定键范围;
当所述多个行键位于所述键范围内时,将所述多个样本账号的样本数据写入所述预设数据库中。
可选地,所述多个序号中的后续序号为第i序号,i为正整数,且i的初始值为2;
所述根据所述列簇字段以及所述第一序号及所述第一序号的后续序号,在所述数据查询范围中提取多个目标数据块的步骤,包括:
根据所述列簇字段以及所述多个序号中的第i序号,在所述数据查询范围中提取第i目标数据块;
判断所述第i目标数据块中的数据量是否满足数据量阈值:
若所述第i目标数据块中的数据量满足所述数据量阈值,则根据所述第i序号生成所述多个序号中的第i+1序号,并根据所述列簇字段以及所述第i+1序号,在所述数据查询范围中获取第i+1目标数据块;
若所述第i目标数据块中的数据量不满足所述数据量阈值,则将所述第i目标数据块确定为在所述数据范围中提取的最后一个目标数据块。
可选地,所述切分所述一个目标数据块或所述多个目标数据块,得到目标数据集的步骤,包括
获取所述一个目标数据块或所述多个目标数据块对应的一个字符串集合或多个字符串集合;
基于预设的列切分规则和预设的行切分规则对所述一个字符串集合或所述多个字符串集合进行切分,以得到多个目标数据;
将所述多个目标数据按时序拼装成目标数据集。
可选地,所述方法包括:
将获取到的所述目标数据集存储于区块链中。
为了实现上述目的,本发明实施例还提供一种案件数据查询***,包括:
获取模块,用于接收数据查询指令,并从所述数据查询指令中获取查询账号和查询条件;
转换模块,用于将所述查询账号和所述查询条件转换为索引数据,所述索引数据包括第一行键和列簇字段,所述第一行键包括查询账号倒序数据、时间范围以及第一序号,所述第一序号表示数据获取位置;
第一确定模块,用于根据所述查询账号倒序数据,确定目标分区;
第二确定模块,用于根据所述时间范围,在所述目标分区中确定数据查询范围;
提取模块,用于根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取一个目标数据块,或者根据所述列簇字段以及所述第一序号及所述第一序号的后续序号,在所述数据查询范围中提取多个目标数据块;及
切分模块,用于切分所述一个目标数据块或所述多个目标数据块,得到目标数据集。
为了实现上述目的,本发明实施例还提供一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述案件数据查询方法的步骤。
为了实现上述目的,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的案件数据查询方法的步骤。
本发明实施例提供的案件数据查询方法、***、计算机设备及计算机可读存储介质,通过数据查询指令,从数据库中获取到索引数据,根据索引数据中的第一行键中的查询账号倒序数据、时间范围和第一序号提取多个目标数据块,按需得到目标数据集;通过第一行健中的查询账号倒序数据能够直接定位到查询账号的数据在数据库中的位置,且通过设计的第一行健的时间范围能够快速确定数据查询范围,并根据第一序号或第一序号和第一序号的后续序号快速有序地获取查询账号的数据,提高了司法案件数据的查询效率,满足了海量司法案件数据查询的时效性要求。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为本发明实施例一之案件数据查询方法的步骤流程图;
图2为本发明实施例一之案件数据查询方法中对数据库预分区的步骤流程图;
图3为本发明实施例一之案件数据查询方法中预先在数据库中写入样本数据的步骤流程图;
图4为本发明实施例一之案件数据查询方法中预先将多个样本数据写入多个分区中的步骤流程图;
图5为本发明实施例一之案件数据查询方法中获取多个目标数据块的步骤流程图;
图6为本发明实施例一之案件数据查询方法中拼装目标数据集的步骤流程图;
图7为本发明实施例二之案件数据查询***的程序模块示意图;
图8为本发明实施例三之计算机设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
实施例一
请参阅图1,示出了本发明实施例之案件数据查询方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。下面以计算机设备为执行主体进行示例性描述,具体如下:
如图1所示,所述案件数据查询方法可以包括步骤S100~600,其中:
步骤S100,接收数据查询指令,并从所述数据查询指令中获取查询账号和查询条件。
在示例性的实施例中,通过Hbase(分布式存储数据库)数据库接收数据查询指令。所述数据查询指令用于请求查询一个或多个查询账号的相关案件数据,并将所述相关案件数据进行筛选排查后,应用到对应的司法程序当中。其中,查询账号的数据可以为用于配合司法机关查询提供的交易流水数据、理财数据、转账数据等。
在示例性的实施例中,如图2所示,所述方法包括:对数据库进行预分区处理;具体包括如下步骤步S101~S102,其中:步骤S101,在初始数据库中创建多个分区;步骤S102,为所述多个分区中的每个分区分别定义生成开始键和终止键,以生成预设数据库。
在搭建数据库时,Hbase默认有一个区域,在数据写入时,所有数据都会写入这个默认的区域,随着数据量的增多,该区域会无法承载更多的数据量,因此,对数据库进行预分区,有助于数据的分散存储,防止因数据存储于初始区域,而导致节点在数据写入时发生热点问题。
在示例性的实施例中,如图3所示,所述方法还包括:将样本数据存储至对应的分区中;具体包括如下步骤S103~S105,其中:步骤S103,获取多个样本账号的多个样本数据;步骤S104,基于预设置的行键规则,生成所述多个样本账号的多个样本数据对应的多个行键;步骤S105,当所述多个行键满足预设条件时,将所述多个样本数据写入所述预设数据库的所述多个分区中。
示例性的,行键规则表示为行键的组合规则。行键的组合规则设置为账号倒序+日期+序号,其中,序号代表目标数据块的位置。
将多个行键写入多个分区中,有效地根据多个账号,将账号对应的数据分散到不同的分区中,使得写入数据库中的多个样本数据能够分布地更加均匀。
在示例性的实施例中,如图4所示,所述步骤105还可以进一步包括步骤S1051~1052,其中:步骤S1051,基于所述多个分区对应的开始键和终止键,确定键范围;步骤S1052,当所述多个行键位于所述键范围内时,将所述多个样本账号的样本数据写入所述预设数据库中。
示例性的,获取A分区,A分区具有A键范围,当行键落在A键范围内,则将该行键对应的样本账号的样本数据写入所述预设数据库中;当行键位于A键范围之外,则获取下一分区的键范围,继续通过行键与下一分区的键范围进行比较,直到行键能够落在某一分区中的键范围内。
通过行键和键范围的比较,对于离散的单账号起到较好的聚合效果,同一个账号的所处的一级索引物理地址,可以理解为是同一个账号的数据都处在一个分区的数据块中或者多个分区的某同一数据块中;查询同一个账号的数据时,相对集中,无需调用其他无关的分区,保证数据查询的高效性。
步骤S200,将所述查询账号和所述查询条件转换为索引数据,所述索引数据包括第一行键和列簇字段,所述第一行键包括查询账号倒序数据、时间范围以及第一序号,所述第一序号表示数据获取位置。
示例性的,查询条件包括查询日期和查询内容。
将查询账号翻转后得到第一账号,将第一账号、查询条件中的查询日期和查询内容转换为第一行键和列簇字段。
在示例性的实施例中,将第一账号、查询条件中的查询日期和预设的第一序号的组合数据转换为第一行键,将查询条件中的查询内容转换为列簇字段。
在示例性的实施例中,第一行键(rowkey)为在Hbase数据库中可以唯一的标识一行数据的记录,是字符串类型的数据。由于在Hbase数据库中,rowkey是按照字典序排序的,因此,保证了整体的数据有序。针对司法查询下的通过账号查询可以枚举该账号下所有日期的rowkey,通过rowkey和列簇字段能够精确定位到数据所在的region(地址),可以达到快速查询的结果。
其中,查询账号倒序数据为将查询账号的前若干位对应的字符与后若干位对应的字符的位置翻转,形成新的字符组合。由于账号的首位大多数是一样的,而账号的末尾一般是随机的,将账号倒序有助于数据均匀分布在分布式集群中的每个服务器上。
示例性的,账号1为“135xxxxx93”,账号2为:“188xxxxx98”,账号3为“158xxxxx80”,账号1对应的账号倒序数据为“39xxxxx531”,账号2对应的账号倒序数据为“89xxxxx881”,账号3对应的账号倒序数据为“08xxxxx851”。
另外,将账号倒序放在rowkey的第一位;利用字典序的特性,可以保证:同一个账号的所处的一级索引物理地址是连续的以及数据是基本均匀分布到所有的region。同一个账号的所处的一级索引物理地址,可以理解为是同一个账号的数据都处在一个分区的数据块中或者多个分区的某同一数据块中,查询同一个账号的数据时,相对集中,无需调用其他无关的分区,保证数据查询的高效性。
步骤S300,根据所述查询账号倒序数据,确定目标分区。
在示例性的实施例中,数据在预先存储时,预先根据账号数据、存储的数据内容分布在不同的分区上。因此,在实际查询时,根据查询账号倒序数据可以确定至少一个目标分区。无需遍历与查询账号无关的其他分区,有助于提升数据查询的效率。
步骤S400,根据所述时间范围,在所述目标分区中确定数据查询范围。
在示例性的实施例中,时间范围指查询账号对应的数据真实发生的日期范围。如查询账号为账号A,时间范围为“2020年11月1日~2020年11月11日”,则确定数据查询范围为账号A在2020年11月1日~2020年11月11日之间的数据。
步骤S500,根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取一个目标数据块,或者根据所述列簇字段以及连续的多个序号,在所述数据查询范围中提取多个目标数据块,所述多个序号包括所述第一序号以及与所述第一序号连续的至少一个后续序号。
在示例性的实施例中,Hbase数据库的数据存储结构包括对应的rowkey(账号倒序+日期+第一序号)、列簇、列名。其中,列名位于列簇之下,即列簇包含多个列名,列簇字段对应的是具体的列名。通过rowkey+列簇+具体的列名,可以进一步定位到查询账号的某一条数据内容。
其中,第一序号表示的是在数据查询范围中,数据获取的初始位置,可以用000001来表示。
在示例性的实施例中,通过第一序号确定目标数据块获取的初始位置,通过判断所述初始位置中的数据块具有的数据量是否满足数据量阈值,若所述初始位置中的数据块具有的数据量不满足数据量阈值,即所述初始位置中的数据块具有的数据量小于数据量阈值时,则在数据查询范围内,确定该初始位置的数据块为唯一的目标数据块,并提取该目标数据块。
在其他的示例性的实施例中,通过第一序号确定目标数据块获取的初始位置,通过判断所述初始位置中的数据块具有的数据量是否满足数据量阈值,若所述初始位置中的数据块具有的数据量满足数据量阈值,即所述初始位置中的数据块具有的数据量等于数据量阈值时,生成第一序号的后续序号,再根据第一序号的后续序号获取后续目标数据块,此时,获取到的多个目标数据块包括初始位置对应的目标数据块以及第一序号的后续序号对应的后续目标数据块。
在示例性的实施例中,所述多个序号中的后续序号为第i序号,i为正整数,且i的初始值为2。请参阅图5,所述步骤S500还可以包括步骤S501~S502,其中:步骤S501,根据所述列簇字段以及所述多个序号中的第i序号,在所述数据查询范围中提取第i目标数据块;步骤S502,判断所述第i目标数据块中的数据量是否满足数据量阈值:若所述第i目标数据块中的数据量满足所述数据量阈值,则根据所述第i序号生成所述多个序号中的第i+1序号,并根据所述列簇字段以及所述第i+1序号,在所述数据查询范围中获取第i+1目标数据块;若所述第i目标数据块中的数据量不满足所述数据量阈值,则将所述第i目标数据块确定为在所述数据范围中提取的最后一个目标数据块。
在示例性的实施例中,当初始位置的数据块中的数据量满足所述数据量预设条件时,即所述第一数据块中的数据量等于预设取数阈值时,基于所述第一序号升序得到第二序号,并基于所述第二序号和行键生成新的行键,基于所述新的行键在所述数据库中查询并提取下一目标数据块,直至所述提取到的下一目标数据块中的数据量小于所述预设取数阈值,则停止取数,期间,提取到的数据块均为目标数据块。
具体的,基于第一序号升序得到第二序号,可以理解为是,将第一序号+1得到第二序号,再通过第二序号获取下一数据块。
在示例性的实施例中,当所述第一数据块的数据量等于预设取数阈值时,基于所述第一序号升序得到第二序号,基于第二序号获取下一数据块,若下一数据块为空值时,则停止取数,确定所述第一数据块为目标数据块。
在示例性的实施例中,若所述初始位置的数据块中的数据量满足所述数据量阈值,将所述第一序号升序得到第二序号,例如“000001”升序得到“000002”;根据所述查询账号倒序数据、所述第二序号和初始位置的下一位置对应的时间,生成新的行键;根据所述新的行键在所述预设数据库中获取第二数据块,判断所述第二数据块中的数据量是否满足数据量阈值,若所述第二数据块中的数据量满足数据量阈值,则再对第二序号升序,并继续判断获取到的下一数据块的数据量是否满足数据量阈值,直至判断的当前数据块的数据量满足数据量阈值,确定当前数据块为最后一个数据块,并输出多个目标数据块,多个目标数据块包括初始位置对应的数据块、最后一个数据块以及初始位置对应的数据块和最后一个数据块之间的至少一个数据块。
通过上述判断操作,在满足服务器允许的每次最大数据量的获取要求时,提高了取数的准确率,防止数据被漏取。
步骤S600,切分所述一个目标数据块或所述多个目标数据块,得到目标数据集。
在示例性的实施例中,请参阅图6,所述步骤S600还可以包括步骤S601~步骤S603,其中:步骤S601,获取所述一个目标数据块或所述多个目标数据块对应的一个字符串集合或多个字符串集合;步骤S602,基于预设的列切分规则和预设的行切分规则对所述一个字符串集合或所述多个字符串集合进行切分,以得到多个目标数据;步骤S603,将所述多个目标数据按时序拼装成目标数据集。
根据预设的列切分规则和预设的航切分规则对字符串集合进行切分,按需生成目标数据集;便于后续对目标数据集中的多个目标数据进行处理和分析。
所述方法还包括:基于版本号管理所述数据库中的数据。每个数据在导入时都会为其配置一个版本号,同一份数据在不同时间段导入也会分别匹配相应的版本号。例如,2020年11月1日上午9点导入数据A,对应的版本号为#0010,2020年11月2日下午4点发现2020年11月1日上午9点导入的数据A是错误的,需要重新导入正确的数据A,那么2020年11月2日下午4点导入的正确的数据A的版本号为#0011。当数据A只有上述两个版本号;那么,#0011为数据A对应的最新版本号。某一数据的最新版本号可以认为是入库时间最新的版本号。
这样,在数据库中可以做到无需删除,直接将正确的数据导入,Hbase会同时保留两个版本的的数据,查询的时候默认查询最新版本的数据,这样实现了数据的无缝治理;方便了数据治理,数据治理可以针对特定数据进行治理,而且能够有效防止数据的误删,提高了治理的便利性。
在示例性的实施例中,所述方法包括:将获取到的所述目标数据集存储于区块链中。
其中,区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。将目标数据集存储于区块链中,便于后续数据的溯源和进一步查证。
本发明实施例通过数据查询指令,从数据库中获取到索引数据,根据索引数据中的第一行键中的查询账号倒序数据、时间范围和第一序号提取多个目标数据块,按需得到目标数据集;提高了司法案件数据的查询效率,满足了海量司法案件数据查询的时效性要求。
本提案直接实现大部分的司法查询能够在几秒内返回查询结果,将效率由原来的几个小时提高到秒级。解决了司法查询效率慢甚至直接查询不出来的问题。将司法查询的处理效率提高到秒级;查询效率的提高使得司法数据有统一的高效查询出口。解决了数据由于人工采集导致的一系列数据不可控、投入人力过多、耗时长等问题。
实施例二
请继续参阅图7,示出了本发明案件数据查询***的程序模块示意图。在本实施例中,案件数据查询***20可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述案件数据查询方法。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述案件数据查询***20在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
获取模块700,用于接收数据查询指令,并从所述数据查询指令中获取查询账号和查询条件;
转换模块710,用于将所述查询账号和所述查询条件转换为索引数据,所述索引数据包括第一行键和列簇字段,所述第一行键包括查询账号倒序数据、时间范围以及第一序号,所述第一序号表示数据获取位置;
第一确定模块720,用于根据所述查询账号倒序数据,确定目标分区;
第二确定模块730,用于根据所述时间范围,在所述目标分区中确定数据查询范围;
提取模块740,用于根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取一个目标数据块,或者根据所述列簇字段以及所述第一序号及所述第一序号的后续序号,在所述数据查询范围中提取多个目标数据块;及
切分模块750,用于切分所述一个目标数据块或所述多个目标数据块,得到目标数据集。
在示例性的实施例中,所述方法包括:
获取多个样本账号的多个样本数据;
基于预设置的行键规则,生成所述多个样本账号的多个样本数据对应的多个行键;
当所述多个行键满足预设条件时,将所述多个样本数据写入所述预设数据库的所述多个分区中。
在示例性的实施例中,所述当所述多个行键满足预设条件时,将所述多个样本数据写入所述数据库的多个分区中的步骤,包括:
基于所述多个分区对应的开始键和终止键,确定键范围;
当所述多个行键位于所述键范围内时,将所述多个样本账号的样本数据写入所述预设数据库中。
在示例性的实施例中,所述根据所述列簇字段以及所述第一序号及所述第一序号的后续序号,在所述数据查询范围中提取多个目标数据块的步骤,包括:
根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取第一目标数据块;
根据所述列簇字段以及所述第一序号的后续序号,在所述数据查询范围中提取第i目标数据块;
判断所述第i目标数据块中的数据量是否满足数据量阈值,i为正整数且i的初始值为1:
若所述第i目标数据块中的数据量满足所述数据量阈值,则获取第i+1目标数据块;
若所述第i目标数据块中的数据量不满足所述数据量阈值,则将所述第i目标数据块确定为最后一个目标数据块。
在示例性的实施例中,所述切分所述一个目标数据块或所述多个目标数据块,得到目标数据集的步骤,包括
获取所述一个目标数据块或所述多个目标数据块对应的一个字符串集合或多个字符串集合;
基于预设的列切分规则和预设的行切分规则对所述一个字符串集合或所述多个字符串集合进行切分,以得到多个目标数据;
将所述多个目标数据按时序拼装成目标数据集。
在示例性的实施例中,所述方法包括:
将获取到的所述目标数据集存储于区块链中。
实施例三
参阅图8,是本发明实施例三之计算机设备的硬件架构示意图。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。该计算机设备2可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图8所示,所述计算机设备2至少包括,但不限于,可通过***总线相互通信连接存储器21、处理器22、网络接口23、以及案件数据查询***20。其中:
本实施例中,存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作***和各类应用软件,例如上述实施例的案件数据查询***20的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备2的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行案件数据查询***20,以实现上述实施例的案件数据查询方法。
所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述计算机设备2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯***(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图8仅示出了具有部件20-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器21中的所述案件数据查询***20还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。
例如,图7示出了所述实现案件数据查询***20实施例二的程序模块示意图,该实施例中,所述基于案件数据查询***20可以被划分为获取模块700、转换模块710、第一确定模块730、第二确定模块740、提取模块740以及切分模块750。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述案件数据查询***20在所述计算机设备2中的执行过程。所述程序模块700-750的具体功能在实施例二中已有详细描述,在此不再赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储案件数据查询***20,被处理器执行时实现上述实施例的案件数据查询方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种案件数据查询方法,其特征在于,包括:
接收数据查询指令,并从所述数据查询指令中获取查询账号和查询条件;
将所述查询账号和所述查询条件转换为索引数据,所述索引数据包括第一行键和列簇字段,所述第一行键包括查询账号倒序数据、时间范围以及第一序号,所述第一序号表示数据获取位置;
根据所述查询账号倒序数据,确定目标分区;
根据所述时间范围,在所述目标分区中确定数据查询范围;
根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取一个目标数据块,或者根据所述列簇字段以及连续的多个序号,在所述数据查询范围中提取多个目标数据块,所述多个序号包括所述第一序号以及与所述第一序号连续的至少一个后续序号;及
切分所述一个目标数据块或所述多个目标数据块,得到目标数据集;
所述方法还包括:
在初始数据库中创建多个分区;
为所述多个分区中的每个分区分别定义生成开始键和终止键,以生成预设数据库;
所述方法还包括:
获取多个样本账号的多个样本数据;
基于预设置的行键规则,生成所述多个样本账号的多个样本数据对应的多个行键;
当所述多个行键满足预设条件时,将所述多个样本数据写入所述预设数据库的所述多个分区中。
2.根据权利要求1所述的案件数据查询方法,其特征在于,所述当所述多个行键满足预设条件时,将所述多个样本数据写入所述数据库的多个分区中的步骤,包括:
基于所述多个分区对应的开始键和终止键,确定键范围;
当所述多个行键位于所述键范围内时,将所述多个样本账号的样本数据写入所述预设数据库中。
3.根据权利要求2所述的案件数据查询方法,其特征在于,所述多个序号中的后续序号为第i序号,i为正整数,且i的初始值为2;
所述根据所述列簇字段以及所述第一序号及所述第一序号的后续序号,在所述数据查询范围中提取多个目标数据块的步骤,包括:
根据所述列簇字段以及所述多个序号中的第i序号,在所述数据查询范围中提取第i目标数据块;
判断所述第i目标数据块中的数据量是否满足数据量阈值:
若所述第i目标数据块中的数据量满足所述数据量阈值,则根据所述第i序号生成所述多个序号中的第i+1序号,并根据所述列簇字段以及所述第i+1序号,在所述数据查询范围中获取第i+1目标数据块;
若所述第i目标数据块中的数据量不满足所述数据量阈值,则将所述第i目标数据块确定为在所述数据范围中提取的最后一个目标数据块。
4.根据权利要求1所述的案件数据查询方法,其特征在于,所述切分所述一个目标数据块或所述多个目标数据块,得到目标数据集的步骤,包括
获取所述一个目标数据块或所述多个目标数据块对应的一个字符串集合或多个字符串集合;
基于预设的列切分规则和预设的行切分规则对所述一个字符串集合或所述多个字符串集合进行切分,以得到多个目标数据;
将所述多个目标数据按时序拼装成目标数据集。
5.根据权利要求1所述的案件数据查询方法,其特征在于,所述方法包括:
将获取到的所述目标数据集存储于区块链中。
6.一种案件数据查询***,其特征在于,包括:
获取模块,用于接收数据查询指令,并从所述数据查询指令中获取查询账号和查询条件;
转换模块,用于将所述查询账号和所述查询条件转换为索引数据,所述索引数据包括第一行键和列簇字段,所述第一行键包括查询账号倒序数据、时间范围以及第一序号,所述第一序号表示数据获取位置;
第一确定模块,用于根据所述查询账号倒序数据,确定目标分区;
第二确定模块,用于根据所述时间范围,在所述目标分区中确定数据查询范围;
提取模块,用于根据所述列簇字段以及所述第一序号,在所述数据查询范围中提取一个目标数据块,或者根据所述列簇字段以及连续的多个序号,在所述数据查询范围中提取多个目标数据块,所述多个序号包括所述第一序号以及与所述第一序号连续的多个后续序号;及
切分模块,用于切分所述一个目标数据块或所述多个目标数据块,得到目标数据集;
所述案件数据查询***还用于:
在初始数据库中创建多个分区;
为所述多个分区中的每个分区分别定义生成开始键和终止键,以生成预设数据库;
获取多个样本账号的多个样本数据;
基于预设置的行键规则,生成所述多个样本账号的多个样本数据对应的多个行键;
当所述多个行键满足预设条件时,将所述多个样本数据写入所述预设数据库的所述多个分区中。
7.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的案件数据查询方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如权利要求1至5中任一项所述的案件数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011558721.6A CN112579608B (zh) | 2020-12-25 | 2020-12-25 | 案件数据查询方法、***、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011558721.6A CN112579608B (zh) | 2020-12-25 | 2020-12-25 | 案件数据查询方法、***、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579608A CN112579608A (zh) | 2021-03-30 |
CN112579608B true CN112579608B (zh) | 2024-06-21 |
Family
ID=75140242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011558721.6A Active CN112579608B (zh) | 2020-12-25 | 2020-12-25 | 案件数据查询方法、***、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579608B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113204567B (zh) * | 2021-05-31 | 2022-12-23 | 山东政法学院司法鉴定中心 | 大数据司法案件分析处理*** |
CN115617878B (zh) * | 2022-11-17 | 2023-03-10 | 浪潮电子信息产业股份有限公司 | 一种数据查询方法、***、装置、设备及计算机存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104112011A (zh) * | 2014-07-16 | 2014-10-22 | 深圳市国泰安信息技术有限公司 | 一种海量数据提取的方法及装置 |
CN106682077A (zh) * | 2016-11-18 | 2017-05-17 | 山东鲁能软件技术有限公司 | 一种基于Hadoop技术的海量时序数据存储实现方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2960809B1 (en) * | 2014-06-27 | 2017-08-09 | Sap Se | Transparent access to multi-temperature data |
CN107783980B (zh) * | 2016-08-24 | 2021-10-19 | 阿里巴巴集团控股有限公司 | 索引数据生成及数据查询方法及装置、存储和查询*** |
CN108256088A (zh) * | 2018-01-23 | 2018-07-06 | 清华大学 | 一种基于键值数据库的时序数据的存储方法及*** |
-
2020
- 2020-12-25 CN CN202011558721.6A patent/CN112579608B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104112011A (zh) * | 2014-07-16 | 2014-10-22 | 深圳市国泰安信息技术有限公司 | 一种海量数据提取的方法及装置 |
CN106682077A (zh) * | 2016-11-18 | 2017-05-17 | 山东鲁能软件技术有限公司 | 一种基于Hadoop技术的海量时序数据存储实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112579608A (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110309125B (zh) | 数据校验方法、电子装置及存储介质 | |
WO2020186786A1 (zh) | 文件处理方法、装置、计算机设备和存储介质 | |
CN112579608B (zh) | 案件数据查询方法、***、设备及计算机可读存储介质 | |
CN111178069B (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN111881158B (zh) | 一种管理报表数据处理方法、装置、计算机***及可读存储介质 | |
CN112598289A (zh) | 指标配置方法、***、计算机设备及计算机可读存储介质 | |
CN111737577A (zh) | 一种基于业务平台的数据查询方法、装置、设备和介质 | |
CN110162540B (zh) | 区块链账本数据的查询方法、电子装置及存储介质 | |
CN113190381B (zh) | 数据备份方法、***、设备及存储介质 | |
CN114138877A (zh) | 基于微服务架构的主题数据服务实现方法、装置及设备 | |
CN110866007B (zh) | 大数据应用和表的信息管理方法、***和计算机设备 | |
CN112035551A (zh) | 时间序列数据转换方法、***、计算机设备和存储介质 | |
CN112163948A (zh) | 一种分润计算方法、***、设备及存储介质 | |
CN112597162B (zh) | 数据集采集方法、***、设备及存储介质 | |
CN108519984B (zh) | 天气数据处理方法、服务器及计算机可读存储介质 | |
CN111291137A (zh) | 基于实体关系的搜索方法和*** | |
CN114817152A (zh) | 切片文件的查询方法与*** | |
CN109324963A (zh) | 自动测试收益结果的方法及终端设备 | |
CN115081228A (zh) | 基于bim的钢筋数据统计方法、装置、设备和可读存储介质 | |
CN113936130A (zh) | 基于ocr技术的文档信息智能获取和纠错方法、***及设备 | |
CN109885710B (zh) | 基于差分演化算法的用户画像刻画方法及服务器 | |
CN113535206A (zh) | 多版本代码升级方法及*** | |
CN110619275A (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN113360505B (zh) | 基于时序数据的数据处理方法、装置、电子设备及可读存储介质 | |
CN115756968B (zh) | 基于网络的数据备份方法、***及云平台 |
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 |