CN114385864A - Graph searching method, device, equipment and storage medium - Google Patents
Graph searching method, device, equipment and storage medium Download PDFInfo
- Publication number
- CN114385864A CN114385864A CN202111627096.0A CN202111627096A CN114385864A CN 114385864 A CN114385864 A CN 114385864A CN 202111627096 A CN202111627096 A CN 202111627096A CN 114385864 A CN114385864 A CN 114385864A
- Authority
- CN
- China
- Prior art keywords
- vertex
- search
- graph
- layer number
- reverse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 66
- 230000006978 adaptation Effects 0.000 claims abstract description 38
- 230000000007 visual effect Effects 0.000 claims abstract description 28
- 230000015654 memory Effects 0.000 claims description 29
- 238000004458 analytical method Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 18
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 238000010367 cloning Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 15
- 238000012800 visualization Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000013138 pruning Methods 0.000 description 7
- 230000002457 bidirectional effect Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000010845 search algorithm Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012856 packing Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000008280 blood Substances 0.000 description 2
- 210000004369 blood Anatomy 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012858 packaging process Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
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)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
The application provides a graph searching method, a graph searching device, graph searching equipment and a storage medium, wherein the method comprises the following steps: receiving a search vertex and a selected search mode input at a search entry of a front-end page; wherein, the searching vertex is a point in the directed acyclic graph; determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result; and displaying the search result through the visual plug-in.
Description
Technical Field
The embodiment of the application relates to the technical field of data processing of financial technology (Fintech), and relates to but is not limited to a graph searching method, a graph searching device, graph searching equipment and a storage medium.
Background
With the development of computer computing, more and more technologies are applied in the financial field, and the traditional financial industry is gradually changing to financial technology (Fintech), but higher requirements are also put forward on the technologies due to the requirements of the financial industry on safety and real-time performance.
In the field of financial science and technology, enterprises have various graph searching scenes, such as data relationship search, application relationship search and the like, generally, graph model data volume of the enterprises is very huge, at present, complex graph searching can only be realized through a back-end offline algorithm, and a real-time returning and visual graph display scheme does not exist.
Disclosure of Invention
The embodiment of the application provides a graph searching method, a graph searching device, graph searching equipment and a storage medium, and aims to solve the problems that complex graph searching in the related art can only be realized through a back-end offline algorithm and a real-time returning and visual graph display scheme does not exist.
The technical scheme of the embodiment of the application is realized as follows:
the embodiment of the application provides a graph searching method, which comprises the following steps:
receiving a search vertex and a selected search mode input at a search entry of a front-end page; wherein the search vertex is a point in a directed acyclic graph;
determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result;
and displaying the search result through a visual plug-in.
An embodiment of the present application provides a graph search apparatus, including:
the display module is used for displaying the search entry of the front-end page;
the receiving module is used for receiving the search vertex input at the search entrance and the selected search mode; wherein the search vertex is a point in a directed acyclic graph;
the processing module is used for determining an adaptation algorithm corresponding to the search mode and executing the adaptation algorithm to search based on the search vertex to obtain a search result;
and the display module is used for displaying the search result through a visual plug-in.
An embodiment of the present application provides a graph search device, including:
a memory for storing executable instructions; a processor, when executing executable instructions stored in the memory, implements the method described above.
The embodiment of the application provides a storage medium, which stores executable instructions and is used for causing a processor to implement the method when executed.
The embodiment of the application has the following beneficial effects:
receiving a search vertex and a selected search mode input at a search entry of a front page; wherein, the searching vertex is a point in the directed acyclic graph; determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result; and displaying the search result through the visual plug-in. The method solves the problems that the complex search of the graph in the related technology can only be realized through a back-end off-line algorithm and does not have a real-time return and visual graph display scheme, and supports a whole set of scheme of On-line Analytical Processing (OLAP) complex scene search of a super-large scale data set and visual display of various graph models.
Drawings
FIG. 1 is an alternative architecture diagram of a server provided by an embodiment of the present application;
FIG. 2 is a first flowchart illustrating a graph searching method according to an embodiment of the present disclosure;
FIG. 3 is a schematic diagram of an architecture of a graph visualization analysis system provided by an embodiment of the present application;
fig. 4 is a flowchart illustrating a second graph searching method according to an embodiment of the present application;
FIG. 5 is a diagram of a directed acyclic graph G and a graph of interval labels of vertices provided in an embodiment of the present application;
fig. 6 is a schematic diagram of forward and reverse extent layers and forward and reverse topology layers of a directed acyclic graph G and vertices provided in the embodiment of the present application.
Detailed Description
In order to make the objectives, technical solutions and advantages of the present application clearer, the present application will be described in further detail with reference to the attached drawings, the described embodiments should not be considered as limiting the present application, and all other embodiments obtained by a person of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
In the following description, reference is made to "some embodiments" which describe a subset of all possible embodiments, but it is understood that "some embodiments" may be the same subset or different subsets of all possible embodiments, and may be combined with each other without conflict. Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiments of the present application belong. The terminology used in the embodiments of the present application is for the purpose of describing the embodiments of the present application only and is not intended to be limiting of the present application.
An exemplary application of the graph search device provided in the embodiment of the present application is described below, and the graph search device provided in the embodiment of the present application may be implemented as any terminal having an on-screen display function, such as a notebook computer, a tablet computer, a desktop computer, a mobile device (e.g., a mobile phone, a portable music player, a personal digital assistant, a dedicated messaging device, a portable game device), an intelligent robot, or may be implemented as a server. Next, an exemplary application when the graph search device is implemented as a server will be explained.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a server 100 provided in an embodiment of the present application, where the server 100 shown in fig. 1 includes: at least one processor 110, at least one network interface 120, a user interface 130, and memory 150. The various components in server 100 are coupled together by a bus system 140. It is understood that the bus system 140 is used to enable connected communication between these components. The bus system 140 includes a power bus, a control bus, and a status signal bus in addition to a data bus. For clarity of illustration, however, the various buses are labeled as bus system 140 in fig. 1.
The Processor 110 may be an integrated circuit chip having Signal processing capabilities, such as a general purpose Processor, a Digital Signal Processor (DSP), or other programmable logic device, discrete gate or transistor logic device, discrete hardware components, or the like, wherein the general purpose Processor may be a microprocessor or any conventional Processor, or the like.
The user interface 130 includes one or more output devices 131, including one or more speakers and/or one or more visual display screens, that enable the presentation of media content. The user interface 130 also includes one or more input devices 132 including user interface components that facilitate user input, such as a keyboard, mouse, microphone, touch screen display, camera, other input buttons and controls.
The memory 150 may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid state memory, hard disk drives, optical disk drives, and the like. Memory 150 optionally includes one or more storage devices physically located remotely from processor 110. The memory 150 includes volatile memory or nonvolatile memory, and may include both volatile and nonvolatile memory. The nonvolatile Memory may be a Read Only Memory (ROM), and the volatile Memory may be a Random Access Memory (RAM). The memory 150 described in embodiments herein is intended to comprise any suitable type of memory. In some embodiments, memory 150 is capable of storing data to support various operations, examples of which include programs, modules, and data structures, or subsets or supersets thereof, as exemplified below.
An operating system 151 including system programs for processing various basic system services and performing hardware-related tasks, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks;
a network communication module 152 for communicating to other computing devices via one or more (wired or wireless) network interfaces 120, exemplary network interfaces 120 including: bluetooth, wireless-compatibility authentication (Wi-Fi), and Universal Serial Bus (USB), etc.;
an input processing module 153 for detecting one or more user inputs or interactions from one of the one or more input devices 132 and translating the detected inputs or interactions.
In some embodiments, the apparatus provided by the embodiments of the present application may be implemented in software, fig. 1 shows a graph search apparatus 154 stored in the memory 150, and the graph search apparatus 154 may be a graph search apparatus in the server 100, which may be software in the form of programs and plug-ins, and includes the following software modules: display module 1541, receiving module 1542, processing module 1543, which are logical and thus can be arbitrarily combined or further divided according to the functions implemented. The functions of the respective modules will be explained below.
In other embodiments, the apparatus provided in the embodiments of the present Application may be implemented in hardware, and for example, the apparatus provided in the embodiments of the present Application may be a processor in the form of a hardware decoding processor, which is programmed to execute the graph search method provided in the embodiments of the present Application, for example, the processor in the form of the hardware decoding processor may be one or more Application Specific Integrated Circuits (ASICs), DSPs, Programmable Logic Devices (PLDs), Complex Programmable Logic Devices (CPLDs), Field-Programmable Gate arrays (FPGAs), or other electronic components.
The graph search method provided by the embodiment of the present application will be described below in conjunction with an exemplary application and implementation of the server 100 provided by the embodiment of the present application. Referring to fig. 2, fig. 2 is an alternative flow chart diagram of a graph searching method provided in the embodiment of the present application, which will be described in conjunction with the steps shown in fig. 2,
in step S201, a search vertex and a selected search pattern input at a search entry of a front page are received.
Wherein the search vertex is a point in the directed acyclic graph.
In this embodiment of the present application, a Directed Acyclic Graph (DAG) is a data set composed of vertices and edges, where a vertex represents an entity and an edge represents a relationship between the entities, where G ═ V, E represents a Directed acyclic graph, V represents a set of vertices in a graph G, and E represents a set of edges in a graph G.
In the embodiment of the application, in the searching process, the number of input searching vertexes is greater than or equal to 1. Under the condition that the number of the search vertexes is multiple, the search mode comprises a mode corresponding to reachability analysis and a mode corresponding to path search between two points; in the case where the number of search vertices is single, the search pattern includes a pattern corresponding to a K-step search using a single search vertex as a specific vertex. Wherein, the accessibility means: any two vertices u and v in the figure indicate that vertex u can reach vertex v if there is a path from u to v. The path refers to: one path from vertex u to vertex v is a sequence of vertices (u, u1, …, v) starting from vertex u, and ending from vertex u to vertex v.
In the embodiment of the application, in the searching process, the graph database used for the query and the graph model storage may be an open-source distributed graph database, such as a nebuligraph, which supports millisecond-level query of a very large-scale data set. When searching is carried out at a search entry of a front-end page, the search can be realized by a search engine of the front-end page, and the search engine can be a distributed full-text search engine, such as an elastic search engine, and supports word segmentation, indexing and quick retrieval of mass data.
In practical application, enterprises have various scenarios of graph search, including but not limited to data lineage search and application lineage search. In the face of the situation that the data volume of the graph model of the enterprise is huge, the embodiment of the application provides a searching and visualization platform, the visualization platform presents a front-end page to a user, and the user can perform various searches related to the graph on the platform.
Step S202, determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result.
In the embodiment of the application, corresponding adaptation algorithms are different when the selected search modes are different; the adaptation algorithm in the application is a search method adopted in the process of searching for an input search fixed point. It should be noted that, in the embodiment of the present application, the adaptation algorithm is an algorithm design performed on a graph model in a graph database, and relates to an operation on the graph model; in the algorithm implementation process, the method and the device disassemble the operation of the algorithm on the graph into basic graph semantic operations, such as checking the attribute of a vertex, acquiring adjacent vertices, and acquiring the most basic graph semantic operations of edges between two points, namely, the operation of the adaptive algorithm on a graph database is decomposed into basic graph semantic atomic operations in the search process, so that the complexity of the graph operation is reduced; the method has the advantages that the elastic search is adopted for searching, all algorithm characteristics are indexed, the index is utilized, only one-time retrieval is needed, the searching result can be obtained, and the stability of the whole service is improved.
In some embodiments of the present application, when performing an adaptation algorithm to perform a Search based on a Search vertex, a breadth First traversal mode (BFS) may be used to process vertices according to a hierarchy, where a vertex closest to a starting point is visited First, and vertices in a graph are traversed sequentially according to a distance order.
And step S203, displaying the search result through the visual plug-in.
In the embodiment of the present application, the visualization plug-in includes, but is not limited to, a cysscape. The visualization plug-in can flexibly assemble the visualization structural bodies packaged at the rear ends into the visualization graphs of various drawings, and perform rendering and color matching. In some embodiments, the visualization plug-in may flexibly assemble the visualization construct into various figures by: taking the input search vertex as a root node, and then outwards expanding layer by layer to construct a whole complete graph relation link; specifically, all vertexes of the structure and edges between every two fixed points are collected, and then the visual plug-in takes the input search vertex as a root node and constructs a complete graph layer by layer outwards.
In practical application, after a user can perform various searches on the platform about the graph, further, the platform can return the search result in real time through the visualization plug-in, and perform visual graphical presentation on the search result. Therefore, the graph searching method is suitable for various OLAP searching scenes of the graph, such as reachability analysis, two-point link searching and k-step searching, and in the searching process, various searching conditions are flexibly configured through the searching entry of the front-end page, so that the results of various graph models are visually displayed.
Therefore, by establishing a complete set of complete graph analysis visualization framework, the method can support a user to complete different types of graph relation data (blood-related data, wind control data and the like) on a front-end World Wide Web (WEB) page and configure different condition queries under different search scenes, and realize visualization search.
According to the graph searching method provided by the embodiment of the application, a searching vertex and a selected searching mode input at a searching inlet of a front-end page are received; wherein, the searching vertex is a point in the directed acyclic graph; determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result; displaying the search result through a visual plug-in; the method solves the problems that the complex search of the graph in the related technology can only be realized through a back-end off-line algorithm, and a real-time return and visual graph display scheme does not exist, and supports a whole set of scheme of OLAP complex scene search and visual display of various graph models.
Further, in a graph search scenario, the present application provides an architecture diagram of graph search, as shown in fig. 3, the architecture of graph search may become a graph visualization analysis system, where the graph visualization analysis system includes two major parts, namely a front-end WEB service and a graph analysis engine, where the front-end WEB service includes the following components: front-end search entry and cysscape. Here, the front-end search entry is a search entry of the front-end page, supports search modes such as reachability of the graph, a path between two points, and K-step search of a specific vertex, and various search conditions can be configured. JS visual plug-in is used as the visual plug-in of the front-end graph, and the visual structural body packaged at the rear end can be flexibly assembled into visual graphs of various graphs and is subjected to color rendering and matching. Wherein, the graph analysis engine comprises the following components: an Application Programming Interface (API), a standardized template, an adapter, and a policy factory, an algorithm library, and a graph atomic semantic operations layer. Here, the graph analysis engine corresponding to the API provides graph analysis functions of various scenarios through the spring boot micro service. The standardized template is a standardized template for graph analysis, and standardized steps from an API to the final packaging process are established. The standardization step is that root nodes are added- > an adaptation algorithm strategy- > a search algorithm is executed- > an adaptation packing strategy- > a packing method is executed- > a packing structure body is returned. The adapter and the strategy factory can adapt different algorithm strategies and packaging strategies according to various search modes and conditions input by the front end. The algorithm library is used as an independently developed high-performance search algorithm integrated algorithm library, and supports search modes such as reachability analysis, path search between two points, K-step search of a specific vertex and the like. The elastic search is used for indexing various features of the vertex, such as degree, label interval, breadth layer number, and topology layer number. The graph atom semantic operation layer is to decompose various algorithms in the algorithm library into semantic minimum atom operations, such as checking vertex attributes, acquiring adjacent vertices, acquiring edges between two points, and the like. The graph model is stored and queried using a nebugraph database.
Further, with reference to the architecture of graph search shown in fig. 3 and with reference to fig. 4, the graph search process of the present application is divided into three stages for description:
first phase, search pattern and algorithmic relationships: various search modes input by the front end determine a specific algorithm of back-end adaptation, namely the adaptation algorithm, for example, whether the front end searches two application vertexes to have a blood relationship or not, the algorithm adapter can automatically match the reachability analysis strategy, and the reachability analysis algorithm is called.
Second stage, search condition and pruning strategy relation: the searching conditions configured at the front end can be configured into different condition classes according to the searching mode, and the searching results are pruned; for example, in the K-step search process, a 10-degree upstream dependency table of a certain table is searched, a time interval condition is configured, and pruning can be performed according to the time condition when BFS search is used. Here, pruning refers to removing vertices and edges that do not meet the condition during the graph traversal process, thereby improving the time and space efficiency of the traversal algorithm.
A third stage of returning a structural body, namely a json structural body of which the search result needs to be packed into a vertex and an edge, wherein a vertex set is an unnecessary set of vertices on all paths, an edge is a directed edge set between two adjacent vertices, and a CYSOSCAPE.JS plug-in can automatically assemble and render the returned structural body; the specific assembling process is to add the input nodes to the root nodes, and then outwards expand from the edge layers of the upper and lower streams of the root nodes to construct a complete graph relation link.
The following further explains the flow of graph search of the present application:
in other embodiments of the present application, the search vertex includes vertex u and vertex v, and the adaptation algorithm is executed in step S202 to perform search based on the search vertex to obtain a search result, which may be implemented by the following steps:
a11, executing an adaptation algorithm to judge whether the vertex u and the vertex v meet the reachable condition based on a recursive calling mode;
a12, if the reachable condition is met between the vertex u and the vertex v, executing search based on the relation between the out-degree outDeg (u, G) of the vertex u and the in-degree inDeg (v, G) of the vertex v to obtain a search result, wherein G represents a directed acyclic graph.
In the embodiment of the present application, the vertex degrees refers to the number of vertices adjacent to the vertex. In the directed graph, the vertex degrees are the sum of the vertex out-degrees and in-degrees. The in degree of u, i.e. the number of vertices pointing to u, is identified by inDeg (u, G), and the out degree of u, i.e. the number of vertices pointing to u, is identified by outDeg (u, G).
In other embodiments of the present application, in a11, determining whether the vertex u and the vertex v satisfy the reachable condition may be implemented by the following steps:
a111, judging the interval label relation of the vertex u and the vertex v;
a112, judging the relation between the forward breadth layer number and the reverse breadth layer number of the vertex u and the vertex v;
a113, judging the relation between the forward topological layer number and the reverse topological layer number of the vertex u and the vertex v;
and A114, determining whether the vertex u and the vertex v meet the reachable condition or not based on at least one of the interval label relationship, the forward breadth layer number and reverse breadth layer number relationship and the forward topology layer number and reverse topology layer number relationship.
In some scenarios, see FIG. 5, there are two interval labels per vertex in graph G, e.g., the first interval label with vertex v for vertex vAnd a second interval label of vertex vWherein,andwhereinIndicates a starting value of the i-th interval,an end value of the ith interval is identified, where i is 1, 2. First interval label of vertex vInterval start value for a label obtained during a forward traversal of a child vertex of vertex v during a pre-ordered traversal of vertex vIncluding the minimum value of the start value and the end value of the child vertex for the current vertexAccessing the sequential value of v for subsequent traversal; second interval labelTraversing the labels according to the reverse order of the child vertexes when performing the first-order traversal on the vertex v for the second time, and the sameFor the minimum of the starting values of the child vertices contained in the current vertex,the sequential value of vertex v is visited for subsequent traversals. In FIG. 5Is the first numerical value inside the first middle bracket,a second number within the first middle bracket; e.g. for vertex 1Is a number of 1 s, and the number of the main chain is,is 10.The first number inside the second middle bracket,a second number within a second middle bracket; for example for roofsPoint 1 corresponds toIs a number of 1 s, and the number of the main chain is,is 10.
Further, referring to fig. 6, for the directed graph G shown in fig. 5, the forward extent layer number and the reverse extent layer number of the vertex v are defined, where the forward extent layer number of each vertex in fig. 5 is a value before the comma before the division number in fig. 6, and the reverse extent layer number is a value after the comma, for example, the forward extent layer number is 1 and the reverse extent layer number is 6 for the vertex 1. The number of forward breadth layers is specifically defined as follows:
inN (v, G) identifies the degree of approach of the vertex v, the number of vertex forward extent layers with the degree of approach of 0 is 1, otherwise, the number of forward extent layers is equal to the minimum value after the number of all the degree of approach vertex forward extent layers of the vertex +1, namely the number of vertex v forward extent layers is equal to the number of layers +1 of the v parent node in the process of preferentially extending the graph G.
The reverse breadth level numbers rebre (v) of the vertex v are obtained by inverting all the directed edges of the graph G and then performing the same calculation.
Referring to fig. 6, for the directed graph G shown in fig. 5, a forward topology layer number and a reverse topology layer number of the vertex v are defined, where the forward topology layer number of each vertex in fig. 5 is a value before a comma after the graph is cut in fig. 6, and the reverse topology layer number is a value after the comma, for example, the forward topology layer number is 1 and the reverse topology layer number is 1 for the vertex 1. The number of forward topology layers is specifically defined as follows:
the vertex forward topology layer number with the in-degree of 0 is 1, otherwise, the forward topology layer number is equal to the maximum value after all the in-degree vertex forward topology layer numbers of the vertex +1, namely the vertex v forward topology layer number is equal to the traversal sequence value when the vertex with the in-degree of 0 is subjected to the sequencing-before traversal;
the reverse topology layer number is specifically defined as follows:
and the vertex reverse topology layer number with the out degree of 0 is the length of the longest path of the current graph, and the reverse topology layer numbers of other vertexes v are the minimum values after all out degree vertex reverse topology layer numbers of v are-1.
In other embodiments of the present application, a111 determines the interval label relationship between vertex u and vertex v, and may be implemented by the following steps: judging the first interval label of the vertex vWhether or not to label at the first interval of vertex uWithin, and a second interval label for vertex vWhether it is the second interval label of vertex uWithin;
the first interval label of each vertex is a label obtained by traversing the child vertexes of each vertex in the forward direction when the first-order traversal is performed on each vertex, and the second interval label of each vertex is a label obtained by traversing each vertex in the reverse order of the child vertexes when the first-order traversal is performed on each vertex for the second time;
wherein, whether the reachable condition is satisfied between the vertex u and the vertex v includes: if it isIn thatIn andin thatWithin, it is determined that an achievable condition is satisfied between vertex u and vertex v.
That is, in the embodiment of the present application, for any two vertices u and v in a given directed acyclic graph G, if anyOrThen u- > v is not reachable.
In other embodiments of the present application, a112 determines a relationship between the forward extent layer number and the reverse extent layer number of the vertex u and the vertex v, and may be implemented by the following steps:
judging whether the forward breadth layer number bre (v) of the vertex v is larger than the forward breadth layer number bre (u) of the vertex u;
judging whether the reverse breadth layer number rebre (u) of the vertex u is larger than the reverse breadth layer number febre (v) of the vertex v;
wherein, whether the reachable condition is satisfied between the vertex u and the vertex v includes: if bre (v) ≦ bre (u) and rebre (u) ≦ rebre (v), it is determined that the reachable condition between vertex u and vertex v is satisfied.
That is, in the embodiment of the present application, for any two vertices u and v in the directed acyclic graph G, br (v) -br (u) > 0 or rebre (u) -rebre (v) > 0, u- > v is unreachable.
In other embodiments of the present application, a113 determines a relationship between the number of forward topology layers and the number of reverse topology layers of the vertex u and the vertex v, and may be implemented by the following steps:
judging whether the forward topological layer number topo (u) of the vertex u is smaller than the forward topological layer number topo (v) of the vertex v;
judging whether the reverse topological layer number retopo (u) of the vertex u is smaller than the reverse topological layer number retopo (v) of the vertex v;
wherein, whether the reachable condition is satisfied between the vertex u and the vertex v includes: topo (u) < topo (v) or retopo (u) < retopo (v), and determining that the reachable condition is satisfied between vertex u and vertex v.
That is, in the embodiment of the present application, for any two vertices u and v in a given directed acyclic graph G, if topo (u) > (topo) (v) or retopo (u) > (retopo (v), u- > v is not reachable.
In other embodiments of the present application, when the search pattern includes a pattern corresponding to reachability analysis, a11 executes an adaptation algorithm to determine whether the reachable condition between vertex u and vertex v is satisfied based on a recursive calling manner, including the following steps:
determining vertex u of recursive call inputiAnd vertex viWhether they are equal; wherein the vertex uiSet of child nodes belonging to vertex u and vertex u, vertex viA set of parent nodes belonging to v and v;
here, if ui=viThen vertex u and vertex v are reachable, the recursion terminates, where uiSet of child nodes belonging to vertex u and vertex u, viBelongs to vertex v and a set of parent nodes of vertex v.
However, if the vertex uiIs not equal to vertex viAnd judging whether the reachable condition is met between the vertex u and the vertex v or not based on a recursive calling mode.
In the process of judging whether the reachable condition is met, the following three scenes exist, and the unreachable condition is confirmed:
section label for judging vertex vAndand if the distance is within the interval label of the vertex u, the distance is not reachable any more, and the traversal is stopped.
Judging the relation between the forward breadth level and the reverse breadth level of the vertexes v and u, if bre (v) -bre (u) > 0 or bre (u) -rebre (v) > 0, the vertex v and u cannot be reached, and stopping traversing.
And judging the relation between the forward topological layer number and the reverse topological layer number of the vertexes v and u, and stopping traversing if topo (u) is more than or equal to topo (v) or retepo (u) is more than or equal to retepo (v).
Further, in the case of the reachability analysis corresponding to the pattern, a bidirectional search method is adopted to perform a search based on the relationship between the out-degree outDeg (u, G) of the vertex u and the in-degree inDeg (v, G) of the vertex v in a12, so as to obtain a search result, and the method includes the following steps:
if outDeg (u, G) is less than or equal to inDeg (v, G), each vertex u in the adjacent child node set of the vertex uiPerforming recursive calling on the vertex v to obtain a search result;
if outDeg (u, G) > inDeg (v, G), for each vertex v in all parent node sets for vertex u and vertex viAnd executing recursive calling to obtain a search result.
In practical applications, in the case where the search pattern includes a pattern corresponding to reachability analysis, the offline calculation job updates the algorithm characteristics each day for reachability algorithm implementation: computing interval labels for all vertices of a graph model using a spark engineAndand forward breadth layer numbers bre (v), reverse breadth layer numbers rebre (v), forward topology layer numbers topo (v), reverse topology layer numbers rebopo (v) of all tags; all vertex features are then upsert into the elasticsearch index.
The indexing structure of the vertex features of the flash search is as follows:
performing recursive call of a bidirectional search pruning algorithm by adopting online OLAP analysis, decomposing the operation of the algorithm on the graph into basic atomic semantic layer operation, and calling a nebugraph client to perform graph semantic atomic query; according to the algorithm, pruning is carried out according to the interval label, the number of breadth layers and the number of topological layers, and when the bidirectional search direction is selected according to the degree of the vertex, the elastic search is only searched once, all characteristic values of the upper table of the target vertex are searched out, and calculation is carried out. According to the method and the device, the analysis delay of the OLAP of the large-scale image data set is greatly reduced by integrating the bidirectional pruning search algorithm. And in the adaptive algorithm implementation process, all the operations on the graph are decomposed into atomic semantic operations of the graph, and the features of all dimensions are indexed into a high-performance distributed search engine through daily offline batch feature engineering calculation, so that the high efficiency and stability of algorithm implementation are ensured.
The following steps of the path search algorithm between two points are consistent with the steps of the reachability algorithm, and only the complete link needs to be recorded through the linked list in the traversal process, that is, the vertex u and the vertex v are input, and all links between the vertex u and the vertex v are searched.
In other embodiments of the present application, the search mode includes a mode corresponding to path search between two points, and a11 executes an adaptation algorithm to determine whether the reachable condition between vertex u and vertex v is satisfied based on a recursive call mode, including the following steps:
creating a linked list v1 and a linked list v 2; adding a vertex u to the linked list v1 as a head node, and adding a vertex v to the linked list v2 as a head node;
determining vertex u of recursive call inputiAnd vertex viWhether they are equal; wherein the vertex uiSet of child nodes belonging to vertex u and vertex u, vertex viA set of parent nodes belonging to v and v;
if ui=viThen vertex u and vertex v are reachable, the recursion terminates, where uiSet of child nodes belonging to vertex u and vertex u, viBelongs to vertex v and a set of parent nodes of vertex v. And (3) inverting the link2 linked list, removing tail nodes from the link1 linked list, splicing the link1 linked list with the link2 linked list, and returning to the spliced linked list set.
However, if the vertex uiIs not equal to vertex viAnd judging whether the reachable condition is met between the vertex u and the vertex v or not based on a recursive calling mode.
Further, in the case of searching for a corresponding mode between two points, a bidirectional search method is adopted to perform a search based on a relationship between an out-degree outDeg (u, G) of a vertex u and an in-degree inDeg (v, G) of a vertex v in a12, so as to obtain a search result, including the following steps:
if outDeg (u, G) is less than or equal to inDeg (v, G), each vertex u in the adjacent child node set of the vertex uiAnd the vertex v executes recursive calling, clones the current out-degree vertex linked list and adds uiObtaining search results of all links between the vertex u and the vertex v for the tail node;
if outDeg (u, G)>InDeg (v, G), for each vertex v in all parent node sets for vertex u and vertex viPerforming recursive calls, cloning the current in-degree vertex linked list and adding viFor the tail node, the search results for all links between vertex u and vertex v are obtained.
In other embodiments of the present application, the search mode includes a mode corresponding to K-step search, and when breadth-first search is adopted, and a neighboring level node of a vertex is searched in breadth-first search, the search mode can be used for one-time search in batch; by combining the search conditions, when an adjacent fixed point is searched out, pruning is carried out by using the search conditions, the search speed can be greatly increased, and the search result can be quickly obtained.
Continuing with the exemplary structure of the graph search apparatus 154 implemented as a software module provided in the embodiments of the present application, in some embodiments, as shown in fig. 1, the software module stored in the graph search apparatus 154 of the memory 150 may be a graph search apparatus in the server 100, including:
a display module 1541, configured to display a search entry of a front-end page;
a receiving module 1542, configured to receive a search vertex and a selected search pattern input at a search entry; wherein, the searching vertex is a point in the directed acyclic graph;
the processing module 1543 is configured to determine an adaptation algorithm corresponding to the search mode, and execute the adaptation algorithm to perform a search based on the search vertex to obtain a search result;
and the display module 1541 is used for displaying the search result through the visual plug-in.
In some embodiments, the vertex search module 1543 is configured to execute an adaptation algorithm to determine whether a reachable condition between the vertex u and the vertex v is satisfied based on a recursive call; and if the vertex u and the vertex v meet the reachable condition, executing search based on the relation between the out-degree outDeg (u, G) of the vertex u and the in-degree inDeg (v, G) of the vertex v to obtain a search result, wherein G represents the directed acyclic graph.
In some embodiments, processing module 1543 configured to determine an inter-zone label relationship for vertex u and vertex v; judging the relation between the forward breadth layer number and the reverse breadth layer number of the vertex u and the vertex v; judging the relation between the forward topological layer number and the reverse topological layer number of the vertex u and the vertex v; and determining whether the vertex u and the vertex v meet the reachable condition or not based on at least one of the interval label relationship, the relationship between the forward breadth layer number and the reverse breadth layer number and the relationship between the forward topology layer number and the reverse topology layer number.
In some embodiments, processing module 1543 is configured to determine a first interval label for vertex vWhether or not to label at the first interval of vertex uWithin, and a second interval label for vertex vWhether it is the second interval label of vertex uWithin; the first interval label of each vertex is the positive direction of the child vertex of each vertex when the first-order traversal is carried out on each vertex;
the second interval label of each vertex is a label obtained by traversing each vertex according to the reverse order sequence of the child vertices when the vertex is traversed in the first order for the second time; wherein, whether the reachable condition is satisfied between the vertex u and the vertex v includes: if it isIn thatIn andin thatWithin, it is determined that an achievable condition is satisfied between vertex u and vertex v.
In some embodiments, the processing module 1543 is configured to determine whether a difference between the forward extent layer number bre (v) of the vertex v minus the forward extent layer number bre (u) of the vertex u is greater than 0;
judging whether the difference value of the reverse breadth layer number rebre (u) of the vertex u minus the reverse breadth layer number rebre (v) of the vertex v is larger than 0;
wherein, whether the reachable condition is satisfied between the vertex u and the vertex v includes: if bre (v) -bre (u) < 0 and rebre (u) -rebre (v) < 0, it is determined that the reachable condition between vertex u and vertex v is satisfied.
In some embodiments, the processing module 1543 is configured to determine whether the forward topological layer number topo (u) of the vertex u is less than the forward topological layer number topo (v) of the vertex v;
judging whether the reverse topological layer number retopo (u) of the vertex u is smaller than the reverse topological layer number retopo (v) of the vertex v;
wherein, whether the reachable condition is satisfied between the vertex u and the vertex v includes: topo (u) < topo (v) or retopo (u) < retopo (v), and determining that the reachable condition is satisfied between vertex u and vertex v.
In some embodiments, the search pattern includes a pattern corresponding to a reachability analysis, and the processing module 1543 is configured to determine a recursive call inputVertex u of the inletiAnd vertex viWhether they are equal; wherein the vertex uiSet of child nodes belonging to vertex u and vertex u, vertex viA set of parent nodes belonging to v and v; if the vertex u isiIs not equal to vertex viAnd judging whether the reachable condition is met between the vertex u and the vertex v or not based on a recursive calling mode.
In some embodiments, the processing module 1543 is configured to apply to each vertex u in the set of adjacent children for vertex u if outDeg (u, G) ≦ inDeg (v, G)iPerforming recursive calling on the vertex v to obtain a search result;
if outDeg (u, G) > inDeg (v, G), for each vertex v in all parent node sets for vertex u and vertex viAnd executing recursive calling to obtain a search result.
In some embodiments, the search patterns include patterns corresponding to path searches between two points, processing module 1543 for creating linked list v1 and linked list v 2; adding a vertex u to the linked list v1 as a head node, and adding a vertex v to the linked list v2 as a head node;
determining vertex u of recursive call inputiAnd vertex viWhether they are equal; wherein the vertex uiSet of child nodes belonging to vertex u and vertex u, vertex viA set of parent nodes belonging to v and v;
if the vertex u isiIs not equal to vertex viAnd judging whether the reachable condition is met between the vertex u and the vertex v or not based on a recursive calling mode.
In some embodiments, the processing module 1543 is configured to apply to each vertex u in the set of adjacent children for vertex u if outDeg (u, G) ≦ inDeg (v, G)iAnd the vertex v executes recursive calling, clones the current out-degree vertex linked list and adds uiObtaining search results of all links between the vertex u and the vertex v for the tail node;
if outDeg (u, G) > inDeg (v, G), for each vertex v in all parent node sets for vertex u and vertex viPerforming recursive calls, cloning the current in-degree vertex linked list and adding viFor the tail node, the search results for all links between vertex u and vertex v are obtained.
The graph searching device provided by the embodiment of the application receives a searching vertex and a selected searching mode which are input at a searching inlet of a front-end page; wherein, the searching vertex is a point in the directed acyclic graph; determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result; displaying the search result through a visual plug-in; the method solves the problems that the complex search of the graph in the related technology can only be realized through a back-end off-line algorithm, and a real-time return and visual graph display scheme does not exist, and supports a whole set of scheme of OLAP complex scene search and visual display of various graph models.
It should be noted that the description of the apparatus in the embodiment of the present application is similar to the description of the method embodiment, and has similar beneficial effects to the method embodiment, and therefore, the description is not repeated. For technical details not disclosed in the embodiments of the apparatus, reference is made to the description of the embodiments of the method of the present application for understanding.
Embodiments of the present application provide a storage medium having stored therein executable instructions, which when executed by a processor, will cause the processor to perform a method provided by embodiments of the present application, for example, the method as shown in fig. 2.
The storage medium provided by the embodiment of the application receives a search vertex and a selected search mode which are input at a search entry of a front-end page; wherein, the searching vertex is a point in the directed acyclic graph; determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result; displaying the search result through a visual plug-in; the method solves the problems that the complex search of the graph in the related technology can only be realized through a back-end off-line algorithm, and a real-time return and visual graph display scheme does not exist, and supports a whole set of scheme of OLAP complex scene search and visual display of various graph models.
In some embodiments, the storage medium may be a computer-readable storage medium, such as a Ferroelectric Random Access Memory (FRAM), a Read Only Memory (ROM), a Programmable Read Only Memory (PROM), an Erasable Programmable Read Only Memory (EPROM), a charged Erasable Programmable Read Only Memory (EEPROM), a flash Memory, a magnetic surface Memory, an optical disc, or a Compact disc Read Only Memory (CD-ROM), among other memories; or may be various devices including one or any combination of the above memories.
In some embodiments, executable instructions may be written in any form of programming language (including compiled or interpreted languages), in the form of programs, software modules, scripts or code, and may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
By way of example, executable instructions may correspond, but do not necessarily have to correspond, to files in a file system, and may be stored in a portion of a file that holds other programs or data, such as in one or more scripts in a hypertext Markup Language (hypertext Markup Language) document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). By way of example, executable instructions may be deployed to be executed on one computing device or on multiple computing devices at one site or distributed across multiple sites and interconnected by a communication network.
The above description is only an example of the present application, and is not intended to limit the scope of the present application. Any modification, equivalent replacement, and improvement made within the spirit and scope of the present application are included in the protection scope of the present application.
Claims (13)
1. A graph search method, comprising:
receiving a search vertex and a selected search mode input at a search entry of a front-end page; wherein the search vertex is a point in a directed acyclic graph;
determining an adaptation algorithm corresponding to the search mode, executing the adaptation algorithm, and searching based on the search vertex to obtain a search result;
and displaying the search result through a visual plug-in.
2. The method of claim 1, wherein the search vertex comprises a vertex u and a vertex v, and wherein executing the adaptation algorithm searches based on the search vertex to obtain a search result comprises:
executing the adaptive algorithm to judge whether the vertex u and the vertex v meet the reachable condition based on a recursive calling mode;
if the reachable condition is met between the vertex u and the vertex v, executing search based on the relation between the out-degree outDeg (u, G) of the vertex u and the in-degree inDeg (v, G) of the vertex v to obtain the search result, wherein G represents the directed acyclic graph.
3. The method of claim 2, wherein determining whether the reachable condition between vertex u and vertex v is satisfied comprises:
judging the interval label relationship between the vertex u and the vertex v;
judging the relation between the forward breadth layer number and the reverse breadth layer number of the vertex u and the vertex v;
judging the relation between the forward topological layer number and the reverse topological layer number of the vertex u and the vertex v;
and determining whether the vertex u and the vertex v meet the reachable condition or not based on the interval label relationship, the relationship between the forward breadth layer number and the reverse breadth layer number and at least one of the relationship between the forward topology layer number and the reverse topology layer number.
4. The method of claim 3, wherein said determining an interval label relationship of said vertex u and said vertex v comprises;
judging the first interval label of the vertex vWhether or not to label at the first interval of the vertex uWithin, and a second interval label for said vertex vWhether or not to label at the second interval of the vertex uWithin; the first interval label of each vertex is a label obtained by forward traversal of a child vertex of each vertex when the first-order traversal is performed on each vertex, and the second interval label of each vertex is a label obtained by traversal according to the reverse order of the child vertices when the first-order traversal is performed on each vertex for the second time;
5. The method of claim 3, wherein the determining the relationship between the forward extent level and the reverse extent level for the vertex u and the vertex v comprises:
judging whether the forward breadth layer number bre (v) of the vertex v is larger than the forward breadth layer number bre (u) of the vertex u;
judging whether the reverse breadth level number rebre (u) of the vertex u is larger than the reverse breadth level number rebre (v) of the vertex v;
wherein whether the reachable condition is satisfied between the vertex u and the vertex v comprises: if bre (v) ≦ bre (u) and rebre (u) ≦ rebre (v), determining that an achievable condition is satisfied between the vertex u and the vertex v.
6. The method according to claim 3, wherein the determining the relation between the number of forward topology layers and the number of reverse topology layers of the vertex u and the vertex v comprises:
judging whether the forward topological layer number topo (u) of the vertex u is smaller than the forward topological layer number topo (v) of the vertex v;
judging whether the reverse topological layer number retopo (u) of the vertex u is smaller than the reverse topological layer number retopo (v) of the vertex v;
wherein whether the reachable condition is satisfied between the vertex u and the vertex v comprises: topo (u) < topo (v) or retopo (u) < retopo (v), determining that an achievable condition is satisfied between the vertex u and the vertex v.
7. The method of claim 2, wherein the search pattern comprises a pattern corresponding to reachability analysis, and wherein executing the adaptation algorithm to determine whether the reachability condition between the vertex u and the vertex v is satisfied based on a recursive call comprises:
determining vertex u of recursive call inputiAnd vertex viWhether they are equal; wherein the vertex uiSet of child nodes belonging to said vertex u and said vertex u, said vertex viA set of parent nodes belonging to said v and said v;
if the vertex u isiIs not equal to the vertex viAnd judging whether the vertex u and the vertex v meet the reachable condition or not based on a recursive calling mode.
8. The method of claim 7, wherein the performing a search based on a relationship between the out degree outDeg (u, G) of the vertex u and the in degree inDeg (v, G) of the vertex v, resulting in the search result, comprises:
if outDeg (u, G) is less than or equal to inDeg (v, G), for each vertex u in the vertex u's adjacent child node setiAnd the vertex v executes recursive calling to obtain the search result;
if outDeg (u, G)>inDeg (v, G) for each vertex v in all parent sets of vertices u and viAnd executing recursive calling to obtain the search result.
9. The method of claim 2, wherein the search pattern comprises a pattern corresponding to a path search between two points, and wherein the executing the adaptation algorithm determines whether a reachable condition between the vertex u and the vertex v is satisfied based on a recursive call mode, comprising:
creating a linked list v1 and a linked list v 2; adding the vertex u to the linked list v1 as a head node, and adding the vertex v to the linked list v2 as a head node;
determining vertex u of recursive call inputiAnd vertex viWhether they are equal; wherein the vertex uiSet of child nodes belonging to said vertex u and said vertex u, said vertex viA set of parent nodes belonging to said v and said v;
if the vertex u isiIs not equal to the vertex viAnd judging whether the vertex u and the vertex v meet the reachable condition or not based on a recursive calling mode.
10. The method of claim 9, wherein the performing a search based on a relationship between the out degree outDeg (u, G) of the vertex u and the in degree inDeg (v, G) of the vertex v, resulting in the search result comprises:
if outDeg (u, G) is less than or equal to inDeg (v, G), for each vertex u in the vertex u's adjacent child node setiAnd the vertex v executes recursive calling, clones the current out-degree vertex linked list and adds uiObtaining search results of all links between the vertex u and the vertex v for the tail node;
if outDeg (u, G)>inDeg (v, G) for each vertex v in all parent sets of vertices u and viPerforming recursive calls, cloning the current in-degree vertex linked list and adding viAnd obtaining the search results of all links between the vertex u and the vertex v for the tail node.
11. A graph search apparatus, comprising:
the display module is used for displaying the search entry of the front-end page;
the receiving module is used for receiving the search vertex input at the search entrance and the selected search mode; wherein the search vertex is a point in a directed acyclic graph;
the processing module is used for determining an adaptation algorithm corresponding to the search mode and executing the adaptation algorithm to search based on the search vertex to obtain a search result;
and the display module is used for displaying the search result through a visual plug-in.
12. A graph search device, comprising:
a memory for storing executable instructions; a processor for implementing the method of any one of claims 1 to 10 when executing executable instructions stored in the memory.
13. A storage medium having stored thereon executable instructions for causing a processor to perform the method of any one of claims 1 to 10 when executed.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111627096.0A CN114385864A (en) | 2021-12-28 | 2021-12-28 | Graph searching method, device, equipment and storage medium |
PCT/CN2022/119014 WO2023124253A1 (en) | 2021-12-28 | 2022-09-15 | Graph search method and apparatus, device and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111627096.0A CN114385864A (en) | 2021-12-28 | 2021-12-28 | Graph searching method, device, equipment and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114385864A true CN114385864A (en) | 2022-04-22 |
Family
ID=81197944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111627096.0A Pending CN114385864A (en) | 2021-12-28 | 2021-12-28 | Graph searching method, device, equipment and storage medium |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114385864A (en) |
WO (1) | WO2023124253A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023124253A1 (en) * | 2021-12-28 | 2023-07-06 | 深圳前海微众银行股份有限公司 | Graph search method and apparatus, device and storage medium |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10810257B2 (en) * | 2015-08-27 | 2020-10-20 | Oracle International Corporation | Fast processing of path-finding queries in large graph databases |
CN110377795A (en) * | 2019-06-27 | 2019-10-25 | 浙江大学 | A kind of distributed temporal diagram accessibility inquiry processing method based on Blogel |
US11227018B2 (en) * | 2019-06-27 | 2022-01-18 | International Business Machines Corporation | Auto generating reasoning query on a knowledge graph |
CN112507135B (en) * | 2020-12-17 | 2021-11-16 | 深圳市一号互联科技有限公司 | Knowledge graph query template construction method, device, system and storage medium |
CN114385864A (en) * | 2021-12-28 | 2022-04-22 | 深圳前海微众银行股份有限公司 | Graph searching method, device, equipment and storage medium |
-
2021
- 2021-12-28 CN CN202111627096.0A patent/CN114385864A/en active Pending
-
2022
- 2022-09-15 WO PCT/CN2022/119014 patent/WO2023124253A1/en unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023124253A1 (en) * | 2021-12-28 | 2023-07-06 | 深圳前海微众银行股份有限公司 | Graph search method and apparatus, device and storage medium |
Also Published As
Publication number | Publication date |
---|---|
WO2023124253A1 (en) | 2023-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108733713B (en) | Data query method and device in data warehouse | |
CN112650766B (en) | Database data operation method, system and server | |
CN115617327A (en) | Low code page building system, method and computer readable storage medium | |
US20230177363A1 (en) | Generation of query templates for knowledge-graph based question answering system | |
CN102982095B (en) | A kind of body automatic creation system based on thesaurus and method thereof | |
CN113986241B (en) | Configuration method and device of business rules based on knowledge graph | |
CN112988123B (en) | DDD-oriented software design method and system | |
WO2015192090A1 (en) | System and method for utilizing a logical graphical model for scenario analysis | |
CN114385864A (en) | Graph searching method, device, equipment and storage medium | |
CN116755669A (en) | Low code development method and tool based on DSL language operation model | |
CN114201397A (en) | Interface test modeling method and device, electronic equipment and storage medium | |
CN109408322A (en) | A kind of automatic business process implementation method of cloud platform | |
CN115826937B (en) | Digital twin industrial software platform makeTain | |
CN111475602A (en) | Multi-version knowledge graph storage method and device, storage medium and electronic equipment | |
CN115757174A (en) | Database difference detection method and device | |
CN115599362A (en) | Data processing task construction method, commodity data processing method and equipment | |
CN111984257B (en) | Solid modeling customized extension method and device | |
CN111159203B (en) | Data association analysis method, platform, electronic equipment and storage medium | |
CN114218265A (en) | Processing method and device of offline model, storage medium and processor | |
CN115757083A (en) | Distributed database detection method and device | |
CN114625705B (en) | Method and device for automatically generating UI (user interface) resources in development engine | |
CN115292194B (en) | Method for debugging flow, electronic equipment and computer readable storage medium | |
CN115470640B (en) | Compliance detection method and system based on flow tree decomposition and track matching strategy | |
CN112925836B (en) | Data conversion method and device | |
KR101488188B1 (en) | Sequence diagram generating method and system |
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 |