CN111538864B - Method and device for reducing Buildrun consumption - Google Patents

Method and device for reducing Buildrun consumption Download PDF

Info

Publication number
CN111538864B
CN111538864B CN202010220199.4A CN202010220199A CN111538864B CN 111538864 B CN111538864 B CN 111538864B CN 202010220199 A CN202010220199 A CN 202010220199A CN 111538864 B CN111538864 B CN 111538864B
Authority
CN
China
Prior art keywords
node
tree structure
version number
nodes
father
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
Application number
CN202010220199.4A
Other languages
Chinese (zh)
Other versions
CN111538864A (en
Inventor
王洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd Hefei Branch
Original Assignee
New H3C Technologies Co Ltd Hefei Branch
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd Hefei Branch filed Critical New H3C Technologies Co Ltd Hefei Branch
Priority to CN202010220199.4A priority Critical patent/CN111538864B/en
Publication of CN111538864A publication Critical patent/CN111538864A/en
Application granted granted Critical
Publication of CN111538864B publication Critical patent/CN111538864B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The application provides a method and a device for reducing Buildrun consumption, wherein the method is applied to a management module included in an index service module, and comprises the following steps: receiving a plurality of acquisition instructions, wherein each acquisition instruction comprises a version number of a parent node and an identifier of a child node; acquiring a tree structure corresponding to the version number of the father node according to the version number of the father node; according to the identifier of the child node, finding the child node corresponding to the identifier of the child node from the tree structure; and acquiring the address information of the child node, and feeding back the address information of the child node to the father node.

Description

Method and device for reducing Buildrun consumption
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method and an apparatus for reducing Buildrun consumption.
Background
Buildrun refers specifically to a process of inversely converting machine binary configuration data into text which is easy to read by human beings, and may also refer to finally converted text.
Currently, when a node in the read-only version changes, a Copy-on-write (COW) process is usually performed on each node from bottom to top. The specific process is as follows: such as the initial version shown in fig. 1. The Parent node (Parent) is connected with N Child nodes (Child).
When a node changes, for example, a Child N is modified, the Child N needs to be copied, and then the copying of a parent node is triggered, such as a parent node copy version (shown in dashed lines in the figure) shown in fig. 2. It will be appreciated that the parent node records its connections to the various child nodes, as shown in table 1 below.
TABLE 1 parent to child node connections
Figure BDA0002425805290000011
Wherein, P1, P2, …, PN is the connection from Parent to Child1, child2, …, child N.
When the number of child nodes is large and a plurality of child nodes are updated, copying the parent node for many times results in consuming a large amount of storage space. Especially, when the number of the user configuration versions is large, the number of the copying times of the number of the versions and the number of the child nodes is generated, and most contents are repeated in the copying process.
Moreover, because the size of each father node is uncertain, each father node also occupies different lengths in the memory, and after repeated application release, memory fragments can be caused, and memory resources are wasted.
Disclosure of Invention
In view of this, the present application provides a method and an apparatus for reducing Buildrun consumption, which achieve reduction of invalid copy and reduction of occupation of storage space; meanwhile, the occurrence of memory fragments is also reduced.
In a first aspect, the present application provides a method for reducing Buildrun consumption, where the method is applied to a management module included in an index service module, and the method includes:
receiving an acquisition instruction, wherein the acquisition instruction comprises a version number of a father node and an identifier of a child node;
acquiring a tree structure corresponding to the version number of the father node according to the version number of the father node;
according to the identifier of the child node, finding the child node corresponding to the identifier of the child node from the tree structure;
and acquiring the address information of the child node, and feeding back the address information of the child node to the father node.
With reference to the first aspect, in a first possible implementation manner, the index service module includes at least one tree structure, each tree structure corresponds to a version number of a parent node, and a size of a node included in each tree structure is fixed.
With reference to the first possible implementation manner of the first aspect, in a second possible implementation manner, each tree structure includes a root node, at least one intermediate node, and at least one leaf node, and at least 1 intermediate node is distributed in multiple levels;
the management module is connected with a root node included in each tree structure, the root node is connected with at least 1 intermediate node, the at least 1 intermediate node is connected with at least one leaf node, and the at least one leaf node is connected with the child nodes.
With reference to the second possible implementation manner of the first aspect, in a third possible implementation manner, the method further includes:
receiving a creation instruction sent by a newly added father node, wherein the creation instruction comprises a version number of the father node and tree structure content corresponding to the version number of the father node;
establishing a corresponding relation between the version number of the father node and the version number of the father node according to the version number of the father node;
creating a tree structure according to the tree structure content corresponding to the version number of the father node, wherein the tree structure comprises newly added multi-level intermediate nodes and multiplexed multi-level intermediate nodes, the multiplexed multi-level intermediate nodes are multiplexing existing multi-level intermediate nodes, the tree structure comprises newly added leaf nodes and multiplexed leaf nodes, and the multiplexed leaf nodes are multiplexing existing leaf nodes;
and establishing corresponding connection between the leaf node and the newly added child node.
With reference to the first aspect, the first possible implementation manner, the second possible implementation manner, and the third possible implementation manner, in a fourth possible implementation manner, the tree structure includes a B + tree, or an R tree.
In a second aspect, the present application provides an apparatus for reducing Buildrun consumption, where the apparatus is applied to an index service module, and the apparatus includes:
the system comprises a receiving unit, a judging unit and a judging unit, wherein the receiving unit is used for receiving a plurality of obtaining instructions, and each obtaining instruction comprises a version number of a father node and an identifier of a child node;
the obtaining unit is used for obtaining a tree structure corresponding to the version number of the father node according to the version number of the father node;
the searching unit is used for searching the child node corresponding to the identifier of the child node from the tree structure according to the identifier of the child node;
and the sending unit is used for acquiring the address information of the child node and feeding back the address information of the child node to the father node.
With reference to the second aspect, in a first possible implementation manner, the index service module further includes at least one tree structure, each tree structure corresponds to a version number of a parent node, and a size of a node included in each tree structure is fixed.
With reference to the first possible implementation manner of the second aspect, in a second possible implementation manner, each tree structure includes a root node, at least one intermediate node, and at least one leaf node, and at least 1 intermediate node is distributed in multiple levels;
the device is connected with a root node included in each tree structure, the root node is connected with the at least 1 intermediate node, the at least 1 intermediate node is connected with at least one leaf node, and the at least one leaf node is connected with the child nodes.
With reference to the second possible implementation manner of the first aspect, in a third possible implementation manner, the receiving unit is further configured to receive a creation instruction sent by the newly added parent node, where the creation instruction includes a version number of the parent node and tree structure content corresponding to the version number of the parent node;
the device also includes: the establishing unit is used for establishing a corresponding relation between the version number of the father node and the version number of the father node according to the version number of the father node;
creating a tree structure according to the tree structure content corresponding to the version number of the father node, wherein the tree structure comprises newly added multi-level intermediate nodes and multiplexed multi-level intermediate nodes, the multiplexed multi-level intermediate nodes are multiplexing existing multi-level intermediate nodes, the tree structure comprises newly added leaf nodes and multiplexed leaf nodes, and the multiplexed leaf nodes are multiplexing existing leaf nodes;
and establishing corresponding connection between the leaf node and the newly added child node.
With reference to the first aspect, the first possible implementation manner, the second possible implementation manner, and the third possible implementation manner, in a fourth possible implementation manner, the tree structure includes a B + tree, or an R tree.
Therefore, by applying the method and the device for reducing Buildrun consumption provided by the application, after the management module included in the index service module receives the acquisition instruction, the tree structure corresponding to the version number of the parent node is acquired according to the version number of the parent node and the identifier of the child node included in the acquisition instruction, and the child node corresponding to the identifier of the child node is searched from the tree structure. The management module acquires the address information of the child node and feeds the address information of the child node back to the father node.
According to the method, an index service module capable of supporting multi-version access is added between a father node and a child node of the Buildrun tree, and in the index service module, the father nodes of different versions share a tree structure. Therefore, the space occupation of the multi-version Buildrun tree is reduced, and meanwhile, the condition of memory fragments is also reduced due to the fact that the size of the memory used by each node in the tree structure is fixed.
Drawings
FIG. 1 is a diagram illustrating an initial version between a parent node and a child node provided in the prior art;
fig. 2 is a schematic diagram of a version triggering a parent node to perform replication provided in the prior art;
fig. 3 is a flowchart of a method for reducing Buildrun consumption according to an embodiment of the present application;
fig. 4 is a schematic view of an access framework between a parent node and a child node according to an embodiment of the present application;
fig. 5 is a schematic diagram of an internal structure of an index service module according to an embodiment of the present application;
fig. 6 is a schematic diagram of a copy node of a Buildrun tree new-increased child node according to an embodiment of the present application;
fig. 7 is a schematic diagram illustrating that a parent node in the Buildrun tree triggers a COW according to the embodiment of the present application;
FIG. 8 is a schematic diagram of an index service module supporting a multi-version B + tree according to an embodiment of the present application;
fig. 9 is a block diagram of an apparatus for reducing Buildrun consumption according to an embodiment of the present application.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. The following description refers to the accompanying drawings in which the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the application, as detailed in the appended claims.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used in this application and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used herein refers to and encompasses any and all possible combinations of one or more of the corresponding listed items.
It should be understood that although the terms first, second, third, etc. may be used herein to describe various information, such information should not be limited to these terms. These terms are only used to distinguish one type of information from another. For example, first information may also be referred to as second information, and similarly, second information may also be referred to as first information, without departing from the scope of the present application. The word "if," as used herein, may be interpreted as "at … …" or "at … …" or "in response to a determination," depending on the context.
The method for reducing Buildrun consumption provided in the examples of the present application is described in detail below. Referring to fig. 3, fig. 3 is a flowchart of a method for reducing Buildrun consumption according to an embodiment of the present application. The method is applied to a management module included in an Index Service (Index Service) module. The method for reducing Buildrun consumption provided by the embodiment of the application can comprise the following steps.
Step 301, receiving a plurality of obtaining instructions, wherein each obtaining instruction comprises a version number of a parent node and an identifier of a child node.
Specifically, a parent node may wish to access a child node, which the parent node may access by accessing the index service module. Such as the access framework shown in fig. 4. Fig. 4 is a schematic view of an access framework between a parent node and a child node according to an embodiment of the present application.
Further, the father node generates an obtaining instruction, and the obtaining instruction comprises the version number of the father node and the identification of the child node to be accessed.
Step 302, according to the version number of the father node, obtaining a tree structure corresponding to the version number of the father node.
Specifically, the management module acquires the tree structure corresponding to the version number of the parent node from the inside of the management module according to the version number of the parent node included in the acquisition instruction.
In the embodiment of the present application, the tree structure specifically refers to a B + tree or an R tree.
Further, as shown in fig. 5, fig. 5 is a schematic diagram of an internal structure of an index service module according to an embodiment of the present application.
In FIG. 5, the array between the parent node and the child node is created as a structure of a B + tree. And enabling the parent nodes of a plurality of versions to share the multi-level nodes in the B + tree by using a COW mode. The method and the device avoid copying all pointers pointing to the child nodes when the parent node is copied, thereby reducing the space occupation of the Buildrun tree with multiple versions, and simultaneously, the condition of memory fragments is also reduced because the size of the memory used by each node in the B + tree is fixed.
Furthermore, the index service module comprises at least one tree structure, each tree structure corresponds to the version number of a parent node, and the size of the nodes included in each tree structure is fixed. Each tree structure comprises a root node, at least one intermediate node and at least one leaf node, wherein at least 1 intermediate node is distributed in multiple levels; the management module is connected with a root node included in each tree structure, the root node is connected with at least one intermediate node, at least 1 intermediate node is connected with at least 1 leaf node, and at least one leaf node is connected with a child node.
Step 303, finding out a child node corresponding to the identifier of the child node from the tree structure according to the identifier of the child node.
Specifically, after acquiring the attribute structure corresponding to the version number of the parent node, the management module searches for the child node corresponding to the identifier of the child node from the tree structure according to the identifier of the child node.
And 304, acquiring the address information of the child node, and feeding back the address information of the child node to the father node.
Specifically, the management module obtains the address information of the searched child node, and simultaneously, the management module feeds back the address information of the child node to the parent node to complete the search.
Therefore, by applying the method for reducing Buildrun consumption provided by the present application, after the management module included in the index service module receives the obtaining instruction, the tree structure corresponding to the version number of the parent node is obtained according to the version number of the parent node and the identifier of the child node included in the obtaining instruction, and the child node corresponding to the identifier of the child node is found from the tree structure. The management module acquires the address information of the child node and feeds the address information of the child node back to the father node.
According to the method, the index service module capable of supporting multi-version access is added between the father node and the child node of the Buildrun tree, and the father nodes of different versions share the tree structure in the index service module. Therefore, the space occupation of the Buildrun tree with multiple versions is reduced, and meanwhile, the situation of memory fragments is reduced due to the fact that the size of the memory used by each node in the tree structure is fixed.
Optionally, in this embodiment of the present application, the method further includes a step of, when an update child node occurs, the management module performing corresponding update on the B + tree of the current version.
Specifically, as shown in fig. 5, the Buildrun parent node of Version (Version) a inserts child nodes 1 to N in its Version through the interface of the index service module. At this time, if a new child node N is added to the Buildrun tree COW, the previous child node N is copied first, as shown in fig. 6, and fig. 6 is a schematic diagram of a copy node of the new child node of the Buildrun tree according to the embodiment of the present application. The COW of the child node triggers a COW of a parent node in the Buildrun tree (as shown by a dotted line box in the figure), as shown in fig. 7, fig. 7 is a schematic diagram of triggering the COW of the parent node in the Buildrun tree according to the embodiment of the present disclosure.
And the newly added father node of the version B sends a creation instruction to the management module, wherein the creation instruction comprises the version number of the father node and the tree structure content corresponding to the version number of the father node. The tree structure content specifically refers to newly added multi-level intermediate nodes and leaf nodes, multiplexed multi-level intermediate nodes and leaf nodes between the parent node and the newly added child node of the version B. And according to the version number of the father node, the management module establishes a corresponding relation with the version number of the father node. According to the tree structure content corresponding to the version number of the father node, the management module creates a tree structure, the tree structure comprises newly added multi-level intermediate nodes and multiplexed multi-level intermediate nodes, the multiplexed multi-level intermediate nodes are multiplexed existing multi-level intermediate nodes, the tree structure comprises newly added leaf nodes and multiplexed leaf nodes, and the multiplexed leaf nodes are multiplexed existing leaf nodes. Finally, the management module establishes a corresponding connection (as shown by a dotted line in the figure) between the leaf node and the newly added child node N.
Through a management module included in the index service module, a B + tree corresponding to the version number is created, and at the same time, a newly added child node N is added to the B + tree corresponding to the parent node of version B, as shown in fig. 8, fig. 8 is a schematic diagram of the index service module supporting multiple versions of B + trees provided in the embodiment of the present application. In this way, the index service module is corresponding to the B + tree of the multi-version parent node.
In the testing process, a new B + tree corresponding to N version father nodes is supposed to be added, and the B + tree corresponding to each version father node is provided with M child nodes. In prior art solutions, a spatial accommodation of N × M is required.
By applying the method for reducing Buildrun consumption provided by the embodiment of the application, taking the example that one child node is changed in the B + tree corresponding to each version parent node, under the limit condition, the common demand (Log) is obtained b M) × b × N spaces. B is a B + tree fixed parameter, the value of B is set to 500, and the size of each child node can be setTo adjust.
If the value of N is 100, the values of M are 1000, 5000 and 10000 respectively. The space required for both schemes is shown in table 2 below.
TABLE 2 comparison of occupation space of the existing scheme and the scheme of the present application
M The existing scheme occupies extra space The scheme of the application additionally occupies space
1000 100000 55576
5000 500000 68499
10000 1000000 74074
As can be seen from table 2 above, the solution of the present application is far superior to the prior art solutions even in extreme cases. ((Log) b M) × b × N, the actual b is often 1/2b, and therefore, the space occupied by the scheme of the present application in practice is much smaller than the estimated occupied space).
Based on the same inventive concept, the embodiment of the present application further provides a device for reducing Buildrun consumption, which corresponds to the method for reducing Buildrun consumption. Referring to fig. 9, fig. 9 is a block diagram of an apparatus for reducing Buildrun consumption according to an embodiment of the present application, where the apparatus is applied to an index service module, and the apparatus includes:
a receiving unit 910, configured to receive multiple obtaining instructions, where each obtaining instruction includes a version number of a parent node and an identifier of a child node;
an obtaining unit 920, configured to obtain, according to the version number of the parent node, a tree structure corresponding to the version number of the parent node;
a searching unit 930, configured to search, according to the identifier of the child node, a child node corresponding to the identifier of the child node from the tree structure;
a sending unit 940, configured to obtain the address information of the child node, and feed back the address information of the child node to the parent node.
Optionally, the index service module further includes at least one tree structure, each tree structure corresponds to a version number of a parent node, and a size of a node included in each tree structure is fixed.
Optionally, each tree structure comprises one root node, at least one intermediate node, and at least one leaf node, at least 1 intermediate node being distributed in multiple levels;
the device is connected with a root node included in each tree structure, the root node is connected with the at least 1 intermediate node, the at least 1 intermediate node is connected with at least one leaf node, and the at least one leaf node is connected with the child nodes.
Optionally, the receiving unit 910 is further configured to receive a creation instruction sent by a newly added parent node, where the creation instruction includes a version number of the parent node and a tree structure content corresponding to the version number of the parent node;
the device also includes: an establishing unit 950, configured to establish a corresponding relationship with a parent node version number according to the parent node version number;
creating a tree structure according to the tree structure content corresponding to the version number of the father node, wherein the tree structure comprises newly added multi-level intermediate nodes and multiplexed multi-level intermediate nodes, the multiplexed multi-level intermediate nodes are multiplexing existing multi-level intermediate nodes, the tree structure comprises newly added leaf nodes and multiplexed leaf nodes, and the multiplexed leaf nodes are multiplexing existing leaf nodes;
and establishing corresponding connection between the leaf node and the newly added child node.
Optionally, the tree structure comprises a B + tree, or, an R tree.
Therefore, by applying the device for reducing Buildrun consumption provided by the application, after the management module included in the index service module receives the obtaining instruction, the tree structure corresponding to the version number of the parent node is obtained according to the version number of the parent node and the identifier of the child node included in the obtaining instruction, and the child node corresponding to the identifier of the child node is searched from the tree structure. The management module acquires the address information of the child node and feeds the address information of the child node back to the father node.
According to the method, an index service module capable of supporting multi-version access is added between a father node and a child node of the Buildrun tree, and in the index service module, the father nodes of different versions share a tree structure. Therefore, the space occupation of the multi-version Buildrun tree is reduced, and meanwhile, the condition of memory fragments is also reduced due to the fact that the size of the memory used by each node in the tree structure is fixed.
Additionally, embodiments of the present application provide a machine-readable storage medium storing machine-executable instructions that, when invoked and executed by a processor, cause the processor itself and the invoking transceiver to perform the method for reducing Buildrun consumption described in embodiments of the present application.
The implementation process of the functions and actions of each unit in the above device is specifically described in the implementation process of the corresponding step in the above method, and is not described herein again.
For the device embodiments, since they substantially correspond to the method embodiments, reference may be made to the partial description of the method embodiments for relevant points. The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of the application. One of ordinary skill in the art can understand and implement it without inventive effort.
For the apparatus for reducing Buildrun consumption and the machine-readable storage medium, the description is simple because the related contents of the method are substantially similar to the method embodiments described above, and the related contents can be referred to the partial description of the method embodiments.
The above description is only a preferred embodiment of the present application and should not be taken as limiting the present application, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present application should be included in the protection scope of the present application.

