Metadata Query Method and System

By providing a metadata query method and system in large enterprises, the multi-copy metadata problem and the complexity of enterprise management are solved, and efficient interaction between information systems and simplification of strategic decision-making support is achieved.

CN112800289BActive Publication Date: 2025-06-17INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110117509.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-01-28
Publication Date
2025-06-17
Estimated Expiration
2041-01-28

AI Technical Summary

Technical Problem

In large enterprises, multi-copy problems of metadata and the complexity of enterprise management have increased, resulting in failures in interactions between information systems and increased technical difficulty and management costs of strategic decision support.

Method used

By providing a metadata query method and system, the method includes receiving a metadata query request, judging whether the cluster name matches the local autonomous metadata cluster, and obtaining query results from the local or target metadata proxy according to the matching situation, avoiding the multi-copy problem of metadata.

Benefits of technology

On the basis of retaining the efficiency and fault isolation of metadata autonomy within the information system, the technical difficulty and management cost of strategic decision support across information systems of large enterprises is simplified, and the risk of interaction failure caused by multiple copies of metadata is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112800289B_ABST
    Figure CN112800289B_ABST
Patent Text Reader

Abstract

The present invention provides a metadata query method and system, belonging to the technical field of cloud computing. The method includes: when the cluster name in the metadata query request matches the local autonomous metadata cluster, obtaining a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request; otherwise, determining a target metadata proxy in the pre-constructed metadata query network according to the cluster name; sending the metadata query request to the target metadata proxy, so that the target metadata proxy obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information; and receiving the query result returned by the target metadata proxy. The present invention circumvents the problem of multiple copies of metadata on the basis of retaining the efficiency of metadata autonomy and fault isolation within the information system, and simplifies the technical difficulty and management cost of strategic decision-making support across information systems in large enterprises.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of cloud computing, and specifically, to a method and system for querying metadata. Background Art

[0002] In the engineering research of information systems, it is found that data such as software configuration information and access information of software services (such as IP addresses, ports, etc.) have the following commonalities and are classified into one category by system designers, which is called metadata.

[0003] 1) Universality: Regardless of the scale of the information system, this type of information exists universally, and the difference often lies only in the scale.

[0004] 2) Persistence: During the operation of the program, this type of information is indispensable for the operation of the information system.

[0005] 3) More reads and fewer writes: This type of information changes less frequently, so there is no need to frequently write new values, nor to frequently add or delete.

[0006] Metadata interacts very frequently with the information system that uses it. For the purpose of fault isolation and execution efficiency, metadata is often stored in the information system that uses it in the design. However, as a result, in large enterprises with a large number of information systems, this distributed storage brings two challenges.

[0007] On the one hand, it is the problem of multiple copies of metadata for cross-system information. In addition to autonomous internal operation, a modern information system almost inevitably interacts with other information systems, which also makes the metadata of this system include external information such as the IP addresses, port numbers, and user names of other information systems. In this process, the external information of other information systems is "copied". One is the original copy in other information systems, and the other is the photocopy in this information system. Once the original copy changes and the photocopy in this information system is not updated in time, it will lead to the failure of interaction between the two information systems. This is the problem of multiple copies. The more other information systems an information system needs to interact with, the higher the risk of this problem.

[0008] On the other hand, the difficulty of enterprise management increases. In a large enterprise with a high degree of informatization, the information systems often each take charge of a part of the enterprise's business or even a part of the basic capabilities. The daily operation of the enterprise requires the interaction and collaboration between different information systems. The practice of each information system maintaining its own metadata will increase the operation complexity of strategic-level analysis such as mapping business processes across information systems, which is not conducive to strategic decision-making support. In addition, when building a new information system, it will also increase the design workload in aspects such as communication planning; while centralizing the storage of all metadata will cause the system / infrastructure for centralized storage to overheat, posing a great challenge to performance capacity design, and when it fails, it will lead to the probing of all information systems, violating the design principle of fault isolation between information systems. Summary of the Invention

[0009] The main purpose of the embodiments of the present invention is to provide a metadata query method and system, which avoid the problem of multiple copies of metadata while retaining the efficiency of metadata autonomy within the information system and fault isolation, and simplify the technical difficulty and management cost of strategic decision-making support across information systems in large enterprises.

[0010] To achieve the above object, the embodiments of the present invention provide a metadata query method, including:

[0011] Receiving a metadata query request;

[0012] Judging whether the cluster name in the metadata query request matches the local autonomous metadata cluster;

[0013] When the cluster name matches the local autonomous metadata cluster, obtaining a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request;

[0014] When the cluster name does not match the local autonomous metadata cluster, determining a target metadata proxy in the pre-constructed metadata query network according to the cluster name; wherein, the target metadata proxy is the metadata proxy corresponding to the non-local autonomous metadata cluster that matches the cluster name;

[0015] Sending the metadata query request to the target metadata proxy so that the target metadata proxy obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information;

[0016] Receiving the query result returned by the target metadata proxy.

[0017] The embodiments of the present invention further provide a metadata query system, including:

[0018] A receiving unit, configured to receive a metadata query request;

[0019] A judgment unit, configured to judge whether the cluster name in the metadata query request matches the local autonomous metadata cluster;

[0020] A query result unit, configured to, when the cluster name matches the local autonomous metadata cluster, obtain a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request;

[0021] A target metadata proxy end unit, configured to, when the cluster name does not match the local autonomous metadata cluster, determine a target metadata proxy end in a pre-constructed metadata query network according to the cluster name; wherein, the target metadata proxy end is a metadata proxy end corresponding to a non-local autonomous metadata cluster that matches the cluster name;

[0022] A sending unit, configured to send the metadata query request to the target metadata proxy end, so that the target metadata proxy end obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information;

[0023] The query result unit is further configured to: receive the query result returned by the target metadata proxy end.

[0024] An embodiment of the present invention further provides a computer device, including a memory, a processor, and a computer program stored on the memory and running on the processor. When the processor executes the computer program, the steps of the metadata query method are implemented.

