CN113609249B - 目标模型仿真数据存储方法及装置 - Google Patents
目标模型仿真数据存储方法及装置 Download PDFInfo
- Publication number
- CN113609249B CN113609249B CN202111053572.2A CN202111053572A CN113609249B CN 113609249 B CN113609249 B CN 113609249B CN 202111053572 A CN202111053572 A CN 202111053572A CN 113609249 B CN113609249 B CN 113609249B
- Authority
- CN
- China
- Prior art keywords
- file
- data
- word
- stored
- simulation data
- 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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/319—Inverted lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/374—Thesaurus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种目标模型仿真数据存储方法及装置,其中方法包括:获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;对所述多个单词进行去重,将去重后剩余的单词生成单词词典;确定所述单词词典中每一个单词在数据文件中的位置信息;根据每一个单词的位置信息生成倒排列表;将所述单词词典和所述倒排列表存储到数据库中。本方案,能够降低所需存储的数据量,进而提高数据存储速度。
Description
技术领域
本发明实施例涉及数据库技术领域,特别涉及一种目标模型仿真数据存储方法及装置。
背景技术
空间目标是指在轨正常运行的航天器、各种空间碎片(比如失效卫星、入轨的助推火箭、遗弃的卫星整流罩等)、进入地球轨道空间的彗星小行星等。为了能够实现对空间目标的监控,一般需要在试验环境中对空间目标的缩比模型进行仿真,然后对仿真数据进行存储。
现有技术中,是得到仿真数据后是对存储有仿真数据的数据文件进行存储。但是,一个目标模型的仿真数据大约有上亿条,存储仿真数据的数据文件的数据量非常大。当需要进行仿真的目标模型数量较多时,那么需要存储的数据文件的数据量则成倍数增长。因此,现有的数据存储方法存储速度较慢。
发明内容
本发明实施例提供了一种目标模型仿真数据存储方法及装置,能够提高目标模型仿真数据的存储速度。
第一方面,本发明实施例提供了一种目标模型仿真数据存储方法,包括:
获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;
按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;
对所述多个单词进行去重,将去重后剩余的单词生成单词词典;
确定所述单词词典中每一个单词在数据文件中的位置信息;
根据每一个单词的位置信息生成倒排列表;
将所述单词词典和所述倒排列表存储到数据库中。
优选地,在对所述数据文件中的仿真数据进行分解之前,还包括:
将所述数据文件中的仿真数据进行对齐处理;
针对对齐处理后的仿真数据生成对应的数据表格,使得每一个仿真数据存储在对应位置的单元格中;
所述按照预设分解规则,对所述数据文件中的仿真数据进行分解,包括:
将所述数据表格中每一个单元格中存储的仿真数据确定为一个单词。
优选地,所述确定所述单词词典中每一个单词在数据文件中的位置信息,包括:
针对所述单词词典中每一个单词,对所述数据文件中的数据表格进行逐行遍历,当遍历到该单词时,记录该单词所对应单元格在所述数据表格中的行列信息,直到将所述数据文件遍历完,得到该单词对应的至少一个位置信息。
优选地,所述单词词典中包括每一个单词对应的倒排列表的索引项;
所述根据每一个单词的位置信息生成倒排列表,包括:
针对每一个单词,将该单词对应的每一个位置信息分别存储到对应该单词的倒排列表中,所述倒排列表中包括至少一个倒排项,每一个倒排项为一个位置信息。
优选地,所述将所述单词词典和所述倒排列表存储到数据库中,包括:
将所述单词词典确定为一个待存储文件、将每一个所述倒排列表分别确定为一个待存储文件;
针对多个待存储文件逐个将待存储文件写入内存中,并将写入操作写入到生成的translog文件中;
每隔预设的刷新时间段,根据所述translog文件确定位于当前刷新时间段内的写入操作,将位于当前刷新时间段内的写入操作所对应的写入到内存中的待存储文件均写入到文件系统缓存中,并在所述文件系统缓存中生成当前刷新时间段对应的分段文件;
当达到第一预设条件时,将所述文件系统缓存中的各分段文件写入磁盘,并删除所述文件系统缓存中的分段文件以及所述translog文件。
优选地,在将所述文件系统缓存中的各分段文件写入磁盘之前,还包括:
当达到第二预设条件时,将当前的translog文件写入到磁盘中,以对磁盘中上一次写入的translog文件进行更新;
在将所述文件系统缓存中的各分段文件写入磁盘之后,还包括:将写入到磁盘中的translog文件删除。
优选地,所述将所述文件系统缓存中的各分段文件写入磁盘之后,还包括:
将写入磁盘的各分段文件合并为一个分段文件。
第二方面,本发明实施例还提供了一种目标模型仿真数据存储装置,包括:
文件获取单元,用于获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;
分解单元,用于按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;
词典生成单元,用于对所述多个单词进行去重,将去重后剩余的单词生成单词词典;
位置确定单元,用于确定所述单词词典中每一个单词在数据文件中的位置信息;
列表生成单元,用于根据每一个单词的位置信息生成倒排列表;
文件存储单元,用于将所述单词词典和所述倒排列表存储到数据库中。
第三方面,本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
本发明实施例提供了一种目标模型仿真数据存储方法及装置,由于生成的单词词典中包括的单词是对数据文件中单词进行去重后得到的,因此,单词词典中的单词互不重复,从而可以大大降低数据量,通过对单词词典中的每一个单词生成对应的倒排列表,以记录该单词在数据文件中的位置信息,从而能够还原出数据文件中的各仿真数据。由于数据文件中存在大量重复的仿真数据,因此,本方案能够降低所需存储的数据量,进而提高数据存储速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种目标模型仿真数据存储方法流程图;
图2是本发明一实施例提供的一种数据文件示意图;
图3是本发明一实施例提供的一种计算设备的硬件架构图;
图4是本发明一实施例提供的一种目标模型仿真数据存储装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如前所述,一个目标模型的仿真数据大约有上亿条,存储仿真数据的数据文件是由仿真软件产生的,直接将数据文件存储到数据库中,现有技术是存储到Mysql数据库中,由于数据文件的数据量非常大,因此在存储时存储速度会非常慢。如果想要提高仿真数据的存储速度,除了考虑更换数据库以外,还需要考虑目标模型仿真数据的特性。通过研究发现,目标模型仿真数据主要包括目标模型名称、仿真参数和仿真结果。其中,仿真参数可以包括方位、高低、距离等。因此,针对相同目标模型或不同目标模型进行仿真时,其仿真参数存在大量相同参数的情况,比如,针对同一个目标模型,其方位、高低参数不变,在调整不同距离时,得到不同的仿真结果;再如,针对不同目标模型,其方位、高低、距离参数均相同,针对不同目标模型可以得到不同的仿真结果。可见,数据文件中存储有大量重复的数据,基于此,如果能够将数据文件中的数据整理到一个词典中,使得词典中包括的数据均不重复,然后记录词典中每一个数据的存储位置,如此,可以大大降低数据存储量,进而提高数据存储速度。
下面描述以上构思的具体实现方式。
请参考图1,本发明实施例提供了一种目标模型仿真数据存储方法,该方法包括:
步骤100,获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;
步骤102,按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;
步骤104,对所述多个单词进行去重,将去重后剩余的单词生成单词词典;
步骤106,确定所述单词词典中每一个单词在数据文件中的位置信息;
步骤108,根据每一个单词的位置信息生成倒排列表;
步骤110,将所述单词词典和所述倒排列表存储到数据库中。
本发明实施例中,由于生成的单词词典中包括的单词是对数据文件中单词进行去重后得到的,因此,单词词典中的单词互不重复,从而可以大大降低数据量,通过对单词词典中的每一个单词生成对应的倒排列表,以记录该单词在数据文件中的位置信息,从而能够还原出数据文件中的各仿真数据。由于数据文件中存在大量重复的仿真数据,因此,本方案能够降低所需存储的数据量,进而提高数据存储速度。
下面描述图1所示的各个步骤的执行方式。
首先,针对步骤100,获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据。
其中,该待存储数据文件可以是从仿真软件输出的数据文件,也可以是对仿真软件输出的数据文件进行处理后的文件。
请参考图2,为数据文件的一个示意图,在该数据文件中包括:目标模型名称、仿真参数(高低1、方位1、高低2、方位2和距离)、仿真结果(测量值)。
仿真软件输出的数据文件中各仿真数据并不是以数据表格的形式存储的,而是以相邻两个仿真数据之间设置间隔符的形式存储的。为了能够便于后续仿真数据分解过程,在得到从仿真软件输出的数据文件之后,在步骤102之前,还可以包括:将所述数据文件中的仿真数据进行对齐处理;针对对齐处理后的仿真数据生成对应的数据表格,使得每一个仿真数据存储在对应位置的单元格中。
具体地,是将属于同一列的仿真数据进行列对齐,属于同一行的仿真数据进行行对齐,使得每一个仿真数据都对应一个单元格。即将数据文件表格化,从而能够便于后续步骤中仿真数据的分解以及得到仿真数据准确的位置信息。
然后针对步骤102“按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词”和步骤104“对所述多个单词进行去重,将去重后剩余的单词生成单词词典”。
在本发明一个实施例中,本步骤中至少可以通过如下一种方式来实现:将所述数据表格中每一个单元格中存储的仿真数据确定为一个单词。其中,该单词可以为文字、数值、角度等。
由于数据文件中包括有大量的重复单词,比如,针对目标模型1需要针对不同的仿真参数分别进行仿真,那么该单词“目标模型1”则会在数据文件中出现N(N为正整数)次,因此,将步骤102中得到的多个单词进行去重,可以去除较多数量的单词,得到的单词词典中不包括重复的单词。
接下来针对步骤106“确定所述单词词典中每一个单词在数据文件中的位置信息”和步骤108“根据每一个单词的位置信息生成倒排列表”进行说明。
在本发明一个实施例中,为了能够简单记录每一个单词的位置信息,可以基于上述经过处理后的数据文件中所对应的数据表格,确定每一个单词的位置信息,具体地,步骤106可以包括:针对所述单词词典中每一个单词,对所述数据文件中的数据表格进行逐行遍历,当遍历到该单词时,记录该单词所对应单元格在所述数据表格中的行列信息,直到将所述数据文件遍历完,得到该单词对应的至少一个位置信息。其中,该位置信息为该单词在数据文件中的行列数。比如单词“300”位于三个位置处,分别为行数2列数6、行数3列数6、行数4列数6。利用单元格的行列数作为单词对应的位置信息,不仅简单准确,且数据量低。
需要说明的是,单词的位置信息除上述确定方式以外,还可以以坐标位置进行记录,或者,以数值顺序进行记录。比如,当以数值顺序进行记录时,可以从第一行的行首开始,第一个仿真数据的位置信息为1,第二仿真数据的位置信息为2……依次得到每一个仿真数据对应的位置信息。
在本发明一个实施例中,为了能够利用存储到数据库中的数据准确还原出数据文件中的内容,需要针对单词词典中的每一个单词生成对应的倒排列表,以记录单词在数据文件中的位置信息。其中,该单词词典中还包括与每一个单词对应的倒排列表的索引项。该索引项可以是指向对应倒排列表的指针。
那么步骤108可以包括:针对每一个单词,将该单词对应的每一个位置信息分别存储到对应该单词的倒排列表中,所述倒排列表中包括至少一个倒排项,每一个倒排项为一个位置信息。
最后针对步骤110,将所述单词词典和所述倒排列表存储到数据库中。
在本发明一个实施例中,该数据库可以为HBase数据库、ElasticSearch数据库,用来存储单词词典和倒排列表。优选地,该数据库为ElasticSearch数据库,使用ElasticSearch数据库进行存储,不仅存储速度快,且搜索速度快。
在本发明一个实施例中,本步骤100至少可以包括如下步骤S1~S4:
S1:将所述单词词典确定为一个待存储文件、将每一个所述倒排列表分别确定为一个待存储文件。
由于单词词典内的单词是去重后的单词,因此,单词词典的数据量较小,可以将单词词典作为一个单独的待存储文件。
另外,还可以将每一个倒排列表分别作为一个待存储文件。
S2:针对多个待存储文件逐个将待存储文件写入内存中,并将写入操作写入到生成的translog文件(transaction.log)中。
此时如果对写入内存中的文件进行搜索,该文件不能被索引到。
本步骤中通过将写入到内存中的待存储文件的写入操作写入到translog文件中,当及其故障恢复或重新启动后,可以根据translog文件进行还原。
考虑到translog文件存在于内存中,也可能存在translog文件丢失情况,因此,在本发明一个实施例中,当达到第二预设条件时,将当前的translog文件写入到磁盘中,以对磁盘中上一次写入的translog文件进行更新。
比如每隔5s或者10s则确定达到第二预设条件,将translog文件更新到磁盘中,从而保证数据存储过程中机器故障恢复后,能够根据磁盘中存储的translog文件进行还原。
S3:每隔预设的刷新时间段,根据所述translog文件确定位于当前刷新时间段内的写入操作,将位于当前刷新时间段内的写入操作所对应的写入到内存中的待存储文件均写入到文件系统缓存中,并在所述文件系统缓存中生成当前刷新时间段对应的分段文件。
该刷新时间段可以为1~5s,比如1s,即每隔1s则执行一次S3。
由于translog文件中记录的写入操作包括对应的时间戳,因此,在执行S3时可以将该1s内写入到内存中的待存储文件写入到文件系统缓存中,在文件系统缓存中该1s内的待存储文件构成一个分段文件。举例来说,文件系统缓存中每隔1s则会生成一个新的分段文件,比如,1分钟,文件系统缓存中则会生成60个分段文件。
此时,写入数据缓存系统中的文件可以被索引到。
S4:当达到第一预设条件时,将所述文件系统缓存中的各分段文件写入磁盘,并删除所述文件系统缓存中的分段文件以及所述translog文件。
该第一预设条件可以包括:每隔30分钟,则确定达到第一预设条件;或者,当translog文件达到设定字节数时,则确定达到第一预设条件。
此时删除的translog文件,在步骤S1中有新的待存储文件写入到内存时,会重新生成translog文件。
在本发明一个实施例中,在S4之后,还可以包括:将写入到磁盘中的translog文件删除,以减少translog文件对磁盘的占用空间。
在本发明一个实施例中,由于不断生成新的分段文件,对于一个分片进行查询请求时,会轮流查询分片中的所有分段文件,这非常影响搜索的性能,因此可以将写入磁盘的各分段文件合并为一个分段文件,并将被合并的分段文件删除。
当需要对存储到磁盘上的文件进行删除时,可以针对每一个分区生成一个del文件用来记录被删除的文件,当用户发起一个删除请求时,文件并没有被真正删除,单词词典和倒排列表也并没有被删除,而是在del文件中表示该文件已被删除(具体地,是对该文件中包括的各单词以及对应的倒排项进行标记)。此时在检索时,该文件依然可以被检索到,但在返回检索结果时,根据del文件将该文件过滤掉。
当启动分段文件合并工作时,根据del文件,将该标识有被删除的文件进行删除,合并后的分段文件中不在包括该被删除的文件所包括的信息。
当需要对存储到磁盘上的文件进行更新时,需要将该更新后的文件作为一个新文件,按照本实施例的方案生成单词词典和倒排列表,然后将该新文件的单词词典与已经存储在磁盘上的单词词典进行合并去重,以及对倒排列表进行更新。且需要对更新前的文件进行删除请求。
为了验证本发明实施例的存储速度是否提高,模拟将目标模型的仿真数据(2.7亿条)按照本实施例的方案分别存储到ElasticSearch数据库和Mysql数据库中进行对比,将数据按照本实施例方案存储到ElasticSearch数据库相对于现有技术方案存储到Mysql数据库中的速度提高了13倍。
如图3、图4所示,本发明实施例提供了一种目标模型仿真数据存储装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的一种目标模型仿真数据存储装置所在计算设备的一种硬件架构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的计算设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在计算设备的CPU将非易失性存储器中对应的计算机程序读取到内存中运行形成的。本实施例提供的一种目标模型仿真数据存储装置,包括:
文件获取单元401,用于获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;
分解单元402,用于按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;
词典生成单元403,用于对所述多个单词进行去重,将去重后剩余的单词生成单词词典;
位置确定单元404,用于确定所述单词词典中每一个单词在数据文件中的位置信息;
列表生成单元405,用于根据每一个单词的位置信息生成倒排列表;
文件存储单元406,用于将所述单词词典和所述倒排列表存储到数据库中。
在本发明一个实施例中,在对所述数据文件中的仿真数据进行分解之前,还包括:将所述数据文件中的仿真数据进行对齐处理;针对对齐处理后的仿真数据生成对应的数据表格,使得每一个仿真数据存储在对应位置的单元格中;
所述分解单元,具体用于将所述数据表格中每一个单元格中存储的仿真数据确定为一个单词。
在本发明一个实施例中,所述位置确定单元,具体用于针对所述单词词典中每一个单词,对所述数据文件中的数据表格进行逐行遍历,当遍历到该单词时,记录该单词所对应单元格在所述数据表格中的行列信息,直到将所述数据文件遍历完,得到该单词对应的至少一个位置信息。
在本发明一个实施例中,所述单词词典中包括每一个单词对应的倒排列表的索引项;
所述列表生成单元,具体用于针对每一个单词,将该单词对应的每一个位置信息分别存储到对应该单词的倒排列表中,所述倒排列表中包括至少一个倒排项,每一个倒排项为一个位置信息。
在本发明一个实施例中,所述数据存储单元,具体用于:
将所述单词词典确定为一个待存储文件、将每一个所述倒排列表分别确定为一个待存储文件;
针对多个待存储文件逐个将待存储文件写入内存中,并将写入操作写入到生成的translog文件中;
每隔预设的刷新时间段,根据所述translog文件确定位于当前刷新时间段内的写入操作,将位于当前刷新时间段内的写入操作所对应的写入到内存中的待存储文件均写入到文件系统缓存中,并在所述文件系统缓存中生成当前刷新时间段对应的分段文件;
当达到第一预设条件时,将所述文件系统缓存中的各分段文件写入磁盘,并删除所述文件系统缓存中的分段文件以及所述translog文件。
在本发明一个实施例中,在将所述文件系统缓存中的各分段文件写入磁盘之前,还包括:当达到第二预设条件时,将当前的translog文件写入到磁盘中,以对磁盘中上一次写入的translog文件进行更新;
在将所述文件系统缓存中的各分段文件写入磁盘之后,还包括:将写入到磁盘中的translog文件删除。
在本发明一个实施例中,所述将所述文件系统缓存中的各分段文件写入磁盘之后,还包括:将写入磁盘的各分段文件合并为一个分段文件。
可以理解的是,本发明实施例示意的结构并不构成对一种目标模型仿真数据存储装置的具体限定。在本发明的另一些实施例中,一种目标模型仿真数据存储装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种目标模型仿真数据存储方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种目标模型仿真数据存储方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种目标模型仿真数据存储方法,其特征在于,包括:
获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;
按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;
对所述多个单词进行去重,将去重后剩余的单词生成单词词典;
确定所述单词词典中每一个单词在数据文件中的位置信息;
根据每一个单词的位置信息生成倒排列表;
将所述单词词典和所述倒排列表存储到数据库中;
在对所述数据文件中的仿真数据进行分解之前,还包括:
将所述数据文件中的仿真数据进行对齐处理;
针对对齐处理后的仿真数据生成对应的数据表格,使得每一个仿真数据存储在对应位置的单元格中;
所述按照预设分解规则,对所述数据文件中的仿真数据进行分解,包括:
将所述数据表格中每一个单元格中存储的仿真数据确定为一个单词。
2.根据权利要求1所述的方法,其特征在于,所述确定所述单词词典中每一个单词在数据文件中的位置信息,包括:
针对所述单词词典中每一个单词,对所述数据文件中的数据表格进行逐行遍历,当遍历到该单词时,记录该单词所对应单元格在所述数据表格中的行列信息,直到将所述数据文件遍历完,得到该单词对应的至少一个位置信息。
3.根据权利要求1所述的方法,其特征在于,
所述单词词典中包括每一个单词对应的倒排列表的索引项;
所述根据每一个单词的位置信息生成倒排列表,包括:
针对每一个单词,将该单词对应的每一个位置信息分别存储到对应该单词的倒排列表中,所述倒排列表中包括至少一个倒排项,每一个倒排项为一个位置信息。
4.根据权利要求1-3中任一所述的方法,其特征在于,所述将所述单词词典和所述倒排列表存储到数据库中,包括:
将所述单词词典确定为一个待存储文件、将每一个所述倒排列表分别确定为一个待存储文件;
针对多个待存储文件逐个将待存储文件写入内存中,并将写入操作写入到生成的translog文件中;
每隔预设的刷新时间段,根据所述translog文件确定位于当前刷新时间段内的写入操作,将位于当前刷新时间段内的写入操作所对应的写入到内存中的待存储文件均写入到文件系统缓存中,并在所述文件系统缓存中生成当前刷新时间段对应的分段文件;
当达到第一预设条件时,将所述文件系统缓存中的各分段文件写入磁盘,并删除所述文件系统缓存中的分段文件以及所述translog文件。
5.根据权利要求4所述的方法,其特征在于,
在将所述文件系统缓存中的各分段文件写入磁盘之前,还包括:
当达到第二预设条件时,将当前的translog文件写入到磁盘中,以对磁盘中上一次写入的translog文件进行更新;
在将所述文件系统缓存中的各分段文件写入磁盘之后,还包括:将写入到磁盘中的translog文件删除。
6.根据权利要求4所述的方法,其特征在于,所述将所述文件系统缓存中的各分段文件写入磁盘之后,还包括:
将写入磁盘的各分段文件合并为一个分段文件。
7.一种目标模型仿真数据存储装置,其特征在于,包括:
文件获取单元,用于获取待存储数据文件;所述数据文件中存储有目标模型的仿真数据;
分解单元,用于按照预设分解规则,对所述数据文件中的仿真数据进行分解,得到多个单词;
词典生成单元,用于对所述多个单词进行去重,将去重后剩余的单词生成单词词典;
位置确定单元,用于确定所述单词词典中每一个单词在数据文件中的位置信息;
列表生成单元,用于根据每一个单词的位置信息生成倒排列表;
文件存储单元,用于将所述单词词典和所述倒排列表存储到数据库中;
所述文件获取单元,还用于将所述数据文件中的仿真数据进行对齐处理;针对对齐处理后的仿真数据生成对应的数据表格,使得每一个仿真数据存储在对应位置的单元格中;
所述分解单元,具体用于将所述数据表格中每一个单元格中存储的仿真数据确定为一个单词。
8.一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-6中任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111053572.2A CN113609249B (zh) | 2021-09-09 | 2021-09-09 | 目标模型仿真数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111053572.2A CN113609249B (zh) | 2021-09-09 | 2021-09-09 | 目标模型仿真数据存储方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113609249A CN113609249A (zh) | 2021-11-05 |
CN113609249B true CN113609249B (zh) | 2023-04-28 |
Family
ID=78310247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111053572.2A Active CN113609249B (zh) | 2021-09-09 | 2021-09-09 | 目标模型仿真数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113609249B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107436865A (zh) * | 2016-05-25 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 一种词对齐训练方法、机器翻译方法及系统 |
US9886446B1 (en) * | 2011-03-15 | 2018-02-06 | Veritas Technologies Llc | Inverted index for text searching within deduplication backup system |
CN108241713A (zh) * | 2016-12-27 | 2018-07-03 | 南京烽火软件科技有限公司 | 一种基于多元切分的倒排索引检索方法 |
CN109885641A (zh) * | 2019-01-21 | 2019-06-14 | 瀚高基础软件股份有限公司 | 一种数据库中文全文检索的方法及系统 |
CN110516118A (zh) * | 2019-08-13 | 2019-11-29 | 出门问问(武汉)信息科技有限公司 | 一种字符串匹配方法、设备及计算机存储介质 |
CN111190937A (zh) * | 2019-12-19 | 2020-05-22 | 北京旷视科技有限公司 | 籍贯信息的查询方法、装置、电子设备及存储介质 |
CN111931034A (zh) * | 2020-08-24 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 数据搜索方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8498972B2 (en) * | 2010-12-16 | 2013-07-30 | Sap Ag | String and sub-string searching using inverted indexes |
-
2021
- 2021-09-09 CN CN202111053572.2A patent/CN113609249B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9886446B1 (en) * | 2011-03-15 | 2018-02-06 | Veritas Technologies Llc | Inverted index for text searching within deduplication backup system |
CN107436865A (zh) * | 2016-05-25 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 一种词对齐训练方法、机器翻译方法及系统 |
CN108241713A (zh) * | 2016-12-27 | 2018-07-03 | 南京烽火软件科技有限公司 | 一种基于多元切分的倒排索引检索方法 |
CN109885641A (zh) * | 2019-01-21 | 2019-06-14 | 瀚高基础软件股份有限公司 | 一种数据库中文全文检索的方法及系统 |
CN110516118A (zh) * | 2019-08-13 | 2019-11-29 | 出门问问(武汉)信息科技有限公司 | 一种字符串匹配方法、设备及计算机存储介质 |
CN111190937A (zh) * | 2019-12-19 | 2020-05-22 | 北京旷视科技有限公司 | 籍贯信息的查询方法、装置、电子设备及存储介质 |
CN111931034A (zh) * | 2020-08-24 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 数据搜索方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
宋懿 ; 国德峰 ; .基于压缩倒排文件的中文全文检索仿真系统.计算机工程.2008,34(第09期),64-66. * |
邓攀 ; 刘功申 ; .一种高效的倒排索引存储结构.计算机工程与应用.2008,44(第31期),149-152. * |
Also Published As
Publication number | Publication date |
---|---|
CN113609249A (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11182356B2 (en) | Indexing for evolving large-scale datasets in multi-master hybrid transactional and analytical processing systems | |
CN103902623B (zh) | 用于在存储系统上存取文件的方法和系统 | |
US9183268B2 (en) | Partition level backup and restore of a massively parallel processing database | |
US9195657B2 (en) | Columnar storage of a database index | |
US10970173B2 (en) | Logging process in a data storage system | |
CN106844089B (zh) | 一种用于恢复树形数据存储的方法与设备 | |
CN107665219B (zh) | 一种日志管理方法及装置 | |
US9471622B2 (en) | SCM-conscious transactional key-value store | |
CN111258966A (zh) | 一种数据去重方法、装置、设备及存储介质 | |
US11176110B2 (en) | Data updating method and device for a distributed database system | |
CN102231168B (zh) | 一种从简历库中快速检索简历的方法 | |
US10891202B2 (en) | Recovery of in-memory databases using a backward scan of the database transaction log | |
US10509780B2 (en) | Maintaining I/O transaction metadata in log-with-index structure | |
CN106897338A (zh) | 一种针对数据库的数据修改请求处理方法及装置 | |
CN103838780A (zh) | 数据库的数据恢复方法及相关的设备 | |
CN113609249B (zh) | 目标模型仿真数据存储方法及装置 | |
CN108021562B (zh) | 应用于分布式文件系统的存盘方法、装置及分布式文件系统 | |
CN107402920B (zh) | 确定关系数据库表关联复杂度的方法和装置 | |
CN113934698A (zh) | 日志压缩 | |
CN112328630A (zh) | 数据查询方法、装置、设备及存储介质 | |
US10762263B1 (en) | Searching for values of a bus in digital waveform data | |
CN115840539B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN117389980B (zh) | 日志文件分析方法及装置、计算机设备和可读存储介质 | |
CN110147529B (zh) | 恢复pdf注释评论的方法及装置 | |
CN112905368A (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 |