Method and system arrangement for efficiently querying a database system

EP4619876A1Pending Publication Date: 2025-09-24PATENTPOOL TARGET GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
EP2023776390
Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-11-17
Filing Date
2023-09-26
Publication Date
2025-09-24

AI Technical Summary

Technical Problem

Existing database querying systems face inefficiencies due to repeated, incomplete searches that consume user effort and system resources, often returning irrelevant results as users wait for specific data sets to become available, leading to reduced user satisfaction and system throughput.

Method used

A method that establishes a communication channel between a query unit and a monitoring unit connected to the database system, allowing for structured queries with multiple configuration data to be stored persistently and iteratively checked, ensuring that results are returned only when all specified criteria are met, thereby reducing unnecessary queries and improving system throughput.

Benefits of technology

This approach conserves system resources by minimizing unnecessary database queries and ensures that users receive accurate results only when all specified data is available, enhancing user satisfaction and system efficiency by proactive data retrieval.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 1.1
    Figure 1.1
Patent Text Reader

Abstract

The present invention is directed to a method for controlling and efficiently querying a database system, which means that various requests for a particular data record need not be started, but rather configuration data, which are iteratively checked, can be stored. The invention therefore means that a complete request does not always have to be repeatedly made with all parameters, but rather individual configuration data items may already be realized in a data record and a response is transmitted as soon as all specified configuration data are available. This increases the system throughput since not all search criteria always have to be checked and the request can also be stored in a monitor unit which proactively searches a database system and provides a result as soon as all configuration data have been found. A database system is therefore queried in a particularly efficient manner and the system throughput is improved. The invention is also directed to an accordingly configured system arrangement comprising a database system and is also directed to a computer program product containing control instructions which perform the proposed method and operate the proposed system arrangement. A computer-readable storage medium is also proposed.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Method and system arrangement for efficiently querying a database system

[0002] The present invention is directed to a method for controlling and efficiently querying a database system, which makes it possible not to initiate various queries for a specific data set, but rather to store configuration data that is checked iteratively. Thus, according to the invention, it is possible not to always submit a complete query with all parameters repeatedly, but rather to already implement individual configuration data in a data set, and a response is transmitted as soon as all specified configuration data is available. This increases system throughput because, on the one hand, not all search criteria have to be checked each time, and, on the other hand, the query can be stored in a monitoring unit, which proactively searches a database system and delivers a result as soon as all configuration data has been found.Thus, a database system is queried particularly efficiently, and system throughput is improved. The invention is further directed to a correspondingly configured system arrangement comprising a database system and is further directed to a computer program product with control commands that execute the proposed method or operate the proposed system arrangement. Furthermore, a computer-readable storage medium is proposed.

[0003] EP 1877932 B1 shows a method for aggregating and analyzing decentralized multimedia data, wherein one or more linkable search terms are stored in a data storage.

[0004] EP 2538347 B1 shows a data processing system for dynamically recording weighted relationships between data representing information in at least one database.

[0005] Database monitoring programs are known from the state of the art. These programs check the functionality of a database and then detect failures. Such programs are also known as watchdogs. For this purpose, system parameters are regularly read and response times, for example, are measured. If the database or database management system is not functioning properly, either an error message is sent to the administrator or the system is restarted. Backup systems are also known that take over in the event of a primary database system failure.

[0006] It is known from the prior art that a user specifies several parameters in a search query, and this search query is then transmitted to a database management system. The existing records in the database management system are then evaluated with respect to the search criteria, and a result is returned. In general, the returned result does not have to completely match the search query; rather, it is known to calculate a match between the existing records and the search query and then return a list prioritized so that the result with the greatest match is placed at the top.

[0007] If a user searches for a specific data record which does not yet exist, a result is typically returned anyway and weighted accordingly. However, this does not correspond to the user's wishes if they want to see exactly the specified data record. The return value is often irrelevant to the user, as they often want to receive exactly one specific data record and are not satisfied with a certain match. Thus, in this scenario, the user's expectations are not met and the user receives unusable search results. Furthermore, they must specify their query again at a later time. The user is therefore expected to believe that the data record they are looking for will be available at a later time, and if this is not the case again, the user must iteratively submit a query at a later time.However, this approach reduces acceptance in the deployed system and also reduces system throughput. This is due, among other things, to the fact that the search query must be completely re-specified and submitted each time. A completely new database query is then executed, which in turn consumes system resources. The effort increases with each new search query, thus reducing system throughput.