[0025] An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the metadata query method are implemented.

[0026] In the metadata query method and system according to the embodiment of the present invention, when the cluster name matches the local autonomous metadata cluster, a query result is obtained from the local autonomous metadata cluster according to the metadata query information in the metadata query request. Otherwise, a target metadata proxy end in a pre-constructed metadata query network is determined according to the cluster name, the metadata query request is sent to the target metadata proxy end, and finally the query result returned by the target metadata proxy end is received. On the basis of retaining the efficiency of metadata autonomy and fault isolation in the information system, the problem of multiple copies of metadata is avoided, and the technical difficulty and management cost of strategic decision-making support for large enterprises across information systems are simplified. Description of the Drawings

[0027] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.

[0028] Figure 1 is a flowchart of a metadata query method in an embodiment of the present invention;

[0029] Figure 2 is a flowchart of a metadata query method in another embodiment of the present invention;

[0030] Figure 3 is a flowchart of constructing a metadata query network in an embodiment of the present invention;

[0031] Figure 4 is a schematic diagram of a metadata query network;

[0032] Figure 5 is a flowchart of constructing a metadata query network in another embodiment of the present invention;

[0033] Figure 6 is a schematic diagram of an initial metadata query network in an embodiment of the present invention;

[0034] Figure 7 is a schematic diagram of a metadata query network after adding a metadata proxy in an embodiment of the present invention;

[0035] Figure 8 is a schematic diagram of a metadata proxy broadcasting proxy information in an embodiment of the present invention;

[0036] Figure 9 is a schematic diagram of a metadata proxy updating the local reachability list in an embodiment of the present invention;

[0037] Figure 10 is a schematic diagram of a metadata proxy forwarding the broadcast proxy information in an embodiment of the present invention;

[0038] Figure 11 is a schematic diagram of a metadata proxy further forwarding the broadcast proxy information in an embodiment of the present invention;

[0039] Figure 12 is a schematic diagram of a metadata proxy forwarding the broadcast proxy information one more time in an embodiment of the present invention;

[0040] Figure 13 is a schematic diagram of a metadata proxy completing maintenance in an embodiment of the present invention;

[0041] Figure 14Schematic diagram of obtaining query results from the local autonomous metadata cluster in an embodiment of the present invention;

[0042] Figure 15 Schematic diagram of obtaining query results from the locally reachable autonomous metadata cluster in an embodiment of the present invention;

[0043] Figure 16 Schematic diagram of obtaining query results from the globally reachable autonomous metadata cluster in an embodiment of the present invention;

[0044] Figure 17 Is the structural block diagram of the metadata query system in an embodiment of the present invention;

[0045] Figure 18 Is the structural block diagram of the computer device in an embodiment of the present invention. Detailed implementation manners

[0046] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0047] Those skilled in the art know that the implementation manners of the present invention can be realized as a system, a device, a device, a method, or a computer program product. Therefore, the present disclosure can be specifically realized in the following forms, that is: complete hardware, complete software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.

[0048] In view of the problem of multiple copies of metadata of cross-system information in the prior art, which increases the difficulty of enterprise management, the embodiments of the present invention provide a method for constructing a metadata query network, a system, a metadata query method, and a system. On the basis of retaining the efficiency of metadata autonomy and fault isolation within the information system, the problem of multiple copies of metadata is avoided, the technical difficulty and management cost of strategic decision-making support for large enterprises across information systems are simplified, and the requirements of metadata autonomy within the information system and the strategic vision of enterprise management are taken into account. The present invention will be described in detail below with reference to the accompanying drawings.

[0049] Figure 1 Is the flowchart of the metadata query method in an embodiment of the present invention. Figure 2 Is the flowchart of the metadata query method in another embodiment of the present invention.

[0050] During the metadata query process, according to the upstream and downstream of the process, the metadata proxy ends will have temporary roles. The metadata proxy end that directly receives the metadata query request sent by the user is the starting metadata proxy end; the metadata proxy end whose queried metadata is in the autonomous metadata cluster it is responsible for is the target metadata proxy end; the metadata proxy end that transfers the query result between the starting metadata proxy end and the target metadata proxy end is the relay metadata proxy end. In the present invention, the metadata proxy ends with three different roles do not require additional configuration and share the same set of execution logics to ensure that the design is simple enough to enhance its own robustness.

[0051] Figure 1 - Figure 2 The execution subject of the metadata query method shown can be the starting metadata proxy end. As Figure 1 - Figure 2 shown, the metadata query method includes:

[0052] S101: Receive a metadata query request.

[0053] S102: Determine whether the cluster name in the metadata query request matches the local autonomous metadata cluster.

[0054] S103: When the cluster name matches the local autonomous metadata cluster, obtain the query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request.

[0055] S104: When the cluster name does not match the local autonomous metadata cluster, determine the target metadata proxy end in the pre-constructed metadata query network according to the cluster name.

[0056] Among them, the target metadata proxy end is the metadata proxy end corresponding to the non-local autonomous metadata cluster that matches the cluster name.

[0057] In one embodiment, determining the target metadata proxy end in the pre-constructed metadata query network according to the cluster name includes: determining whether the cluster name matches the non-local autonomous metadata cluster in the local reachability list. When the cluster name matches the non-local autonomous metadata cluster in the local reachability list, determine the metadata proxy end corresponding to the non-local autonomous metadata cluster as the target metadata proxy end. The target metadata proxy end is located in the local reachability list and is directly connected to the starting metadata proxy end as the execution subject.

[0058] When the cluster name does not match the non - local autonomous metadata cluster in the local reachability list, determine whether the cluster name matches the non - local autonomous metadata cluster in the global reachability list. When the cluster name matches the non - local autonomous metadata cluster in the global reachability list, determine the metadata proxy corresponding to the non - local autonomous metadata cluster as the target metadata proxy. The target metadata proxy is located in the global reachability list and is indirectly connected to the starting metadata proxy serving as the execution entity through the relay metadata proxy.

