CN106776125B - 一种实现pc客户端软件实时修复的方法及装置 - Google Patents
一种实现pc客户端软件实时修复的方法及装置 Download PDFInfo
- Publication number
- CN106776125B CN106776125B CN201611058655.XA CN201611058655A CN106776125B CN 106776125 B CN106776125 B CN 106776125B CN 201611058655 A CN201611058655 A CN 201611058655A CN 106776125 B CN106776125 B CN 106776125B
- Authority
- CN
- China
- Prior art keywords
- file
- memory
- difference data
- offset
- configuration 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/142—Reconfiguring to eliminate the error
- G06F11/143—Reconfiguring to eliminate the error with loss of software functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种实现PC客户端软件实时修复的方法及装置,涉及软件修复/更新技术领域。该方法包括:服务器端获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录;根据找出的差异数据,生成配置文件;将生成的配置文件下发至PC客户端;PC客户端根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据。本发明能对PC客户端软件的少量错误进行在线实时修复/更新,不但节省带宽、节约网络流量,而且无需关闭软件中断操作,提高了用户体验。
Description
技术领域
本发明涉及软件修复/更新技术领域,具体来讲是一种实现PC(PersonalComputer,个人计算机)客户端软件实时修复的方法及装置。
背景技术
目前,对于PC客户端软件进行修复/更新的方法是从服务器下载一个最新的软件包来进行修复/更新操作。而一些更先进的修复/更新方案是对客户端软件的组件进行修复/更新,从而只需要修复/更新部分修改过的组件,对于没有改动的组件则不需要进行修复/更新。这样很大的减少了带宽,节约了网络流量,提高了用户修复/更新成功率,同时也减少了服务器下载软件的宽带负载。
但在实际使用中发现,现有的修复/更新方法依然存在以下缺陷:
(1)在某些情况下,PC客户端软件仅仅只更新了一个数据或者只更改了一个判断语句(此时只想修改客户端代码中的一个常量配置数据,或者说需要修改某个阈值等),因此只需要更新几个字节的数据即可,但如果按照现有的方法更新整个文件则可能需要消耗比较多的网络流量。
(2)当存在一种情况是用户已经在运行PC客户端软件,但需要修复/更新某个文件的某个数据。此时通常的做法是先让用户关闭客户端软件,再更新客户端软件,然后重新打开客户端软件。这一方式无疑会中断用户的当前操作,影响使用,从而导致用户体验较差。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种实现PC客户端软件实时修复的方法及装置,能对PC客户端软件的少量错误进行在线实时修复/更新,不但节省带宽、节约网络流量,而且无需关闭软件中断操作,提高了用户体验。
为达到以上目的,本发明提供一种实现PC客户端软件实时修复的方法,包括以下步骤:
步骤S1:服务器端获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录;
步骤S2:服务器端根据找出的差异数据,生成配置文件;
步骤S3:服务器端将生成的配置文件下发至PC客户端;
步骤S4:PC客户端根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据。
本发明还提供一种实现PC客户端软件实时修复的装置,包括设置于服务器端的功能模块文件对比单元、配置文件生成单元、配置文件下发单元;以及设置于PC客户端的内存数据修改单元;
所述功能模块文件对比单元用于:获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录;所述配置文件生成单元用于:根据功能模块文件对比单元找出的差异数据,生成配置文件;所述配置文件下发单元用于:将生成的配置文件下发至PC客户端;所述内存数据修改单元用于:根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据。
本发明的有益效果在于:
本发明中,服务器端能获取PC客户端软件中出现错误的功能模块文件,并将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找到其中的差异,然后将差异生成配置文件下发至PC客户端;PC客户端收到配置文件后,实现动态的修改客户端软件的内存代码数据,来达到实时修复/更新的目的。
与现有技术相比,本发明只需要对出现错误的功能模块文件中的几个字节(即差异数据)进行修复/更新,就可达到实时修复/更新的目的,特别适用于客户端出现错误需要紧急修复/更新,而服务器端又不想重新发布版本的时候。只需要非常小的几个字节改动(如更新某个配置数据或更新某个阈值数据等),即可修复软件,极大的减少了带宽,节约了网络流量。并且,本发明提供的方法可以在不关闭PC客户端软件的同时对PC客户端软件进行修复/更新,不会中断用户的当前操作,不影响使用,用户体验佳。
附图说明
图1为本发明实施例中实现PC客户端软件实时修复的方法的流程图;
图2为本发明实施例中实现PC客户端软件实时修复的装置的结构框图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
参见图1所示,本发明实施例提供一种实现PC客户端软件实时修复的方法,包括以下步骤:
步骤S1:当PC客户端软件出现错误需要紧急修复/更新,而服务器端又不想重新发布版本时,服务器端获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录。
可以理解的是,在将功能模块文件与服务器端保存的相应的功能模块文件进行对比时,可通过二进制文件对比工具来实现。该二进制文件对比工具可以使用第三方的二进制文件对比工具,也可以是开发人员自己编写的二进制文件对比工具,只需要分别读取2个功能模块文件,记录下2个文件不一样的地方即可。具体来说,步骤S1具体包括以下流程:
步骤S101:服务器端获取PC客户端软件中出现错误的功能模块文件,转入步骤S102。
步骤S102:通过二进制文件对比工具将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,查找出两个文件的差异数据(即不一样的地方),转入步骤S103。
步骤S103:记录下差异数据的文件偏移地址FileOffset(相对于文件开始的偏移);并记录下服务器端保存的相应的功能模块文件中的差异数据NewData和差异数据长度。
步骤S2:服务器端根据找出的差异数据,生成配置文件。
可以理解的是,由于一个功能模块文件在磁盘中的文件内容对齐方式和内存中的文件对齐方式是不一样的,而配置文件在用户电脑上(即客户端上)是修改内存的数据,所以需要转换成内存的偏移。因此,服务器端获取到了差异数据的文件偏移地址后,需要将其转换成功能模块的内存偏移。转换方法如下:
(1)找到文件偏移所属功能模块的段的相对内存地址(功能模块文件的组织结构是由多个段组成,每个数据必定属于某个段,如代码段,数据段等)。
(2)根据内存偏移=该段的内存地址+(文件偏移-该段的文件偏移),得到差异数据的内存偏移;
其中,内存偏移就是实际需要修改的内存不一致的内存地址,即差异数据的内存偏移;
该段的内存地址是指实际需要修改的内存地址的段的地址,即文件偏移所属功能模块的段的相对内存地址;
文件偏移是指对比2个功能模块文件得到的文件差异,相对于文件开头的偏移,即差异数据的文件偏移地址;
该段的文件偏移是指文件偏移在该文件的段的偏移。
在上述基础上,实际操作时,步骤S2具体包括以下流程:
步骤S201:服务器端通过将记录的差异数据的文件偏移地址转换成功能模块的内存偏移,得到差异数据的内存偏移,转入步骤S202。具体转换操作见上文详述,此处不赘述。
步骤S202:根据得到的差异数据的内存偏移以及步骤S103中记录的差异数据NewData、差异数据长度,生成PC客户端需要的配置文件,该配置文件的内容包括:功能模块的文件名(即需要修改的模块的文件名)+差异数据的内存偏移(即需要修改的内存偏移)+差异数据长度(即需要修改的数据长度)+差异数据NewData(即需要修改的数据内容)。
步骤S3:服务器端将生成的配置文件下发至PC客户端。
步骤S4:PC客户端根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据。
具体来说,步骤S4具体包括以下流程:
步骤S401:PC客户端收到服务器端发来的配置文件后,解析出配置文件中的字段;并通过调用Windows的API(Application Programming Interface,应用编程接口)函数HMODULE=GetModuleHandle(“功能模块的文件名”),获取到需要修改的功能模块的内存地址HMODULE,其中,“功能模块的文件名”表示该函数传入的参数,转入步骤S402。
步骤S402:根据实际需要修改的内存地址=需要修改的功能模块的内存地址HMODULE+需要修改的内存偏移(即差异数据的内存偏移),得到实际需要修改的内存地址,转入步骤S403。
步骤S403:通过调用Windows的API函数VirtualProtect,将实际需要修改的内存地址的内存属性设置为可改写,转入步骤S404。
具体来说,调用的VirtualProtect函数具体为:
BOOL WINAPI VirtualProtect(LPVOID lpAddress,SIZE_T dwSize,DWORDflNewProtect,PDWORD lpflOldProtect);
其中,lpAddress填入得到的实际需要修改的内存地址;
dwSize填入需要修改的数据长度,即差异数据长度;
flNewProtect填入“PAGE_READWRITE”,用来设置为可改写;
lpflOldProtect用来保存内存块原先的内存属性。
步骤S404:待内存属性设置完成后,将服务器下发的差异数据拷贝到实际需要修改的内存地址处,即实现了对PC客户端软件的实时修复/更新。
步骤S405:待差异数据拷贝完成后,再次调用Windows的API函数VirtualProtect将设置的内存属性改回原来的内存属性值(即不可改写),结束。
参见图2所示,本发明实施例还提供一种实现PC客户端软件实时修复的装置,包括设置于服务器端的功能模块文件对比单元、配置文件生成单元、配置文件下发单元;以及设置于PC客户端的内存数据修改单元。
其中,功能模块文件对比单元用于:获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录。其具体流程为:获取PC客户端软件中出现错误的功能模块文件;通过二进制文件对比工具将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,查找出两个文件的差异数据;记录下差异数据的文件偏移地址,并记录下服务器端保存的相应的功能模块文件中的差异数据和差异数据长度。
配置文件生成单元用于:根据功能模块文件对比单元找出的差异数据,生成配置文件。其具体流程为:将功能模块文件对比单元记录的差异数据的文件偏移地址转换为功能模块的内存偏移,得到差异数据的内存偏移;根据得到的差异数据的内存偏移以及功能模块文件对比单元记录的差异数据、差异数据长度,生成PC客户端需要的配置文件。
更进一步地,所述配置文件生成单元得到差异数据的内存偏移的具体流程为:找到文件偏移所属功能模块的段的相对内存地址;根据内存偏移=文件偏移所属功能模块的段的相对内存地址+(差异数据的文件偏移地址-文件偏移在该文件的段的偏移),得到差异数据的内存偏移。
配置文件下发单元用于:将生成的配置文件下发至PC客户端。
内存数据修改单元用于:根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据。其具体流程为:所述内存数据修改单元收到服务器端发来的配置文件后,解析出配置文件中的字段;并通过调用Windows的API函数HMODULE=GetModuleHandle(“功能模块的文件名”),获取到需要修改的功能模块的内存地址;根据实际需要修改的内存地址=需要修改的功能模块的内存地址+差异数据的内存偏移,得到实际需要修改的内存地址;通过调用Windows的API函数VirtualProtect,将实际需要修改的内存地址的内存属性设置为可改写;将服务器下发的差异数据拷贝到实际需要修改的内存地址处;再次调用Windows的API函数VirtualProtect,将设置的内存属性改回原来的内存属性值。
需要说明的是:上述实施例提供的装置在进行操作时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (6)
1.一种实现PC客户端软件实时修复的方法,其特征在于,该方法包括以下步骤:
步骤S1:服务器端获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录;
步骤S2:服务器端根据找出的差异数据,生成配置文件;
步骤S3:服务器端将生成的配置文件下发至PC客户端;
步骤S4:PC客户端根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据;
步骤S1具体包括以下流程:
步骤S101:服务器端获取PC客户端软件中出现错误的功能模块文件;
步骤S102:通过二进制文件对比工具将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,查找出两个文件的差异数据;
步骤S103:记录下差异数据的文件偏移地址;并记录下服务器端保存的相应的功能模块文件中的差异数据和差异数据长度;
步骤S2具体包括以下流程:
步骤S201:服务器端通过将记录的差异数据的文件偏移地址转换为功能模块的内存偏移,得到差异数据的内存偏移;
步骤S202:根据得到的差异数据的内存偏移以及步骤S103中记录的差异数据、差异数据长度,生成PC客户端需要的配置文件,该配置文件的内容包括:功能模块的文件名、差异数据的内存偏移、差异数据长度和差异数据。
2.如权利要求1所述的实现PC客户端软件实时修复的方法,其特征在于:步骤S201中,服务器端通过将记录的差异数据的文件偏移地址转换为功能模块的内存偏移,得到差异数据的内存偏移的具体过程为:
找到文件偏移所属功能模块的段的相对内存地址;
根据内存偏移=文件偏移所属功能模块的段的相对内存地址+(差异数据的文件偏移地址-文件偏移在该文件的段的偏移),得到差异数据的内存偏移。
3.如权利要求1所述的实现PC客户端软件实时修复的方法,其特征在于,步骤S4具体包括以下流程:
步骤S401:PC客户端收到服务器端发来的配置文件后,解析出配置文件中的字段;并通过调用Windows的API函数HMODULE=GetModuleHandle(“功能模块的文件名”),获取到需要修改的功能模块的内存地址;
步骤S402:根据实际需要修改的内存地址=需要修改的功能模块的内存地址+差异数据的内存偏移,得到实际需要修改的内存地址;
步骤S403:通过调用Windows的API函数VirtualProtect,将实际需要修改的内存地址的内存属性设置为可改写;
步骤S404:将服务器下发的差异数据拷贝到实际需要修改的内存地址处;
步骤S405:再次调用Windows的API函数VirtualProtect,将设置的内存属性改回原来的内存属性值,结束。
4.一种实现PC客户端软件实时修复的装置,其特征在于:包括设置于服务器端的功能模块文件对比单元、配置文件生成单元、配置文件下发单元;以及设置于PC客户端的内存数据修改单元;
所述功能模块文件对比单元用于:获取PC客户端软件中出现错误的功能模块文件,将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,找出差异数据并记录;
所述配置文件生成单元用于:根据功能模块文件对比单元找出的差异数据,生成配置文件;
所述配置文件下发单元用于:将生成的配置文件下发至PC客户端;
所述内存数据修改单元用于:根据服务器端发来的配置文件,动态修改PC客户端软件中相应功能模块的内存数据;
所述功能模块文件对比单元进行对比操作的具体流程为:获取PC客户端软件中出现错误的功能模块文件;通过二进制文件对比工具将该功能模块文件与服务器端保存的相应的功能模块文件进行对比,查找出两个文件的差异数据;记录下差异数据的文件偏移地址,并记录下服务器端保存的相应的功能模块文件中的差异数据和差异数据长度;
所述配置文件生成单元生成配置文件的具体流程为:将功能模块文件对比单元记录的差异数据的文件偏移地址转换为功能模块的内存偏移,得到差异数据的内存偏移;根据得到的差异数据的内存偏移以及功能模块文件对比单元记录的差异数据、差异数据长度,生成PC客户端需要的配置文件,该配置文件的内容包括:功能模块的文件名、差异数据的内存偏移、差异数据长度和差异数据。
5.如权利要求4所述的实现PC客户端软件实时修复的装置,其特征在于,所述配置文件生成单元得到差异数据的内存偏移的具体流程为:找到文件偏移所属功能模块的段的相对内存地址;根据内存偏移=文件偏移所属功能模块的段的相对内存地址+(差异数据的文件偏移地址-文件偏移在该文件的段的偏移),得到差异数据的内存偏移。
6.如权利要求4所述的实现PC客户端软件实时修复的装置,其特征在于,所述内存数据修改单元修改内存数据的具体流程为:所述内存数据修改单元收到服务器端发来的配置文件后,解析出配置文件中的字段;并通过调用Windows的API函数HMODULE=GetModuleHandle(“功能模块的文件名”),获取到需要修改的功能模块的内存地址;根据实际需要修改的内存地址=需要修改的功能模块的内存地址+差异数据的内存偏移,得到实际需要修改的内存地址;通过调用Windows的API函数VirtualProtect,将实际需要修改的内存地址的内存属性设置为可改写;将服务器下发的差异数据拷贝到实际需要修改的内存地址处;再次调用Windows的API函数VirtualProtect,将设置的内存属性改回原来的内存属性值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611058655.XA CN106776125B (zh) | 2016-11-25 | 2016-11-25 | 一种实现pc客户端软件实时修复的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611058655.XA CN106776125B (zh) | 2016-11-25 | 2016-11-25 | 一种实现pc客户端软件实时修复的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106776125A CN106776125A (zh) | 2017-05-31 |
CN106776125B true CN106776125B (zh) | 2020-04-10 |
Family
ID=58912647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611058655.XA Active CN106776125B (zh) | 2016-11-25 | 2016-11-25 | 一种实现pc客户端软件实时修复的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106776125B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108874884B (zh) * | 2018-05-04 | 2021-05-04 | 广州多益网络股份有限公司 | 数据同步更新方法、装置和***、服务器设备 |
CN110321141A (zh) * | 2019-06-06 | 2019-10-11 | 武汉斗鱼鱼乐网络科技有限公司 | 应用程序native层实时修复方法、设备及*** |
CN111338832A (zh) * | 2020-02-17 | 2020-06-26 | 中国农业银行股份有限公司 | 一种数据处理方法及装置 |
CN113064702B (zh) * | 2021-03-04 | 2023-01-13 | 山东英信计算机技术有限公司 | 一种加速部署内存模块配置spd信息的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136013A (zh) * | 2011-12-01 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 软件升级方法和*** |
CN104199666A (zh) * | 2014-09-09 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种应用程序动态配置方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110788B (zh) * | 2006-07-20 | 2010-09-08 | 阿里巴巴集团控股有限公司 | 升级客户端软件的方法及*** |
US20100146481A1 (en) * | 2008-12-09 | 2010-06-10 | Microsoft Corporation | Developing applications at runtime |
US8375382B2 (en) * | 2009-05-13 | 2013-02-12 | International Business Machines Corporation | Enabling parallel websphere runtime versions |
WO2016164033A1 (en) * | 2015-04-10 | 2016-10-13 | Hewlett Packard Enterprise Development Lp | Partial backup during runtime for memory modules with volatile memory and non-volatile memory |
-
2016
- 2016-11-25 CN CN201611058655.XA patent/CN106776125B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136013A (zh) * | 2011-12-01 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 软件升级方法和*** |
CN104199666A (zh) * | 2014-09-09 | 2014-12-10 | 北京京东尚科信息技术有限公司 | 一种应用程序动态配置方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106776125A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106776125B (zh) | 一种实现pc客户端软件实时修复的方法及装置 | |
CN107528872B (zh) | 一种数据恢复方法、装置及云存储*** | |
US10965732B2 (en) | Streaming zip | |
TW200305319A (en) | Delta replication of source files and packages across networked resources | |
US11093387B1 (en) | Garbage collection based on transmission object models | |
US8972677B1 (en) | Systems and methods for implementing a storage interface specific to an archiving platform | |
CN109766330B (zh) | 数据分片方法、装置、电子设备及存储介质 | |
CN109710185B (zh) | 数据处理方法及装置 | |
CN111061817A (zh) | 自适应业务构建***、方法及计算机可读介质 | |
US9600486B2 (en) | File system directory attribute correction | |
CN103944981A (zh) | 一种基于纠删码技术改进的云存储***及实现方法 | |
CN103177077B (zh) | 一种apk文件的存储及输出方法 | |
KR102295593B1 (ko) | 인증 문서를 자동으로 생성하는 기법 | |
CN108874825B (zh) | 一种异常数据的校验方法和装置 | |
CN112527781B (zh) | 一种智能合约数据迁移方法及*** | |
WO2022142536A1 (zh) | 灰度发布方法、***、装置、设备及存储介质 | |
US10423495B1 (en) | Deduplication grouping | |
JP4423079B2 (ja) | スキーマ化されたクエリできるデータソースとしてのレポート呈示 | |
CN111107133A (zh) | 差异包的生成方法、数据更新方法、装置和存储介质 | |
CN115001967A (zh) | 一种数据采集方法、装置、电子设备及存储介质 | |
US20150234853A1 (en) | Methods Circuits Apparatuses Systems and Associated Computer Executable Code for Data Deduplication | |
US20240028608A1 (en) | Schema validation with support for ordering | |
CN111443992B (zh) | docker镜像的差量导出方法、计算机存储介质及电子设备 | |
CN109254786B (zh) | 一种软件备份还原方法及*** | |
CN112748949A (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 |