[0008] The problem in the state of the art is that due to insufficient return parameters, a large number of requests are made, each of which causes an effort for the user and also

[0009] System resources are expensive. This, in turn, can only be achieved by increasing system capacity, which in turn requires technical effort.

[0010] Furthermore, it is known from the prior art to cache search queries and save search results simultaneously. Thus, if a first user submits a query, it is calculated and the result is stored persistently. If a second user submits the same query at a later time, no actual database query is performed; instead, the previously saved result is returned. This return does not necessarily take the current data into account; rather, past results are simply presented again.

[0011] There is a need in the state of the art to create a system that enables the provision of up-to-date database queries that meet all search query specifications and eliminates the need for repeated queries from the user. Furthermore, there is a need to create a method or system that proactively queries a database and only returns a corresponding response when a correct search result is found.

[0012] Thus, the objective technical object of the present invention is to provide a method that enables efficient querying of a database or database system. To this end, system resources are to be conserved and unnecessary database queries are to be avoided. Furthermore, the present invention aims to provide a correspondingly configured system arrangement, a computer program product, and a storage medium.

[0013] The problem is solved by the features of patent claim 1. Further advantageous embodiments are specified in the subclaims.

[0014] Accordingly, a method for controlling and efficiently querying a database system with improved system throughput is proposed, comprising setting up a communication channel between a query unit and a monitoring unit upstream of the database system; structuring a query to the database system by the query unit such that a plurality of configuration data of a data set to be provided but not yet available is specified; persistently storing the structured query in the monitoring unit by means of the set up communication channel by the query unit; iteratively checking the configuration data of the data set to be provided by the monitoring unit.and reading the data record from the database system by the monitoring unit and sending the data record to the query unit via the established communication channel as soon as the data record is available according to all specified configuration data;

[0015] The method is used to efficiently control and query a database system. A database system is a database with functionality that enables access to the data. It is therefore the database itself, including a database management system or a module that has read and write access to the database. Querying is particularly efficient because the query can be submitted once, and then the query is stored persistently. The database system only returns a value if all search criteria are met. Therefore, it is quite possible that the return value is delayed, which is actually a typical case in this case, since the data records are typically not yet available.This means that there is no iterative querying, where the user receives return values ​​that don't fully match their query. Instead, the user must accept that a certain amount of time may pass before the records are available. A timeout can also be specified for this purpose, indicating when, for example, an error message is returned. This is the case if the requested record is not available within the specified time period.

[0016] In a preparatory process step, a communication channel is established between a query unit and a monitoring unit upstream of the database system. The query unit can be a technical device of the user, or it may require no human intervention, and the query unit automatically creates queries. For this purpose, a connection is established between the query unit and a monitoring unit, which in turn has access to the database system. The database system can also be just the database itself, with the monitoring unit assuming the functionality of accessing and / or writing to the database.

[0017] The communication channel can be configured in such a way that a so-called token is created, which the requesting unit uses to transmit requests to the monitoring unit. This allows for the implementation of separate rights allocation and the creation of appropriate security precautions. For example, the communication channel can be specially secured.

[0018] Furthermore, a query to the database system is structured by the query unit in such a way that a plurality of configuration data items is specified. This therefore involves creating a search query, but not just providing a single criterion. Rather, a plurality or multiplicity of configuration data items, i.e. at least three configuration data items, are provided. This specifies a data record that is being requested but is not yet available in the database system or database. If the data record is available or exists, conventional technical teachings can be applied and the specified data record can be returned immediately. The configuration data describes properties of the data record and, in particular, describes which data record is expected by the query unit or user.The data set is to be provided by the database system and transmitted to the query unit via the monitoring unit. The structuring can be done in such a way that the configuration data is structured hierarchically and then queried according to this hierarchy. Configuration data, which is typically also implemented in existing data sets, can be queried first, and more specific configuration data last. This makes it possible to prioritize the configuration data so that the query can be processed in a structured manner. The hierarchy, for example a tree structure, can also have multiple levels, so that the configuration data is structured in such a way that configuration data is checked first at a first configuration level and then at a second.