[0059] In one embodiment, it further includes: when the target metadata proxy is located in the global reachability list, determine the relay metadata proxy in the metadata query network according to the target proxy.

[0060] S105: Send the metadata query request to the target metadata proxy so that the target metadata proxy obtains the query result from the corresponding non - local autonomous metadata cluster according to the metadata query information.

[0061] In one embodiment, sending the metadata query request to the target metadata proxy includes:

[0062] Send the metadata query request to the target metadata proxy through the relay metadata proxy.

[0063] Specifically, when the target metadata proxy is located in the global reachability list, the starting metadata proxy serving as the execution entity selects the path with the shortest time consumption from the paths it can reach the target metadata proxy, and sends the metadata query request to the corresponding relay metadata proxy or the target metadata proxy according to this path. When the metadata query request is sent to the relay metadata proxy, the relay metadata proxy will re - select the path with the shortest time consumption from the paths it can reach the target metadata proxy, and send the metadata query request to the corresponding relay metadata proxy or the target metadata proxy according to this path. The target metadata proxy obtains the query result from the non - local autonomous metadata cluster according to the metadata query information, and returns the query result to the starting metadata proxy through the relay metadata proxy.

[0064] S106: Receive the query result returned by the target metadata proxy.

[0065] Among them, when the cluster name does not match the non - local autonomous metadata cluster in the global reachability list, return a query failure message to the user.

[0066] The metadata query request includes the query time set by the user. When the cluster name matches a non-locally autonomous metadata cluster, the query time is updated according to the time in the metadata proxy for the metadata query request (subtracting the time of the data query request in the metadata proxy from the query time), and the updated query time is sent to the corresponding metadata proxy. When the updated query time is less than or equal to zero, it indicates that the query time is insufficient. At this time, the metadata proxy where the query request or query result is located will return a query timeout message to the user.

[0067] As can be seen from Figure 1 the process shown, in the metadata query method according to the embodiment of the present invention, when the cluster name matches a locally autonomous metadata cluster, the query result is obtained from the locally autonomous metadata cluster according to the metadata query information in the metadata query request. Otherwise, the target metadata proxy in the pre-constructed metadata query network is determined according to the cluster name, the metadata query request is sent to the target metadata proxy, and finally the query result returned by the target metadata proxy is received. On the basis of retaining the efficiency of metadata autonomy and fault isolation in the information system, the problem of multiple metadata copies is avoided, and the technical difficulty and management cost of strategic decision-making support for large enterprises across information systems are simplified.

[0068] Figure 3 is a flowchart of constructing a metadata query network in an embodiment of the present invention. Figure 4 is a schematic diagram of a metadata query network. Figure 5 is a flowchart of constructing a metadata query network in another embodiment of the present invention. As Figure 3 - Figure 5 shown, an independent structure is used inside the metadata proxy in the metadata query network for the self-organization process of the metadata query network. Constructing the metadata query network includes:

[0069] S201: Obtain the contact information of the specified metadata proxy in the initial metadata query network.

[0070] Among them, the contact information of the specified metadata proxy includes the location information of the metadata proxy in the system, such as IP address, port, and the autonomous metadata cluster it is responsible for, etc. The initial metadata query network (existing system) is the metadata query network before the metadata proxy joins the metadata query network. If the contact information of the specified metadata proxy is not received, the metadata proxy directly starts successfully as the first node of the metadata query network.

[0071] S202: Send a registration request to the specified metadata proxy corresponding to the contact information of the specified metadata proxy, and establish a connection between proxies with the specified metadata proxy.

[0072] During specific implementation, proxy connections can be established with the specified metadata proxy terminals one by one, and the contact information of its own metadata proxy terminal can be registered with the other party. When all registration requests fail, the startup fails and exits.

[0073] S203: Receive the non-local system topology from the specified metadata proxy terminal, and create a local system topology based on the non-local system topology.

[0074] The system topology includes the local system topology and the non-local system topology. It takes the metadata proxy terminal where it is located as a unit and records the contact information of this metadata proxy terminal with the metadata proxy terminals in the same known system (metadata query network). Both the local system topology and the non-local system topology include a local reachability list and a global reachability list. The local reachability list includes other metadata proxy terminals that can directly communicate with the metadata proxy terminal where the local reachability list is located in the current metadata query network and their contact information. The global reachability list includes other metadata proxy terminals that can indirectly communicate with the metadata proxy terminal where the local reachability list is located in the current metadata query network and their contact information. The metadata proxy terminal stores the system topology in its own memory and disappears with the disappearance of its own process.

[0075] S204: Determine the local non-specified metadata proxy terminals in the initial metadata query network according to the local system topology.

[0076] Among them, the local non-specified metadata proxy terminal is a metadata proxy terminal that is located in the local reachability list of the local system topology and is not the specified metadata proxy terminal.

[0077] S205: Send the local system topology to the local non-specified metadata proxy terminals, and establish proxy connections with the local non-specified metadata proxy terminals according to the sending results to construct a metadata query network.

[0078] As Figure 4 shown, the metadata proxy terminal as the execution subject is deployed nearby its proxy autonomous metadata cluster, provides an external interface for the information system owning this autonomous metadata cluster to access any autonomous metadata cluster, and obtains and returns the requested metadata when receiving a request to query this autonomous metadata cluster; the metadata proxy terminal itself does not store metadata, it will sleep for 50 + delta milliseconds, and the more metadata proxy terminals written in the local system topology, the higher the probability of the delta value increasing. Among them, 50 milliseconds is a fixed value; delta is a random value in milliseconds, and the specific determination process of the delta value is: randomly select an integer from 0 to N - 1 and multiply it by 50, where N is the number of metadata proxy terminals written in the local system topology.

[0079] The autonomous metadata cluster is used to store the metadata of the information system and provide query and write functions. An autonomous metadata cluster serves only one information system.