Claims (8)

1. A method for reducing Buildrun consumption, the method being applied to a management module included in an index service module, and comprising:
receiving a plurality of acquisition instructions, wherein each acquisition instruction comprises a version number of a father node and an identifier of a child node;
acquiring a tree structure corresponding to the version number of the father node according to the version number of the father node;
according to the identifier of the child node, finding the child node corresponding to the identifier of the child node from the tree structure;
acquiring the address information of the child node, and feeding back the address information of the child node to the father node;
the index service module comprises at least one tree structure, each tree structure corresponds to the version number of one father node, each tree structure comprises a plurality of layers of nodes which can be shared by the father nodes of a plurality of versions, and the size of the nodes included in each tree structure is fixed.
2. The method according to claim 1, wherein each tree structure comprises one root node, at least one intermediate node, and at least one leaf node, the at least 1 intermediate node being distributed in multiple levels;
the management module is connected with a root node included in each tree structure, the root node is connected with the at least 1 intermediate node, the at least 1 intermediate node is connected with at least one leaf node, and the at least one leaf node is connected with the child nodes.
3. The method of claim 2, further comprising:
receiving a creation instruction sent by a newly added father node, wherein the creation instruction comprises a version number of the father node and tree structure content corresponding to the version number of the father node;
establishing a corresponding relation between the version number of the father node and the version number of the father node according to the version number of the father node;
creating a tree structure according to the tree structure content corresponding to the version number of the father node, wherein the tree structure comprises newly added multi-level intermediate nodes and multiplexed multi-level intermediate nodes, the multiplexed multi-level intermediate nodes are multiplexing existing multi-level intermediate nodes, the tree structure comprises newly added leaf nodes and multiplexed leaf nodes, and the multiplexed leaf nodes are multiplexing existing leaf nodes;
and establishing corresponding connection between the leaf node and the newly added child node.
4. The method of any of claims 1-3, wherein the tree structure comprises a B + tree, or an R tree.
5. An apparatus for reducing Buildrun consumption, the apparatus being applied to an index service module, the apparatus comprising:
the receiving unit is used for receiving a plurality of acquisition instructions, and each acquisition instruction comprises a version number of a parent node and an identifier of a child node;
the obtaining unit is used for obtaining a tree structure corresponding to the version number of the father node according to the version number of the father node;
a searching unit, configured to search, according to the identifier of the child node, a child node corresponding to the identifier of the child node from the tree structure;
the sending unit is used for acquiring the address information of the child node and feeding back the address information of the child node to the father node;
the index service module comprises at least one tree structure, each tree structure corresponds to the version number of one father node, each tree structure comprises a plurality of layers of nodes which can be shared by the father nodes of a plurality of versions, and the size of the nodes included in each tree structure is fixed.
6. The apparatus according to claim 5, wherein each tree structure comprises a root node, at least one intermediate node, and at least one leaf node, the at least 1 intermediate node being distributed in multiple levels;
the device is connected with a root node included in each tree structure, the root node is connected with the at least 1 intermediate node, the at least 1 intermediate node is connected with at least one leaf node, and the at least one leaf node is connected with the child nodes.
7. The apparatus according to claim 6, wherein the receiving unit is further configured to receive a creation instruction sent by a newly added parent node, where the creation instruction includes a version number of the parent node and a tree structure content corresponding to the version number of the parent node;
the device further comprises: the establishing unit is used for establishing a corresponding relation between the version number of the father node and the version number of the father node according to the version number of the father node;
the tree structure comprises newly added multi-level intermediate nodes and multiplexed multi-level intermediate nodes, the multiplexed multi-level intermediate nodes are multiplexed multi-level intermediate nodes, the tree structure comprises newly added leaf nodes and multiplexed leaf nodes, and the multiplexed leaf nodes are multiplexed leaf nodes;
and establishing corresponding connection between the leaf node and the newly added child node.
8. The apparatus of any of claims 5-7, wherein the tree structure comprises a B + tree, or an R tree.
CN202010220199.4A 2020-03-25 2020-03-25 Method and device for reducing Buildrun consumption Active CN111538864B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010220199.4A CN111538864B (en) 2020-03-25 2020-03-25 Method and device for reducing Buildrun consumption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010220199.4A CN111538864B (en) 2020-03-25 2020-03-25 Method and device for reducing Buildrun consumption