[0019] In a further process step, the structured request is persistently stored in the monitoring unit via the established communication channel by the request unit. Thus, the request is stored in a persistent data store and not merely in a buffer. This is the case because the requested data set does not yet exist, and thus, it is not possible to return the requested data set in real time. Instead, the request is stored at least until the available data set is available or a timeout occurs.

[0020] Once the structured query is persistently stored in the monitoring unit, it can iteratively check the configuration data in the database system. This checks within the database system to determine whether a data set can be provided that satisfies all configuration requirements. The iterative check can be performed at intervals specified to occur at regular intervals, or it can be performed whenever new data records are added to the database system or existing data records are modified with regard to their configuration data.

[0021] As soon as the data record is available, i.e. there is a data record stored in the database system that contains the specified configuration data, it is read out and returned. The monitoring unit then reads the data record from the database system and sends it to the query unit. For example, there is a data record in the database system that contains two of three pieces of configuration data. A query is then made and the system recognizes that a data record exists that contains almost all of the configuration data. If this data record is then modified so that all three pieces of configuration data are present, it is returned. Furthermore, it is possible that the non-existent data record is created and the system then recognizes that a new data record is available that contains all of the configuration data. This new record is then returned.According to the invention, the user does not submit a new query each time; instead, the query is saved, and if the data record is found after a delay, the query is answered. This means that the query may not be answered until later. The user does not have to search the database each time, but can rely on the method according to the invention to proactively return the desired data record, if it is available.

[0022] According to the invention, it is possible, for example, to search for a data record that was created by a specific person and at a specific location according to stored location information. Furthermore, a time at which the data record should be created is specified. The proposed method checks all configuration data and only transmits a data record if all three criteria are met. The configuration data can, for example, be a person, a group, a concept, an object, a geographical location, a technology, an event, or a point in time. Since the query is structured, dependencies between the configuration data can also be specified. Such a dependency can, in turn, be encoded as a configuration data unit.

[0023] According to one aspect of the present invention, the persistent storage takes place in a decentralized data store. This has the advantage that different database systems can be accessed in a distributed manner, thus enabling load management or optimized load distribution. Furthermore, the monitoring unit can be distributed across multiple units, allowing various data sources in a computer network to determine whether a data set to be provided is available. The database system can generally have different data sources, which can be distributed across a computer network.

[0024] According to a further aspect of the present invention, the query unit is distributed decentrally within a computer network. This has the advantage that collective queries are possible and that the query units can also search the computer network in a decentralized manner. Thus, multiple query units can, in turn, address multiple monitor units, thus enabling efficient searching within the computer network.

[0025] According to a further aspect of the present invention, a relative and / or absolute time period is defined after which the method terminates. This has the advantage that a termination criterion or a timeout can be defined that indicates when the method is terminated. For this purpose, an error message can be returned, and the user or the query unit can be informed that no corresponding data record was found within the time period.

[0026] According to a further aspect of the present invention, the database system accesses data sources distributed in a computer network. This has the advantage that the database system can also query decentralized data sources and thus the database system can return a uniform response, which however originates from different data sources. Overall, the distribution in the computer network makes it possible for data records to be put together in such a way that they fulfill the specified configuration data. If, for example, three pieces of configuration data are specified, a single data record can be put together from different data sources which together fulfills all three pieces of configuration data, whereby the partial data records each only implement one configuration data unit. In this way, the database system orthe monitoring unit combines various partial data sets, whereby each partial data set corresponds to at least one configuration data unit and the data set as a whole in its combined form corresponds to all specified configuration data.

[0027] According to a further aspect of the present invention, the query unit, the monitor unit, and the database system are communicatively connected in series. This has the advantage that the monitor unit mediates between the query unit and the database system. This makes it possible to implement a security aspect such that the query unit does not directly access the database system. Thus, a rights management system or a filter can be implemented in the monitor unit.

[0028] According to a further aspect of the present invention, the query unit, the monitor unit, and the database system are communicatively connected in series, with at least one unidirectional path being provided. This has the advantage that communication can only take place in one direction and that a separate return channel is provided. In this way, it is possible to receive return values ​​not directly on the communication path; rather, according to this topology, a circuit is implemented that communicates from the query unit to the monitor unit and to the database system and then communicates directly from the database system to the query unit or from the monitor unit to the query unit. Thus, separate paths are implemented for each communication direction. This can be done using hardware or software.