[0080] The connection between agents is the logical communication channel and its combination established between adjacent metadata agent ends. The connection between agents consists of one or more underlying non-blocking communication sessions, and uses multi-link aggregation and single-link reuse technologies to improve network communication efficiency.

[0081] In one embodiment, S205 includes: taking out the connection information in the local system topology one by one, sending the local system topology to the local non-designated metadata agent end, when the sending result is successful, establishing a connection between agents with the local non-designated metadata agent end to construct a metadata query network, and writing the local non-designated metadata agent end into the local reachability list.

[0082] Among them, the metadata agent ends in the metadata query network are usually used to maintain the local system topology or process registration requests from external metadata agent ends, and will concurrently process the following tasks during this period:

[0083] First, according to the principle of preferring local reachability, take out the connection information in the local system topology one by one, send the local system topology to the metadata agent end directly connected to itself in the metadata query network, and write the metadata agent end into the local reachability list stored by itself when the sending is successful. Among them, each metadata agent end in the metadata query network will only send the local system topology to the metadata agent end connected to itself, and each metadata agent end will also send its own agent information to other metadata agent ends in the metadata query network. The agent information includes the system (autonomous metadata cluster) responsible for the metadata agent end, the distance between itself and the agent information recipient, and the relay record.

[0084] Second, update the local system topology according to the non-local system topology from the metadata agent end in the metadata query network.

[0085] For example, compare the non-local system topology with the local system topology:

[0086] 1. When there is a metadata agent end in the non-local system topology that does not exist in the local system topology, write the metadata agent end and its connection information into the local system topology.

[0087] 2. When there is a metadata agent end in the local system topology that does not exist in the non-local system topology, remove the metadata agent end from the global reachability list of the local system topology.

[0088] 3. When there is a metadata proxy in the local reachability list of the non-local system topology and the metadata proxy is not in the global reachability list of the local system topology, write the metadata proxy into the global reachability list of the local system topology.

[0089] 4. When there is no metadata proxy in the local reachability list of the non-local system topology and the metadata proxy is in the global reachability list of the local system topology, remove the metadata proxy from the global reachability list of the local system topology.

[0090] In one embodiment, after executing S205, it further includes: receiving a registration request from an external metadata proxy, updating the local reachability list according to the metadata proxy contact information in the registration request, writing the external metadata proxy into the local reachability list, and informing the external metadata proxy that the registration is successful. Among them, the external metadata proxy is located outside the current metadata query network.

[0091] The specific process of the embodiment of the present invention is as follows:

[0092] 1. Obtain the contact information of the specified metadata proxy in the initial metadata query network.

[0093] 2. Send a registration request to the specified metadata proxy corresponding to the specified metadata proxy contact information, and establish an inter-proxy connection with the specified metadata proxy.

[0094] 3. Receive the non-local system topology from the specified metadata proxy, and create a local system topology according to the non-local system topology.

[0095] 4. Determine the local non-specified metadata proxy in the initial metadata query network according to the local system topology.

[0096] 5. Send the local system topology to the local non-specified metadata proxy. When the sending result is successful, establish an inter-proxy connection with the local non-specified metadata proxy to construct a metadata query network, and write the local non-specified metadata proxy into the local reachability list.

[0097] 6. Take out the contact information in the local system topology one by one, send the local system topology to other metadata proxies in the metadata query network, and write the metadata proxy into the local reachability list stored by itself when the sending is successful.

[0098] 7. Update the local system topology according to the non-local system topology from the metadata proxy in the metadata query network.

[0099] 8. Receive a registration request from an external metadata proxy, and write the external metadata proxy into the local reachability list according to the metadata proxy contact information in the registration request.

[0100] 9. Receive the metadata query request sent by the user, and determine whether the cluster name in the metadata query request matches the local autonomous metadata cluster.

[0101] 10. When the cluster name matches the local autonomous metadata cluster, obtain the query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request.

[0102] 11. When the cluster name does not match the local autonomous metadata cluster, determine the target metadata proxy end in the metadata query network according to the cluster name.

[0103] 12. Send the metadata query request to the target metadata proxy end, so that the target metadata proxy end obtains the query result from the corresponding non-local autonomous metadata cluster according to the metadata query information.

[0104] 13. Receive the query result returned by the target metadata proxy end.

[0105] 14. Return the query result to the user.

[0106] Figure 6 It is a schematic diagram of the initial metadata query network in an embodiment of the present invention. Figure 7 It is a schematic diagram of the metadata query network after adding a metadata proxy end in an embodiment of the present invention. Taking Figure 6 - Figure 7 as an example, the process of adding a metadata proxy end to the metadata query network is as follows:

[0107] Such as Figure 6 shown, the initial metadata query network is composed of three metadata proxy ends A, B, and C. The system (autonomous metadata cluster) proxied by metadata proxy end A is A', the system proxied by metadata proxy end B is B', and the system proxied by metadata proxy end C is C'. Among them, metadata proxy ends A and C cannot communicate directly due to network problems, but B can communicate with A or B can communicate with C. The metadata proxy end that hopes to join the initial metadata query network is D.

[0108] Such as Figure 7 shown, when the user starts the new metadata proxy end D, it is specified that D synchronizes with C. Therefore, after D directly copies the system topology of C, it is successfully started; metadata proxy end C then adds D to the local reachability list in its own system topology.

[0109] Figure 8 It is a schematic diagram of a metadata proxy end broadcasting proxy information in an embodiment of the present invention. Figure 9 It is a schematic diagram of a metadata proxy end updating the local reachability list in an embodiment of the present invention. Figure 10It is a schematic diagram of the metadata proxy forwarding broadcast proxy information in an embodiment of the present invention. Figure 11 It is a schematic diagram of the metadata proxy further forwarding broadcast proxy information in an embodiment of the present invention. Figure 12 It is a schematic diagram of the metadata proxy forwarding broadcast proxy information one more time in an embodiment of the present invention. Figure 13 It is a schematic diagram of the metadata proxy completing maintenance in an embodiment of the present invention. Taking Figure 8 - Figure 13 as an example, the process of the metadata proxy maintaining the system topology is as follows:

