WO2022262007A1 - Procédé et appareil d'auto-incrémentation d'algorithme de graphe, dispositif et support de stockage - Google Patents

Procédé et appareil d'auto-incrémentation d'algorithme de graphe, dispositif et support de stockage Download PDF

Info

Publication number
WO2022262007A1
WO2022262007A1 PCT/CN2021/102218 CN2021102218W WO2022262007A1 WO 2022262007 A1 WO2022262007 A1 WO 2022262007A1 CN 2021102218 W CN2021102218 W CN 2021102218W WO 2022262007 A1 WO2022262007 A1 WO 2022262007A1
Authority
WO
WIPO (PCT)
Prior art keywords
algorithm
graph
batch
incremental
processing
Prior art date
Application number
PCT/CN2021/102218
Other languages
English (en)
Chinese (zh)
Inventor
樊文飞
田超
许瑞琦
尹强
于文渊
周靖人
Original Assignee
深圳计算科学研究院
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 深圳计算科学研究院 filed Critical 深圳计算科学研究院
Publication of WO2022262007A1 publication Critical patent/WO2022262007A1/fr

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/9024Graphs; Linked lists
    • 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/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Definitions

  • the present application relates to the technical field of data processing, in particular to a graph algorithm automatic increment method, device, equipment and storage medium.
  • the existing incremental graph query algorithms are specially designed for specific problems. This method lacks versatility and requires a lot of professional knowledge, which greatly increases the threshold for using incremental algorithms.
  • the main advancement of the existing incremental algorithms lies in the fact that for unit update (unitupdate), it has lower complexity compared with batch processing, but for batch update (batchupdate), the efficiency of these incremental algorithms is often Directly computing the updated graph without re-using the batch algorithm results in higher query results, and how to use incremental computation in a more efficient way than batch re-computation in this case is still an open problem.
  • this application is proposed to provide an automatic incremental method, device, device and storage medium for a graph algorithm that overcomes the above problems or at least partially solves the above problems, including:
  • An automatic incrementalization method for a graph algorithm comprising:
  • the batch processing graph algorithm is a fixed point calculation
  • the batch processing graph algorithm is obtained from the data structure and logic of the batch processing graph algorithm as a step function of the fixed point calculation; according to the batch processing
  • the data structure and logic of the graph algorithm generate an initial range function based on the graph update area; combine the initial range function and the step function to obtain an incremental processing algorithm corresponding to the batch processing algorithm;
  • the batch processing graph algorithm When the batch processing graph algorithm is a fixed point calculation, it is judged whether the batch processing graph algorithm has a bounded incremental property; when the batch processing graph algorithm has a bounded incremental property, then the The batch processing algorithm is transformed into an incremental processing algorithm, which has a bounded incremental property.
  • it also includes:
  • the batch processing graph algorithm Judging whether the batch processing graph algorithm is an iteration of a step function related to the graph, state, query result and range; wherein, the graph is an undirected graph; the state is the data structure of the batch processing graph algorithm The state at the beginning of the preset round; the query result is the query result obtained after using the batch graph algorithm to query the graph, the query result is composed of the state variables, and each of the state variables is Associated with a certain point or edge in the graph, each of the state variables has a corresponding update function for updating the value of the state variable, and the input of the update function is a set of the state variables , each of the state variables corresponds to a logic judgment statement, satisfying that after each update function is used to update the state variable, the logic judgment statement is true, and for the final fixed point state, all the logic The judgment statement is all true; the range includes the state variables that all correspond to the logic judgment statement being negated when the preset round starts;
  • the batch graph algorithm is an iteration of a step function related to the state, the query result, the graph, and the range, then the batch graph algorithm is determined to be a fixed point computation.
  • the step of generating the initial range function based on the graph update region according to the data structure and logic of the batch graph algorithm includes:
  • the directed acyclic graph includes the topological partial order relationship of each point in the graph in the fixed point state, and the topological partial order relationship is used to guide the batch handles change propagation for graph algorithms;
  • the initial range function based on the graph update region is generated from the directed acyclic graph.
  • the step of combining the initial range function and the step function to obtain the incremental processing algorithm corresponding to the batch processing algorithm it further includes:
  • the step function is used to iterate the initial state and the initial range to a new fixed point to obtain a query result of the updated graph.
  • it also includes:
  • the step function and the state of the batch processing graph algorithm are modified so that the batch processing graph algorithm has bounded incrementalization property; converting the batch processing algorithm into an incremental processing algorithm, and the incremental processing algorithm has a bounded incremental property.
  • the step of converting the batch processing algorithm into an incremental processing algorithm includes:
  • the batch graph algorithm includes any one of weakly connected component algorithm, single-source shortest path algorithm, depth-first search algorithm, local clustering coefficient algorithm and graph simulation algorithm.
  • An automatic incrementalization device for a graph algorithm comprising:
  • the first processing module is used to obtain the step of the batch graph algorithm as a fixed point calculation from the data structure and logic of the batch graph algorithm when the batch graph algorithm is a fixed point calculation function; generate an initial range function based on the graph update region according to the data structure and logic of the batch processing graph algorithm; combine the initial range function and the step function to obtain an increment corresponding to the batch processing algorithm processing algorithm;
  • the second processing module is used to determine whether the batch graph algorithm has a bounded incremental property when the batch graph algorithm is a fixed point calculation; when the batch graph algorithm has a bounded incremental property When the property is , the batch processing algorithm is transformed into an incremental processing algorithm, and the incremental processing algorithm has a bounded incremental property.
  • a device comprising a processor, a memory, and a computer program stored on the memory and capable of running on the processor, the computer program implementing a graph algorithm as described above when executed by the processor The steps of the auto-increment method.
  • a computer-readable storage medium where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the above-mentioned automatic increment method for a graph algorithm are realized.
  • the batch processing graph algorithm by obtaining the batch processing graph algorithm; when the batch processing graph algorithm is fixed point calculation, the batch processing graph algorithm is obtained from the data structure and logic of the batch processing graph algorithm As a step function for fixed point calculation; according to the data structure and logic of the batch graph algorithm, an initial range function based on the graph update area is generated; the initial range function and the step function are combined to obtain the same value as the original range function
  • the incremental processing algorithm corresponding to the batch processing algorithm or; when the batch processing graph algorithm is a fixed point calculation, judging whether the batch processing graph algorithm has a bounded incremental property; when the batch processing graph algorithm When it has a bounded incremental property, the batch processing algorithm is converted into an incremental processing algorithm, and the incremental processing algorithm has a bounded incremental property, which can obtain a more efficient way than batch recalculation for incremental processing. volume calculation.
  • Fig. 1 is a flow chart of the steps of an automatic increment method of a graph algorithm provided by an embodiment of the present application
  • Fig. 2 is a schematic structural diagram of a graph growth model that generates two-way edge segmentation in an automatic incremental method of a graph algorithm provided by an embodiment of the present application;
  • Fig. 3 is a structural block diagram of an automatic incrementing device for a graph algorithm provided by an embodiment of the present application
  • Fig. 4 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
  • Computer equipment 14. Peripheral equipment; 16. Processing unit; 18. Bus; 20. Network adapter; 22. I/O interface; 24. Display; 28. Memory; 30. Random access memory; 32. Cache memory; 34, storage system; 40, program/utility tool; 42, program module.
  • FIG. 1 shows an automatic increment method of a graph algorithm provided by an embodiment of the present application, including:
  • the batch processing graph algorithm by obtaining the batch processing graph algorithm; when the batch processing graph algorithm is fixed point calculation, the batch processing graph algorithm is obtained from the data structure and logic of the batch processing graph algorithm As a step function for fixed point calculation; according to the data structure and logic of the batch graph algorithm, an initial range function based on the graph update area is generated; the initial range function and the step function are combined to obtain the same value as the original range function the incremental processing algorithm corresponding to the batch processing algorithm; or; when the batch processing graph algorithm is a fixed point calculation, judging whether the batch processing graph algorithm has a bounded incremental property; when the batch processing graph algorithm When the graph algorithm has a bounded incremental property, the batch processing algorithm is converted into an incremental processing algorithm, and the incremental processing algorithm has a bounded incremental property, which can obtain a more efficient method than batch processing recalculation Do incremental calculations.
  • the batch graph algorithm A (batch algorithms) is defined as follows:
  • the batch processing graph algorithm A answers the query Q on the graph data G, and outputs A(Q, G) as the query result Q(G);
  • the incremental processing algorithm A ⁇ (incremental algorithm) corresponding to the batch graph algorithm A is defined as follows:
  • step S120 when the batch graph algorithm A is fixed point calculation, the batch graph algorithm A is obtained from the data structure and logic of the batch graph algorithm A as a fixed point The calculated step function f A ; according to the data structure and logic of the batch graph algorithm A, an initial range function h based on the graph update area ⁇ G is generated; the initial range function h and the step function f A are combined , to obtain the incremental processing algorithm A ⁇ corresponding to the batch processing algorithm.
  • a batch graph algorithm A when run on a graph G, builds an auxiliary structure D A that expands the graph by the state variables xi associated with the nodes and edges in the graph G and the part size of the split result Q(G) G, the auxiliary structure D A records the calculation process and evolves continuously throughout the calculation process. Therefore, the segmentation process of the batch graph algorithm A can be described as a continuous update of the auxiliary structure D A.
  • the continuous update of the auxiliary structure D A is often performed in time order, with Indicates the state of the auxiliary structure D A after t iterations; by inputting and the change value calculated by the update function f on a specific update region Ht to obtain details as follows:
  • the update function f is obtained from the original logic of the batch graph algorithm A; the update area H t of the t+1 iteration is represented by the state as input, and generated by the initial range function h of the batch graph algorithm A; the computation continues until stop, at this time, the As the segmentation result of Batch Graph Algorithm A.
  • the initial range function h determines the update area by obtaining the information of the previous iteration, that is, the state variables of the auxiliary structure D A to be updated; the update function f deduces the actual changes of these state variables, for example, decides not Partial assignment of assigned nodes and edges, i.e., the computation process of Batch Graph Algorithm A is guided by changing values at runtime (i.e., change propagation).
  • Example 1 for a graph growth model that generates two-way edge segmentation, a starting node is selected from the graph, and the graph is grown around an edge-segmented segmented area by breadth-first search (BFS) until Half of the nodes are included, and the rest of the nodes are placed into another edge-segmented split region.
  • BFS breadth-first search
  • w' 0 can be selected as the starting node, and then v 1 ,...,v 19 , u' 1 ,...,u' 19 ,w ' 0 and w 0 are put into the V1 part for graph growth, while the rest of the nodes in G are put into the V2 part.
  • the above graph growth model is an iterative batch graph algorithm. Its state variables include the part ID and part size of each node. In each iteration, its update function f takes a set of unallocated vertices, a node to be updated As input, the part ID and corresponding part size of , it assigns part IDs to these vertices and updates their sizes accordingly, and obtains the unassigned neighbor nodes of newly assigned nodes through the initial range function h.
  • the application of the update function f and the initial range function h can be done in parallel, e.g. to assign different vertices or edges simultaneously in one parallel iteration.
  • the iterative segmentation algorithms that meet the fixed point calculation include: (1) graph growing algorithm (graph growing), greedy growing algorithm (greedy growing), k-way graph greedy growing algorithm (K-Way Graph Greedy Growing Partitioning, KGGGP) and bubble methods; (2) Neighborhood embedding (NE) and discriminant neighborhood embedding (DNE) applied to vertex segmentation; and (3) Applied to streaming Set Fennel algorithm, High-Degree (are) Replicated First (HDRF), Ginger algorithm, and Greedy algorithm (Greedy); although streaming segmentation algorithms are only developed for insertion, they can still be processed incrementally General update.
  • the METIS algorithm applied to edge segmentation and the Sheep algorithm applied to vertex segmentation are iterative segmentation algorithms that are not suitable for fixed point calculation, because they will change the topology of the graph during the segmentation process, which exceeds the expressive ability of the iterative calculation model.
  • the batch processing algorithm A is fixed point calculation, the batch processing algorithm A is converted into an incremental processing algorithm A ⁇ , so that the incremental processing algorithm A ⁇ has two characteristics, (1) relative incremental Bounded, (2) preserves the segmentation quality of Batch Graph Algorithm A, as follows:
  • the initial range function h of the batch graph algorithm A determines another update region H T+1 for the next new iteration t+2, and adopts the above method to determine the basic change related to H T+1 ; then, the update function f is applied to H T+1 .
  • These two steps are iterated in the incremental processing algorithm A ⁇ until the update function f and the initial range function h can no longer be used to operate according to the same logic as the batch graph algorithm A to obtain a new final state of this incremental operation
  • the input graph update region ⁇ G may overweight some parts of the old edge-segmented (or vertex-segmented) query result Q(G).
  • the incremental processing algorithm A ⁇ needs to remove a set of nodes (or edges) from each overweight V i (or E i ) such that it satisfies the equilibrium constraint, and then uses the same as above (a ) to reassign U i with the same strategy.
  • the incremental processing algorithm A ⁇ redistributes some vertices or edges that are either overwritten by the incoming update or picked out for rebalancing. This way helps to refine the old segmentation, because the incremental processing algorithm A ⁇ can utilize all the information of the old segmentation. In some cases, the segmentation quality produced this way is even better than re-segmentation with batch graph algorithm A.
  • Example 2 Continuing from Example 1, for a graph update region ⁇ G, delete four edges (w 0 , v 1 ), (w 0 , v 2 ), (w 1 , v' 18 ) and (w 1, v'19 ).
  • the incremental processing algorithm A ⁇ directly uses the modified range function h' to obtain an initial new update region, which contains the node set covered by the graph update region ⁇ G, namely ⁇ w' 0 , v 1 , v 2 , w 1 , v' 18 , v' 19 ⁇ ; deallocate the above set of nodes, update the size of the corresponding part, and deduce the ID of the candidate part according to the allocation of its neighbors.
  • the incremental processing algorithm A ⁇ iteratively reallocates these nodes using the original update of graph growth and the initial range function h (Example 1), placing w 0 (or w 1 ) into part V 2 (or V 1 ) , and keep the assignments of all other nodes unchanged. That is, the incremental processing algorithm A ⁇ only swaps the original assignments of the two nodes.
  • the incremental processing algorithm A ⁇ can ensure incremental boundedness when (1) the update function f and the (modified) range functions h and h' can be computed incrementally in polynomial time on the update scale, i.e., (or can be computed from f(d) (or h(d), h'(d)) and ⁇ d without visiting the whole of d; and (2) the overhead of identifying each set Ui from the overweight part is
  • some aggregate functions such as sum and avg, can be computed incrementally, but the functions that compute eigenvectors in the lineage segmentation method are not.
  • the incremental processing algorithm A ⁇ only re-evaluates the update function f for regions involving changes, when these functions can be computed incrementally, the magnitude of the change is given by the polynomial of
  • constraint If
  • the rebalancing is performed when the incremental processing algorithm A ⁇ starts. Therefore, when the above two conditions hold, the overall overhead and size
  • step S130 when the batch processing graph algorithm A is a fixed point calculation, it is judged whether the batch processing graph algorithm A has a bounded incremental property; when the batch processing graph algorithm A has a When the property of bounded increment is not obtained, the batch processing algorithm A is transformed into an incremental processing algorithm A ⁇ , and the incremental processing algorithm A ⁇ has the property of bounded increment.
  • the method for judging that the batch graph algorithm A has a bounded incremental property is: the cost of incremental computation can be calculated by a polynomial function of graph update, segmentation size, and the size of the area affected by the update.
  • this embodiment provides a bounded incremental condition, that is, when the batch graph algorithm A has this property, it can ensure that the incremental processing algorithm obtained by the above automatic incremental method A ⁇ is incrementally bounded, i.e. its computational cost is only affected by the extent of graph updates affected by it, and not related to the full graph size. This ensures that the incremental processing algorithm A ⁇ does not perform redundant calculations.
  • the graph G is an undirected graph; the state It is the state of the data structure of the batch processing graph algorithm A at the beginning of the preset round (the tth round); the query result Q(G) is obtained after querying the graph G using the batch processing graph algorithm A , the query result Q(G) is composed of the state variables xi , each of the state variables xi is associated with a certain point or edge in the graph G, and each of the state Each variable x i has a corresponding update function for updating the value of the state variable x i
  • the update function input of is the set of the state variables x i , each of the state variables x i corresponds to a logic judgment statement Satisfied every time using the update function After updating the state variable x i , the logic judgment statement is true, and for all the final converged fixed points, all the logical judgment statements all true; the range In order to all correspond to the logic judgment statement when the preset round (the tth round) starts The state variable x i that is
  • the step function f A is used in each round of iterations in the range
  • the input corresponding to the state variable x i is executed on all the state variables x i contained in Iterate to all the logic judgment statements is true, the range for stop.
  • the step of generating the initial range function h based on the graph update area ⁇ G according to the data structure and logic of the batch graph algorithm A includes:
  • the directed acyclic graph contains the topological partial order relationship ⁇ C of each point in the graph G in the fixed point state, and the topological partial order relationship ⁇ C is used to guide the batch processing Change propagation of graph algorithm A;
  • the initial range function h based on the graph update region ⁇ G is generated according to the directed acyclic graph.
  • the initial range function h can be generated in the following manner:
  • the directed acyclic graph is used to represent the topological partial order relationship ⁇ C of each point in the graph G in the fixed point state; change propagation is along the direction of the directed acyclic graph Propagation of dependencies;
  • step of combining the initial range function h and the step function f A to obtain the incremental processing algorithm A ⁇ corresponding to the batch processing algorithm A further includes :
  • step function f A to convert the initial state and the initial scope Iterate to new fixed points to obtain the updated graph query results for
  • the step function f A and the state of the batch graph algorithm A modifying, so that the batch processing graph algorithm A has a bounded incremental property; transforming the batch processing algorithm A into an incremental processing algorithm A ⁇ , and the incremental processing algorithm A ⁇ has a bounded incremental property .
  • this embodiment provides a state for the batch processing algorithm A and the modification method of the step function f A , so that after the modification method is applied to a class of weakly incremental algorithms that do not have the bounded incremental property, they can all have the bounded incremental property, thereby being able to into the corresponding incremental processing algorithm A ⁇ .
  • the step of converting the batch processing algorithm A into an incremental processing algorithm A ⁇ includes:
  • the initial range function h and the step function f A are combined to obtain the incremental processing algorithm A ⁇ corresponding to the batch processing algorithm.
  • the batch graph algorithm A includes a single-source shortest path algorithm (Single Source Shortest Path, SSSP), a weakly connected component algorithm (Weakly Connected Component, WCC), a depth-first search algorithm (DepthFirst Search, DFS), Any one of Local Clustering Coefficient (LCC) and Graph Simulation.
  • SSSP Single Source Shortest Path
  • WCC weakly connected component algorithm
  • DFS Depth First Search
  • LCC Local Clustering Coefficient
  • the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment.
  • FIG. 3 shows an automatic incrementing device for a graph algorithm provided by an embodiment of the present application, including:
  • An acquisition module 210 configured to acquire a batch graph algorithm A
  • the first processing module 220 is configured to obtain the batch graph algorithm A as a fixed point from the data structure and logic of the batch graph algorithm A when the batch graph algorithm A is a fixed point calculation
  • the calculated step function f A according to the data structure and logic of the batch graph algorithm A, an initial range function h based on the graph update area ⁇ G is generated; the initial range function h and the step function f A are combined , to obtain the incremental processing algorithm A ⁇ corresponding to the batch processing algorithm;
  • the second processing module 230 is used to judge whether the batch processing graph algorithm A has a bounded incremental property when the batch processing graph algorithm A is a fixed point calculation; when the batch processing graph algorithm A has a bounded incremental property When the property of bounded increment is not obtained, the batch processing algorithm A is transformed into an incremental processing algorithm A ⁇ , and the incremental processing algorithm A ⁇ has the property of bounded increment.
  • the first processing module 220 includes:
  • An anchor set acquisition submodule used to acquire the input that determines the state variable x i in the fixed point state A subset of , as the anchor set of the state variable xi
  • Directed acyclic graph generation sub-module for according to the anchor set Generate a directed acyclic graph, the directed acyclic graph contains the topological partial order relationship ⁇ C of each point in the graph G in the fixed point state, and the topological partial order relationship ⁇ C is used to guide the batch processing Change propagation of graph algorithm A;
  • the initial range function generating submodule is configured to generate the initial range function h based on the graph update area ⁇ G according to the directed acyclic graph.
  • the second processing module 230 includes:
  • the second processing submodule is used to determine whether the batch graph algorithm A has a weakly incremental property when the batch graph algorithm A does not have a bounded incremental property;
  • the step function f A and the state of the batch graph algorithm A modifying, so that the batch processing graph algorithm A has a bounded incremental property; transforming the batch processing algorithm A into an incremental processing algorithm A ⁇ , and the incremental processing algorithm A ⁇ has a bounded incremental property .
  • the third processing module is used to obtain the query result Q(G) and the update area ⁇ G of the graph G; using the initial range function h, the fixed point state of the query result Q(G) Modified to for the updated figure Feasible initial state and the initial state initial range on Use the step function f A to convert the initial state and the initial scope Iterate to new fixed points to obtain the updated graph query results for
  • FIG. 4 shows a computer device for automatic incrementation of a graph algorithm of the present application, which may specifically include the following:
  • the above-mentioned computer device 12 is expressed in the form of a general-purpose computing device.
  • the components of the computer device 12 may include, but are not limited to: one or more processors or processing units 16, memory 28, and different system components (including memory 28 and processing unit 16) connected to each other. bus 18.
  • the bus 18 represents one or more of several types of bus 18 structures, including a memory bus 18 or memory controller, a peripheral bus 18, an accelerated graphics port, a processor, or a bureau using any of a variety of bus 18 structures.
  • domain bus 18 includes, but are not limited to, the Industry Standard Architecture (ISA) bus 18, the Micro Channel Architecture (MAC) bus 18, the Enhanced ISA bus 18, the Audio Video Electronics Standards Association (VESA) local bus 18, and Peripheral Component Interconnect (PCI) bus 18 .
  • ISA Industry Standard Architecture
  • MAC Micro Channel Architecture
  • VESA Audio Video Electronics Standards Association
  • PCI Peripheral Component Interconnect
  • Computer device 12 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by computer device 12 and include both volatile and nonvolatile media, removable and non-removable media.
  • Memory 28 may include computer system readable media in the form of volatile memory, such as random access memory 30 and/or cache memory 32 .
  • the computer device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media.
  • storage system 34 may be used to read from and write to non-removable, non-volatile magnetic media (commonly referred to as a "hard drive").
  • a disk drive for reading and writing to removable non-volatile disks such as "floppy disks”
  • removable non-volatile optical disks such as CD-ROM, DVD-ROM or other optical media
  • each drive may be connected to bus 18 via one or more data media interfaces.
  • the memory may include at least one program product having a set (eg, at least one) of program modules 42 configured to perform the functions of various embodiments of the present application.
  • program/utility 40 having a set (at least one) of program modules 42, such as may be stored in memory, such program modules 42 including - but not limited to - an operating system, one or more application programs, other program modules 42 and program data, each or some combination of these examples may include the implementation of the network environment.
  • the program modules 42 generally perform the functions and/or methods of the embodiments described herein.
  • the computer device 12 may also communicate with one or more external devices 14 (e.g., a keyboard, pointing device, display 24, camera, etc.), and with one or more devices that enable an operator to interact with the computer device 12, and and/or communicate with any device (eg, network card, modem, etc.) that enables the computing device 12 to communicate with one or more other computing devices. Such communication may occur through I/O interface 22 .
  • computer device 12 may communicate with one or more networks (eg, local area network (LAN)), wide area network (WAN) and/or public networks (eg, the Internet) via network adapter 20 . As shown in FIG. 4 , network adapter 20 communicates with other modules of computer device 12 via bus 18 .
  • LAN local area network
  • WAN wide area network
  • Internet public networks
  • network adapter 20 communicates with other modules of computer device 12 via bus 18 .
  • other hardware and/or software modules may be used in conjunction with computer device 12, including but not limited to: microcode, device drivers, redundant processing units 16, external disk drive arrays
  • the processing unit 16 executes various functional applications and data processing by running the programs stored in the memory 28 , for example, implementing an automatic increment method of a graph algorithm provided by the embodiment of the present application.
  • the above-mentioned processing unit 16 executes the above-mentioned program, it realizes: obtaining a batch processing graph algorithm A; when the batch processing graph algorithm A is fixed point calculation, then from the data structure and logic of the batch processing graph algorithm A Obtain the step function f A calculated by the batch graph algorithm A as a fixed point; generate an initial range function h based on the graph update area ⁇ G according to the data structure and logic of the batch graph algorithm A; set the initial range function h and the step function f A are combined to obtain the incremental processing algorithm A ⁇ corresponding to the batch processing algorithm; or; when the batch processing graph algorithm A is a fixed point calculation, determine the Whether the batch processing graph algorithm A has a bounded incremental property; when the batch processing graph algorithm A has a bounded incremental property, then the batch processing algorithm A is converted into an incremental processing algorithm A ⁇ , so The incremental processing algorithm A ⁇ has the property of bounded incrementalization.
  • a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, an automatic increment of a graph algorithm as provided in all embodiments of the present application is realized method.
  • the batch processing graph algorithm A is obtained; when the batch processing graph algorithm A is fixed point calculation, it is obtained from the data structure and logic of the batch processing graph algorithm A
  • the batch graph algorithm A is used as the step function f A calculated by the fixed point; according to the data structure and logic of the batch graph algorithm A, an initial range function h based on the graph update area ⁇ G is generated; the initial range function h and the step function f A are combined to obtain the incremental processing algorithm A ⁇ corresponding to the batch processing algorithm; or; when the batch processing graph algorithm A is fixed point calculation, determine the Whether the batch processing graph algorithm A has a bounded incremental property; when the batch processing graph algorithm A has a bounded incremental property, then the batch processing algorithm A is converted into an incremental processing algorithm A ⁇ , the Incremental processing algorithm A ⁇ has bounded incremental properties.
  • the computer readable medium may be a computer readable signal medium or a computer readable storage medium.
  • a computer readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (non-exhaustive list) of computer readable storage media include: electrical connections with one or more leads, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), Erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
  • a computer readable signal medium may include a data signal carrying computer readable program code in baseband or as part of a carrier wave. Such propagated data signals may take many forms, including - but not limited to - electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device. .
  • Computer program codes for performing the operations of the present application may be written in one or more programming languages or combinations thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional Procedural programming language - such as "C" or a similar programming language.
  • the program code may execute entirely on the operator computer, partly on the operator computer, as a stand-alone software package, partly on the operator computer and partly on a remote computer or entirely on the remote computer or server .
  • the remote computer can be connected to the operator computer via any kind of network, including a local area network (LAN) or wide area network (WAN), or it can be connected to an external computer (e.g. using an Internet service provider to connect via the Internet).
  • LAN local area network
  • WAN wide area network
  • an Internet service provider to connect via the Internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

