CN105893512A - 一种基于元数据的任意版本兼容数据结构存取方法及装置 - Google Patents
一种基于元数据的任意版本兼容数据结构存取方法及装置 Download PDFInfo
- Publication number
- CN105893512A CN105893512A CN201610192955.0A CN201610192955A CN105893512A CN 105893512 A CN105893512 A CN 105893512A CN 201610192955 A CN201610192955 A CN 201610192955A CN 105893512 A CN105893512 A CN 105893512A
- Authority
- CN
- China
- Prior art keywords
- data structure
- data
- structure information
- write
- file
- 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.)
- Pending
Links
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/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于元数据的任意版本兼容数据结构存取方法及装置,其中方法为,接收变动后的数据结构信息,将变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;根据变动的数据结构信息,计算变动的数据结构信息对应的版本号,将版本号存储到数据结构信息文件中;在数据结构信息文件中,查找版本号对应的数据结构信息,若查找到版本号对应的数据结构信息,根据数据结构信息进行数据的读写,否则跳过不进行数据的读写。本发明基于元数据的任意版本兼容数据结构存取方法及装置,在数据存取时,没有任何文本分析和转换的性能损失,读写效率高,并且可以自动的完成新老版本的兼容。
Description
技术领域
本发明涉及计算机软件数据处理领域,尤其是游戏数据结构存储处理领域。
背景技术
在软件开发中,尤其是游戏的开发中,对于数据内容的存取,通常采用的模式主要分为二进制和文本格式两种。二进制模式的优点是不需要进行文字数据的转换,没有冗余数据,存储效率高。缺点是一旦数据结构产生变动,由于存储文件中不包含不同版本的数据结构信息,只有数据内容,所以新版本的程序读取老版本的数据时会异常复杂,需要编写大量的代码进行版本兼容。
文本格式属于文件组织模式,例如xml这种标注式存储格式的优势是文件中包含了大量的数据对象描述信息,应用程序可以根据这些信息读取必要的数据,从而达到少量代码就能比较轻松的完成老版本文件格式的兼容,缺点是使用时需要进行文本解析和转换,效率非常低,而且由于大量数据结构信息的存在,会使得数据文件体积增大数倍甚至数十倍以上,进而增加了程序运行时的执行负担。
因此,现有的数据内容存取的缺点是:采用二进制模式存取效率高没有冗余数据,但处理数据兼容性问题时,需要编写大量代码进行处理;采用文本格式xml模式文件格式兼容性问题很容易解决,不需要大量代码,但是存储的数据文件信息过大,导致存取效率低,且增加了程序执行的负担。
发明内容
本发明要解决的技术问题是提供一种基于元数据的任意版本兼容数据结构存取方法及装置,当数据结构发生变动时进行数据结构存取时,没有任何文本分析和转换的性能损失,读写效率高,并且可以自动的完成新老版本的兼容读写。
为解决上述技术问题,本发明提供的技术方案是:
第一方面,本发明提供一种基于元数据的任意版本兼容数据结构存取方法,包括:接收变动后的数据结构信息,将所述变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;根据所述变动的数据结构信息,计算变动的数据结构信息对应的版本号,将所述版本号存储到数据结构信息文件中;在所述数据结构信息文件中,根据所述版本号查找对应的数据结构信息,若查找到所述版本号对应的数据结构信息,根据所述数据结构信息进行数据的读写,若没查找到所述版本号对应的数据结构信息,不进行数据的读写。
本发明的技术方案包括数据预处理与数据的读写处理两部分,主要应用在游戏开发中,当游戏开发者通过游戏引擎进行游戏开发操作时,无论进行的操作实质上是否有数据结构的变化,游戏引擎接收到的数据都认为是变动后的数据。通常元数据是关于数据的结构化的数据,通常用在数据结构存储技术中,元数据会对数据的内容和位置进行描述,即数据的数据结构信息。因此本发明中任意版本兼容的数据结构的存取是基于元数据进行的。
首先游戏引擎接收变动后的数据结构信息,通过将变动后的数据结构信息与预先存储的数据结构信息(预先存储在游戏引擎中)作对比,获得变动的数据结构信息;然后根据所述变动的数据结构信息计算对应的版本号,将所述版本号存储到数据结构信息文件中,方便后续使用;最后根据所述数据结构信息文件中的版本号及对应的数据结构信息进行数据的读写,在读写过程中,首先查找所述版本号对应的数据结构信息,若数据结构信息发生变动,则根据所述数据结构信息进行数据的读取,同时更新版本号;若没查找到所述版本号对应的数据结构信息,表示数据文件损坏了,跳过不在读取。
本发明通过数据结构信息文件的方式进行数据的读取,通过此种方式,文件中可存储大量的数据结构信息,这样不需要任何文本分析和转换的性能损失,即不用输入大量代码即可自动完成新老版本的兼容;但如果在文件中存储大量的数据结构信息,就会使数据读写效率非常低,因此根据变动的数据结构信息进行版本号的计算,这样在文件中只存储数据结构信息对应的版本号,就不会因为存储大量的数据结构信息影响读写效率,用数据结构信息对应的版本号进行数据的读写,不仅可以实现新老版本兼容,也可保证数据读写的效率,整个过程中,无论用户对这个对象数据结构做任何的变动,存储系统的都能自动完成新老版本的兼容读写,用户不需要任何代码的辅助,这样大大降低了用户对数据版本兼容的工作量。
进一步地,所述数据的读写过程包括数据的写入和/或数据的读取两部分;其中,所述数据的写入部分仅对数据内容进行存储。其中,所述数据的写入部分只对数据内容进行存储。在数据的写入部分,不对数据结构信息进行存储,只存储数据内容,这样存储文件中不包含不同版本的数据结构信息,只有数据内容,整个读写过程在完成不同版本数据兼容的同时,读写效率高。这里的存储文件是指数据结构信息文件,即文件的写入过程和文件的读取过程都是根据数据结构信息文件进行的。
进一步地,采用反射法进行所述变动的数据结构信息与所述预先存储的数据结构信息的对比。反射法主要是对结数据结构信息发生变化的部分进行检测,方法简单易于实现。
进一步地,所述变动的数据结构信息为新增、删除和修改的数据结构信息。获得数据结构变动的新增、删除和修改的数据结构信息,这样可以在以后的处理中,减少处理的数据信息量,加快处理过程。
进一步地,所述读写的数据存储在数据文件中,所述数据文件为二进制格式文件。二进制文件的优点是在数据的存取过程中效率高,因此在整个读写过程中使用二进制文件进行数据的读写,可保证读写效率。
第二方面,本发明还提供一种基于元数据的任意版本兼容数据结构存储的装置,包括:预处理模块,用于接收变动后的数据结构信息,将所述变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;版本号获取模块,用于根据所述变动的数据结构信息,计算变动的数据结构信息对应的版本号,将所述版本号存储到数据结构信息文件中;读写模块,用于在所述数据结构信息文件中,根据所述版本号查找对应的数据结构信息,若查找到所述版本号对应的数据结构信息,根据所述数据结构信息进行数据的读写,若没查找到所述版本号对应的数据结构信息,不进行数据的读写。
本发明的技术方案包括数据预处理与数据的读写处理两部分,主要应用在游戏开发中,当游戏开发者通过游戏引擎进行游戏开发操作时,无论进行的操作实质上是否有数据结构的变化,游戏引擎接收到的数据都认为是变动后的数据。通常元数据是关于数据的结构化的数据,通常用在数据结构存储技术中,元数据会对数据对象的内容和位置进行描述,即数据的数据结构信息。因此本发明中任意版本兼容的数据结构的存取是基于元数据进行的。
首先游戏引擎接收预处理模块中变动后的数据结构信息,通过将变动后的数据结构信息与预先存储的数据结构信息(预先存储在游戏引擎中)作对比,获得变动的数据结构信息;然后通过版本号获取模块,根据所述变动的数据结构信息计算对应的版本号,将所述版本号存储到数据结构信息文件中,方便后续使用;最后通过读写模块,根据所述数据结构信息文件中的版本号及对应的数据结构信息进行数据的读写,在读写过程中,首先查找所述版本号对应的数据结构信息,若数据结构信息发生变动,则根据所述数据结构信息进行数据的读取,同时更新版本号;若没查找到所述版本号对应的数据结构信息,表示数据文件损坏了,跳过不在读取。
本发明通过数据结构信息文件的方式进行数据的读取,通过此种方式,文件中可存储大量的数据结构信息,这样不需要任何文本分析和转换的性能损失,即不用输入大量代码即可自动完成新老版本的兼容;但如果在文件中存储大量的数据结构信息,就会使数据读写效率非常低,因此根据变动的数据结构信息进行版本号的计算,这样在文件中只存储数据结构信息对应的版本号,就不会因为存储大量的数据结构信息影响读写效率,用数据结构信息对应的版本号进行数据的读写,不仅可以实现新老版本兼容,也可保证数据读写的效率,整个过程中,无论用户对这个对象数据结构做任何的变动,存储系统的都能自动完成新老版本的兼容读写,用户不需要任何代码的辅助,这样大大降低了用户对数据版本兼容的工作量。
进一步地,在数据的读写模块中,所述数据的读写过程包括数据的写入和/或数据的读取两部分;其中,所述数据的写入部分仅对数据内容进行存储。其中,所述数据的写入部分只对数据内容进行存储。在数据的写入部分,不对数据结构信息进行存储,只存储数据内容,这样存储文件中不包含不同版本的数据结构信息,只有数据内容,整个读写过程在完成不同版本数据兼容的同时,读写效率高。这里的存储文件是指数据结构信息文件,即文件的写入过程和文件的读取过程都是根据数据结构信息文件进行的。
进一步地,采用反射法进行所述变动的数据结构信息与所述预先存储的数据结构信息的对比。反射法主要是对结数据结构信息发生变化的部分进行检测,方法简单易于实现。
进一步地,所述变动的数据结构信息为新增、删除和修改的数据结构信息。获得数据结构变动的新增、删除和修改的数据结构信息,这样可以在以后的处理中,减少处理的数据信息量,加快处理过程。
进一步地,所述读写的数据存储在数据文件中,所述数据文件为二进制格式文件。二进制文件的优点是在数据的存取过程中效率高,因此在整个读写过程中使用二进制文件进行数据的读写,可保证读写效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。
图1示出了本发明第一实施例所提供的一种基于元数据的任意版本兼容数据结构存取方法的流程图;
图2示出了本发明第二实施例所提供的一种基于元数据的任意版本兼容数据结构存取装置的结构框图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只是作为示例,而不能以此来限制本发明的保护范围。
实施例一
图1示出了本发明第一实施例所提供的一种基于元数据的任意版本兼容数据结构存取方法的流程图。如图1所示,根据本发明第一实施例的一种基于元数据的任意版本兼容数据结构存取方法包括:
S1,接收变动后的数据结构信息,将变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;
S2,根据变动的数据结构信息,计算变动的数据结构信息对应的版本号,将版本号存储到数据结构信息文件中;
S3,在数据结构信息文件中,根据版本号查找对应的数据结构信息,若查找到版本号对应的数据结构信息,根据数据结构信息进行数据的读写,若没查找到所述版本号对应的数据结构信息,不进行数据的读写。
本实施例的基于元数据的任意版本兼容数据结构存取方法,主要应用在游戏开发中,游戏开发用户在运用游戏引擎进行游戏开发时,只要游戏开发者通过游戏引擎进行游戏开发操作,无论进行的操作是否有数据结构的变化,游戏引擎接收到的都认为是变动后的数据结构信息。通常元数据是关于数据的结构化的数据,通常用在数据结构存储技术中,元数据会对数据对象的内容和位置进行描述,即数据的数据结构信息。因此本发明中任意版本兼容的数据结构的存取是基于元数据进行的。
具体实施时,首先接收变动后的数据结构信息,先通过将变动后的数据结构信息与预先存储的数据结构信息(预先存储在游戏引擎中)作对比,获得变动的数据结构信息;然后根据变动的数据结构信息计算对应的版本号,将版本号存储到数据结构信息文件中,方便后续使用;最后根据数据结构信息文件中的版本号及对应的数据结构信息进行数据的读写,在读写过程中,首先查找版本号对应的数据结构信息,若数据结构信息发生变动,则根据数据结构信息进行数据的读取,同时更新版本号;若没查找到所述版本号对应的数据结构信息,表示数据文件损坏了,跳过不在读取。
本发明通过数据结构信息文件的方式进行数据的读取,通过此种方式,文件中可存储大量的数据结构信息,这样不需要任何文本分析和转换的性能损失,即不用输入大量代码即可自动完成新老版本的兼容;但如果在文件中存储大量的数据结构信息,就会使数据读写效率非常低,因此根据变动的数据结构信息进行版本号的计算,这样在文件中只存储数据结构信息对应的版本号,就不会因为存储大量的数据结构信息影响读写效率,用数据结构信息对应的版本号进行数据的读写,不仅可以实现新老版本兼容,也可保证数据读写的效率,整个过程中,无论用户对这个对象数据结构做任何的变动,存储系统的都能自动完成新老版本的兼容读写,用户不需要任何代码的辅助,这样大大降低了用户对数据版本兼容的工作量。
在具体实施时,计算变动数据结构信息对应的版本号存储在数据结构信息文件中,即游戏引擎中,方便后续使用;同时也可将此版本号存储在远端服务器中,避免在游戏引擎发生故障时,不影响版本号数据的调用。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,数据的读写过程包括数据的写入和/或数据的读取两部分;其中,数据的写入部分仅对数据内容进行存储。其中,数据的写入部分只对数据内容进行存储。在数据的写入部分,不对数据结构信息进行存储,只存储数据内容,这样存储文件中不包含不同版本的数据结构信息,只有数据内容,整个读写过程在完成不同版本数据兼容的同时,读写效率高。这里的存储文件是指数据结构信息文件,即文件的写入过程和文件的读取过程都是根据数据结构信息文件进行的。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,采用反射法进行变动的数据结构信息与预先存储的数据结构信息的对比。反射法主要是对结数据结构信息发生变化的部分进行检测,方法简单易于实现。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,变动的数据结构信息为新增、删除和修改的数据结构信息。获得数据结构变动的新增、删除和修改的数据结构信息,这样可以在以后的处理中,减少处理的数据信息量,加快处理过程。不同的数据结构变动对应不同的版本号,例如,新增的数据结构信息对应的版本号11,在查找到版本号11对应的数据结构信息时,就将对应的新增数据结构信息对应的数据内容存储到数据结构信息文件中,然后根据需要将新增的数据结构信息对应的数据读取出来,其中数据具体内容包括图像,文字,数字,计算机代码等。同理对于删除和修改的数据结构信息的读写处理与新增的数据结构信息处理一致。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,读写的数据存储在数据文件中,数据文件为二进制格式文件。二进制文件的优点是在数据的存取过程中效率高,因此在整个读写过程中使用二进制文件进行数据的读写,可保证读写效率。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,版本号为一个四字节元数据。这样在数据对象的保存中,没有在存储文件中增加任何的数据结构和版本的描述信息,文件几乎没有冗余浪费。
作为本发明基于元数据的任意版本兼容数据结构存取方法的具体实施例,给出以下程序,具体说明本发明方法的执行。
例如:
在类TestClass中,要对数据data0进行存取,只需要打上CSUtility.Support.AutoSaveLoadAttribute这个标志就可以了,然后在文件写入时调用CSUtility.Support.XndSaveLoadProxy.Write,在读取时调用CSUtility.Support.XndSaveLoadProxy.Read就可以实现文件的读写。无论是在TestClass中增加数据data1,或者删除了数据data0,不需要修改读写部分的代码,以前版本的文件都能够正确的读取进来。这样用户不用写入任何一条代码,就能实现新老版本文件的读写,提高了用户体验。
实施例二
参见图2,本发明实施例还提供一种基于元数据的任意版本兼容数据结构存取装置100,包括:
预处理模块1,用于接收变动后的数据结构信息,将变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;
版本号获取模块2,用于根据变动的数据结构信息,计算变动的数据结构信息对应的版本号,将版本号存储到数据结构信息文件中;
读写模块3,用于在数据结构信息文件中,根据版本号查找对应的数据结构信息,若查找到版本号对应的数据结构信息,根据数据结构信息进行数据的读写,若没查找到所述版本号对应的数据结构信息,不进行数据的读写。
本实施例的基于元数据的任意版本兼容数据结构存取装置100,主要应用在游戏开发中,游戏开发用户在运用游戏引擎进行游戏开发时,只要通过游戏开发者通过游戏引擎进行游戏开发操作,无论进行的操作是否有数据结构的变化,游戏引擎接收到的都认为是变动后的数据结构信息。通常元数据是关于数据的结构化的数据,通常用在数据结构存储技术中,元数据会对数据对象的内容和位置进行描述,即数据的数据结构信息。因此本发明中任意版本兼容的数据结构的存取是基于元数据进行的。
具体实施时,首先接收预处理模块1中变动后的数据结构信息,先通过将变动后的数据结构信息与预先存储的数据结构信息(预先存储在游戏引擎中)作对比,获得变动的数据结构信息;然后通过版本号获取模块2,根据变动的数据结构信息计算对应的版本号,将版本号存储到数据结构信息文件中,方便后续使用;最后通过读写模块3,根据数据结构信息文件中的版本号及对应的数据结构信息进行数据的读写,在读写过程中,首先查找版本号对应的数据结构信息,若数据结构信息发生变动,则根据数据结构信息进行数据的读取,同时更新版本号;若没查找到所述版本号对应的数据结构信息,表示数据文件损坏了,跳过不在读取。
本发明通过数据结构信息文件的方式进行数据的读取,通过此种方式,文件中可存储大量的数据结构信息,这样不需要任何文本分析和转换的性能损失,即不用输入大量代码即可自动完成新老版本的兼容;但如果在文件中存储大量的数据结构信息,就会使数据读写效率非常低,因此根据变动的数据结构信息进行版本号的计算,这样在文件中只存储数据结构信息对应的版本号,就不会因为存储大量的数据结构信息影响读写效率,用数据结构信息对应的版本号进行数据的读写,不仅可以实现新老版本兼容,也可保证数据读写的效率,整个过程中,无论用户对这个对象数据结构做任何的变动,存储系统的都能自动完成新老版本的兼容读写,用户不需要任何代码的辅助,这样大大降低了用户对数据版本兼容的工作量。
在具体实施时,计算变动数据结构信息对应的版本号存储在数据结构信息文件中,即游戏引擎中,方便后续使用;同时也可将此版本号存储在远端服务器中,避免在游戏引擎发生故障时,不影响版本号数据的调用。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,在数据的读写模块3中,数据的读写过程包括数据的写入和/或数据的读取两部分;其中,数据的写入部分仅对数据内容进行存储。其中,数据的写入部分只对数据内容进行存储。在数据的写入部分,不对数据结构信息进行存储,只存储数据内容,这样存储文件中不包含不同版本的数据结构信息,只有数据内容,整个读写过程在完成不同版本数据兼容的同时,读写效率高。这里的存储文件是指数据结构信息文件,即文件的写入过程和文件的读取过程都是根据数据结构信息文件进行的。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,采用反射法进行变动的数据结构信息与预先存储的数据结构信息的对比。反射法主要是对结数据结构信息发生变化的部分进行检测,方法简单易于实现。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,变动的数据结构信息为新增、删除和修改的数据结构信息。获得数据结构变动的新增、删除和修改的数据结构信息,这样可以在以后的处理中,减少处理的数据信息量,加快处理过程。不同的数据结构变动对应不同的版本号,例如,新增的数据结构信息对应的版本号11,在查找到版本号11对应的数据结构信息时,就将对应的新增数据结构信息对应的数据内容存储到数据结构信息文件中,然后根据需要将新增的数据结构信息对应的数据读取出来,其中数据具体包括图像,文字,数字,计算机代码等。同理对于删除和修改的数据结构信息的读写处理与新增的数据结构信息处理一致。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,读写的数据存储在数据文件中,数据文件为二进制格式文件。二进制文件的优点是在数据的存取过程中效率高,因此在整个读写过程中使用二进制文件进行数据的读写,可保证读写效率。
作为本发明基于元数据的任意版本兼容数据结构存取方法的优选实施例,版本号为一个四字节元数据。这样在数据对象的保存中,没有在存储文件中增加任何的数据结构和版本的描述信息,文件几乎没有冗余浪费。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (10)
1.一种基于元数据的任意版本兼容数据结构存取方法,其特征在于,包括:
S1,接收变动后的数据结构信息,将所述变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;
S2,根据所述变动的数据结构信息,计算变动的数据结构信息对应的版本号,将所述版本号存储到数据结构信息文件中;
S3,在所述数据结构信息文件中,根据所述版本号查找对应的数据结构信息,若查找到所述版本号对应的数据结构信息,根据所述数据结构信息进行数据的读写,若没查找到所述版本号对应的数据结构信息,不进行数据的读写。
2.根据权利要求1所述的基于元数据的任意版本兼容数据结构存取方法,其特征在于,
所述S3中,所述数据的读写过程包括数据的写入和/或数据的读取两部分;其中,所述数据的写入部分仅对数据内容进行存储。
3.根据权利要求1所述的基于元数据的任意版本兼容数据结构存取方法,其特征在于,
所述S1中,采用反射法进行所述变动的数据结构信息与所述预先存储的数据结构信息的对比。
4.根据权利要求1所述的基于元数据的任意版本兼容数据结构存取方法,其特征在于,
所述S1中,所述变动的数据结构信息为新增、删除和修改的数据结构信息。
5.根据权利要求1所述的基于元数据的任意版本兼容数据结构存取方法,其特征在于,
所述S3中,所述读写的数据存储在数据文件中,所述数据文件为二进制格式文件。
6.一种基于元数据的任意版本兼容数据结构存取装置,其特征在于,包括:
预处理模块,用于接收变动后的数据结构信息,将所述变动后的数据结构信息与预先存储的数据结构信息作对比,获得变动的数据结构信息;
版本号获取模块,用于根据所述变动的数据结构信息,计算变动的数据结构信息对应的版本号,将所述版本号存储到数据结构信息文件中;
读写模块,用于在所述数据结构信息文件中,根据所述版本号查找对应的数据结构信息,若查找到所述版本号对应的数据结构信息,根据所述数据结构信息进行数据的读写,若没查找到所述版本号对应的数据结构信息,不进行数据的读写。
7.根据权利要求6所述的基于元数据的任意版本兼容数据结构存取装置,其特征在于,所述读写模块分为:
所述读写模块中,所述数据的读写过程包括数据的写入和/或数据的读取两部分;其中,所述数据的写入部分仅对数据内容进行存储。
8.根据权利要求6所述的基于元数据的任意版本兼容数据结构存取装置,其特征在于,
所述预处理模块中,采用反射法进行所述变动的数据结构信息与所述预先存储的数据结构信息的对比。
9.根据权利要求6所述的基于元数据的任意版本兼容数据结构存取装置,其特征在于,
所述预处理模块中,所述变动的数据结构信息为新增、删除和修改的数据结构信息。
10.根据权利要求6所述的基于元数据的任意版本兼容数据结构存取装置,其特征在于,
所述读写模块中,所述读写的数据存储在数据文件中,所述数据文件为二进制格式文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610192955.0A CN105893512A (zh) | 2016-03-30 | 2016-03-30 | 一种基于元数据的任意版本兼容数据结构存取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610192955.0A CN105893512A (zh) | 2016-03-30 | 2016-03-30 | 一种基于元数据的任意版本兼容数据结构存取方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105893512A true CN105893512A (zh) | 2016-08-24 |
Family
ID=57014114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610192955.0A Pending CN105893512A (zh) | 2016-03-30 | 2016-03-30 | 一种基于元数据的任意版本兼容数据结构存取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105893512A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681456A (zh) * | 2018-04-02 | 2018-10-19 | 长沙八思量信息技术有限公司 | 版本兼容的数据结构存取方法、计算机装置及存储介质 |
CN110018845A (zh) * | 2019-04-16 | 2019-07-16 | 成都四方伟业软件股份有限公司 | 元数据版本对比方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102195895A (zh) * | 2011-03-23 | 2011-09-21 | 中兴通讯股份有限公司 | 一种消息发送、接收处理的方法及其装置 |
CN102289460A (zh) * | 2011-07-13 | 2011-12-21 | 中国工商银行股份有限公司 | 一种向测试环境进行报表元数据同步的方法及系统 |
CN103946794A (zh) * | 2011-09-30 | 2014-07-23 | Emc公司 | 数据特征的滚动升级的系统和方法 |
CN104462362A (zh) * | 2014-12-08 | 2015-03-25 | 曙光信息产业(北京)有限公司 | 一种数据存储、查询、加载方法及装置 |
US9063748B1 (en) * | 2013-03-19 | 2015-06-23 | Amdocs Software Systems Limited | System, method, and computer program for allowing a plurality of application programming interface (API) versions to interact with a single version of implementation code |
-
2016
- 2016-03-30 CN CN201610192955.0A patent/CN105893512A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102195895A (zh) * | 2011-03-23 | 2011-09-21 | 中兴通讯股份有限公司 | 一种消息发送、接收处理的方法及其装置 |
CN102289460A (zh) * | 2011-07-13 | 2011-12-21 | 中国工商银行股份有限公司 | 一种向测试环境进行报表元数据同步的方法及系统 |
CN103946794A (zh) * | 2011-09-30 | 2014-07-23 | Emc公司 | 数据特征的滚动升级的系统和方法 |
US9063748B1 (en) * | 2013-03-19 | 2015-06-23 | Amdocs Software Systems Limited | System, method, and computer program for allowing a plurality of application programming interface (API) versions to interact with a single version of implementation code |
CN104462362A (zh) * | 2014-12-08 | 2015-03-25 | 曙光信息产业(北京)有限公司 | 一种数据存储、查询、加载方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681456A (zh) * | 2018-04-02 | 2018-10-19 | 长沙八思量信息技术有限公司 | 版本兼容的数据结构存取方法、计算机装置及存储介质 |
CN110018845A (zh) * | 2019-04-16 | 2019-07-16 | 成都四方伟业软件股份有限公司 | 元数据版本对比方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7971175B2 (en) | Method and system for implementing cached parameterized cells | |
CN103473067B (zh) | 嵌入式Linux分区与数据还原方法、系统及系统开发方法 | |
US8037450B2 (en) | System and methods for tracing code generation in template engines | |
CN111367976B (zh) | 基于java反射机制的excel文件数据的导出方法及装置 | |
CN103870588B (zh) | 一种在数据库中使用的方法及装置 | |
US20090006340A1 (en) | Method for Accessing Data in an Xml File | |
CN109426496B (zh) | 程序日志写入文件的方法、存储介质、电子设备及系统 | |
CN114860654A (zh) | 一种基于Flink数据流的Iceberg表Schema动态变更方法及系统 | |
CN110347390B (zh) | 一种快速生成web页面的方法、存储介质、设备及系统 | |
US10083192B2 (en) | Deleted database record reuse | |
CN105677805A (zh) | 一种利用protobuf的数据存储、读取方法及装置 | |
CN113918535A (zh) | 一种数据读取方法、装置、设备及存储介质 | |
CN105893512A (zh) | 一种基于元数据的任意版本兼容数据结构存取方法及装置 | |
CN101770367A (zh) | .net文件压缩方法和装置 | |
CN107766258A (zh) | 内存存储方法与装置、内存查询方法与装置 | |
US20070097401A1 (en) | Electronic paper file generator | |
CN106909623B (zh) | 一种支持高效海量数据分析和检索的数据装置及数据存储方法 | |
CN110955658B (zh) | 一种基于Java智能合约的数据组织和存储方法 | |
CN114816247A (zh) | 一种逻辑数据获取方法及装置 | |
Ratanotayanon et al. | Cross-artifact traceability using lightweight links | |
US7991756B2 (en) | Adding low-latency updateable metadata to a text index | |
CN109426702A (zh) | iOS平台文件读取保护方法、存储介质、电子设备及系统 | |
CN114356912A (zh) | 一种向数据库写入数据的方法及计算机设备 | |
JP2000250791A (ja) | Dmlオブジェクト再生成時におけるメッセージ表示方法ならびに装置及び同方法がプログラムされ記録された記録媒体 | |
CN118034777B (zh) | 基于fttr的日志管理与版本控制方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160824 |
|
RJ01 | Rejection of invention patent application after publication |