[0110] As Figure 8 shown, when the metadata proxy D starts to maintain its own system topology, it generates a proxy information describing which system's metadata query it is responsible for, and then tries to directly send the proxy information to the proxies in the local reachability list (C, B) and the global reachability list (A) of the local system topology.

[0111] As Figure 9 shown, since the metadata proxy D cannot be directly connected to the metadata proxy A, the metadata proxy D removes the information of A from its local reachability list; the metadata proxy D can be directly connected to the metadata proxy B and the metadata proxy C, so it adds the information of B and C to its local reachability list. Since the metadata proxy B and the metadata proxy C can be directly connected to the metadata proxy D, they respectively receive the proxy information broadcast by the metadata proxy D, and B and C respectively add D to their local reachability lists. In addition, the metadata proxy B and the metadata proxy C add one to the "distance from the receiver (D)" in the received proxy information of D and add their own names at the end of the "relay record".

[0112] As Figure 10 shown, the metadata proxy B and the metadata proxy C calculate which metadata proxy to send the proxy information of D to. Taking the metadata proxy C as an example, the metadata proxy C takes out its local reachability list to get B and D, and excludes the metadata proxies that appear in the "relay record" (which contains D and C) from the local reachability list (excluding D). Therefore, the metadata proxy C only needs to send the proxy information of D to the metadata proxy B; the metadata proxy B has a similar process. Therefore, the metadata proxy B sends the proxy information of D to the metadata proxy A and the metadata proxy C.

[0113] As Figure 11 shown, Figure 11 Three proxy information of D are generated, and their broadcast order is as follows:

[0114] 1. D→B→A

[0115] (1) Update the system topology of the path proxy: The metadata proxy A receives the proxy information of D. Since the proxy information is not obtained directly, the proxy information of D is added to the global reachability list of A, and the next hop of D is marked as the proxy closest to itself in the "relay record", and the shortest distance to the recipient is 2.

[0116] (2) Forward the broadcast: Since all the metadata proxies (B) in the local reachability list of the metadata proxy A have appeared in the "relay record", the metadata proxy A will not forward the proxy information to any metadata proxy.

[0117] 2.D→B→C

[0118] (1) Update the system topology of the path proxy: The metadata proxy C receives the broadcast information of D. The proxy information is not obtained directly, but the information of D already exists in the local reachability list of C. Therefore, the metadata proxy C will not update its local reachability list or global reachability list.

[0119] (2) Forward the broadcast: Since all the proxies (B and D) in the local reachability list of the metadata proxy C have appeared in the "relay record", the metadata proxy C will not forward the proxy information to any metadata proxy.

[0120] 3.D→C→B

[0121] (1) Update the system topology of the path proxy: The metadata proxy B receives the broadcast information of D. The proxy information is not obtained directly, but the information of D already exists in the local reachability list of B. Therefore, the metadata proxy B will not update its local reachability list or global reachability list.

[0122] (2) Forward the broadcast: Since among all the proxies (A, C, and D) in the local reachability list of the metadata proxy B, C and D have appeared in the "relay record", the metadata proxy B will only forward the proxy information to the metadata proxy A.

[0123] As Figure 12 shown, in terms of updating the system topology of the path proxy, the metadata proxy A receives the proxy information of D. Since the proxy information is not obtained directly, the metadata proxy A attempts to add the information of D to the global reachability list of this proxy. However, since the information of D already exists in the global reachability list of A, and the shortest distance to the recipient (2) is smaller than the "distance to the recipient" (3) in the currently received proxy information, the metadata proxy A does not update the global reachability list.

[0124] In terms of forwarding broadcasts, since all the metadata proxies (B) in the local reachability list of metadata proxy A have appeared in the "relay record", metadata proxy A will not forward proxy information to any metadata proxy.

[0125] The above process of metadata proxy broadcasting proxy information will occur on metadata proxies A, B, C, and D, and may even occur simultaneously. After all metadata proxies have completed one round of maintenance as described above, the system topologies of all metadata proxies are updated to the latest.

[0126] Figure 14 Schematic diagram of obtaining query results from a local autonomous metadata cluster in an embodiment of the present invention. Figure 15 Schematic diagram of obtaining query results from a locally reachable autonomous metadata cluster in an embodiment of the present invention. Figure 16 Schematic diagram of obtaining query results from a globally reachable autonomous metadata cluster in an embodiment of the present invention. Taking Figure 14 - Figure 16 as an example, the process of obtaining query results is as follows:

[0127] As Figure 14 shown, the metadata that the user wants to access just happens to be in system D' managed by metadata proxy D. D directly queries the data and returns the query result to the user.

[0128] As Figure 15 shown, the metadata that the user wants to access is not in system D' managed by metadata proxy D, but D discovers that metadata proxy C in its local reachability list is directly responsible for this metadata. Therefore, D forwards the request to C. After C queries the data and hands it over to D, D then returns the query result to the user.

[0129] As Figure 16 shown, the metadata that the user wants to access is not in system D' managed by metadata proxy D, and there is no metadata proxy in the local reachability list of metadata proxy D that is directly responsible for this metadata. However, metadata proxy A in the global reachability list of metadata proxy D is directly responsible for this metadata. Therefore, D forwards the request to B according to the "next hop" of A in its global reachability list. After B makes a query and judgment, and forwards the request logically along the path B→A and retrieves the data from system A' of A, B hands the data over to D, and D then returns the query result to the user.

[0130] In summary, in the metadata query method according to the embodiment of the present invention, when the cluster name matches the local autonomous metadata cluster, the query result is obtained from the local autonomous metadata cluster according to the metadata query information in the metadata query request. Otherwise, the target metadata proxy in the pre-constructed metadata query network is determined according to the cluster name, the metadata query request is sent to the target metadata proxy, and finally the query result returned by the target metadata proxy is received. On the basis of retaining the efficiency of metadata autonomy and fault isolation in the information system, the problem of multiple copies of metadata is avoided, and the technical difficulty and management cost of strategic decision-making support across information systems in large enterprises are simplified.