L'invention concerne un procédé et un appareil d'auto-incrémentation d'algorithme de graphe, un dispositif et un support de stockage, le procédé comprenant les étapes consistant à : acquérir un algorithme de graphe de traitement par lots (S110); lorsque l'algorithme de graphe de traitement par lots est un calcul en virgule fixe, acquérir une fonction de pas de l'algorithme de graphe de traitement par lots à partir de la structure de données et de la logique de l'algorithme de graphe de traitement par lots pour le calcul en virgule fixe; selon la structure de données et la logique de l'algorithme de graphe de traitement par lots, générer une fonction de plage initiale sur la base d'une région de mise à jour de graphe; et combiner la fonction de plage initiale et la fonction de pas pour obtenir un algorithme de traitement incrémental correspondant à l'algorithme de traitement par lots (S120); ou, lorsque l'algorithme de graphe de traitement par lots est un calcul en virgule fixe, déterminer si l'algorithme de graphe de traitement par lots a des propriétés incrémentales bornées; et lorsque l'algorithme de graphe de traitement par lots a des propriétés incrémentales bornées, convertir l'algorithme de traitement par lots en un algorithme de traitement incrémental, l'algorithme de traitement incrémental ayant des propriétés incrémentales bornées (S130). Dans le présent procédé, un calcul incrémental peut être effectué d'une manière plus efficace qu'un recalcul par lots.
PCT/CN2021/102218 2021-06-18 2021-06-24 Procédé et appareil d'auto-incrémentation d'algorithme de graphe, dispositif et support de stockage WO2022262007A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110681585.8 2021-06-18
CN202110681585.8A CN113343040A (zh) 2021-06-18 2021-06-18 一种图算法的自动增量化方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
WO2022262007A1 true WO2022262007A1 (fr) 2022-12-22