Publications (2)

Publication Number Publication Date
CN111538864A CN111538864A (en) 2020-08-14
CN111538864B true CN111538864B (en) 2023-03-31

Family

ID=71976956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010220199.4A Active CN111538864B (en) 2020-03-25 2020-03-25 Method and device for reducing Buildrun consumption

Country Status (1)

Country Link
CN (1) CN111538864B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459569A (en) * 2008-12-12 2009-06-17 华为技术有限公司 Method, apparatus for establishing route index tree and method, apparatus for searching route index tree
CN103430178A (en) * 2013-01-30 2013-12-04 华为技术有限公司 Method, apparatus and product of data updating
CN103518364A (en) * 2013-03-19 2014-01-15 华为技术有限公司 Data update method for distributed storage system and server
CN106599218A (en) * 2016-12-16 2017-04-26 北京奇虎科技有限公司 Tree structure processing method and device
CN107463447A (en) * 2017-08-21 2017-12-12 中国人民解放军国防科技大学 B + tree management method based on remote direct nonvolatile memory access

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7383276B2 (en) * 2004-01-30 2008-06-03 Microsoft Corporation Concurrency control for B-trees with node deletion
US7917474B2 (en) * 2005-10-21 2011-03-29 Isilon Systems, Inc. Systems and methods for accessing and updating distributed data
CN100541441C (en) * 2007-11-09 2009-09-16 中国科学院计算技术研究所 A kind of snapshot creation of computer file system, deletion and amending method
CN101876990A (en) * 2009-10-27 2010-11-03 用友软件股份有限公司 Method for transmitting tree-structure object
US9037557B2 (en) * 2011-02-28 2015-05-19 International Business Machines Corporation Optimistic, version number based concurrency control for index structures with atomic, non-versioned pointer updates
CN103544077B (en) * 2012-07-17 2016-12-07 华为技术有限公司 Data processing method and device, shared storage device
CN105868396A (en) * 2016-04-19 2016-08-17 上海交通大学 Multi-version control method of memory file system
US10754677B2 (en) * 2016-07-21 2020-08-25 Red Hat, Inc. Providing a layered image using a hierarchical tree
CN107451486B (en) * 2017-06-30 2021-05-18 华为技术有限公司 Permission setting method and device for file system
CN109962942B (en) * 2017-12-22 2022-06-07 天翼云科技有限公司 Copy update method and apparatus, and computer-readable storage medium
CN110162525B (en) * 2019-04-17 2023-09-26 平安科技(深圳)有限公司 B+ tree-based read-write conflict resolution method, device and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459569A (en) * 2008-12-12 2009-06-17 华为技术有限公司 Method, apparatus for establishing route index tree and method, apparatus for searching route index tree
CN103430178A (en) * 2013-01-30 2013-12-04 华为技术有限公司 Method, apparatus and product of data updating
CN103518364A (en) * 2013-03-19 2014-01-15 华为技术有限公司 Data update method for distributed storage system and server
CN106599218A (en) * 2016-12-16 2017-04-26 北京奇虎科技有限公司 Tree structure processing method and device
CN107463447A (en) * 2017-08-21 2017-12-12 中国人民解放军国防科技大学 B + tree management method based on remote direct nonvolatile memory access

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Effects of Recursive Update in Copy-on-Write File Systems: A BTRFS Case Study;Jie Chen et al.;《Canadian Journal of Electrical and Computer Engineering》;20140430;第113-122页 *
一种面向事务型数据库的无锁并发B+tree索引结构;李乔等;《高技术通讯》;20170115(第01期);第9-19页 *
分布式文件***名字空间管理;陈云云;《中国优秀硕士学位论文全文数据库信息科技辑》;20140615;I138-516页 *
并行R树空间索引中叶节点大小的确定方法研究;赵园春等;《测绘科学》;20080720(第04期);第94-97页 *