[0131] In addition, the present invention also has the following advantages:

[0132] 1) Elastic scalability: The network architecture formed among the metadata proxies has self-organization ability. Adding and deleting nodes do not require manual modification of the topology, and the new topology will be automatically generated during the self-organization process.

[0133] 2) Robustness: The functions of the metadata proxies are completely peer-to-peer and decentralized, without strong synchronization information, which can avoid the vulnerability of the centralized distributed architecture.

[0134] 3) Availability: The metadata proxy supports both direct query and proxy query modes at the same time. When a network connection problem occurs, it can automatically adapt to the new network situation to try its best to obtain the result.

[0135] 4) Low intrusion: Each information system (autonomous metadata cluster) does not need to modify the internal metadata access method. The cross-information system metadata access can be implemented by gradually accessing and realizing in stages to avoid interfering with the business of each information system.

[0136] 5) Correctness: The metadata proxy does not store actual data, and there is no problem of multiple copies of metadata, which ensures the correctness of the query.

[0137] 6) Low cost: The metadata proxy is designed to be stateless and does not need to be particularly suitable for a high-configuration environment to run, reducing additional cost investment.

[0138] 7) High efficiency: The connection between the proxies uses multi-link aggregation and single-link reuse technologies, which can achieve reliable non-blocking communication that cannot be achieved by general communication protocols, reducing the occupation of network resources.

[0139] Based on the same inventive concept, the embodiment of the present invention also provides a metadata query system. Since the principle of solving problems by this system is similar to that of the metadata query method, the implementation of this system can refer to the implementation of the method, and the repeated parts will not be elaborated.

[0140] Figure 17 It is the structural block diagram of the metadata query system in the embodiment of the present invention. AsFigure 17 As shown in Figure 17 , the metadata query system includes:

[0141] A receiving unit, configured to receive a metadata query request;

[0142] A judging unit, configured to judge whether the cluster name in the metadata query request matches the local autonomous metadata cluster;

[0143] A query result unit, configured to, when the cluster name matches the local autonomous metadata cluster, obtain a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request;

[0144] A target metadata proxy end unit, configured to, when the cluster name does not match the local autonomous metadata cluster, determine a target metadata proxy end in a pre-constructed metadata query network according to the cluster name; wherein, the target metadata proxy end is the metadata proxy end corresponding to a non-local autonomous metadata cluster that matches the cluster name;

[0145] A sending unit, configured to send the metadata query request to the target metadata proxy end, so that the target metadata proxy end obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information;

[0146] The query result unit is further configured to: receive the query result returned by the target metadata proxy end.

[0147] In one embodiment, it further includes:

[0148] A relay metadata proxy end unit, configured to, when the target metadata proxy end is in the global reachability list, determine a relay metadata proxy end in the metadata query network according to the target proxy end;

[0149] The sending unit is specifically configured to:

[0150] Send the metadata query request to the target metadata proxy end through the relay metadata proxy end.

[0151] In one embodiment, it further includes: a metadata query network construction unit, configured to:

[0152] Obtain the contact information of a specified metadata proxy end in the initial metadata query network;

[0153] Send a registration request to the specified metadata proxy end corresponding to the specified metadata proxy end contact information, and establish an inter-proxy connection with the specified metadata proxy end;

[0154] Receive the non-local system topology from the specified metadata proxy end, and create a local system topology according to the non-local system topology;

[0155] Determine the local unspecified metadata proxy end in the initial metadata query network according to the local system topology;

[0156] Send the local system topology to the local unspecified metadata proxy end, and establish an inter - proxy connection with the local unspecified metadata proxy end according to the sending result to construct a metadata query network.

[0157] In one embodiment, the local system topology includes a local reachability list;

[0158] The metadata query network construction unit is specifically used for:

[0159] When the sending result is successful, establish an inter - proxy connection with the local unspecified metadata proxy end to construct a metadata query network, and write the local unspecified metadata proxy end into the local reachability list.

[0160] In one embodiment, it further includes:

[0161] An update unit, configured to update the local system topology according to the non - local system topology from the metadata proxy end in the metadata query network.

[0162] In one embodiment, it further includes:

[0163] A registration request receiving unit, configured to receive a registration request from an external metadata proxy end;

[0164] The update unit is further used for:

[0165] Update the local reachability list according to the metadata proxy end contact information in the registration request.

[0166] In summary, when the cluster name matches the local autonomous metadata cluster in the metadata query system according to the embodiments of the present invention, the query result is obtained from the local autonomous metadata cluster according to the metadata query information in the metadata query request. Otherwise, the target metadata proxy end in the pre - constructed metadata query network is determined according to the cluster name, the metadata query request is sent to the target metadata proxy end, and finally the query result returned by the target metadata proxy end is received. On the basis of retaining the efficiency of metadata autonomy and fault isolation in the information system, the problem of multiple metadata copies is avoided, and the technical difficulty and management cost of strategic decision - making support for large - scale enterprises across information systems are simplified.

[0167] The embodiments of the present invention also provide a specific implementation manner of a computer device capable of implementing all steps in the metadata query method in the above - mentioned embodiments. Figure 18 It is the structural block diagram of the computer device in the embodiments of the present invention. Refer to Figure 18 , and the computer device specifically includes the following content:

[0168] A processor 1801 and a memory 1802.

[0169] The processor 1801 is used to call a computer program in the memory 1802. When the processor executes the computer program, all steps in the metadata query method in the above embodiments are implemented. For example, when the processor executes the computer program, the following steps are implemented:

[0170] Receive a metadata query request;

[0171] Determine whether the cluster name in the metadata query request matches the local autonomous metadata cluster;

[0172] When the cluster name matches the local autonomous metadata cluster, obtain a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request;