Family

ID=77477433

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/102218 WO2022262007A1 (fr) 2021-06-18 2021-06-24 Procédé et appareil d'auto-incrémentation d'algorithme de graphe, dispositif et support de stockage

Country Status (2)

Country Link
CN (1) CN113343040A (fr)
WO (1) WO2022262007A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115934702A (zh) * 2023-03-14 2023-04-07 青岛安工数联信息科技有限公司 流程工业中数据处理方法、装置、存储介质及处理器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140320497A1 (en) * 2013-04-29 2014-10-30 Microsoft Corporation Graph partitioning for massive scale graphs
CN107193896A (zh) * 2017-05-09 2017-09-22 华中科技大学 一种基于簇的图数据划分方法
CN110622156A (zh) * 2017-05-12 2019-12-27 华为技术有限公司 用于查询大图的增量图计算
CN111538867A (zh) * 2020-04-15 2020-08-14 深圳计算科学研究院 一种有界增量图划分方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140320497A1 (en) * 2013-04-29 2014-10-30 Microsoft Corporation Graph partitioning for massive scale graphs
CN107193896A (zh) * 2017-05-09 2017-09-22 华中科技大学 一种基于簇的图数据划分方法
CN110622156A (zh) * 2017-05-12 2019-12-27 华为技术有限公司 用于查询大图的增量图计算
CN111538867A (zh) * 2020-04-15 2020-08-14 深圳计算科学研究院 一种有界增量图划分方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SONG JIE, GUO CHAO-PENG;ZHANG YI-CHUAN;ZHANG YAN-FENG;YU GE: "Research and Implementation Incremental Iterative Model", CHINESE JOURNAL OF COMPUTERS, vol. 39, no. 1, 31 January 2016 (2016-01-31), pages 109 - 125, XP093014712, DOI: 10.11897/SP.J.1016.2016.00109 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115934702A (zh) * 2023-03-14 2023-04-07 青岛安工数联信息科技有限公司 流程工业中数据处理方法、装置、存储介质及处理器
CN115934702B (zh) * 2023-03-14 2023-05-23 青岛安工数联信息科技有限公司 流程工业中数据处理方法、装置、存储介质及处理器