Also Published As

Publication number Publication date
CN111538864A (en) 2020-08-14

Similar Documents

Publication Publication Date Title
JP6141305B2 (en) Image search
CN103577483B (en) The method and system of date storage method and system and data access
US8533787B2 (en) Automatic resource ownership assignment system and method
WO2006132793A2 (en) Learning facts from semi-structured text
CN110633378A (en) Graph database construction method supporting super-large scale relational network
KR101790766B1 (en) Method, device and terminal for data search
CN112148731B (en) Data paging query method, device and storage medium
CN106569896A (en) Data distribution and parallel processing method and system
CN112100152A (en) Service data processing method, system, server and readable storage medium
CN105373746B (en) A kind of distributed data processing method and apparatus
CN113051102A (en) File backup method, device, system, storage medium and computer equipment
CN111538864B (en) Method and device for reducing Buildrun consumption
CN111078564B (en) UI test case management method, device, computer equipment and computer readable storage medium
CN102955808A (en) Data acquisition method and distributed file system
CN110765125B (en) Method and device for storing data
CN111984595B (en) File processing method and device and storage medium
CN107122491A (en) Method for data interaction
CN106649584A (en) Index processing method and device in master-slave database system
CN108846009B (en) Copy data storage method and device in ceph
CN112579633A (en) Data retrieval method, device, equipment and storage medium
CN113836212B (en) Method for automatically generating Json data by database data, readable medium and electronic equipment
CN111221814A (en) Secondary index construction method, device and equipment
CN111061759A (en) Data query method and device
CN108984780B (en) Method and device for managing disk data based on data structure supporting repeated key value tree
CN111241036B (en) Asynchronous IO data processing method, device, equipment and medium

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