[0173] When the cluster name does not match the local autonomous metadata cluster, determine a target metadata proxy end in a pre-constructed metadata query network according to the cluster name; wherein, the target metadata proxy end is the metadata proxy end corresponding to a non-local autonomous metadata cluster that matches the cluster name;

[0174] Send the metadata query request to the target metadata proxy end, so that the target metadata proxy end obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information;

[0175] Receive the query result returned by the target metadata proxy end.

[0176] In summary, when the cluster name in the computer device according to the embodiment of the present invention matches the local autonomous metadata cluster, a query result is obtained from the local autonomous metadata cluster according to the metadata query information in the metadata query request. Otherwise, a target metadata proxy end in a pre-constructed metadata query network is determined according to the cluster name, the metadata query request is sent to the target metadata proxy end, and finally the query result returned by the target metadata proxy end is received. On the basis of retaining the efficiency of metadata autonomy and fault isolation in the information system, the problem of multiple copies of metadata is avoided, and the technical difficulty and management cost of strategic decision-making support across information systems in large enterprises are simplified.

[0177] The embodiment of the present invention further provides a computer-readable storage medium capable of implementing all steps in the metadata query method in the above embodiments. A computer program is stored on the computer-readable storage medium. When the computer program is executed by a processor, all steps in the metadata query method in the above embodiments are implemented. For example, when the processor executes the computer program, the following steps are implemented:

[0178] Receive a metadata query request;

[0179] Determine whether the cluster name in the metadata query request matches the local autonomous metadata cluster;

[0180] When the cluster name matches the local autonomous metadata cluster, obtain a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request;

[0181] When the cluster name does not match the local autonomous metadata cluster, determine a target metadata proxy in the pre-constructed metadata query network according to the cluster name; wherein, the target metadata proxy is the metadata proxy corresponding to the non-local autonomous metadata cluster that matches the cluster name;

[0182] Send the metadata query request to the target metadata proxy so that the target metadata proxy obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information;

[0183] Receive the query result returned by the target metadata proxy.

[0184] In summary, when the cluster name in the embodiment of the present invention matches the local autonomous metadata cluster, the computer-readable storage medium obtains a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request. Otherwise, it determines a target metadata proxy in the pre-constructed metadata query network according to the cluster name, sends the metadata query request to the target metadata proxy, and finally receives the query result returned by the target metadata proxy. On the basis of retaining the efficiency of metadata autonomy and fault isolation in the information system, the problem of multiple copies of metadata is avoided, and the technical difficulty and management cost of strategic decision-making support for large enterprises across information systems are simplified.

[0185] In the specific embodiments described above, the purpose, technical solution and beneficial effects of the present invention are further described in detail. It should be understood that the above are only specific embodiments of the present invention and are not used to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

[0186] Those skilled in the art can also understand that the various illustrative logical blocks, units, and steps listed in the embodiments of the present invention can be implemented by electronic hardware, computer software, or a combination of both. To clearly show the interchangeability of hardware and software, the above-mentioned various illustrative components, units, and steps have been generally described in terms of their functions. Whether such functions are implemented by hardware or software depends on the specific application and the design requirements of the entire system. Those skilled in the art can use various methods to implement the described functions for each specific application, but such implementation should not be construed as exceeding the scope of protection of the embodiments of the present invention.

[0187] In the embodiments of the present invention, the various illustrative logical blocks, or units, or devices can be implemented or operate the described functions through a general-purpose processor, a digital signal processor, an application-specific integrated circuit (ASIC), a field-programmable gate array or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination of the above designs. The general-purpose processor can be a microprocessor. Optionally, the general-purpose processor can also be any conventional processor, controller, microcontroller, or state machine. The processor can also be implemented through a combination of computing devices, such as a digital signal processor and a microprocessor, multiple microprocessors, one or more microprocessors combined with a digital signal processor core, or any other similar configuration.

[0188] The steps of the methods or algorithms described in the embodiments of the present invention can be directly embedded in hardware, software modules executed by a processor, or a combination of both. The software modules can be stored in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium in the art. Exemplarily, the storage medium can be connected to the processor so that the processor can read information from the storage medium and write information to the storage medium. Optionally, the storage medium can also be integrated into the processor. The processor and the storage medium can be disposed in an ASIC, and the ASIC can be disposed in a user terminal. Optionally, the processor and the storage medium can also be disposed in different components of the user terminal.

[0189] In one or more exemplary designs, the functions described in embodiments of the present invention may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on a computer-readable medium or transmitted as one or more instructions or code on a computer-readable medium. A computer-readable medium includes both computer storage media and communication media that facilitate transfer of a computer program from one place to another. Storage media may be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media may include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store program code in the form of instructions or data structures and that can be accessed by a general purpose or special purpose computer, or a general purpose or special purpose processor. In addition, any connection is properly termed a computer-readable medium, such as if software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave. Disk and disc include compact disk, laser disk, optical disk, DVD, floppy disk, and Blu-ray disk where disks usually reproduce data magnetically and discs usually reproduce data optically. The above combination may also be included within computer-readable media.

Claims

1. A metadata query method, characterized in that, including: Receiving a metadata query request; Determining whether the cluster name in the metadata query request matches the local autonomous metadata cluster; When the cluster name matches the local autonomous metadata cluster, obtaining a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request; When the cluster name does not match the local autonomous metadata cluster, determining a target metadata proxy end in a pre-constructed metadata query network according to the cluster name; wherein, the target metadata proxy end is a metadata proxy end corresponding to a non-local autonomous metadata cluster that matches the cluster name; each local autonomous metadata cluster and each non-local autonomous metadata cluster is an information system service; Sending the metadata query request to the target metadata proxy end, so that the target metadata proxy end obtains a query result from the corresponding non-local autonomous metadata cluster according to the metadata query information; Receiving the query result returned by the target metadata proxy end; The determining a target metadata proxy end in a pre-constructed metadata query network according to the cluster name includes: When the cluster name matches a non-local autonomous metadata cluster in the local reachability list, determining the metadata proxy end corresponding to the non-local autonomous metadata cluster as the first target metadata proxy end; the first target metadata proxy end is located in the local reachability list and is directly connected to the starting metadata proxy end serving as the execution subject; When the cluster name matches a non-local autonomous metadata cluster in the global reachability list, determining the metadata proxy end corresponding to the non-local autonomous metadata cluster as the second target metadata proxy end; the second target metadata proxy end is located in the global reachability list and is indirectly connected to the starting metadata proxy end serving as the execution subject through a relay metadata proxy end.