[0029] According to a further aspect of the present invention, the configuration data provides an indication of a geolocation and / or a file attribute of the data set. This has the advantage that it is possible to specify where the data set is stored or which file attributes the data set must have. The geolocation is the geographical coordinate at which the data set is stored. This allows a particularly close data center to be specified, and, for example, a file size can be specified as a file attribute.

[0030] According to a further aspect of the present invention, the configuration data specifies a time at which the data record is created or modified. This has the advantage that additional temporal information can be stored, allowing data records that will only be created or modified in the future to be specified. This allows a data record to be returned as soon as it has been edited by another user.

[0031] According to a further aspect of the present invention, the configuration data is provided as a logical expression with different conditions. This has the advantage that a structured expression or a structured query can be provided, and in addition to the normal configuration data, which is statically defined, conditions can also be specified that describe dependencies between the configuration data.

[0032] According to a further aspect of the present invention, the configuration data describes a change history through which a data record runs. This has the advantage that a sequence of write operations can be specified, and if this is recognized, the corresponding data record is returned. The change history can also specify that a data record is read and then written. This way, a sequence of read and write operations can be specified that describe a general histone of the configuration data. If this is recognized, the corresponding data record is returned.

[0033] According to a further aspect of the present invention, semantic data relating to the data set is provided in addition to the configuration data, which must also be present before transmission. This has the advantage that content specifications can also be provided that the searched data set and the subsequently returned data set must contain.

[0034] The object is also achieved by a system arrangement comprising a database system with improved system throughput, having an interface device configured to set up a communication channel between a query unit and a monitor unit connected upstream of the database system; a query unit configured to structure a query to the database system in such a way that a plurality of configuration data of a data record to be provided but not yet available is specified; a storage unit configured to persistently store the structured query in the monitor unit by means of the established communication channel by the query unit; the monitor unit configured to iteratively check the configuration data of the data record to be provided;and the monitoring unit is configured to read the data record from the database system and to send the data record to the query unit via the established communication channel as soon as the data record is available according to all specified configuration data.;

[0035] The problem is also solved by a computer program product with control commands which implement the proposed method or operate the proposed device.

[0036] According to the invention, it is particularly advantageous that the method can be used to operate the proposed devices and units. Furthermore, the proposed devices and units are suitable for implementing the method according to the invention. Thus, each device implements structural features suitable for executing the corresponding method. However, the structural features can also be configured as method steps. The proposed method also provides steps for implementing the function of the structural features. Furthermore, physical components can also be provided virtually or in a virtualized form.

[0037] Further advantages, features and details of the invention will become apparent from the following description, in which aspects of the invention are described in detail with reference to the drawings. The features mentioned in the claims and in the description can each be essential to the invention individually or in any combination. Likewise, the features mentioned above and those further explained here can each be used individually or in groups in any combination. Parts or components with similar functions or that are identical are sometimes provided with the same reference numerals. The terms “left”, “right”, “top” and “bottom” used in the description of the exemplary embodiments refer to the drawings in an orientation with normally legible figure designations or normally legible reference numerals.The embodiments shown and described are not intended to be exhaustive, but rather are exemplary in nature to illustrate the invention. The detailed description is intended to inform those skilled in the art; therefore, known circuits, structures, and methods are not shown or explained in detail in order not to obscure the understanding of the present description. The figures show:

[0038] Figure 1 : a schematic flow diagram of a method for

[0039] Controlling and efficiently querying a database system according to one aspect of the present invention; and

[0040] Figures 2A and 2B each show a schematic block diagram of a system arrangement comprising a database system according to a further aspect of the present invention.

[0041] Figure 1 shows a schematic flow diagram of a method for controlling and efficiently querying a database system with improved system throughput, comprising setting up 100 a communication channel between a query unit and a monitoring unit upstream of the database system; structuring 101 a query to the database system by the query unit such that a plurality of configuration data of a data record to be provided but not yet available is specified; persistent storage 102 of the structured 101 query in the monitoring unit by means of the set up 100 communication channel by the query unit; iterative checking 103 of the configuration data of the data record to be provided by the monitoring unit.and reading 104 the data record from the database system by the monitoring unit and sending the data record to the query unit via the established communication channel as soon as the data record is available according to all specified configuration data;

