





技术领域technical field
本公开涉及镜像管理技术领域,更具体地,涉及一种镜像管理方法、一种镜像管理装置、一种电子设备以及一种计算机可读存储介质。The present disclosure relates to the technical field of image management, and more particularly, to an image management method, an image management apparatus, an electronic device, and a computer-readable storage medium.
背景技术Background technique
云服务器镜像是一个包含软件配置(例如操作系统,应用服务器和应用程序)的云服务器的模板。用户在创建云服务器实例时需要指定一个镜像,该镜像提供的操作系统和软件会安装在该实例上。A cloud server image is a template for a cloud server that contains software configurations such as operating systems, application servers, and applications. When creating a cloud server instance, users need to specify an image, and the operating system and software provided by the image will be installed on the instance.
OpenStack是一个开源的云计算管理平台项目,其主要组件包括身份服务模块keystone、计算服务组件Nova、镜像服务组件Glance、对象存储服务模块Swift等。其中,计算服务组件、镜像服务组件和对象存储服务模块(或者称之为存储后端)可共同用于实现镜像查询、镜像上传、镜像下载等功能。OpenStack is an open source cloud computing management platform project. Its main components include identity service module keystone, computing service component Nova, image service component Glance, and object storage service module Swift. Among them, the computing service component, the image service component and the object storage service module (or referred to as the storage backend) can be jointly used to realize functions such as image query, image upload, and image download.
图1示出了一种现有的镜像下载方式。其中,计算管理组件向镜像管理组件发送下载请求,镜像管理组件根据该下载请求向存储后端请求镜像数据,存储后端通过镜像管理组件将镜像数据发送至计算机管理组件,从而完成对镜像的下载。上述方式的不足之处在于,镜像的下载过程需要依赖于镜像管理组件和存储后端之间的数据传输,因此镜像下载速度受限于镜像管理组件和存储后端之间的带宽,通常下载过程耗时较长。Figure 1 shows an existing image downloading method. The computing management component sends a download request to the image management component, the image management component requests image data from the storage backend according to the download request, and the storage backend sends the image data to the computer management component through the image management component, thereby completing the download of the image . The disadvantage of the above method is that the image download process needs to rely on the data transmission between the image management component and the storage backend, so the image download speed is limited by the bandwidth between the image management component and the storage backend. Usually, the download process Time consuming.
图2示出了另外一种现有的镜像下载方式。该方式相对于图1中方式的区别在于,镜像管理组件在第一次处理某个下载请求时,在传输镜像数据的同时将其存储到了本地形成本地缓存。这样,在针对该镜像进行后续下载时,镜像管理组件可以直接将本地缓存中的镜像数据发送至计算管理组件,无需与存储后端通信,因此相对于图1中方式提高了下载速度。但是,这种下载方式仍然存在不足。例如,在镜像管理组件包括多个镜像管理节点的情况下,无法保证每次由相同节点处理下载请求,使得镜像缓存无法保证命中,并且同一镜像可能存在多份镜像缓存,造成磁盘空间浪费。另外,在上述方式中,第一次下载镜像时仍然需要与存储后端通信,速度仍然较慢。FIG. 2 shows another existing image downloading method. The difference between this method and the method in FIG. 1 is that when the image management component processes a download request for the first time, it stores the image data locally to form a local cache while transmitting it. In this way, when performing subsequent downloads for the image, the image management component can directly send the image data in the local cache to the computing management component without communicating with the storage backend, thus improving the download speed compared to the method in FIG. 1 . However, this download method still has its shortcomings. For example, when the image management component includes multiple image management nodes, it cannot be guaranteed that the same node handles the download request every time, so that the image cache cannot be guaranteed to hit, and there may be multiple image caches for the same image, resulting in a waste of disk space. In addition, in the above method, it is still necessary to communicate with the storage backend when downloading the image for the first time, and the speed is still relatively slow.
因此,有必要提出一种进行镜像管理的新的技术方案。Therefore, it is necessary to propose a new technical solution for image management.
发明内容SUMMARY OF THE INVENTION
本公开的一个目的是提供一种进行镜像管理的新的技术方案。An object of the present disclosure is to provide a new technical solution for image management.
根据本公开的第一方面,提供了一种镜像管理方法,包括:According to a first aspect of the present disclosure, an image management method is provided, including:
获取镜像上传请求,其中,所述镜像上传请求包括镜像标识;Obtain an image upload request, wherein the image upload request includes an image identifier;
根据预设的哈希算法,从至少一个镜像管理节点中选取所述镜像标识对应的目标节点;According to a preset hash algorithm, the target node corresponding to the image identification is selected from at least one image management node;
向所述目标节点发送第一处理指令,其中,所述第一处理指令用于控制所述目标节点将所述镜像标识对应的镜像数据发送至存储后端以形成存储数据,并将所述镜像数据存储至本地以形成缓存数据。Send a first processing instruction to the target node, wherein the first processing instruction is used to control the target node to send the mirror data corresponding to the mirror identifier to the storage backend to form storage data, and store the mirror image Data is stored locally to form cached data.
可选地,还包括:Optionally, also include:
获取镜像下载请求,其中,所述镜像下载请求包括所述镜像标识;obtaining an image download request, wherein the image download request includes the image identifier;
根据所述哈希算法,从所述至少一个镜像管理节点中选出所述目标节点;According to the hash algorithm, the target node is selected from the at least one image management node;
向所述目标节点发送第二处理指令,其中,所述第二处理指令用于控制所述目标节点将自身存储的所述镜像标识对应的缓存数据发送至目标设备。Sending a second processing instruction to the target node, wherein the second processing instruction is used to control the target node to send the cache data corresponding to the mirror identifier stored by itself to the target device.
可选地,所述根据预设的哈希算法,从至少一个镜像管理节点中选取与所述镜像标识对应的目标节点,包括:Optionally, selecting a target node corresponding to the image identification from at least one image management node according to a preset hash algorithm, including:
基于所述哈希算法,获取所述镜像标识对应的哈希值;Based on the hash algorithm, obtain the hash value corresponding to the image identifier;
计算所述哈希值相对于所述镜像管理节点总数目的余数;calculating the remainder of the hash value relative to the total number of image management nodes;
根据所述余数,确定所述目标节点。According to the remainder, the target node is determined.
可选地,所述哈希算法包括循环冗余校验算法、消息摘要算法、安全散列算法中的至少一种。Optionally, the hash algorithm includes at least one of a cyclic redundancy check algorithm, a message digest algorithm, and a secure hash algorithm.
根据本公开的第二方面,提供了一种镜像管理装置,包括:According to a second aspect of the present disclosure, an image management apparatus is provided, including:
第一获取模块,用于获取第一设备发送的镜像上传请求,所述镜像上传请求包括镜像标识;a first acquiring module, configured to acquire an image upload request sent by the first device, where the image upload request includes an image identifier;
第一选取模块,用于根据预设的哈希算法,从至少一个镜像管理节点中选取与所述镜像标识对应的目标节点;a first selection module, configured to select a target node corresponding to the image identification from at least one image management node according to a preset hash algorithm;
第一发送模块,用于向所述目标节点发送第一处理指令,其中,所述第一处理指令用于控制所述目标节点将所述镜像标识对应的镜像数据发送至存储后端以形成存储数据,并将所述镜像数据存储至本地以形成缓存数据。a first sending module, configured to send a first processing instruction to the target node, wherein the first processing instruction is used to control the target node to send the mirror data corresponding to the mirror identifier to a storage backend to form a storage data, and store the mirror data locally to form cache data.
可选地,还包括:Optionally, also include:
第二获取模块,用于获取第二设备发送的镜像下载请求,所述镜像下载请求包括所述镜像标识;a second obtaining module, configured to obtain an image download request sent by the second device, where the image download request includes the image identifier;
第二选取模块,用于根据预设哈希算法,从所述至少一个镜像管理节点中选出所述目标节点;a second selection module, configured to select the target node from the at least one image management node according to a preset hash algorithm;
第二发送模块,用于向所述目标节点发送第二处理指令,其中,所述第二处理指令用于控制所述目标节点将自身存储的所述镜像标识对应的缓存数据发送至所述目标设备。A second sending module, configured to send a second processing instruction to the target node, wherein the second processing instruction is used to control the target node to send the cached data corresponding to the mirror identifier stored by itself to the target equipment.
可选地,所述第一选取模块还用于:Optionally, the first selection module is also used for:
基于所述哈希算法,获取所述镜像标识对应的哈希值;Based on the hash algorithm, obtain the hash value corresponding to the image identifier;
计算所述哈希值相对于所述镜像管理节点总数目的余数;calculating the remainder of the hash value relative to the total number of image management nodes;
根据所述余数确定所述目标节点。The target node is determined according to the remainder.
可选地,所述哈希算法包括循环冗余校验算法、消息摘要算法、安全散列算法中的至少一种。Optionally, the hash algorithm includes at least one of a cyclic redundancy check algorithm, a message digest algorithm, and a secure hash algorithm.
根据本公开的第三方面,提供了一种电子设备,包括处理器和存储器,According to a third aspect of the present disclosure, there is provided an electronic device comprising a processor and a memory,
所述存储器存储有能够被所述处理器执行的机器可执行指令;the memory stores machine-executable instructions executable by the processor;
所述处理器执行所述机器可执行指令以实现本公开第一方面描述的镜像管理方法。The processor executes the machine-executable instructions to implement the image management method described in the first aspect of the present disclosure.
根据本公开的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有可执行指令,所述可执行指令在被处理器调用和执行时,所述可执行指令促使处理器实现本公开第一方面描述的镜像管理方法。According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided, the computer-readable storage medium stores executable instructions, and when the executable instructions are called and executed by a processor, the executable instructions The processor is caused to implement the image management method described in the first aspect of the present disclosure.
本公开的实施例中的镜像管理方法,根据镜像标识和预设的哈希算法从至少一个镜像管理节点中选取目标节点,通过目标节点处理镜像上传请求,除了将镜像数据发送至存储后端外还进行本地存储,一方面能够使同一镜像数据缓存在同一镜像管理节点,避免存储空间浪费并保证镜像缓存命中,另一方面由于在镜像上传时已形成本地缓存,首次下载镜像时无需与存储后端通信,使得下载速度得到了提升。In the image management method in the embodiment of the present disclosure, a target node is selected from at least one image management node according to the image identifier and a preset hash algorithm, and the image upload request is processed by the target node, except that the image data is sent to the storage backend Local storage is also performed. On the one hand, the same image data can be cached on the same image management node, avoiding wasted storage space and ensuring image cache hits. End-to-end communication, so that the download speed has been improved.
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。Other features of the present disclosure and advantages thereof will become apparent from the following detailed description of exemplary embodiments of the present disclosure with reference to the accompanying drawings.
附图说明Description of drawings
被结合在说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且连同其说明一起用于解释本公开的原理。The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the disclosure and together with the description serve to explain the principles of the disclosure.
图1是现有的一种镜像下载方式的示意图。FIG. 1 is a schematic diagram of an existing image downloading method.
图2是现有的另外一种镜像下载方式的示意图。FIG. 2 is a schematic diagram of another existing mirror downloading method.
图3是可用于实现本公开实施例的电子设备的示意图。3 is a schematic diagram of an electronic device that may be used to implement embodiments of the present disclosure.
图4是根据本公开实施例的镜像管理方法的流程图。FIG. 4 is a flowchart of an image management method according to an embodiment of the present disclosure.
图5是根据本公开实施例的镜像上传过程的示意图。FIG. 5 is a schematic diagram of an image uploading process according to an embodiment of the present disclosure.
图6是根据本公开实施例的镜像下载过程的示意图。FIG. 6 is a schematic diagram of a mirror download process according to an embodiment of the present disclosure.
具体实施方式Detailed ways
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that the relative arrangement of the components and steps, the numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present disclosure unless specifically stated otherwise.
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the disclosure, its application or uses in any way.
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,技术、方法和设备应当被视为说明书的一部分。Techniques, methods, and apparatus known to those of ordinary skill in the relevant art may not be discussed in detail, but where appropriate, techniques, methods, and apparatus should be considered part of the specification.
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。In all examples shown and discussed herein, any specific values should be construed as illustrative only and not limiting. Accordingly, other instances of the exemplary embodiment may have different values.
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。It should be noted that like numerals and letters refer to like items in the following figures, so once an item is defined in one figure, it does not require further discussion in subsequent figures.
<硬件配置><Hardware configuration>
图3示出了可用于实现本公开的实施例的电子设备的硬件配置。FIG. 3 shows a hardware configuration of an electronic device that can be used to implement embodiments of the present disclosure.
参见图3,电子设备1000包括处理器1100、存储器1200、接口装置1300、通信装置1400、显示装置1500和输入装置1600。处理器1100例如可以是中央处理器CPU、微控制单元MCU等。存储器1200例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括USB接口、串行接口等。通信装置1400例如是有线网卡或无线网卡。显示装置1500例如是液晶显示屏。输入装置1600例如包括触摸屏、键盘、鼠标、麦克风等。Referring to FIG. 3 , the electronic device 1000 includes a processor 1100 , a memory 1200 , an
应用于本说明书的实施例中,电子设备1100的存储器1200用于存储指令,该指令用于控制处理器1100进行操作以支持实现根据本说明书任意实施例的方法。技术人员可以根据本说明书所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。Applied to the embodiments of this specification, the memory 1200 of the electronic device 1100 is used to store instructions, and the instructions are used to control the processor 1100 to operate to support implementing the method according to any embodiment of this specification. A skilled person can design instructions according to the solutions disclosed in this specification. How the instruction controls the processor to operate is well known in the art, so it will not be described in detail here.
本领域技术人员应当理解,尽管在图3中示出了电子设备1000的多个装置,但是,本说明书实施例的电子设备1000可以仅涉及其中的部分装置,例如,只涉及处理器1100、存储器1200和通信装置1400。Those skilled in the art should understand that although a plurality of devices of the electronic device 1000 are shown in FIG. 3 , the electronic device 1000 in the embodiment of the present specification may only involve some of the devices, for example, only the processor 1100, the memory 1200 and communication device 1400.
图3所示的硬件配置仅是解释性的,并且决不是为了要限制本公开、其应用或用途。The hardware configuration shown in FIG. 3 is illustrative only and is in no way intended to limit the present disclosure, its application, or uses.
<方法实施例><Method Example>
本实施例提供了一种集镜像管理方法,例如由图3所示的电子设备1000实施。This embodiment provides a collection image management method, which is implemented by, for example, the electronic device 1000 shown in FIG. 3 .
如图4所示,该方法包括以下步骤S1100-S1300。As shown in FIG. 4 , the method includes the following steps S1100-S1300.
在步骤S1100中,获取镜像上传请求,其中,镜像上传请求包括镜像标识。In step S1100, an image upload request is obtained, wherein the image upload request includes an image identifier.
本实施例中的镜像管理方法可应用于镜像管理客户端,该镜像管理客户端能够与镜像管理组件交互,二者共同实现镜像管理服务。The image management method in this embodiment can be applied to an image management client. The image management client can interact with an image management component, and the two jointly implement an image management service.
本实施例中,镜像管理组件包括至少一个镜像管理节点。其中,每个镜像管理节点可以是一个物理机或者虚拟机。In this embodiment, the image management component includes at least one image management node. Wherein, each image management node may be a physical machine or a virtual machine.
本实施例中,镜像管理客户端接收针对目标镜像的上传请求即镜像上传请求。该上传请求例如由用户终端发送。In this embodiment, the image management client receives an upload request for the target image, that is, an image upload request. The upload request is sent by the user terminal, for example.
本实施例中,上传请求包括镜像标识(或者称为镜像ID)。镜像标识是在镜像管理服务中对一个镜像的唯一标识,例如为镜像的UUID(Universally Unique Identifier,通用唯一识别码)。In this embodiment, the upload request includes an image identifier (or referred to as an image ID). The image identifier is a unique identifier for an image in the image management service, such as a UUID (Universally Unique Identifier, universally unique identifier) of the image.
在步骤S1200中,根据预设的哈希算法,从至少一个镜像管理节点中选取镜像标识对应的目标节点。In step S1200, a target node corresponding to the image identification is selected from at least one image management node according to a preset hash algorithm.
本实施例中,镜像管理客户端从至少一个镜像管理节点中选出唯一的目标节点,通过该目标节点处理上传请求。In this embodiment, the image management client selects a unique target node from at least one image management node, and processes the upload request through the target node.
哈希算法是一种把任意长度的输入通过散列算法变换成固定长度的输出的算法,或者说,是一种将任意长度的消息压缩到某一固定长度的消息摘要的算法。哈希算法可以将一个数据转换为一个标志(哈希值),这个标志和源数据的每一个字节都有十分紧密的关系。哈希算法是一个广义的算法,也可以认为是一种思想,使用哈希算法可以提高存储空间的利用率,可以提高数据的查询效率,也可以做数字签名来保障数据传递的安全性。A hash algorithm is an algorithm that transforms an input of any length into an output of a fixed length through a hash algorithm, or, in other words, an algorithm that compresses a message of any length into a message digest of a certain length. The hash algorithm can convert a data into a mark (hash value), which has a very close relationship with each byte of the source data. Hash algorithm is a generalized algorithm, and it can also be regarded as an idea. The use of hash algorithm can improve the utilization of storage space, improve the efficiency of data query, and can also make digital signatures to ensure the security of data transmission.
本实施例中,哈希算法包括循环冗余校验算法、消息摘要算法、安全散列算法中的至少一种。其中,循环冗余校验算法(Cyclic Redundancy Check,CRC)是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,可以用来检测或校验数据传输或者保存后可能出现的错误。消息摘要算法(Message-Digest Algorithm)是一个广泛的算法家族,包括MD2、MD3、MD4、MD5等,目前被广泛应用于数据完整性校验、数据(消息)摘要、数据加密等。安全散列算法是数宇签名等密码学应用中重要的工具。目前最常用的安全散列算法是SHA-1算法,它被广泛地应用于电子商务等信息安全领域。In this embodiment, the hash algorithm includes at least one of a cyclic redundancy check algorithm, a message digest algorithm, and a secure hash algorithm. Among them, Cyclic Redundancy Check (CRC) is a channel coding technology that generates a short fixed-digit check code according to data such as network data packets or computer files, which can be used to detect or verify data. Errors that may occur after transfer or save. Message-Digest Algorithm (Message-Digest Algorithm) is a broad family of algorithms, including MD2, MD3, MD4, MD5, etc., and is currently widely used in data integrity checking, data (message) digests, and data encryption. The secure hash algorithm is an important tool in cryptographic applications such as digital signatures. At present, the most commonly used secure hash algorithm is the SHA-1 algorithm, which is widely used in information security fields such as e-commerce.
在一个例子中,根据预设的哈希算法,从至少一个镜像管理节点中选取镜像标识对应的目标节点,包括:基于哈希算法,获取镜像标识对应的哈希值;计算哈希值相对于镜像管理节点总数目的余数;根据余数,确定目标节点。In one example, selecting a target node corresponding to an image identifier from at least one image management node according to a preset hash algorithm includes: obtaining a hash value corresponding to the image identifier based on the hash algorithm; calculating the hash value relative to the image identifier. The remainder of the total number of mirror management nodes; according to the remainder, the target node is determined.
在上述例子中,假设目标镜像标识为“51971ff4bae24e66a6370abbbd24a163”,预设的哈希算法为循环冗余校验算法CRC16。对目标镜像标识的前16为进行CRC16运算,得到目标镜像标识对应的哈希值,记为H。假设镜像管理节点总数为3个,依次为节点A、节点B、节点C。取H相对于镜像管理节点总数的余数,例如余数为2。容易理解,余数为2表示哈希值H对应于第二个镜像管理节点,因此节点B即为目标节点。In the above example, it is assumed that the target image identifier is "51971ff4bae24e66a6370abbbd24a163", and the preset hash algorithm is the cyclic redundancy check algorithm CRC16. CRC16 operation is performed on the first 16 of the target image identification, and the hash value corresponding to the target image identification is obtained, which is denoted as H. Assume that the total number of mirror management nodes is 3, which are node A, node B, and node C in sequence. Take the remainder of H relative to the total number of mirror management nodes, for example, the remainder is 2. It is easy to understand that a remainder of 2 means that the hash value H corresponds to the second mirror management node, so node B is the target node.
在步骤S1300中,向目标节点发送第一处理指令,其中,第一处理指令用于控制目标节点将镜像标识对应的镜像数据发送至存储后端以形成存储数据,并将镜像数据存储至本地以形成缓存数据。In step S1300, a first processing instruction is sent to the target node, wherein the first processing instruction is used to control the target node to send the mirror data corresponding to the mirror identifier to the storage backend to form storage data, and store the mirror data locally for Form cache data.
本实施例中,第一指令用户控制目标节点处理镜像上传请求。In this embodiment, the first instruction user controls the target node to process the image upload request.
本实施例中,目标节点在处理镜像上传请求时,一方面,目标节点接收用户终端发送的镜像数据并转发至存储后端已形成存储数据。另一方面,目标节点将镜像数据同时存储在本地,以形成镜像的缓存数据。上述存储数据具有一定的稳定性,例如为持久化存储。上述缓存数据具有临时性,例如存在被其他数据覆盖的可能。In this embodiment, when the target node processes the image upload request, on the one hand, the target node receives the image data sent by the user terminal and forwards it to the storage backend to form storage data. On the other hand, the target node stores the mirrored data locally at the same time to form mirrored cache data. The above stored data has certain stability, such as persistent storage. The above cached data is temporary, for example, it may be overwritten by other data.
本实施例中的镜像管理方法,根据镜像标识和预设的哈希算法从至少一个镜像管理节点中选取目标节点,通过目标节点处理镜像上传请求,除了将镜像数据发送至存储后端外还进行本地存储,一方面能够使同一镜像数据缓存在同一镜像管理节点,避免存储空间浪费并保证镜像缓存命中,另一方面由于在镜像上传时已形成本地缓存,首次下载镜像时无需与存储后端通信,使得下载速度得到了提升。In the image management method in this embodiment, a target node is selected from at least one image management node according to the image identifier and a preset hash algorithm, and the image upload request is processed by the target node. Local storage, on the one hand, can cache the same image data on the same image management node, avoid wasting storage space and ensure that the image cache hits; , so that the download speed has been improved.
在一个例子中,上述镜像管理方法还包括以下步骤S1400-S1600。In one example, the above-mentioned image management method further includes the following steps S1400-S1600.
在步骤S1400中,获取镜像下载请求,其中,镜像下载请求包括镜像标识。In step S1400, an image download request is obtained, wherein the image download request includes an image identifier.
该例子中,镜像管理客户端接收针对目标镜像的镜像下载请求。该镜像下载请求例如由计算管理组件发送。计算管理组件下载目标镜像后,可据此创建虚拟机等。In this example, the image management client receives an image download request for the target image. The image download request is sent, for example, by the computing management component. After the computing management component downloads the target image, a virtual machine can be created accordingly.
该例子中,镜像下载请求包括的镜像标识与上文描述的镜像上传请求包括的镜像标识为同一镜像标识。In this example, the image identifier included in the image download request and the image identifier included in the image upload request described above are the same image identifier.
在步骤S1500中,根据哈希算法,从至少一个镜像管理节点中选出目标节点。In step S1500, a target node is selected from at least one image management node according to a hash algorithm.
该例子中,镜像管理客户端从至少一个镜像管理节点中选出唯一的目标节点,通过该目标节点处理下载请求。In this example, the image management client selects a unique target node from at least one image management node, and processes the download request through the target node.
该例子中,下载过程中的哈希算法与上传过程中的哈希算法相同,因此对于同一镜像标识,上传过程和下载过程中选取的目标节点也相同。也就是说,本实施例中由同一节点处理针对同一镜像的上传请求和下载请求。In this example, the hash algorithm in the download process is the same as the hash algorithm in the upload process, so for the same image ID, the target nodes selected in the upload process and the download process are also the same. That is to say, in this embodiment, the upload request and the download request for the same image are processed by the same node.
在步骤S1600中,向目标节点发送第二处理指令,其中,第二处理指令用于控制目标节点将自身存储的镜像标识对应的缓存数据发送至目标设备。In step S1600, a second processing instruction is sent to the target node, where the second processing instruction is used to control the target node to send the cache data corresponding to the image identifier stored by itself to the target device.
该例子中,第二处理指令用于控制目标节点处理镜像下载请求。In this example, the second processing instruction is used to control the target node to process the image download request.
该例子中,由于由同一节点处理针对目标镜像的上传请求和下载请求,因此在下载过程中,目标节点已在本地存储了目标镜像的镜像缓存。在处理镜像下载请求时,目标节点可根据镜像标识查找本地的镜像缓存,并将该镜像缓存直接发送至目标设备,例如请求下载镜像的设备。In this example, since the upload request and the download request for the target image are processed by the same node, during the download process, the target node has locally stored the image cache of the target image. When processing an image download request, the target node can search for a local image cache according to the image identifier, and send the image cache directly to the target device, for example, the device requesting to download the image.
在上述例子中,在镜像下载阶段根据与镜像上传阶段采用相同的哈希算法选取目标节点,能够保证同一节点处理针对目标镜像的上传请求和下载请求,使得处理下载请求的节点本地存储有目标镜像的镜像缓存(即保证缓存命中),无需与存储后端通信便能完成下载。In the above example, in the image download phase, the target node is selected according to the same hash algorithm as the image upload phase, which can ensure that the same node processes the upload request and download request for the target image, so that the node processing the download request locally stores the target image. Mirror cache (that is, guaranteed cache hits), downloads can be completed without communicating with the storage backend.
图5是根据本公开实施例的镜像上传过程的示意图。如图5所示,镜像管理组件包括了节点A、节点B、节点C三个节点。首先,用户终端向镜像管理客户端发送了针对目标镜像的上传请求。其次,镜像管理客户端根据目标镜像标识和预设的哈希算法从三个镜像管理节点中选取目标节点,例如选取节点B作为目标节点。之后,镜像管理客户端向节点B发送相关指令,控制节点B处理上传请求。节点B一方面从用户终端接收镜像数据并将其发送至存储后端完成存储,另一方面还将镜像数据存储在本地以形成镜像缓存。FIG. 5 is a schematic diagram of an image uploading process according to an embodiment of the present disclosure. As shown in FIG. 5 , the image management component includes three nodes: node A, node B, and node C. First, the user terminal sends an upload request for the target image to the image management client. Secondly, the image management client selects the target node from the three image management nodes according to the target image identifier and the preset hash algorithm, for example, selects node B as the target node. After that, the image management client sends relevant instructions to Node B to control Node B to process the upload request. On the one hand, the node B receives the mirror data from the user terminal and sends it to the storage backend to complete the storage, and on the other hand, it also stores the mirror data locally to form a mirror cache.
图6是根据本公开实施例的镜像下载过程的示意图。如图6所示,计算管理组件向镜像管理客户端发送了针对目标镜像(与图5中的目标镜像为同一镜像)的下载请求。镜像客户端根据与上传阶段相同的目标镜像标识和哈希算法,同样选取了节点B为目标节点。由于此时节点B中存储有目标镜像的镜像缓存,因此节点B将该镜像缓存直接发送至计算机管理组件,完成镜像下载。FIG. 6 is a schematic diagram of a mirror download process according to an embodiment of the present disclosure. As shown in FIG. 6 , the computing management component sends a download request for the target image (the same image as the target image in FIG. 5 ) to the image management client. The mirror client also selects node B as the target node according to the same target mirror identification and hash algorithm as in the upload stage. Since the image cache of the target image is stored in the node B at this time, the node B directly sends the image cache to the computer management component to complete the image download.
<装置实施例><Apparatus Example>
本实施例提供一种镜像管理装置,包括第一获取模块、第一选取模块和第一发送模块。This embodiment provides an image management apparatus, including a first acquisition module, a first selection module, and a first transmission module.
第一获取模块,用于获取第一设备发送的镜像上传请求,镜像上传请求包括镜像标识。The first obtaining module is configured to obtain an image upload request sent by the first device, where the image upload request includes an image identifier.
第一选取模块,用于根据预设的哈希算法,从至少一个镜像管理节点中选取与镜像标识对应的目标节点。The first selection module is configured to select a target node corresponding to the image identification from at least one image management node according to a preset hash algorithm.
第一发送模块,用于向目标节点发送第一处理指令,其中,第一处理指令用于控制目标节点将镜像标识对应的镜像数据发送至存储后端以形成存储数据,并将镜像数据存储至本地以形成缓存数据。The first sending module is used to send a first processing instruction to the target node, wherein the first processing instruction is used to control the target node to send the mirrored data corresponding to the mirroring identifier to the storage backend to form the storage data, and store the mirrored data to the storage backend. local to form cached data.
可选地,镜像管理装置还包括第二获取模块、第二选取模块和第二发送模块。Optionally, the image management apparatus further includes a second acquiring module, a second selecting module and a second sending module.
第二获取模块,用于获取第二设备发送的镜像下载请求,镜像下载请求包括镜像标识。The second obtaining module is configured to obtain the image download request sent by the second device, where the image download request includes the image identifier.
第二选取模块,用于根据预设哈希算法,从至少一个镜像管理节点中选出目标节点。The second selection module is configured to select a target node from at least one image management node according to a preset hash algorithm.
第二发送模块,用于向目标节点发送第二处理指令,其中,第二处理指令用于控制目标节点将自身存储的镜像标识对应的缓存数据发送至目标设备。The second sending module is configured to send a second processing instruction to the target node, wherein the second processing instruction is used to control the target node to send the cache data corresponding to the image identifier stored by itself to the target device.
可选地,第一选取模块还用于:基于哈希算法,获取镜像标识对应的哈希值;计算哈希值相对于镜像管理节点总数目的余数;根据余数确定目标节点。Optionally, the first selection module is further configured to: obtain a hash value corresponding to the image identifier based on a hash algorithm; calculate the remainder of the hash value relative to the total number of image management nodes; and determine the target node according to the remainder.
可选地,哈希算法包括循环冗余校验算法、消息摘要算法、安全散列算法中的至少一种。Optionally, the hash algorithm includes at least one of a cyclic redundancy check algorithm, a message digest algorithm, and a secure hash algorithm.
本实施例中镜像管理装置能够实现本公开方法实施例中描述的各个步骤,也能实现相同的技术效果,这里不再赘述。The image management apparatus in this embodiment can implement each step described in the method embodiment of the present disclosure, and can also achieve the same technical effect, which is not repeated here.
<电子设备实施例><Example of electronic device>
本实施例提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现本公开方法实施例描述的镜像管理方法。This embodiment provides an electronic device, including a processor and a memory, where the memory stores machine-executable instructions that can be executed by the processor, and the processor executes the machine-executable instructions to implement the image management method described in the method embodiments of the present disclosure.
本实施例中的电子装置能够实现本公开方法实施例中描述的各个步骤,也能实现相同的技术效果,这里不再赘述。The electronic device in this embodiment can implement each step described in the method embodiment of the present disclosure, and can also achieve the same technical effect, which is not repeated here.
<计算机可读存储介质><Computer-readable storage medium>
本实施例提供一种计算机可读存储介质,计算机可读存储介质存储有可执行指令,可执行指令在被处理器调用和执行时,可执行指令促使处理器实现本公开方法实施例描述的镜像管理方法。This embodiment provides a computer-readable storage medium. The computer-readable storage medium stores executable instructions. When the executable instructions are called and executed by a processor, the executable instructions cause the processor to implement the mirror image described in the method embodiments of the present disclosure. management method.
本实施例中的计算机可读存储介质能够实现本公开方法实施例中描述的各个步骤,也能实现相同的技术效果,这里不再赘述。The computer-readable storage medium in this embodiment can implement each step described in the method embodiment of the present disclosure, and can also achieve the same technical effect, which is not repeated here.
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。The present disclosure may be a system, method and/or computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement various aspects of the present disclosure.
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。A computer-readable storage medium may be a tangible device that can hold and store instructions for use by the instruction execution device. The computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (non-exhaustive list) of computer readable storage media include: portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM) or flash memory), static random access memory (SRAM), portable compact disk read only memory (CD-ROM), digital versatile disk (DVD), memory sticks, floppy disks, mechanically coded devices, such as printers with instructions stored thereon Hole cards or raised structures in grooves, and any suitable combination of the above. Computer-readable storage media, as used herein, are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (eg, light pulses through fiber optic cables), or through electrical wires transmitted electrical signals.
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。The computer readable program instructions described herein may be downloaded to various computing/processing devices from a computer readable storage medium, or to an external computer or external storage device over a network such as the Internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer-readable program instructions from a network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing/processing device .
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。Computer program instructions for carrying out operations of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or instructions in one or more programming languages. Source or object code written in any combination, programming languages including object-oriented programming languages - such as Smalltalk, C++, etc., and conventional procedural programming languages - such as the "C" language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server implement. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (eg, using an Internet service provider through the Internet connect). In some embodiments, custom electronic circuits, such as programmable logic circuits, field programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), can be personalized by utilizing state information of computer readable program instructions. Computer readable program instructions are executed to implement various aspects of the present disclosure.
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。Aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer or other programmable data processing apparatus to produce a machine that causes the instructions when executed by the processor of the computer or other programmable data processing apparatus , resulting in means for implementing the functions/acts specified in one or more blocks of the flowchart and/or block diagrams. These computer readable program instructions can also be stored in a computer readable storage medium, these instructions cause a computer, programmable data processing apparatus and/or other equipment to operate in a specific manner, so that the computer readable medium on which the instructions are stored includes An article of manufacture comprising instructions for implementing various aspects of the functions/acts specified in one or more blocks of the flowchart and/or block diagrams.
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。Computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other equipment to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other equipment to produce a computer-implemented process , thereby causing instructions executing on a computer, other programmable data processing apparatus, or other device to implement the functions/acts specified in one or more blocks of the flowcharts and/or block diagrams.
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executables for implementing the specified logical function(s) instruction. In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It is also noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented in dedicated hardware-based systems that perform the specified functions or actions , or can be implemented in a combination of dedicated hardware and computer instructions. It is well known to those skilled in the art that implementation in hardware, implementation in software, and implementation in a combination of software and hardware are all equivalent.
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本公开的范围由所附权利要求来限定。Various embodiments of the present disclosure have been described above, and the foregoing descriptions are exemplary, not exhaustive, and not limiting of the disclosed embodiments. Numerous modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the various embodiments, the practical application or technical improvement in the marketplace, or to enable others of ordinary skill in the art to understand the various embodiments disclosed herein. The scope of the present disclosure is defined by the appended claims.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010535438.5ACN111858156B (en) | 2020-06-12 | 2020-06-12 | Image management method, device and electronic equipment |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202010535438.5ACN111858156B (en) | 2020-06-12 | 2020-06-12 | Image management method, device and electronic equipment |
| Publication Number | Publication Date |
|---|---|
| CN111858156Atrue CN111858156A (en) | 2020-10-30 |
| CN111858156B CN111858156B (en) | 2024-11-26 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202010535438.5AActiveCN111858156B (en) | 2020-06-12 | 2020-06-12 | Image management method, device and electronic equipment |
| Country | Link |
|---|---|
| CN (1) | CN111858156B (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114625383A (en)* | 2022-02-28 | 2022-06-14 | 杭州趣链科技有限公司 | Method, device, device and storage medium for image storage and image loading |
| CN114756333A (en)* | 2022-05-23 | 2022-07-15 | 龙芯中科技术股份有限公司 | Mirror image processing method and device, electronic equipment and readable medium |
| CN114785770A (en)* | 2022-04-01 | 2022-07-22 | 京东科技信息技术有限公司 | Mirror layer file sending method and device, electronic equipment and computer readable medium |
| CN119127578A (en)* | 2024-10-30 | 2024-12-13 | 浪潮云信息技术股份公司 | A method, device, equipment and medium for concurrent downloading of images of bare metal nodes |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104050015A (en)* | 2014-06-27 | 2014-09-17 | 国家计算机网络与信息安全管理中心 | Mirror image storage and distribution system for virtual machines |
| CN105205143A (en)* | 2015-09-18 | 2015-12-30 | 杭州华为数字技术有限公司 | File storage and processing method, device and system |
| CN106445473A (en)* | 2015-08-06 | 2017-02-22 | 华为技术有限公司 | Container deployment method and apparatus |
| CN108076078A (en)* | 2016-11-09 | 2018-05-25 | 北京金山云网络技术有限公司 | A kind of cloud host creation method, device and cloud service system |
| CN108400999A (en)* | 2017-02-06 | 2018-08-14 | 中国移动通信集团公司 | A kind of load-balancing method and device of data-base cluster mirror nodes |
| CN110198330A (en)* | 2018-03-27 | 2019-09-03 | 腾讯科技(深圳)有限公司 | Image download method and apparatus |
| US10592447B1 (en)* | 2018-12-28 | 2020-03-17 | EMC IP Holding Company LLC | Accelerated data handling in cloud data storage system |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104050015A (en)* | 2014-06-27 | 2014-09-17 | 国家计算机网络与信息安全管理中心 | Mirror image storage and distribution system for virtual machines |
| CN106445473A (en)* | 2015-08-06 | 2017-02-22 | 华为技术有限公司 | Container deployment method and apparatus |
| CN105205143A (en)* | 2015-09-18 | 2015-12-30 | 杭州华为数字技术有限公司 | File storage and processing method, device and system |
| CN108076078A (en)* | 2016-11-09 | 2018-05-25 | 北京金山云网络技术有限公司 | A kind of cloud host creation method, device and cloud service system |
| CN108400999A (en)* | 2017-02-06 | 2018-08-14 | 中国移动通信集团公司 | A kind of load-balancing method and device of data-base cluster mirror nodes |
| CN110198330A (en)* | 2018-03-27 | 2019-09-03 | 腾讯科技(深圳)有限公司 | Image download method and apparatus |
| US10592447B1 (en)* | 2018-12-28 | 2020-03-17 | EMC IP Holding Company LLC | Accelerated data handling in cloud data storage system |
| Title |
|---|
| 王晓峰;向超胜;牛军;赵新;任仲涛;: "电信行业分布式镜像仓库的研究", 电信技术, no. 09, 25 September 2017 (2017-09-25)* |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114625383A (en)* | 2022-02-28 | 2022-06-14 | 杭州趣链科技有限公司 | Method, device, device and storage medium for image storage and image loading |
| CN114785770A (en)* | 2022-04-01 | 2022-07-22 | 京东科技信息技术有限公司 | Mirror layer file sending method and device, electronic equipment and computer readable medium |
| CN114756333A (en)* | 2022-05-23 | 2022-07-15 | 龙芯中科技术股份有限公司 | Mirror image processing method and device, electronic equipment and readable medium |
| CN119127578A (en)* | 2024-10-30 | 2024-12-13 | 浪潮云信息技术股份公司 | A method, device, equipment and medium for concurrent downloading of images of bare metal nodes |
| Publication number | Publication date |
|---|---|
| CN111858156B (en) | 2024-11-26 |
| Publication | Publication Date | Title |
|---|---|---|
| CN111858156B (en) | Image management method, device and electronic equipment | |
| US11693908B2 (en) | System and methods for dynamic generation of object storage datasets from existing file datasets | |
| CN105740048B (en) | An image management method, device and system | |
| CN112948340B (en) | Data synchronization method, device, electronic device and readable storage medium | |
| JP6419319B2 (en) | Synchronize shared folders and files | |
| US8650162B1 (en) | Method and apparatus for integrating data duplication with block level incremental data backup | |
| CN103959264B (en) | Using deduplication in a storage cloud to manage immutable redundant files | |
| US10623470B2 (en) | Optimizing internet data transfers using an intelligent router agent | |
| US10001989B2 (en) | Verifying source code in disparate source control systems | |
| US10599613B2 (en) | Index management in storage system | |
| US9660967B1 (en) | Big data markers for stream labeling, identification and decoding | |
| US20160321254A1 (en) | Unsolicited bulk email detection using url tree hashes | |
| WO2021204082A1 (en) | Deduplication of encrypted data using multiple keys | |
| US20150249694A1 (en) | Managing downloads of large data sets | |
| CN112099836A (en) | Configuration file updating method, configuration server, version control server and system | |
| CN112328296B (en) | Method, device, equipment and medium for updating software aiming at cross-platform application | |
| US20220182242A1 (en) | Implementing opportunistic authentication of encrypted data | |
| US11182097B2 (en) | Logical deletions in append only storage devices | |
| CN111459511A (en) | Application program downloading method and device and electronic equipment | |
| JP7633761B2 (en) | Verifying the tracked portion of the received sensor data using computer cryptography. | |
| US10831775B2 (en) | Efficient representation, access and modification of variable length objects | |
| US10540322B2 (en) | Integrated file catalog | |
| US10389743B1 (en) | Tracking of software executables that come from untrusted locations | |
| CN115220640A (en) | Method, electronic device and computer program product for processing data | |
| CN114721697B (en) | A thermal patch processing method and device |
| 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 |