2. The metadata query method according to claim 1, characterized in that, also including: When the target metadata proxy end is located in the global reachability list, determining a relay metadata proxy end in the metadata query network according to the target proxy end; The sending the metadata query request to the target metadata proxy end includes: Sending the metadata query request to the target metadata proxy end through the relay metadata proxy end.

3. The metadata query method according to claim 1, characterized in that, Constructing a metadata query network includes: Obtaining contact information of a specified metadata proxy end in an initial metadata query network; Sending a registration request to the specified metadata proxy end corresponding to the specified metadata proxy end contact information, and establishing an inter-proxy connection with the specified metadata proxy end; Receiving a non-local system topology from the specified metadata proxy end, and creating a local system topology according to the non-local system topology; Determining a local non-specified metadata proxy end in the initial metadata query network according to the local system topology; Sending the local system topology to the local non-specified metadata proxy end, and establishing an inter-proxy connection with the local non-specified metadata proxy end according to the sending result to construct a metadata query network.

4. The metadata query method according to claim 3, characterized in that, The local system topology includes a local reachability list; Establishing an inter - proxy connection with the local non - designated metadata proxy based on the sending result to construct a metadata query network includes: When the sending result is successful, establish an inter - proxy connection with the local non - designated metadata proxy to construct a metadata query network, and write the local non - designated metadata proxy into the local reachability list.

5. The metadata query method according to claim 4, characterized in that, After establishing an inter - proxy connection with the local non - designated metadata proxy based on the sending result to construct a metadata query network, it further includes: Update the local system topology according to the non - local system topology from the metadata proxy in the metadata query network.

6. The metadata query method according to claim 4, characterized in that, It further includes: Receive a registration request from an external metadata proxy; Update the local reachability list according to the metadata proxy contact information in the registration request.

7. A metadata query system, characterized in that, It includes: A receiving unit for receiving a metadata query request; A judging unit for judging whether the cluster name in the metadata query request matches the local autonomous metadata cluster; A query result unit for, when the cluster name matches the local autonomous metadata cluster, obtaining a query result from the local autonomous metadata cluster according to the metadata query information in the metadata query request; A target metadata proxy unit for, when the cluster name does not match the local autonomous metadata cluster, determining a target metadata proxy in the pre - constructed metadata query network according to the cluster name; wherein, the target metadata proxy is the metadata proxy corresponding to the non - local autonomous metadata cluster that matches the cluster name; each local autonomous metadata cluster and each non - local autonomous metadata cluster are an information system service; A sending unit for sending the metadata query request to the target metadata proxy so that the target metadata proxy obtains a query result from the corresponding non - local autonomous metadata cluster according to the metadata query information; The query result unit is further used for: receiving the query result returned by the target metadata proxy; The target metadata proxy unit is specifically used for: When the cluster name matches the non - local autonomous metadata cluster in the local reachability list, determining the metadata proxy corresponding to the non - local autonomous metadata cluster as the first target metadata proxy; the first target metadata proxy is located in the local reachability list and is directly connected to the starting metadata proxy as the execution subject; When the cluster name matches the non - local autonomous metadata cluster in the global reachability list, determining the metadata proxy corresponding to the non - local autonomous metadata cluster as the second target metadata proxy; the second target metadata proxy is located in the global reachability list and is indirectly connected to the starting metadata proxy as the execution subject through a relay metadata proxy.

8. The metadata query system according to claim 7, wherein, It further includes: A relay metadata proxy unit for, when the target metadata proxy is located in the global reachability list, determining the relay metadata proxy in the metadata query network according to the target proxy; The sending unit is specifically used for: Send the metadata query request to the target metadata proxy through the relay metadata proxy.

9. The metadata query system according to claim 7, wherein, It further includes: A metadata query network construction unit, configured to: Obtain the contact information of a specified metadata proxy in the initial metadata query network; Send a registration request to the specified metadata proxy corresponding to the specified metadata proxy contact information, and establish an inter-proxy connection with the specified metadata proxy; Receive the non-local system topology from the specified metadata proxy, and create a local system topology according to the non-local system topology; Determine the local non-specified metadata proxies in the initial metadata query network according to the local system topology; Send the local system topology to the local non-specified metadata proxy, and establish an inter-proxy connection with the local non-specified metadata proxy according to the sending result to construct a metadata query network.

10. The metadata query system according to claim 9, wherein, The local system topology includes a local reachability list; Specifically, the metadata query network construction unit is configured to: When the sending result is successful, establish an inter-proxy connection with the local non-specified metadata proxy to construct a metadata query network, and write the local non-specified metadata proxy into the local reachability list.

11. The metadata query system according to claim 10, wherein, It further includes: An update unit, configured to update the local system topology according to the non-local system topology from the metadata proxy in the metadata query network.

12. The metadata query system according to claim 10, wherein, It further includes: A registration request receiving unit, configured to receive a registration request from an external metadata proxy; The update unit is further configured to: Update the local reachability list according to the metadata proxy contact information in the registration request.

13. A computer device, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, wherein, When the processor executes the computer program, it implements the steps of the metadata query method according to any one of claims 1 to 6.

14. A computer-readable storage medium, on which a computer program is stored, wherein, When the computer program is executed by the processor, it implements the steps of the metadata query method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Distributed query engine system and method and metadata server

    CN104050249A

  • Distributed computing system and method

    CN106034160A