[0042] Figure 2A shows, in a schematic block diagram on the left, the query unit, which communicates with the monitoring unit via a unidirectional data path. The monitoring unit communicates with, for example, three data sources. The three data sources can be part of the database system. According to the invention, it is possible for the established communication path to be unidirectional, which is why a further unidirectional return path is established. This is shown here with reference numeral 1. The established communication channel therefore comprises two data paths, each of which is unidirectional. The data channel can therefore be referred to as simplex or dual-simplex. The data channel can be configured in hardware or software such that each communication direction is implemented via a separate communication channel.On the far right side of Figure 2A, a return unit is specified, which, if the data set is present according to configuration data, returns the data to the monitoring unit using the arrow with reference number 2. Shown from below is a unit that optionally provides further parameters, for example, a time period after which the method terminates if the data set is not found.

[0043] Figure 2B shows a similar arrangement, with a database system containing the three data sources depicted on the far right. The number three is again used only as an example. In this case, bidirectional paths are depicted between the database system and the monitoring unit in the center. The return from the monitoring unit in the center to the query unit on the left is again unidirectional, using separate communication paths.

Claims

Patent claims 1. A method for controlling and efficiently querying a database system with improved system throughput, comprising: - setting up (100) a communication channel between a query unit and a monitoring unit upstream of the database system; - structuring (101) a request to the database system by the request unit in such a way that a plurality of configuration data of a data record to be provided but not yet present is specified; - a persistent storage (102) of the structured (101) request in the monitoring unit by means of the established (100) communication channel by the request unit; - an iterative checking (103) of the configuration data of the data set to be provided by the monitoring unit; and - reading (104) the data record from the database system by the monitoring unit and sending the data record to the query unit via the established communication channel as soon as the data record is available according to all specified configuration data.

2. Method according to claim 1, characterized in that the persistent storage (102) takes place in a decentralized data storage.

3. Method according to claim 1 or 2, characterized in that the query unit is distributed decentrally in a computer network.

4. Method according to one of the preceding claims, characterized in that a relative and / or absolute time period is defined after which the method terminates.

5. Method according to one of the preceding claims, characterized in that the database system accesses data sources distributed in a computer network.

6. Method according to one of the preceding claims, characterized in that the query unit, the monitoring unit and the database system are communicatively connected in series.

7. Method according to one of the preceding claims, characterized in that the query unit, the monitoring unit and the database system are communicatively connected in series, wherein at least one unidirectional path is provided.

8. Method according to one of the preceding claims, characterized in that the configuration data provide an indication of a geolocation and / or a file attribute of the data set.

9. Method according to one of the preceding claims, characterized in that the configuration data specify a time at which the data record is created or changed.

10. Method according to one of the preceding claims, characterized in that the configuration data are provided as a logical expression with different conditions.

11. Method according to one of the preceding claims, characterized in that the configuration data describe a change history through which a data set passes.

12. Method according to one of the preceding claims, characterized in that, in addition to the configuration data, semantic data relating to the data set are provided, which must also be available before transmission.

13. A system arrangement comprising a database system with improved system throughput, comprising: - an interface device configured to establish (100) a communication channel between a query unit and a monitoring unit connected upstream of the database system; - a query unit configured to structure (101) a query to the database system in such a way that a plurality of configuration data of a data record to be provided but not yet present is specified; - a storage unit configured for persistently storing (102) the structured (101) request in the monitoring unit by means of the communication channel configured (100) by the request unit; - the monitoring unit is configured to iteratively check (103) the configuration data of the data set to be provided; and - the monitoring unit is configured to read (104) the data record from the database system and to send the data record to the query unit via the established communication channel as soon as the data record is available according to all specified configuration data.

14. A computer program product comprising instructions which, when the program is executed by at least one computer, cause the computer to carry out the steps of the method according to any one of claims 1 to 12.

15. A computer-readable storage medium comprising instructions which, when executed by at least one computer, cause the computer to carry out the steps of the method according to any one of claims 1 to 12.