CN114911808A - Dynamic publishing and subscribing method and device - Google Patents

Dynamic publishing and subscribing method and device Download PDF

Info

Publication number
CN114911808A
CN114911808A CN202210479174.5A CN202210479174A CN114911808A CN 114911808 A CN114911808 A CN 114911808A CN 202210479174 A CN202210479174 A CN 202210479174A CN 114911808 A CN114911808 A CN 114911808A
Authority
CN
China
Prior art keywords
condition
subscription
subscriptions
partial order
nth
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
Application number
CN202210479174.5A
Other languages
Chinese (zh)
Inventor
尤涛
程博
胡焜
白璐
杜承烈
陈进朝
卢岩涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN202210479174.5A priority Critical patent/CN114911808A/en
Publication of CN114911808A publication Critical patent/CN114911808A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention discloses a dynamic publishing and subscribing method and device, relates to the technical field of computers, and aims to solve the problem that the matching efficiency is low due to the fact that a matching barrel structure is too large in the existing event matching algorithm. The method comprises the following steps: when the subscription to be received is monitored, acquiring a first condition included in the subscription to be received, and matching the first condition with a plurality of second conditions corresponding to Mth subscriptions stored in a subscription condition list; if the first condition and any one of the second conditions have at least one different content, storing the subscription to be received corresponding to the first condition into a subscription condition list; and classifying every Nth subscription according to the partial order relation corresponding to the stored state and the content of the first condition included by every Nth subscription stored in the subscription condition list, and updating the partial order relation including a partial order R tree and an index structure according to the classification result.

Description

Dynamic publishing and subscribing method and device
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a method and an apparatus for dynamically publishing and subscribing.
Background
In the dynamic interaction of the virtual prototype resources of the high-altitude platform, the information content of the whole virtual environment is very large, the incidence relation among the interactive nodes is complex, and the interactive (subscription) relation among the nodes is frequently changed along with the promotion of the test process. Not only can the real-time performance of the system be influenced, but also the expandability of the whole system can be restricted, system congestion and network bottleneck can be caused, system distortion is formed, and the practicability of the system is seriously influenced.
The matching algorithm can find all subscriptions that match a given event in an efficient way, which is one of the key issues studied by content-based publish/subscribe systems. The design target of the matching algorithm mainly comprises several aspects of space efficiency, time efficiency of matching, and efficiency of subscription maintenance, and in these aspects, the most important aspect is the time efficiency of the matching algorithm. The performance of a matching system mainly depends on the efficiency of the matching algorithm, so how to improve the matching efficiency of the algorithm becomes an urgent problem for many researchers today.
In the existing event matching algorithm, an H-Tree uniformly maps subscriptions to different buckets by using the middle value of the area constraint specified on the index attribute in the subscriptions to construct a hash table, and only matches with the subscriptions with higher matching possibility in the matching process; REIN adopts an index structure formed by a plurality of bucket chains, the number of the bucket chains is twice of the number of attributes in an event, a reverse search strategy is used in the matching process, and all subscriptions which are not matched with the event are marked, so that successfully matched subscriptions are obtained; the DMM constructs a search tree by mapping the events and subscriptions to a multidimensional space, thereby shortening the matching time; the content-based fast event matching method (CEEM) is proposed by chengzhou et al, and the method adopts a data structure taking a predicate table as a core, divides predicate families, indexes each predicate family in a sequencing or hash table mode, does not need to construct a static matching network, can realize dynamic updating of order information, and accelerates the efficiency of event matching; HEMA introduces a subscription list and a predicate table, stores predicates containing the same attributes and the same comparison operation into a row of the predicate table according to an ordered sequence, and links predicates belonging to the same subscription in the predicate table through a pointer, wherein the subscription list not only stores subscription numbers of all added predicate tables, but also stores the position of a first predicate subscribed in the predicate table, and the introduction of the subscription list and the predicate table enables a matching process to be carried out according to a certain predicate sequence.
Among the above methods, while the REIN method is not affected by the subscription selectivity, when the attributes in the event are less than the attributes in the subscription, the efficiency of the algorithm is significantly reduced; in the DMM method, the multidimensional space must be divided many times, which takes a long time to construct a tree structure; in the CEEM method, the equivalence value predicates and the interval predicates are not distinguished, a large amount of unnecessary traversals are generated during matching, and meanwhile, due to the fact that the matching barrel structure is too large, the predicate organization structure is difficult to modify abnormally, and therefore efficiency is affected.
In summary, the existing event matching algorithm has a problem of low matching efficiency due to the excessively large matching bucket structure.
Disclosure of Invention
The embodiment of the invention provides a dynamic publishing and subscribing method and device, which are used for solving the problem of low matching efficiency of the existing event matching algorithm due to the fact that a matching barrel structure is too large.
The embodiment of the invention provides a method for dynamically publishing a subscription, which comprises the following steps:
when a subscription to be received is monitored, acquiring a first condition included in the subscription to be received, and matching the first condition with a second condition corresponding to a plurality of Mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0;
if at least one different content exists between the first condition and any one of the second conditions, storing the subscriptions to be received corresponding to the first condition into a subscription condition list, and naming a plurality of the subscriptions to be received as nth subscriptions according to the order of the subscription condition list, where N is a positive integer greater than M;
and classifying every Nth subscription according to the partial order relation corresponding to the stored state and the content of the first condition included by every Nth subscription stored in the subscription condition list, and updating the partial order relation including the partial order R tree and the index structure according to the classification result.
Preferably, the first condition includes at least any one of a character string condition, a numerical range condition, and an integer condition;
if at least one different content exists between the first condition and any one of the second conditions, the method specifically includes:
the first condition comprises a string condition that is inconsistent with a string condition comprised by the second condition; and/or
The first condition comprises a numerical range condition that is inconsistent with a numerical range condition comprised by the second condition; and/or
The first condition includes an integer condition that is inconsistent with the integer condition included in the second condition.
Preferably, before the matching the first condition with the plurality of second conditions stored in the subscription condition list, the method further includes:
if the subscription condition list is empty, sequentially storing the subscriptions to be received into the subscription condition list according to the time stamp sequence corresponding to the subscriptions to be received, and naming the subscriptions to be received stored into the subscription condition list as an Nth subscription;
the partial order state corresponding to the subscription condition list at present is an empty state, and the multiple subscriptions to be received are classified according to the content of the first condition and the partial order relation included in the multiple subscriptions to be received: adding index information corresponding to the Nth subscription including the character string condition into an index structure; and/or adding tree information corresponding to an Nth subscription which comprises a numerical range condition and satisfies { Ω | A ≠ B ═ Ω, Ω ≠ A, Ω ≠ B } into a root directory of the partial order R tree; and/or adding tree information corresponding to the Mth subscription which comprises an integer condition and meets { omega | A ≠ B ═ omega, omega ≠ A, omega ≠ B } into a root directory of the partial order R tree;
writing the classification result into a partial order state, storing the classification result into a plurality of subscriptions to be received in the subscription condition list, namely the Mth subscription, and updating the partial order state currently corresponding to the subscription condition list into a stored state.
Preferably, the classifying each nth subscription according to the partial order relationship corresponding to the stored state and the content of the first condition included in each nth subscription stored in the subscription condition list specifically includes:
comparing the content of the first condition included in the Nth subscription with the partial order relation corresponding to the stored state:
if the Nth subscription comprises a first condition, the numerical range condition of the first condition is overlapped with a plurality of Mth subscriptions which already exist in the partial order R tree, and index information corresponding to the Nth subscription is added into an index structure; or if the numerical range condition of the first condition included in the Nth subscription does not overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding tree information corresponding to the Nth subscription to a root directory of the partial order R tree; or if the numerical range condition of the Nth subscription is completely covered by any Mth subscription existing in the partial order R tree in the first condition included in the Nth subscription, adding tree information corresponding to the Nth subscription to a directory of the Mth subscription which completely covers the Nth subscription;
adding index information corresponding to the Nth subscription including the integer condition into an index structure;
and adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
Preferably, after the partial order relationship including the partial order R tree and the index structure is updated according to the classification result, the method further includes:
when a request event is received, searching the event in a partial order relation comprising a partial order R tree and an index structure, and if the request condition included by the event is completely met, issuing the event.
An embodiment of the present invention further provides a device for dynamically publishing a subscription, including:
the device comprises a matching unit, a receiving unit and a processing unit, wherein the matching unit is used for acquiring a first condition included in a subscription to be received when the subscription to be received is monitored, and matching the first condition with a second condition corresponding to a plurality of Mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0;
a storage unit, configured to, if at least one different content exists between the first condition and any one of the second conditions, sequentially store the multiple subscriptions to be received in a subscription condition list according to a time stamp sequence corresponding to the multiple subscriptions to be received, and name the multiple subscriptions to be received as an nth subscription according to the sequence of the subscription condition list, where N is a positive integer greater than M;
and the updating unit is used for classifying each Nth subscription according to the partial order relationship corresponding to the stored state and the content of the first condition included by each Nth subscription stored in the subscription condition list, and updating the partial order relationship including the partial order R tree and the index structure according to the classification result.
Preferably, the first condition includes at least any one of a character string condition, a numerical range condition, and an integer condition;
the storage unit is specifically configured to:
the first condition comprises a string condition that is inconsistent with a string condition comprised by the second condition; and/or
The first condition comprises a numerical range condition that is inconsistent with a numerical range condition comprised by the second condition; and/or
The first condition comprises an integer condition that is inconsistent with the integer condition comprised by the second condition;
preferably, the matching unit is further configured to:
if the subscription condition list is empty, sequentially storing the subscriptions to be received into the subscription condition list according to the time stamp sequence corresponding to the subscriptions to be received, and naming the subscriptions to be received stored into the subscription condition list as an Nth subscription;
the partial order state corresponding to the subscription condition list is a null state, and the multiple subscriptions to be received are classified according to the content of the first condition and the partial order relation included in the multiple subscriptions to be received: adding index information corresponding to the Nth subscription including the character string condition into an index structure; and/or adding tree information corresponding to an Nth subscription which comprises a numerical range condition and satisfies { Ω | A ≠ B ═ Ω, Ω ≠ A, Ω ≠ B } into a root directory of the partial order R tree; and/or adding tree information corresponding to the Mth subscription which comprises an integer condition and meets { omega | A ≠ B ═ omega, omega ≠ A, omega ≠ B } into a root directory of the partial order R tree;
writing the classification result into a partial order state, storing the classification result into a plurality of subscriptions to be received in the subscription condition list, namely the Mth subscription, and updating the partial order state currently corresponding to the subscription condition list into a stored state.
Preferably, the updating unit is specifically configured to:
comparing the content of the first condition included in the Nth subscription with the partial order relation corresponding to the stored state:
if the first condition included in the Nth subscription and the numerical range condition of the first condition overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding index information corresponding to the Nth subscription to an index structure; or if the numerical range condition of the first condition included in the Nth subscription does not overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding tree information corresponding to the Nth subscription to a root directory of the partial order R tree; or if the numerical range condition of the Nth subscription is completely covered by any Mth subscription existing in the partial order R tree in the first condition included in the Nth subscription, adding tree information corresponding to the Nth subscription to a directory of the Mth subscription which completely covers the Nth subscription;
adding index information corresponding to the Nth subscription including the integer condition into an index structure;
and adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
Preferably, the updating unit is further configured to:
when a request event is received, searching the event in a partial order relation comprising a partial order R tree and an index structure, and if the request condition included by the event is completely met, issuing the event.
The embodiment of the invention discloses a method and a device for dynamically releasing subscription, wherein the method comprises the following steps: when a subscription to be received is monitored, acquiring a first condition included in the subscription to be received, and matching the first condition with a second condition corresponding to a plurality of Mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0; if the first condition and any one of the second conditions have at least one different content, sequentially storing a plurality of subscriptions to be received into a subscription condition list according to the time stamp sequence corresponding to the plurality of subscriptions to be received, and naming the plurality of subscriptions to be received as an Nth subscription according to the sequence of the subscription condition list, wherein N is a positive integer greater than M; and classifying every Nth subscription according to the partial order relation corresponding to the stored state and the content of the first condition included by every Nth subscription stored in the subscription condition list, and updating the partial order relation including the partial order R tree and the index structure according to the classification result. The method is a content-based publishing and subscribing method and aims to solve the problem of dynamic interaction of high-altitude platform virtual prototype resources, which is large in information amount of a virtual environment and complex in incidence relation among interactive nodes. With the advance of the test process of the virtual prototype of the high-altitude platform, the interaction relationship among all nodes is frequently changed, the traditional method only stores the subscription condition based on the content through a structure storage, has high time complexity, and particularly, the interval values in the content are gradually increased, and the problems of system real-time reduction, congestion and network bottleneck caused by the fact that a single tree structure is required to be frequently updated seriously affect the practicability of the system. Thus, the method, through the composite memory structure: the partial order R tree and the index structure store different subscription conditions in a classified manner, so that the subscription conditions are easier to search and locate, and the operating efficiency of a publishing terminal is improved. Meanwhile, the partial order R tree solves the problem of high complexity of dynamic updating of a storage structure through a plurality of R tree storage interval structures according to the partial order relation of the subscription conditions.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic flowchart of a method for dynamically publishing a subscription according to an embodiment of the present invention;
fig. 2 is a schematic diagram of a basic structure of a subscription condition list according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of storing a to-be-received subscription to a subscription condition list according to an embodiment of the present invention;
FIG. 4 is a schematic flow chart of a structure for constructing and updating a partial order R tree and an index according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of a partial order R tree and an index structure according to an embodiment of the present invention;
FIG. 6 is a schematic diagram of an initially constructed partial order R tree and index structure according to an embodiment of the present invention;
FIG. 7 is a diagram illustrating a partial order R-tree and index structure for providing updates according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of a device for dynamically publishing a subscription according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 exemplarily shows a flowchart of a method for dynamically publishing a subscription according to an embodiment of the present invention, as shown in fig. 1, the method mainly includes the following steps:
step 101, when a subscription to be received is monitored, acquiring a first condition included in the subscription to be received, and matching the first condition with a second condition corresponding to a plurality of Mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0;
step 102, if at least one different content exists between the first condition and any one of the second conditions, sequentially storing a plurality of subscriptions to be received into a subscription condition list according to a timestamp sequence corresponding to the plurality of subscriptions to be received, and naming the plurality of subscriptions to be received as an nth subscription according to the sequence of the subscription condition list, where N is a positive integer greater than M;
and 103, classifying every Nth subscription according to the partial order relation corresponding to the stored state and the content of the first condition included in every Nth subscription stored in the subscription condition list, and updating the partial order relation including the partial order R tree and the index structure according to the classification result.
It should be noted that, in the method for publishing a subscription according to the embodiment of the present invention, an execution main body is an event broker, and specifically, the condition matching between the subscription end and the publishing end is performed through the event broker and the publishing end is notified to execute a publishing task.
Before step 101, the event broker monitors a new subscription, i.e. before it monitors that a subscription is to be received, it needs to confirm the initial state of the subscription condition list. Specifically, if the structure of the subscription condition list is consistent with the basic structure of the subscription condition list provided in fig. 2, it may be determined that the subscription condition list is empty. It should be noted that, in the subscription condition list provided in the embodiment of the present invention, the list capacity may be dynamically changed according to the number of subscriptions.
Further, when the subscription condition list is empty, if the event broker monitors a plurality of subscriptions to be received, and the subscription condition list is empty, the plurality of subscriptions to be received may be sequentially stored in the subscription condition list according to the time stamp sequence corresponding to the plurality of subscriptions to be received, and the plurality of subscriptions to be received stored in the subscription condition list is named as an nth subscription.
In the embodiment of the present invention, since the subscriptions to be received in the stored-value subscription condition list need to be classified according to a partial order structure, in order to distinguish the subscriptions to be received in the stored-value subscription condition list from the subscriptions to be received that have been classified according to the partial order structure, the subscriptions to be received that are in the stored-value subscription condition list but are not temporarily classified according to the partial order structure are sequentially named as nth subscriptions, the subscriptions to be received that have been classified according to the partial order structure in the subscription condition list are sequentially named as mth subscriptions, M is a positive integer greater than zero, and N is a positive integer greater than M.
Further, when the subscription condition list is empty, the currently corresponding partial order state is an empty state, and the multiple subscriptions to be received need to be classified according to the content of the first condition and the partial order relationship included in the multiple subscriptions to be received, which are stored in the subscription condition list.
Before introducing the classification of the multiple subscriptions to be received, first introducing a first condition included in the subscriptions to be received, in an embodiment of the present invention, the first condition includes at least any one of a string condition, a numeric range condition, and an integer condition, for example, the first condition may include only the string condition, may include only the numeric range condition, may include only the integer condition, may include the string condition and the numeric range condition, may include the string condition and the integer condition, may include the numeric range condition and the integer condition, and may also include the string condition, the numeric range condition, and the integer condition.
The classifying of the plurality of subscriptions to be received specifically includes the following cases:
and adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
Tree information corresponding to an nth subscription that includes a numerical range condition and satisfies { Ω | a ≠ B ═ Ω, Ω ≠ a, Ω ≠ B } is added to the root directory of the partial order R tree.
Adding tree information corresponding to an Mth subscription which comprises an integer condition and meets { omega | A ≠ B ═ omega, omega ≠ A, omega ≠ B } into a root directory of the partial order R tree.
Further, writing the classification results of the plurality of places to be received and subscribed into the partial order state corresponding to the subscription condition list, and updating the partial order state currently corresponding to the subscription condition list to be the stored state; and updating the names of the plurality of subscriptions to be received stored in the subscription condition list from the Nth subscription to the Mth subscription.
It should be noted that, in the embodiment of the present invention, a Buffer Container (Container Buffer) is further included, and specifically, when the event agent successively monitors a plurality of subscriptions to be received, all subscriptions to be received monitored in this time period are stored in the Buffer Container. Because the subscription condition list is empty initially, the buffer container will forward the multiple subscriptions to be received to the subscription condition list in sequence according to the time stamp order of the multiple subscriptions to be received.
In step 101, when the event agent monitors a plurality of subscriptions to be received, storing the plurality of subscriptions to be received in the buffer container, and when the event agent determines that the subscription condition list is not empty, it needs to check whether a next subscription to be received, which is to be forwarded to the subscription condition list, in the buffer container is stored in the subscription condition list, and if the subscription condition list has the subscription to be received, the subscription condition list refuses to receive the subscription to be received, and at the same time, the buffer container deletes the subscription to be received; and if the subscription condition list does not have the subscription to be received, the buffer container sends the subscription to be received to the subscription condition list for unloading.
As shown in fig. 3, when the event agent successively hears a plurality of subscriptions to be received, all the subscriptions to be received heared during this time period are saved in the buffer container. The buffer container can sequentially forward the subscriptions to be received to the subscription condition list according to the time stamp sequence of the subscriptions to be received because the subscription condition list is empty initially; and when the subscription condition list is not empty, checking whether a subscription to be received, which is forwarded to the subscription condition list next in the buffer container, is already stored in the subscription condition list, if the subscription condition list does not have the subscription to be received, transferring the subscription to be received in the buffer container to the subscription condition list, and if the subscription to be received exists in the subscription condition list, rejecting to receive the subscription to be received by the subscription condition list, and deleting the subscription to be received by the buffer container.
It should be noted that, in the embodiment of the present invention, by matching a first condition included in a subscription to be received with a second condition in a subscription condition list, if at least one different content exists between the first condition and any one of the second conditions, it may be determined that a subscription to be received corresponding to the first condition does not exist in the subscription condition list.
Specifically, the following cases are included:
1) if the string condition included in the first condition is inconsistent with the string condition included in the second condition, determining that no subscription to be received corresponding to the first condition exists in the subscription condition list;
2) if the numerical range condition included in the first condition is inconsistent with the numerical range condition included in the second condition, it may be determined that no subscription to be received corresponding to the first condition exists in the subscription condition list;
3) if the integer condition included in the first condition is inconsistent with the integer condition included in the second condition, determining that the subscription to be received corresponding to the first condition does not exist in the subscription condition list;
4) if the string condition included in the first condition is inconsistent with the string condition included in the second condition, and the numerical range condition included in the first condition is inconsistent with the numerical range condition included in the second condition, it may be determined that no subscription to be received corresponding to the first condition exists in the subscription condition list;
5) if the string condition included in the first condition is inconsistent with the string condition included in the second condition, and the integer condition included in the first condition is inconsistent with the integer condition included in the second condition, it may be determined that the subscription to be received corresponding to the first condition does not exist in the subscription condition list;
6) if the value range condition included in the first condition is inconsistent with the value range condition included in the second condition, and the integer condition included in the first condition is inconsistent with the integer condition included in the second condition, it may be determined that the subscription to be received corresponding to the first condition does not exist in the subscription condition list;
7) if the string condition included in the first condition is inconsistent with the string condition included in the second condition, the numerical range condition included in the first condition is inconsistent with the numerical range condition included in the second condition, and the integer condition included in the first condition is inconsistent with the integer condition included in the second condition, it may be determined that the subscription condition list does not have the subscription to be received corresponding to the first condition.
In practical applications, the content of the second condition included in the mth subscription stored in the subscription condition list is consistent with the content of the first condition included in the subscription to be received, the condition included in the mth subscription is referred to as the second condition, the condition included in the subscription to be received is referred to as the first condition, and only a distinguishing term is adopted for distinguishing when the subscription to be received is introduced to match the subscription condition list.
In step 102, when it is determined that at least one different content exists between the first condition and any one of the second conditions, it may be determined that there is no to-be-received subscription corresponding to the first condition in the subscription condition list, and then the to-be-received subscription corresponding to the first condition may be stored in the subscription condition list.
Further, the subscriptions to be received corresponding to the first condition are stored in the subscription condition list according to the order of the subscription condition list, and the subscriptions to be received corresponding to the first condition are named as nth subscriptions according to the order of the subscription condition list. It should be noted that when the event broker monitors a plurality of subscriptions to be received, it needs to match first conditions included in the plurality of subscriptions to be received with second conditions included in the subscription condition list, and if the matching of the plurality of first conditions and the second conditions is unsuccessful in the plurality of subscriptions to be received monitored by the event broker, the plurality of subscriptions to be received may be sequentially stored in the subscription condition list, and meanwhile, the subscriptions to be received corresponding to the plurality of first conditions are named as nth subscriptions according to the order of the subscription condition list.
In practical application, in the dynamic updating function of the subscription condition list, the dynamic updating of the storage structure can be realized by constructing the subscription condition of the partial order R tree storage partial order structure, and the matching efficiency of subscription is improved, so that the dynamic interaction of the virtual prototype resources of the high altitude platform is realized.
As shown in fig. 4, before updating the partial order R tree and the index structure, the storage states of the two, i.e. the "subscription already present" and the "empty state" need to be checked. The "empty state", i.e. no content in the structure, indicates that the initial state of the event broker or the subscription is invalid, and therefore, all subscriptions in the subscription condition list need to be classified, and corresponding modeling is performed according to the category of the partial order. If the order is already stored, classifying the subscriptions updated by the subscription condition list on the basis of the existing subscriptions of the partial order R tree, forwarding the non-partial order subscriptions and the equivalent subscriptions to an index structure, and using the subscriptions with the partial order for updating the partial order R tree.
The following describes in detail the process of updating the partial order R tree and the index structure when the currently corresponding partial order state of the subscription condition list is the stored state in step 103.
Specifically, when the partial order state currently corresponding to the subscription condition list is the stored state, if a plurality of nth subscriptions are stored in the subscription condition list, each nth subscription needs to be classified according to the partial order relationship corresponding to the stored state and the content of the first condition included in each nth subscription stored in the subscription condition list.
It should be noted that, at this time, the partial order state currently corresponding to the subscription condition list does not already exist, that is, a plurality of nth subscriptions included in the subscription condition list. Therefore, the one-to-one comparison can be performed according to the partial order relationship between the content of the first condition included in each nth subscription and the stored state, which specifically includes the following cases:
1) and adding index information corresponding to the Nth subscription comprising the integer condition into an index structure.
2) And adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
3) Comparing the Nth subscription including the numerical range condition with the partial order R tree, and determining whether the Nth subscription including the numerical range condition needs to be added into the partial order R tree according to a comparison result:
3-1) if the Nth subscription includes the first condition, the numerical range condition of the first condition overlaps with a plurality of Mth subscriptions already existing in the partial order R tree, adding the index information corresponding to the Nth subscription into the index structure.
3-2) the Nth subscription comprises a first condition, the numerical range condition of the first condition is not overlapped with a plurality of Mth subscriptions already existing in the partial order R tree, and the tree information corresponding to the Nth subscription is added into the root directory of the partial order R tree.
3-3) in the first condition included in the Nth subscription, the numerical range condition is completely covered by any Mth subscription existing in the partial order R tree, and the tree information corresponding to the Nth subscription is added to the directory of the Mth subscription completely covering the Nth subscription.
The following describes the updating process of the partial order R tree and the index structure by taking fig. 5 as an example, as shown in fig. 5, suber1 and suber2 are the M-th subscriptions that exist in the subscription condition list, and suber3 to suber6 are the 4N-th subscriptions that have just been stored in the subscription condition list. At this time, the partial order state corresponding to the subscription condition list is the stored state, wherein the partial order R tree includes two root nodes R1 and R2, which are partial order conditions in suber1 and suber 2. After the subscription condition list stores a plurality of nth subscriptions, the content of the first condition included in each nth subscription may be compared with the partial order relationship corresponding to the stored state one by one, and the partial order R tree and the index structure included in the partial order state are updated according to the comparison result. In fig. 5, the conditions that satisfy the partial order in the suber3 and the suber5 are stored in the corresponding nodes according to the partial order relationship of R1 and R2, and the conditions that do not satisfy the partial order are forwarded to the index structure for storage. In practical application, in order to ensure that the partial order R tree can fully utilize the partial order relationship to store the subscription condition, modification needs to be performed on the basis of the insertion and deletion operations of the partial order R tree, and if the subscription condition of a larger area is overlapped with the existing partial order condition, the smaller overlapped area is deleted and forwarded to the index for storage.
It should be noted that, the above-mentioned index information corresponding to the nth subscription and the tree information corresponding to the nth subscription may correspond to the numbers of the multiple mth subscriptions included in the subscription condition list, and the tree information may also correspond to the numbers of the multiple mth subscriptions included in the subscription condition list; for example, the index information in fig. 5 is v1, v2 and v3, where v1 corresponds to suber1, v2 corresponds to suber2, and v3 corresponds to suber 3; the tree information in fig. 5 is R1, R2, R3 and R5, where R1 corresponds to suber1, R2 corresponds to suber2, R3 corresponds to suber3, and R5 corresponds to suber 5.
In the embodiment of the present invention, specific forms of the index information and the tree information corresponding to the nth subscription are not limited, and the index information and the tree information only need to maintain a unique corresponding relationship with each mth subscription in the subscription condition list.
After updating the partial order R tree and the index structure, subscription matching may be performed, specifically, when the event agent receives a request event, a received event may be searched for in a partial order relationship including the partial order R tree and the index structure, that is, a numerical range condition included in the received event is matched with the partial order R tree in the partial order relationship, and then a character string condition included in the received event is matched with the index structure in the partial order relationship; finally, taking an intersection from second conditions included in a plurality of Mth subscriptions obtained by the previous matching, and if the intersection is empty, determining that the received event matching fails; if the intersection exists, it can be determined that the received event meets the subscription condition, and the received event is issued to the mth subscription corresponding to the intersection.
It should be noted that, when the value range condition included in the received event is matched with the partial order R tree in the partial order relationship, the value range condition is only used as an example for description, and it is not limited to select the value range condition for matching. In practical application, if the content included in the received event is an integer condition, the integer condition included in the event can be matched with a partial order R tree in a partial order relation; if the content included in the received event is an integer condition and a numerical range condition, matching the integer condition and the numerical range condition included in the event with a partial order R tree in a partial order relationship; if the content included in the received event is a numerical range condition, the numerical range condition included in the event can be matched with the partial order R tree in the partial order relationship.
In order to receive the method for publishing the subscription provided by the embodiment of the present invention in more detail, the method for publishing the subscription is described below with reference to fig. 6 and 7.
1) When the event broker is initialized, a plurality of nth subscriptions shown in table 1 exist in the subscription condition list, and the partial order state corresponding to the subscription condition list at present is an empty state, that is, no subscription exists in the partial order R tree and the index structure included in the partial order relationship. In the 3 nth subscriptions, the string conditions c, d, and e are equivalent conditions, and may be divided into non-partial order classes, and c, d, and e are added to the index structure, and at the same time, the index information corresponding to the nth subscription corresponding to each string condition is added to the index structure, for example, the nth subscription corresponding to the string condition c is Suber1, and the index information corresponding to Suber1 is v1, so as shown in fig. 6, v1 is added to the index structure corresponding to c.
Further, in the 3 nth subscriptions, the value range condition included by the Suber3 and the value range conditions included by the Suber1 and the Suber2 have no partial overlapping relationship, that is, the conditions { Ω | a ≠ B ═ Ω, Ω ≠ a, Ω ≠ B } are satisfied, so that there is no Ω region between the Suber3 and the Suber1 and the Suber 2; furthermore, Suber1 and Suber2 also have no partial overlapping relationship because
Figure BDA0003626703450000152
I.e., Suber2 contains all of Suber1, there is no omega region between Suber1 and Suber 2. As shown in FIG. 6, due to Suber1,The tree information corresponding to Suber2 and Suber3 is R1, R2 and R3 respectively, so that the trees can be organized into partial order R trees according to the partial order relations of R1, R2 and R3, R2 and R3 are added into the root directory of the partial order R trees, and R1 is added under the directory of R2 because R1 is completely protected by R2.
And after the classification results of the 3 Nth subscriptions are written into the partial order state, the 3 subscriptions to be received stored in the subscription condition list are named as Mth subscriptions.
Note that, in the condition { Ω | a ≠ B ═ Ω, Ω ≠ a, Ω ≠ B } denotes a partially overlapping region, where a and B respectively denote the range of the span subscription condition, such as Suber1 in table 1, and condition 1 and condition 2 together constitute a rectangle on one plane, see R1 in fig. 5; suber3 in Table 1, whose interval conditions constitute the rectangle R3 in FIG. 5; if A represents R1 and B represents R3, then the intersection of A and B is R3, as described by the formula, and there is no region Ω.
Table 1 subscription condition list store 3 nth subscriptions
Figure BDA0003626703450000151
Figure BDA0003626703450000161
Table 2 list of subscription conditions to receive 5 nth subscriptions
Figure BDA0003626703450000162
2) The subscription condition list receives the 5 nth subscription as shown in table 2, and introduces the update process of the partial order R tree and the index structure as follows:
when the subscription condition list receives the 5 nth subscriptions as shown in table 2, the partial order state currently corresponding to the subscription condition list is the stored state, and the 5 nth subscriptions are classified according to the partial order relationship between the partial order R tree and the subscription conditions of the index structure. As shown in fig. 7, since the partial order classes R4 and R6 divided by suber4 and suber6 overlap with subscriptions already existing in the tree, and their area size is not enough to modify the root node of the partial order R tree, R4 and R6 are subdivided into non-partial order classes and organized into index structures, as shown in a and b in fig. 7. Since the region of R5 is completely covered by R3, R7 completely covers R8, and R7 is not overlapped with the existing region, and the partial order relationship is satisfied, R5, R7 and R8 are partial order classes, and are stored in a tree structure, the pointer of R3 points to R5, R7 points to R8, and R7 is stored in a Po-R tree as a root node. And finally, dividing all equivalent character strings into non-partial order classes and storing the non-partial order classes into an index structure.
In fig. 7, R4 and R1, R2, R6 and R3, and R5 all have an Ω region. The Ω region results in low matching efficiency, and when the partial R tree has the Ω region, the structure of the tree must be modified to ensure that the R tree does not have the Ω region.
3) When the conditions match, the event broker receives the request event, for example, the received event is a ═ { a ═ 5, b ═ 15, e ═ Copy ", and f ═ Require". First, the R3 and R5 regions can be quickly located by partial order R trees. Then, searching equivalent character strings in the index structure, quickly positioning to e and f due to the maintenance of the address by a buffer area, finding out a block corresponding to the disk through the address, and obtaining a matching result after content comparison: e → v5 and f → v 5. Finally, { R3, e → v5, f → v5} and { R5, e → v5, f → v5} intersect with the sub 3 and sub 5, respectively, resulting in { sub 5 }. Since only the publishing requirements of the sub 5 are met, the received event is published to the subscription.
Based on the same inventive concept, embodiments of the present invention provide a device for dynamically publishing subscriptions, and since the principle of the device for solving the technical problem is similar to that of a method for dynamically publishing subscriptions, the implementation of the device may refer to the implementation of the method, and repeated details are not described again.
As shown in fig. 8, the apparatus mainly includes a matching unit 801, a storage unit 802, and an updating unit 803.
A matching unit 801, configured to, when a to-be-received subscription is monitored, obtain a first condition included in the to-be-received subscription, and match the first condition with a second condition corresponding to a plurality of mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0;
a storage unit 802, configured to, if at least one different content exists between the first condition and any one of the second conditions, sequentially store the multiple subscriptions to be received in a subscription condition list according to a timestamp sequence corresponding to the multiple subscriptions to be received, and name the multiple subscriptions to be received as an nth subscription according to the sequence of the subscription condition list, where N is a positive integer greater than M;
the updating unit 803 is configured to classify each nth subscription according to the partial order relationship corresponding to the stored state and the content of the first condition included in each nth subscription stored in the subscription condition list, and update the partial order relationship including the partial order R tree and the index structure according to the classification result.
Preferably, the first condition includes at least any one of a character string condition, a numerical range condition, and an integer condition;
the storage unit 802 is specifically configured to:
the first condition comprises a string condition inconsistent with the string condition comprised by the second condition; and/or
The first condition comprises a numerical range condition that is inconsistent with a numerical range condition comprised by the second condition; and/or
The first condition includes an integer condition inconsistent with the second condition.
Preferably, the matching unit 801 is further configured to:
if the subscription condition list is empty, sequentially storing the subscriptions to be received into the subscription condition list according to the time stamp sequence corresponding to the subscriptions to be received, and naming the subscriptions to be received stored into the subscription condition list as the Mth subscription;
if the subscription condition list is empty, sequentially storing the subscriptions to be received into the subscription condition list according to the time stamp sequence corresponding to the subscriptions to be received, and naming the subscriptions to be received stored into the subscription condition list as an Nth subscription;
the partial order state corresponding to the subscription condition list is a null state, and the multiple subscriptions to be received are classified according to the content of the first condition and the partial order relation included in the multiple subscriptions to be received: adding index information corresponding to the Nth subscription including the character string condition into an index structure; and/or adding tree information corresponding to an Nth subscription which comprises a numerical range condition and satisfies { Ω | A ≠ B ═ Ω, Ω ≠ A, Ω ≠ B } into a root directory of the partial order R tree; and/or adding tree information corresponding to the Mth subscription which comprises an integer condition and meets { omega | A ≠ B ═ omega, omega ≠ A, omega ≠ B } into a root directory of the partial order R tree;
writing the classification result into a partial order state, storing the classification result into a plurality of subscriptions to be received in the subscription condition list, namely the Mth subscription, and updating the partial order state currently corresponding to the subscription condition list into a stored state.
Preferably, the updating unit 803 is specifically configured to:
comparing the content of the first condition included in the Nth subscription with the partial order relation corresponding to the stored state:
if the first condition included in the Nth subscription and the numerical range condition of the first condition overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding index information corresponding to the Nth subscription to an index structure; or if the numerical range condition of the first condition included in the Nth subscription does not overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding tree information corresponding to the Nth subscription to a root directory of the partial order R tree; or if the numerical range condition of the Nth subscription is completely covered by any Mth subscription existing in the partial order R tree in the first condition included in the Nth subscription, adding tree information corresponding to the Nth subscription to a directory of the Mth subscription which completely covers the Nth subscription;
adding index information corresponding to the Nth subscription including the integer condition into an index structure;
and adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
Preferably, the updating unit 803 is further configured to:
when a request event is received, searching the event in a partial order relation comprising a partial order R tree and an index structure, and if the request condition included by the event is completely met, issuing the event.
It should be understood that the above apparatus for dynamically publishing a subscription includes only units that are logically divided according to functions implemented by the device apparatus, and in practical applications, the above units may be stacked or split. The functions implemented by the dynamic subscription publishing device provided in this embodiment correspond to the dynamic subscription publishing method provided in the above embodiment one to one, and for a more detailed processing flow implemented by the device, the detailed description is already described in the above method embodiment, and the detailed description is not repeated here.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (10)

1. A method for dynamically publishing subscriptions, comprising:
when a subscription to be received is monitored, acquiring a first condition included in the subscription to be received, and matching the first condition with a second condition corresponding to a plurality of Mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0;
if the first condition and any one of the second conditions have at least one different content, storing the subscriptions to be received corresponding to the first condition into a subscription condition list, and naming a plurality of the subscriptions to be received as an Nth subscription according to the order of the subscription condition list, wherein N is a positive integer greater than M;
and classifying every Nth subscription according to the partial order relation corresponding to the stored state and the content of the first condition included by every Nth subscription stored in the subscription condition list, and updating the partial order relation including a partial order R tree and an index structure according to the classification result.
2. The method of publishing subscriptions as recited in claim 1, wherein the first condition includes at least any one of a string condition, a numeric range condition, and an integer condition;
if at least one different content exists between the first condition and any one of the second conditions, the method specifically includes:
the first condition comprises a string condition that is inconsistent with a string condition comprised by the second condition; and/or
The first condition comprises a numerical range condition that is inconsistent with a numerical range condition comprised by the second condition; and/or
The first condition includes an integer condition that is inconsistent with the integer condition included in the second condition.
3. The method of publishing subscriptions as recited in claim 1, wherein prior to matching the first condition to a second condition corresponding to a plurality of mth subscriptions stored in a list of subscription conditions, further comprising:
if the subscription condition list is empty, sequentially storing the subscriptions to be received into the subscription condition list according to the time stamp sequence corresponding to the subscriptions to be received, and naming the subscriptions to be received stored into the subscription condition list as an Nth subscription;
the partial order state corresponding to the subscription condition list is a null state, and the multiple subscriptions to be received are classified according to the content of the first condition and the partial order relation included in the multiple subscriptions to be received: adding index information corresponding to the Nth subscription including the character string condition into an index structure; and/or adding tree information corresponding to an Nth subscription which comprises a numerical range condition and satisfies { Ω | A ≠ B ═ Ω, Ω ≠ A, Ω ≠ B } into a root directory of the partial order R tree; and/or adding tree information corresponding to the Mth subscription which comprises an integer condition and meets { omega | A ≠ B ═ omega, omega ≠ A, omega ≠ B } into a root directory of the partial order R tree;
writing the classification result into a partial order state, storing the classification result into a plurality of subscriptions to be received in the subscription condition list, namely the Mth subscription, and updating the partial order state currently corresponding to the subscription condition list into a stored state.
4. The method for publishing subscriptions according to claim 1, wherein the classifying each nth subscription according to the partial order relationship corresponding to the stored state and the content of the first condition included in each nth subscription stored in the subscription condition list specifically includes:
comparing the content of the first condition included in the Nth subscription with the partial order relation corresponding to the stored state:
if the first condition included in the Nth subscription and the numerical range condition of the first condition overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding index information corresponding to the Nth subscription to an index structure; or if the numerical range condition of the first condition included in the Nth subscription does not overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding tree information corresponding to the Nth subscription to a root directory of the partial order R tree; or if the numerical range condition of the Nth subscription is completely covered by any Mth subscription existing in the partial order R tree in the first condition included in the Nth subscription, adding tree information corresponding to the Nth subscription to a directory of the Mth subscription which completely covers the Nth subscription;
adding index information corresponding to the Nth subscription including the integer condition into an index structure;
and adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
5. The method for publishing a subscription as recited in claim 1, wherein after updating the partial ordering relationship including the partial ordering R tree and the index structure according to the classification result, the method further comprises:
when a request event is received, searching the event in a partial order relation comprising a partial order R tree and an index structure, and if the request condition included by the event is completely met, issuing the event.
6. An apparatus for dynamically publishing subscriptions, comprising:
the device comprises a matching unit, a receiving unit and a processing unit, wherein the matching unit is used for acquiring a first condition included in a subscription to be received when the subscription to be received is monitored, and matching the first condition with a second condition corresponding to a plurality of Mth subscriptions stored in a subscription condition list; m is a positive integer greater than 0;
a storage unit, configured to store the to-be-received subscriptions corresponding to the first condition into a subscription condition list if at least one different content exists between the first condition and any one of the second conditions, and name a plurality of the to-be-received subscriptions as an nth subscription according to an order of the subscription condition list, where N is a positive integer greater than M;
and the updating unit is used for classifying each Nth subscription according to the partial order relationship corresponding to the stored state and the content of the first condition included by each Nth subscription stored in the subscription condition list, and updating the partial order relationship including the partial order R tree and the index structure according to the classification result.
7. The apparatus for publishing subscriptions as recited in claim 6, wherein the first condition includes at least any one of a string condition, a numeric range condition, and an integer condition;
the storage unit is specifically configured to:
the first condition comprises a string condition that is inconsistent with a string condition comprised by the second condition; and/or
The first condition comprises a numerical range condition that is inconsistent with a numerical range condition comprised by the second condition; and/or
The first condition includes an integer condition inconsistent with the second condition.
8. The apparatus for publishing subscriptions as recited in claim 6, wherein the matching unit is further to:
if the subscription condition list is empty, sequentially storing the subscriptions to be received into the subscription condition list according to the time stamp sequence corresponding to the subscriptions to be received, and naming the subscriptions to be received stored into the subscription condition list as an Nth subscription;
the partial order state corresponding to the subscription condition list is a null state, and the multiple subscriptions to be received are classified according to the content of the first condition and the partial order relation included in the multiple subscriptions to be received: adding index information corresponding to the Nth subscription including the character string condition into an index structure; and/or adding tree information corresponding to an Nth subscription which comprises a numerical range condition and satisfies { Ω | A ≠ B ═ Ω, Ω ≠ A, Ω ≠ B } into a root directory of the partial order R tree; and/or adding tree information corresponding to the Mth subscription which comprises an integer condition and meets { omega | A ≠ B ═ omega, omega ≠ A, omega ≠ B } into a root directory of the partial order R tree;
writing the classification result into a partial order state, storing the classification result into a plurality of subscriptions to be received in the subscription condition list, namely the Mth subscription, and updating the partial order state currently corresponding to the subscription condition list into a stored state.
9. The apparatus for publishing subscriptions according to claim 6, wherein the updating unit is specifically configured to:
comparing the content of the first condition included in the Nth subscription with the partial order relation corresponding to the stored state:
if the first condition included in the Nth subscription and the numerical range condition of the first condition overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding index information corresponding to the Nth subscription to an index structure; or if the numerical range condition of the first condition included in the Nth subscription does not overlap with a plurality of Mth subscriptions already existing in the partial order R tree, adding tree information corresponding to the Nth subscription to a root directory of the partial order R tree; or if the numerical range condition of the Nth subscription is completely covered by any Mth subscription existing in the partial order R tree in the first condition included in the Nth subscription, adding tree information corresponding to the Nth subscription to a directory of the Mth subscription which completely covers the Nth subscription;
adding index information corresponding to the Nth subscription including the integer condition into an index structure;
and adding index information corresponding to the Nth subscription comprising the character string condition into an index structure.
10. The apparatus for publishing subscriptions as recited in claim 6, wherein the updating unit is further to:
when a request event is received, searching the event in a partial order relation comprising a partial order R tree and an index structure, and if the request condition included by the event is completely met, issuing the event.
CN202210479174.5A 2022-05-05 2022-05-05 Dynamic publishing and subscribing method and device Pending CN114911808A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210479174.5A CN114911808A (en) 2022-05-05 2022-05-05 Dynamic publishing and subscribing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210479174.5A CN114911808A (en) 2022-05-05 2022-05-05 Dynamic publishing and subscribing method and device

Publications (1)

Publication Number Publication Date
CN114911808A true CN114911808A (en) 2022-08-16

Family

ID=82767129

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210479174.5A Pending CN114911808A (en) 2022-05-05 2022-05-05 Dynamic publishing and subscribing method and device

Country Status (1)

Country Link
CN (1) CN114911808A (en)

Similar Documents

Publication Publication Date Title
US6463439B1 (en) System for accessing database tables mapped into memory for high performance data retrieval
US5488717A (en) MTree data structure for storage, indexing and retrieval of information
JP3771271B2 (en) Apparatus and method for storing and retrieving ordered collections of keys in a compact zero complete tree
US9495398B2 (en) Index for hybrid database
US6564212B2 (en) Method of processing queries in a database system, and database system and software product for implementing such method
US7246124B2 (en) Methods of encoding and combining integer lists in a computer system, and computer software product for implementing such methods
US20020095421A1 (en) Methods of organizing data and processing queries in a database system, and database system and software product for implementing such methods
CA2388515C (en) System for managing rdbm fragmentations
EP1217540A1 (en) Methods of organizing data and processing queries in a database system, and database system and software product for implementing such method
CN106980665B (en) Data dictionary implementation method and device and data dictionary management system
US20040015486A1 (en) System and method for storing and retrieving data
KR20000047630A (en) Systems, methods and computer program products for ordering objects corresponding to database operations that are performed on a relational database upon completion of a transaction by an object-oriented transaction system
JPH0682331B2 (en) Transitive closure generation method, database compression method, database generation system, database store method and information provision system
CN112513836B (en) Structured record retrieval method, computing system and computer readable medium
Yang et al. Pase: Postgresql ultra-high-dimensional approximate nearest neighbor search extension
EP3767486B1 (en) Multi-record index structure for key-value stores
CN113721862B (en) Data processing method and device
WO2018045049A1 (en) Method and system for implementing distributed lobs
US7752181B2 (en) System and method for performing a data uniqueness check in a sorted data set
CN111522820A (en) Data storage structure, storage retrieval method, system, device and storage medium
US10528538B2 (en) Leveraging SQL with user defined aggregation to efficiently merge inverted indexes stored as tables
CN114911808A (en) Dynamic publishing and subscribing method and device
US20020062419A1 (en) Method and system for persistently storing objects in an object oriented environment
CN111984691B (en) Object metadata retrieval and enumeration method and device in distributed storage system
CN112818010B (en) Database query method and device

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