Also Published As

Publication number Publication date
CN113343040A (zh) 2021-09-03

Similar Documents

Publication Publication Date Title
WO2020114022A1 (fr) Procédé et appareil d'alignement de base de connaissances, dispositif informatique et support de stockage
CN104008064B (zh) 用于多级存储器压缩的方法和系统
US20160140152A1 (en) Intelligent compiler for parallel graph processing
WO2017107414A1 (fr) Procédé et dispositif d'opération de fichier
CN108763376B (zh) 融合关系路径、类型、实体描述信息的知识表示学习方法
CN104462668B (zh) 计算机实施的用于设计用二叉树来建模的工业产品的方法
JP6070936B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20150120346A1 (en) Clustering-Based Learning Asset Categorization and Consolidation
CN109886311B (zh) 增量聚类方法、装置、电子设备和计算机可读介质
WO2022262007A1 (fr) Procédé et appareil d'auto-incrémentation d'algorithme de graphe, dispositif et support de stockage
WO2022193872A1 (fr) Procédé et appareil de détermination de relation spatiale, dispositif informatique et support d'enregistrement
CN111191825A (zh) 用户违约预测方法、装置及电子设备
CN111008213B (zh) 用于生成语言转换模型的方法和装置
CN113868351A (zh) 一种地址聚类方法、装置、电子设备及存储介质
US20060206524A1 (en) Intelligent collection management
WO2019184577A1 (fr) Procédé et système de traitement de transaction, et serveur
KR20230087484A (ko) 트리 기반 머신 학습 모델들의 양자화
CN113761017A (zh) 相似性搜索方法和装置
CN115774854B (zh) 一种文本分类方法、装置、电子设备和存储介质
WO2023236239A1 (fr) Procédé de validation de règle de filtrage de données basé sur un échantillonnage à cycles multiples, et appareil associé
CN111414422A (zh) 一种数据分布方法、装置、设备和存储介质
WO2022257301A1 (fr) Procédé, système et appareil de configuration de ressources informatiques de service
US11630812B2 (en) Schema based type-coercion for structured documents
US11435926B2 (en) Method, device, and computer program product for managing storage system
CN115544257A (zh) 网盘文档快速分类方法、装置、网盘及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21945590

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE