WO2021215362A1 - データベース管理システム - Google Patents

データベース管理システム Download PDF

Info

Publication number
WO2021215362A1
WO2021215362A1 PCT/JP2021/015732 JP2021015732W WO2021215362A1 WO 2021215362 A1 WO2021215362 A1 WO 2021215362A1 JP 2021015732 W JP2021015732 W JP 2021015732W WO 2021215362 A1 WO2021215362 A1 WO 2021215362A1
Authority
WO
WIPO (PCT)
Prior art keywords
database
search
terminal
data
management system
Prior art date
Application number
PCT/JP2021/015732
Other languages
English (en)
French (fr)
Inventor
鈴木 隆之
有本 和民
忠 高村
Original Assignee
Dendritik Design株式会社
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
Priority claimed from JP2020177165A external-priority patent/JP7490529B2/ja
Application filed by Dendritik Design株式会社 filed Critical Dendritik Design株式会社
Priority to US17/919,793 priority Critical patent/US20230205788A1/en
Publication of WO2021215362A1 publication Critical patent/WO2021215362A1/ja

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/21Design, administration or maintenance of databases
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/282Hierarchical databases, e.g. IMS, LDAP data stores or Lotus Notes
    • 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
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24561Intermediate data storage techniques for performance improvement
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication

Definitions

  • the present invention relates to a database management system.
  • the sensing information in the normal time occupies most, and the sensing information different from the normal time and the sensing information in the abnormal time occupy only a part in most cases. ..
  • the necessity of providing all sensor data to a data center such as the cloud is reduced, but rather information management and utilization at the edge (end). It is more advantageous to carry out.
  • a layered database has been proposed as a method for managing and utilizing information at such an edge portion (see Japanese Patent Application Laid-Open No. 2007-184850).
  • the layered database described in this publication is used for frequency usage management for wireless communication systems that perform cognitive radio.
  • a cognitive radio is a communication system that scans available frequency bands to detect usage and uses it if it is not in use.
  • the cognitive communication system described in this publication is a radio composed of a detection device that detects the usage status of the frequency of ambient radio waves and a first database device that stores the usage status of the frequency detected by the detection device. It includes a communication system and a second database device that integrates one or more first database devices.
  • the amount of communication is reduced and a large-capacity database is not required by entrusting the collection of data lacking in the first database device to the second database device, which is a higher-level database. ..
  • the number of databases may become enormous in order to keep the individual databases located at the ends below a certain scale.
  • the second database device which is the upper database
  • the second database device is connected to its own lower level. It becomes necessary to retrieve the data of many first database devices. If the information is still insufficient, it may be necessary to leave it to a higher-level database device depending on the hierarchical structure.
  • the amount of processing will increase in the data search.
  • the present invention has been made based on the above circumstances, and provides a database management system capable of suppressing an increase in the processing amount in searching registered data and efficiently searching registered data.
  • the purpose is to do.
  • the database management system includes a hierarchical database having one main database and a plurality of terminal databases directly or indirectly connected to the main database via one or a plurality of intermediate databases. It is provided with a search means for searching for matching data that matches the search conditions from the registered data registered in the hierarchical database, and at least the terminal database stores a plurality of registered data, and the main database or the intermediate database.
  • the registration data stored in the lower intermediate database or the direct lower database which is the terminal database directly connected to the database, or the intermediate database or the terminal database indirectly connected via the direct lower database.
  • the search route to the destination has a virtual data table grouped by common information related to the plurality of registered data, and the search means uses a terminal database in which the common information is included in the search condition as a search starting point. ..
  • the database management system of the present invention can prevent the amount of processing from swelling in the data search and can efficiently search the data.
  • FIG. 1 is a schematic diagram showing a configuration of a database management system according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram showing the structure of the layered database of FIG.
  • FIG. 3 is a schematic diagram showing a configuration example of a layered database when common information is used as a location.
  • FIG. 4 is a schematic diagram showing a configuration example of a layered database when common information is used as time.
  • FIG. 5 is an explanatory diagram illustrating data allocation for changing the network connection relationship.
  • FIG. 6 is a schematic diagram showing a configuration of a database management system according to an embodiment different from that of FIG.
  • FIG. 7 is a schematic diagram showing a configuration example of a layered database when common information is used as time.
  • FIG. 1 is a schematic diagram showing a configuration of a database management system according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram showing the structure of the layered database of FIG.
  • FIG. 3 is a schematic diagram showing a configuration example
  • FIG. 8 is an explanatory diagram illustrating the operation of the virtualization means.
  • FIG. 9 is an image diagram showing the geographical location of each database of the layered database.
  • FIG. 10 is a schematic diagram showing the configuration of the virtualized terminal database.
  • FIG. 11 is an explanatory diagram illustrating a case where the operation of the virtualization means of FIG. 8 includes an intermediate database.
  • FIG. 12 is a schematic diagram showing a configuration example of a multi-layered hierarchical database.
  • FIG. 13 is an explanatory diagram for explaining the perspective of the attribute having a hierarchical structure.
  • a database management system includes a hierarchical database having one main database and a plurality of terminal databases directly or indirectly connected to the main database via one or a plurality of intermediate databases.
  • a search means for searching matching data matching the search conditions from the registered data registered in the hierarchical database is provided, and at least the terminal database stores a plurality of registered data, and the main database or the above The above registration in which the intermediate database is stored in the lower intermediate database or the terminal database directly connected to the intermediate database, or the intermediate database or the terminal database indirectly connected via the direct database.
  • the search route to the data has a virtual data table grouped by the common information related to the plurality of registered data, and the search means searches the intermediate database or the terminal database in which the common information is included in the search condition. As the starting point of.
  • the database management system has a virtual data table grouped by common information related to registered data, and narrows down the database to be searched, so that it is indirectly connected to the above-mentioned direct layer database and this direct layer database.
  • the amount of communication with the intermediate database and the terminal database can be reduced.
  • the database management system uses an intermediate database or a terminal database whose search conditions include the above-mentioned common information as the starting point of the search. By starting the search from the terminal side using the common information in this way, the search can be executed only by searching the terminal database and a part of the intermediate databases connected to the terminal database. Therefore, the database management system can prevent the processing amount from swelling in the search of the registered data and can efficiently search the registered data.
  • the starting points are intermediate databases or terminal databases having different starting points.
  • the starting points are set to different intermediate databases or terminal databases, so that communication between specific databases is avoided and communication is performed in parallel. Since the search can be performed, the data can be searched more efficiently.
  • execution at the same time means that in the execution of any two searches, there is an overlapping time between the start time when the search command is issued and the end time when the search result is acquired.
  • the search means makes a request function for issuing a search request from the starting point, and makes the search request among the main database, the intermediate database, or the terminal database directly connected to the intermediate database to the intermediate database that has received the search request.
  • the transmission function that transmits the search request to all databases except the issued request source, and the results for the search request are aggregated for the main database, intermediate database, or terminal database that received the search request and sent to the request source. It is preferable to have an aggregation function to return. Since the search means has the above-mentioned function in this way, the registered data can be efficiently searched regardless of which intermediate database or terminal database is used as the starting point of the search.
  • the search means has a top-level database specifying function for specifying the top-level intermediate database or terminal database in which the above-mentioned common information is included in the search condition based on the above-mentioned virtual data table.
  • the top-level database can be quickly identified by the information in the virtual data table.
  • the search means since the uppermost database and the lower database are connected in a tree shape, it is easy to search the registered data in parallel. Therefore, since the search means has the top-level database specifying function for specifying the top-level database, the registered data can be searched more efficiently.
  • the main database or the intermediate database has a plurality of virtual data tables having different attributes of the common information, and the hierarchical structure of the hierarchical database is different for each of the attributes. May have a selection function to select the hierarchical structure included in the above search conditions. In this way, the hierarchical structure of the hierarchical database is different for each attribute, and the search means selects the hierarchical structure in which the above attributes are included in the search conditions, so that the registered data can be searched more efficiently.
  • the data allocation means has a duplication function of creating a duplication of the virtual data table and the registered data belonging to the virtual data table in another terminal database or an intermediate database.
  • the search routes can be easily multiplexed, so that the communication load can be easily reduced and a communication failure occurs in a part of the layered database. In some cases, it is possible to prevent the search from becoming impossible.
  • the duplicated registration data is included as the registration data registered in the layered database that is the target of the search means.
  • the duplicated registration data is used by replacing the registration data of the duplication source. It becomes possible. Therefore, since it is possible to have a plurality of options as the registration data to be used, the communication load can be further reduced.
  • a virtualization means for grouping a plurality of terminal databases based on their geographical information into one virtualized terminal database.
  • the virtualization means divides a plurality of terminal databases included in the virtual terminal database into two groups, a first database group and a second database group, and the first database group and the second database group are the virtual terminal. It is preferable to have a redundancy function for reconfiguring so as to store all the registered data contained in the database. By providing the virtualization means with a redundancy function in this way, it is possible to have a plurality of options as the registration data to be used, so that the communication load can be further reduced.
  • the database management system 1 shown in FIG. 1 is a layered computer system that controls a layered database.
  • the database management system 1 includes a layered database 10, an input means 20, a data allocation means 30, and a search means 40.
  • the database management system 1 may have means for performing management processing such as operation of registered data other than the search means 40 and collection, deletion, and update of registered data. Further, the database management system 1 may be connected to a device that expresses bit map information such as map information and can refer to map data or the like.
  • the layered database 10 has a main database 11 of 1 and a plurality of terminal databases 13 directly or indirectly connected to the main database 11 via an intermediate database 12.
  • the main database 11 is located at the top of the tree structure of the hierarchical database 10, and the terminal database 13 is located at the bottom.
  • the intermediate database 12 is located between the main database 11 and the terminal database 13.
  • the number of intermediate databases 12 existing between the main database 11 and the terminal database 13 of 1 is not limited to 1. That is, there may be two or more intermediate databases 12 between the main database 11 and the terminal database 13 of 1. Further, the intermediate database 12 may not exist between the main database 11 and the terminal database 13 of 1, and the terminal database 13 may be directly connected to the main database 11. Further, the number of intermediate databases 12 existing between the main database 11 and the main database 11 does not have to be the same for all the terminal databases 13.
  • the intermediate database 12 or the terminal database 13 is directly connected to the main database 11 and the intermediate database 12, and the number of connections is one or more (hereinafter, the direct connection is made).
  • the intermediate database 12 or the terminal database 13 is collectively referred to as a "direct layer database"). Further, there is no so-called cyclic connection in which the upper intermediate database 12 or the terminal database 13 is reconnected to the lower side of the intermediate database 12 or the terminal database 13 located on the lower side.
  • the number of intermediate databases 12 and the number of terminal databases 13 directly or indirectly connected to one intermediate database 12 are not particularly limited, and each intermediate database 12 does not have to be the same.
  • a so-called nesting structure may be adopted in which the structures of the intermediate database 12 and the terminal database 13 which are directly or indirectly connected to a part or all of the intermediate database 12 are the same and repeated.
  • the main database 11, the intermediate database 12, and the terminal database 13 can be arranged on either a cloud computer or an edge computer.
  • the main database 11 is preferably arranged on the cloud computer, and the terminal database 13 is located on the edge computer. It is preferable to arrange it.
  • the main database 11 By arranging the main database 11 on the cloud computer, it is easy to speed up the data processing. Further, by arranging the terminal database 13 on the edge computer, it is easy to reduce the communication delay with the input means 20, which will be described later, for example.
  • main database 11, the intermediate database 12, and the terminal database 13 may have a unique database ID in order to distinguish them from each other.
  • Registration data Data is registered and stored in the layered database 10 (hereinafter, this stored data is also referred to as "registration data").
  • the type of the above-mentioned registered data is not particularly limited. Arbitrary natural phenomena such as weather and temperature, phenomena caused by artificial objects such as traffic congestion, things that can be detected by sensors such as human vital information such as heart rate, respiratory rate, blood pressure, and artificial input such as restaurant information Information to be given can be mentioned.
  • the above registration data is stored in, for example, the terminal database 13.
  • This registered data is electronic data registered in the terminal database 13 by the input means 20 described later, and is generally digital data.
  • the number of registered data may be 1, but the number of registered data is usually plural, and it is premised that a large number of registered data are registered especially in the layered database 10. It is configured in. Therefore, in the layered database 10, at least a part, usually all the terminal databases 13, store a plurality of registration data.
  • the input means 20 inputs data (registered data) to be registered in the layered database 10. Specifically, the input means 20 stores the registration data to be processed by the database management system 1 in the terminal database 13.
  • the database management system 1 can be suitably used for a database whose data changes dynamically. By having the input means 20, it is possible to handle such dynamically changing data.
  • the input means 20 is distributed and arranged in each edge computer together with the terminal database 13.
  • the input means 20 has a sensor 21.
  • the "sensor” refers to an element or device that detects a phenomenon in the real world and replaces the detected phenomenon with a signal that can be processed by a computer.
  • One or more sensors 21 are provided for each terminal database 13. That is, the input means 20 has a plurality of sensors 21 that automatically detect the registered data as a whole.
  • the registration data registered in the terminal database 13 by the input means 20 is stored in the actual data table.
  • the actual data table is, for example, a storage area for permanently storing sensor data. It is preferable that the table structure of the actual data table is the same for all databases. Further, the table structure of the actual data table can be arbitrarily designed, but it is preferable to include the table structure of the virtual data table described later.
  • the actual data table may be a cyclic table.
  • the "cyclic table” is a table in which the number of records that can be stored is predetermined.
  • data is managed by rules such as FIFO (first in, first out) and FIFO (last in first out). That is, when the maximum number of records is exceeded, a specific record is overwritten by the added record based on the rule.
  • Columns in the cyclic table may be set to a fixed length. By setting the columns in this way, the total data size of each record becomes the same, so it is possible to prevent memory fragmentation due to misalignment of memory allocation.
  • the main database 11 and the intermediate database 12 are all the lower intermediate database 12 or the terminal database 13 directly connected to the main database 11 or the intermediate database 12, or the intermediate database 12 or the intermediate database 12 indirectly connected via the lower database. It has a virtual data table in which search routes to the registered data stored in the terminal database 13 are grouped by common information related to the plurality of registered data. In this embodiment, all the data is stored in the terminal database 13. Therefore, the virtual data table is grouped and configured with common information for the search route to the registered data stored in the lower end database 13 which is directly or indirectly connected.
  • the virtual data table is a virtual storage area that represents the search results of the registered data stored in the terminal database 13.
  • the virtual data table does not store the registered data itself, and therefore can be called a view.
  • the virtual data table makes a set of registered data of one or more terminal databases 13 located on the lower side look as if it were a single table.
  • the table structure of the virtual data table (record structure, data type of each column, maximum number of records, etc.) is the same for all databases. Further, the data structure of the virtual data table is not limited and can be arbitrarily designed.
  • the virtual data table includes at least the search route and the common information.
  • the search route can be configured by using, for example, the database ID of the terminal database 13.
  • the layered database 10 is implemented on a computer system and deployed on a layered computer system composed of a cloud system, a server, an edge computer, and the like. In this case, there are many connections between computers, and various connection methods are also adopted as the connection method. Therefore, the search route may be configured by using a route based on the connection between computers instead of the database ID.
  • FIG. 3 shows a configuration example when the common information of the virtual data table is a place where the registered data is detected.
  • the main database 11 is the entire area where the registered data is detected, and in the example of FIG. 3, it is layered into three stages of wide area, middle area, and small area.
  • all the registered data stored in the terminal database 13 of 1 belong to the same virtual data table.
  • the terminal database 13 of 1 belongs to, for example, two or more virtual data tables having different common information
  • the terminal database 13 It becomes necessary to search for. Therefore, there is a possibility that the narrowing down of the database to be the search range is insufficient.
  • the database to be searched can be narrowed down without being affected by other virtual data tables. Therefore, the data can be searched more efficiently.
  • the database management system 1 uses physical position information as a range covered by the edge computer and uses each edge.
  • the data of the sensor 21 within the range covered by the computer may be registered in the terminal database 13 arranged in the edge computer.
  • the registration is performed in this way, all the data having the same coverage is registered in the same terminal database 13, and the common information related to those data becomes the place.
  • the intermediate database 12 includes the coverage of a plurality of edge computers. Further, if the coverage of the intermediate database 12 becomes too large, the intermediate database 12 itself can be hierarchized. At this time, as shown in FIG. 3, the number of layers can be changed for each terminal database 13 according to, for example, the number of registered data. Alternatively, the intermediate database 12 may be divided into two groups, and common information related to the registered data may be managed, for example, in two dimensions of place and time.
  • the location setting method it is preferable to use physical information such as latitude and longitude information.
  • Latitude and longitude information can be obtained relatively easily from information from GPS satellites. This information is added to the actual data table along with the corresponding registration data.
  • the common information is the above location, and the main database 11 or the intermediate database 12 is grouped by the above location being within a range defined by a predetermined fixed area (cover range). It has a virtual data table.
  • the search route to each terminal database 13 starts from the main database 11 and is ( ⁇ wide area A ⁇ middle area a), ( ⁇ wide area A ⁇ middle area b), ( ⁇ wide area B ⁇ middle area). It is represented by five, c ⁇ small area 1), ( ⁇ wide area B ⁇ middle area c ⁇ small area 2), and ( ⁇ wide area C), and each of them has a subdivided place as common information. Further, for example, in the middle region c of the intermediate database 12, the location where the subregion 1 and the subregion 2 are combined is the common information.
  • These search routes are collected from the terminal database 13 side to the main database 11 side together with the above common information, for example, when a new terminal database 13 is connected to the hierarchical database 10, and a virtual data table is constructed.
  • the configured virtual data table may be transmitted as a common master table to each intermediate database 12 and each terminal database 13 by the main database 11.
  • each intermediate database 12 and each terminal database 13 may be transmitted to each intermediate database 12 and each terminal database 13 as a distributed table.
  • each intermediate database 12 and each terminal database 13 With the distributed table in this way, it is possible to reduce the amount of data to be transmitted while maintaining the database narrowing function.
  • the search route and common information are collected from the terminal database 13 side to the main database 11 side, the information can be added to the distributed table of each intermediate database 12, so that the main database 11 is not necessarily required. There is no need to communicate from.
  • FIG. 4 shows a configuration example when the common information of the virtual data table is the time when the registered data is detected.
  • the terminal database 13 has an actual data table 13a, a medium-term statistical table 13b, a long-term statistical table 13c, an abnormal value data table 13d, a master table 13e, and an AI module 13f.
  • FIG. 4 shows a case where one intermediate database 12 is provided between the main database 11 and the terminal database 13, the number of intermediate databases 12 between the main database 11 and the terminal database 13 is limited to one. It is not something that is done, and it may be two or more. Further, the intermediate database 12 may have a plurality of intermediate databases 12 or terminal databases 13 as direct layer databases.
  • the actual data table 13a stores the registered data detected by the sensor 21 in chronological order.
  • the actual data table 13a is realized as, for example, a cyclic table, and therefore can store registered data from the closest to a certain time ago (for example, one hour ago).
  • the medium-term statistical table 13b compresses a plurality of registered data from which abnormal values have been removed from the actual data table 13a by the AI module 13f, which will be described later, and stores medium-term (for example, two months) time-series data.
  • the long-term statistical table 13c further compresses the time-series data of the medium-term statistical table 13b to store long-term (for example, 18 months) time-series data.
  • the outlier data table 13d stores a part or all of the registered data removed by the AI module 13f.
  • one terminal database 13 may be grouped into a plurality of virtual data tables having different common information.
  • the above four tables do not necessarily have to be possessed by all the terminal databases 13. That is, some terminal databases 13 do not have to have a part of the above four tables.
  • the types of tables possessed by the terminal database 13 can be managed by virtual data tables, so that terminal databases 13 that do not have some tables are mixed in this way. However, the data can be searched efficiently.
  • a virtual data table grouped by the search route leading to the registered data of the above four tables and common information, these data are sent to the intermediate database 12 in the layer directly above and further sent to the main database 11. ..
  • a virtual data table is constructed from the information collected from each terminal database 13.
  • the master table 13e is a table that stores information common to each database of the database management system 1, and includes the common master table described in Specific Example 1.
  • the master table 13e is generated by the main database 11 and transmitted to each terminal database 13.
  • the parameters required for the AI module 13f should be transmitted to this master data table 13e. Since the main database 11 is in a position where the results of the AI module 13f in each terminal database 13 can be referred to, the accuracy of the estimation model is improved while referring to the results in all terminal databases 13, and the information is transmitted to each terminal. It can be reflected in the AI module 13f in the database 13. Therefore, the accuracy of the AI module 13f in each terminal database 13 is improved in a relatively short period of time.
  • the AI module 13f functions as a filter for removing outlier data (unusual data) from the actual data table 13a. Extraordinary data should be removed to capture medium-term or long-term trends in registered data. However, since it is possible to capture the extraordinary data itself as valuable data, the AI module 13f determines which of the outlier data has high value and preferentially stores it in the outlier data table 13d.
  • the data itself detected by the sensor 21 is used as the registration data, but the registration data can be stored in the terminal database 13 as the identified information by utilizing the AI module or the like.
  • the physical information obtained from the harvested fruit is, for example, color, sugar content, and the like.
  • the AI module extracts the taste of the fruit (for example, freshness, richness, etc.) from these physical information. That is, the AI module extracts the index of taste information from the physical information and constructs the terminal database 13 using this as common information. With this configuration, it is possible to perform a search with high accuracy and high efficiency by targeting information having a degree of abstraction different from that of simple physical information.
  • the data table of the physical information detected by the sensor 21 is not always required, but it may be stored in the data table together with the physical information.
  • the data allocation means 30 changes the hierarchical structure of the hierarchical database 10.
  • "changing the hierarchical structure” includes not only changing the network connection relationship between the intermediate database 12 and the terminal database 13 but also changing the database in which the registration data is stored, and further, the registration data is 1. It also includes data movement such as storing in two databases where it is stored in one database.
  • the data allocation means 30 has a function of changing the network connection relationship.
  • FIG. 5 shows an example of changing the network connection relationship, and the upper figure shows the state before the change and the lower figure shows the state after the change.
  • the terminal database 13g whose connection is changed belonged to the layer directly below the first intermediate database 12a before the change (upper figure in FIG. 5)
  • the network connection relationship has been changed.
  • each intermediate database 12 is managed by making such a connection change.
  • the number of registered data to be registered can be balanced. As a result, it is possible to avoid congestion in a specific communication path including the intermediate database 12 having a large number of registered data, and as a result, the registered data can be efficiently searched.
  • the virtual data table When the network connection relationship changes, the virtual data table also changes, so the virtual data table is updated in synchronization with the connection change. It is preferable that the network connection relationship is changed so that the change in the virtual data table is minimized. It is possible to reduce the amount of updates to the virtual data table and prevent a decrease in the search efficiency of registered data after reconstruction.
  • FIG. 5 shows the case where the network connection relationship of the terminal database 13 is changed to another intermediate database 12 in the same layer
  • the terminal database 13 may be changed to the intermediate database 12 in a different layer.
  • the two end databases 13 may be exchanged with each other. The same connection change can be made for the intermediate database 12.
  • the data allocation means 30 has a duplication function of creating a duplication of the virtual data table and the registered data belonging to the virtual data table in another terminal database 13 or an intermediate database 12.
  • the virtual data table and registered data stored in the terminal database 13 may be duplicated in the intermediate database 12 located at a higher level, or in another terminal database 13. Since the database in which the registered data is stored is changed due to the replication, the virtual data table to be replicated is updated synchronously.
  • the registered data and virtual data table (hereinafter, simply referred to as "replica data”) duplicated in this way can be used as backup data.
  • the layered database 10 is generally a huge database, and the registered data is distributed and arranged in many terminal databases 13. Therefore, the probability of encountering a problem in which the terminal database 13 occurs, such as a communication failure or data loss, is not low. Even in such a case, if there is duplicate data, the search can be executed using this as an alternative. That is, by providing the data allocation means 30 with the duplication function in this way, it is possible to prevent the search from becoming impossible when a communication failure or the like occurs in a part of the layered database 10.
  • the duplicated data is on an edge computer that is physically different from the original data. Further, in order to enable duplication in a short time, it is preferable that this duplication function is performed without going through a computer that processes data in the main database 11.
  • the fact that the layered database 10 has duplicate data means that a plurality of routes can be selected for the same registered data, that is, the search routes are multiplexed. Therefore, in the search of registered data, it is possible to reduce the communication load by controlling which registered data (original data or duplicate data) is to be searched. That is, by providing the data allocation means 30 with the duplication function in this way, the search path can be easily multiplexed, so that the communication load can be easily reduced.
  • the intermediate database 12 directly above does not always have sufficient free storage space for arranging the duplicated data.
  • the data allocation means 30 may have a search function for searching the intermediate database 12 which has a sufficient free storage space and can duplicate the registered data by going back to the upper intermediate database 12. ..
  • the intermediate database 12 to be arranged can be easily grasped by using a virtual data table.
  • the intermediate database 12 may have a capacity storage area for storing the free storage space of the intermediate database 12 and the terminal database 13 lower than the main database 11. By having such a capacity storage area, the search efficiency of the search function can be improved.
  • the main database 11 has a monitoring function for monitoring the free storage space of the intermediate database 12 and the terminal database 13, and it is preferable to update the information of the capacity storage area of each database as the number of duplicated data increases or decreases.
  • the data allocation means 30 can also provide a function of expanding the amount of data to be stored even when the storage of the terminal database 13 or the like is insufficient.
  • the data allocation means 30 collectively defines these as one virtual storage. Allocate the address space so that it can be controlled collectively. By collectively controlling the address space in this way, it is possible to store a part of the data to be stored in one terminal database 13 in another terminal database 13 having a margin. That is, since the data allocation means 30 manages the capacity in the virtual storage, the capacity of the entire virtual storage can be managed, so that the storage utilization efficiency can be improved.
  • the amount of data is appropriately limited by specifying the validity period of data retention, and the data amount after the validity period is deleted and the amount of data increases too much.
  • the above-mentioned validity period can be easily extended dynamically.
  • the database management system 1 can optimize and multiplex the search route by providing the data allocation means 30 for changing the hierarchical structure of the hierarchical database 10 in this way. It will be possible to search the registered data more efficiently.
  • Information communicated via the network (hereinafter, also simply referred to as "communication information”) is generally encrypted and propagated through the network, and is cultivated in each database using a private key or the like, and information operations are performed. After that, it is encrypted again and sent.
  • communication information is generally encrypted and propagated through the network, and is cultivated in each database using a private key or the like, and information operations are performed. After that, it is encrypted again and sent.
  • the database management system 1 in addition to this encryption process, the following measures can be taken.
  • the information of the search route includes the information of the intermediate databases 12 passing through together, so that there is a common part. Therefore, when the information of the search route in which the common part does not exist is included, it can be determined that the information is illegal information invaded from the outside. By performing security checks across layers in this way, the reliability of communication information can be improved.
  • each intermediate database 12 may be executed inside the encryption space. Since the information manipulation in the intermediate database 12 is generally the addition of information, it can be executed without necessarily having a plain culture. By not plain-cultivating the intermediate database 12 through which the information passes in this way, the passing information cannot be read in plain text, so that the confidentiality of the data can be improved.
  • the private key is usually composed of a public key and a private key.
  • the "route key” is a key using the search route from the main database 11 to the terminal database 13.
  • Each database intermediate database 12 and terminal database 13
  • Each database has a virtual data table or a distributed table as described above. These tables store search routes that pass through the database.
  • the routes should match any of the search routes stored in the above table. By utilizing this property, it is possible to check whether or not the search route is following the correct route. By adding the path key in this way, the confidentiality can be further improved.
  • the search means 40 searches the registered data for matching data that matches the search conditions. As shown in FIG. 1, the search condition is transmitted as a query Q from, for example, the mobile terminal M.
  • the query Q is transmitted to a computer that processes data in the main database 11 (hereinafter, also referred to as a "main computer"), and is sequentially directed from the main computer to the intermediate database 12 and the terminal database 13 located in the lower layers.
  • a search is performed. That is, the search is performed starting from the main database 11.
  • the search means 40 uses the intermediate database 12 or the terminal database 13 in which the common information of the virtual data table is included in the search condition as the search starting point.
  • the search of the search means 40 can be performed by a search method including an extraction step, a starting point selection step, and a registered data search step.
  • the search procedure by the search means 40 will be described by taking as an example the case where the common information "middle area c" of the data table is included in the search condition in the layered database 10 of FIG. 3 where the common information is a location.
  • the search means 40 first includes an intermediate database 12 (search target intermediate database 12c) containing the common information "middle region c" and two terminal databases 13 (first search target terminal database 13h and first search target terminal database 13h) located in the lower layer thereof. 2 Search target end database 13i) is extracted.
  • This extraction can be specified by accessing any database and referring to the common master table when the virtual data table is expanded as a common master table in each database.
  • the search means 40 may access a database in the immediate vicinity, that is, close to the mobile terminal M that sent the query Q. If the common information is "location", there is a high possibility that information in the vicinity of the mobile terminal M that sent the query Q is being searched, and the probability that the accessed database is a database that includes the common information "midrange c". Is high. Therefore, the accessed database can be used as the starting point, and the search efficiency can be improved.
  • the virtual data table is not expanded in each database as a common master table, it is advisable to access the main database 11 and directly refer to the virtual data table.
  • the search means 40 selects a search starting point from the extracted database.
  • any of the three databases may be the starting point, but one of the terminal databases 13 may be the starting point. It is easier to perform hierarchical control described later when the terminal database 13 is the starting point.
  • the search means 40 performs a search starting from the selected terminal database 13.
  • the search means 40 uses the first search target end database 13h as the starting point of the search, the search means 40 first searches the registered data of the first search target end database 13h and extracts matching data that matches the search conditions. do. The extraction of the matching data is actually performed by the terminal computer that processes the data of the first search target terminal database 13h.
  • the search means 40 searches the registered data of the second search target terminal database 13i via the search target intermediate database 12c. Similarly, the search means 40 extracts matching data that matches the search conditions, and transmits the search result to the mobile terminal M together with the extraction result of the first search target terminal database 13h via the search target intermediate database 12c.
  • the search means 40 similarly searches the registered data of the first search target terminal database 13h and the second search target terminal database 13i in the lower hierarchy, and transfers the registered data to the mobile terminal M.
  • the search results will be sent.
  • the layered database 10 is generally a huge database, and it is assumed that the number of queries Q sent to it will be large at the same time. Therefore, the search means 40 may be required to execute a plurality of search conditions at the same time.
  • the search means 40 executes a plurality of search conditions at the same time in this way, it is preferable that the above starting points are different terminal databases 13.
  • the starting point of the search may be the first search target end database 13h, and the second search target end database 13i may be used for the second query.
  • the terminal database 13 that is the starting point since the terminal database 13 that is the starting point is different between the first query and the second query, communication is performed by a communication route different from that of the search target intermediate database 12c in the immediately above hierarchy.
  • the communication path is the same as that of the search target intermediate database 12c in the immediately above hierarchy. Therefore, this communication path is 2. It will be mixed twice. Further, assuming that the starting point of the search of the first query and the second query is the main database 11, the route to the intermediate database 12c to be searched is the same, so that all the communication routes during this period are twice as congested. ..
  • the search means 40 executes a plurality of search conditions at the same time in this way, by setting the starting points to the terminal databases 13 that are different from each other, the searches can be performed in parallel while avoiding congestion in communication between specific databases. Since it can be executed, the data can be searched more efficiently.
  • the main database 11 is used as the starting point, even if the search conditions are different, the upstream communication routes often overlap and the communication congestion is large, so that the effect of using the terminal databases 13 having different starting points as the starting points is high.
  • the database management system 1 extracts and searches a part of the databases, the communication load between a part of the layered database 10, especially the databases that are not the search targets, tends to be low.
  • Self-diagnosis between these databases may be performed by detecting that the communication load is below a certain level. This self-diagnosis can be performed, for example, by having the search means 40 perform a dummy search that activates between the databases. By having such a self-diagnosis function, the soundness of the search route can be ensured.
  • the search means 40 performs a search by utilizing the duplicated data duplicated by the above-mentioned data allocation means 30. That is, it is preferable that the duplicated registration data is included as the registration data registered in the layered database 10 which is the target of the search means 40. By including the duplicated registration data in the registration data registered in the layered database 10 which is the target of the search means 40 in this way, the duplicated registration data is used by replacing the registration data of the duplication source. It becomes possible. Therefore, since it is possible to have a plurality of options as the registration data to be used, the communication load can be further reduced.
  • the database management system 1 has a virtual data table grouped by common information related to the registered data, and narrows down the databases to be searched, so that the database is indirectly connected to the directly lower layer database and the directly lower layer database.
  • the amount of communication with the intermediate database 12 and the terminal database 13 can be reduced.
  • the database management system 1 uses the intermediate database 12 or the terminal database 13 whose search conditions include the above-mentioned common information as the starting point of the search. By starting the search from the terminal side using the common information in this way, the search can be executed only by searching the terminal database 13 and a part of the intermediate databases 12 having a connection relationship with the terminal database 13. Therefore, the database management system 1 can prevent the processing amount from swelling in the search of the registered data and can efficiently search the registered data.
  • the database management system 2 shown in FIG. 6 is a layered computer system that controls a layered database.
  • the database management system 2 includes a layered database 10, an input means 20, a data allocation means 30, a search means 41, and a virtualization means 50.
  • the layered database 10 has a main database 11 of 1 and a plurality of terminal databases 13 directly or indirectly connected to the main database 11 via an intermediate database 12.
  • the terminal database 13 stores a plurality of registered data.
  • the main database 11, the intermediate database 12, and the terminal database 13 can be configured in the same manner as the main database 11, the intermediate database 12, and the terminal database 13 of the first embodiment, detailed description thereof will be omitted.
  • the main database 11 or the intermediate database 12 is a lower intermediate database 12 or a direct database 13 which is directly connected to the main database 11 or an intermediate database 12, or an intermediate database 12 or a terminal indirectly connected via the direct lower database. It has a virtual data table in which search routes to the registered data stored in the database 13 are grouped by common information related to the plurality of registered data.
  • the virtual data table can be configured in the same manner as the virtual data table of the first embodiment.
  • the main database 11 or the intermediate database 12 has a plurality of the virtual data tables having different attributes of common information.
  • attribute refers to a feature common to common information to be grouped.
  • the common information is wide area, middle area, and small area, and the common feature, that is, the attribute is the "location” where the registered data is detected.
  • the common information is currently four, medium-term, long-term, and abnormal value, and the attribute is the "time” at which the registered data is detected.
  • the number of virtual data tables is 2 and the different attributes are the above-mentioned “location” and “time” will be described as an example, but the number and attributes of virtual data tables are not limited to this.
  • the hierarchical structure of the hierarchical database 10 is different for each of the above attributes.
  • the attribute is “location”
  • the hierarchical structure of the hierarchical database 10 is configured as shown in FIG.
  • the attribute is “time”
  • the hierarchical structure of the hierarchical database 10 is configured as shown in FIG. 7, unlike FIG. Specifically, the two differ in the intermediate database 12 in the hierarchy directly above one terminal database 13i.
  • the hierarchical structure so that the terminal database 13 having the same common information belongs to the lower level of the same intermediate database 12.
  • the specific intermediate database 12 when the specific intermediate database 12 is reached, there is an increased chance that it can be determined that there is no registered data that matches the search conditions under the specific intermediate database 12. In that case, the lower database can terminate the search, so that the data can be searched more efficiently.
  • the database management system 2 since the hierarchical structure of the hierarchical database 10 is different for each attribute, the hierarchical structure can be optimized for each attribute. Therefore, the chance of discontinuing the search increases, and the efficiency of the data search can be improved.
  • These two hierarchical structures may be registered in the hierarchical database 10 according to their attributes, or dynamically according to the attributes or search conditions to be used, for example, by using the network connection change function of the data allocation means 30. You may switch.
  • the intermediate database 12 directly under the main database 11 from the upper side is hierarchized by gender as a tag. Then, the database that uses men as common information, which is expected to belong to about half of the registered data, can stop the search as soon as possible.
  • the intermediate database 12 directly under the intermediate database 12 using the gender as a tag may be configured with a time zone, and the intermediate database 12 or the terminal database 13 immediately below the intermediate database 12 may be configured with the color of clothes as a tag. With this configuration, it is possible to have a hierarchical structure in which data can be efficiently searched for the above search conditions.
  • the search means 41 searches for matching data that matches the search conditions from the registered data registered in the layered database 10.
  • the search means 41 uses the intermediate database 12 in which the common information is included in the search conditions as a search starting point. As shown in FIG. 6, the search condition is transmitted as a query Q from, for example, the mobile terminal M.
  • the search means 41 has a selection function for selecting a hierarchical structure in which the above attribute is included in the above search condition, a request function for issuing a search request from the above starting point, and an intermediate database 12 that has received the above search request.
  • a transmission function for transmitting the search request to all the databases other than the requesting source that issued the search request among the main database 11, the intermediate database 12, and the terminal database 13 that are directly connected to the intermediate database 12
  • the main database 11, the intermediate database 12, or the terminal database 13 that has received the search request has an aggregation function that aggregates the results of the search request and returns it to the request source.
  • selection function selects the hierarchical structure of the hierarchical database 10 shown in FIG. 3 when the search condition includes "location”, and when the search condition includes "time”, the selection function selects the hierarchical structure. Select the hierarchical structure of the hierarchical database 10 shown in FIG. 7. If both "place” and “time” are included in the above search conditions, or if neither is included, either hierarchical structure may be selected.
  • the required function first selects the starting point in the same manner as in the starting point selection step of the first embodiment. At this time, it is preferable to extract the common information corresponding to the attribute of the hierarchical structure selected by the selection function from the common information included in the search condition, and start from the intermediate database 12 including at least the common information. ..
  • the request mechanism conveys the search condition to the starting point.
  • Transmission function The transmission function operates recursively.
  • the search request is transmitted to the intermediate database 12 which is the starting point, to all the main database 11, the intermediate database 12, or the terminal database 13 which are directly connected to the starting point. Specifically, it conveys the search conditions.
  • the database of the request source that issued the search request is excluded, but the search request to the starting point is issued from the query Q and is not a database, so there is no database to be excluded.
  • the intermediate database 12 or the like to which the search conditions are transmitted searches all the main database 11, the intermediate database 12, or the terminal database 13 directly connected to the intermediate database 12, except for the requesting source that issued the search request. Communicate the request.
  • the registration data that matches the above search conditions is not registered for the lower database to be transmitted at this time, including the database located below it, the corresponding registration data is replaced with the transmission of the search request. It is good to return that there is no such to the requesting database.
  • a database is also referred to as a terminal database.
  • the aggregation function aggregates the registered data that matches the search request and returns the aggregation result to the request source database.
  • the requesting database waits for the aggregated results to be returned from all the databases that have issued the search request, and then informs the requesting database.
  • the intermediate database 12 of the starting point can send the aggregation result to the query Q, which is the search request source for the starting point, and complete a series of searches.
  • the virtualization means 50 groups a plurality of terminal databases 13 based on their geographical information into one virtualized terminal database 13x.
  • the constructed virtualized terminal database 13x can be treated as one terminal database 13.
  • FIG. 8 shows an example in which two terminal databases 13 are grouped to form one virtualized terminal database 13x, but the number of terminal databases 13 to be grouped and the number of virtualized terminal databases 13x are different. It is not limited to this.
  • This grouping is done based on geographical information as described above. That is, the adjacent end databases 13 are grouped into one virtualized end database 13x. Specifically, as shown in FIG. 9, the main database 11, the intermediate database 12, and the terminal database 13 are geographically dispersed throughout Japan or around the world, and are connected by a network, for example. .. Among these, those having a relatively short physical distance, for example, the terminal database 13 in the broken line is virtualized as one virtualized terminal database 13x.
  • the criteria for this grouping may be, for example, the longitude and latitude within a certain range, or may be based on a geographical division such as a city, town, or village name.
  • the two-dimensional plane that is, the proximity space of the database is defined by one layer, but it can also be defined by a plurality of layers.
  • the database management system is set to 3.
  • the AI module can efficiently extract information from the registered data. It is also possible to search across a plurality of layers.
  • the virtualization database 13y will be described in detail with reference to FIG. In the virtualized terminal database 13y of FIG. 10, four terminal databases 13 are grouped, but the number of terminal databases 13 is not limited to four.
  • the plurality of terminal databases 13 included in the virtualized terminal database 13y have communication links that can communicate with each other within the virtualized database 13y.
  • a ring-shaped communication link is formed between the four terminal databases 13 and can communicate with each other.
  • various configurations such as a mesh shape and a star shape can be adopted in addition to the ring shape.
  • the virtualization means 50 divides a plurality of terminal databases 13 included in the virtual terminal database 13y into two groups, a first database group G1 and a second database group G2, and the first database group G1 and the second database group G2 It is preferable to have a redundancy function for reconfiguring so as to store all the registered data included in the virtualized terminal database 13y.
  • a redundancy function for reconfiguring so as to store all the registered data included in the virtualized terminal database 13y.
  • the virtualization means 50 can further incorporate the intermediate database 12a into the virtualization terminal database 13x.
  • the process of fetching the intermediate database 12a after grouping the two terminalized databases 13 shown in FIG. 8 is performed, but these may be performed at the same time.
  • the virtualization means 50 may change the hierarchical structure of the virtualized terminal database 13x at the same time as constructing the virtualized terminal database 13x, if necessary.
  • the virtualized terminal database 13x is originally arranged directly under the main database 11, but its hierarchical structure is changed so that it is arranged directly under the intermediate database 12b.
  • Such a change in the hierarchical structure should be performed so that each database is grouped by common information.
  • the search means 41 since the search means 41 has a request function, a transmission function, and an aggregation function, the registered data can be efficiently searched regardless of which intermediate database 12 or terminal database 13 is the starting point of the search.
  • the database management system 2 has a different hierarchical structure of the hierarchical database 10 for each attribute, and the search means 41 selects a hierarchical structure in which the above attributes are included in the search conditions, so that the registered data can be made more efficient. You can search.
  • the database management system 2 includes a virtualization means 50.
  • the virtualization means 50 By grouping the terminal databases 13 based on the geographical information by the virtualization means 50, the number of apparent databases from the main database 11 can be reduced, so that the registered data can be searched more efficiently. become.
  • the database management system is provided with the data allocation means, but the data allocation means is not an indispensable component, and a database management system without the data allocation means is also intended by the present invention.
  • the data allocation means has both the function of changing the network connection relationship and the function of copying has been described, but it is also an object of the present invention that the data allocation means has only one of the functions.
  • the present invention has a case where a part of the registered data is stored in the terminal database. including. That is, it does not prevent the main database and the intermediate database from storing the registration data.
  • the database management system may have a mechanism for collecting data from sensors in an intermediate database.
  • the number of registered data stored in the main database and the intermediate database is smaller than the number of registered data stored in the terminal database, and all the registered data is stored in the terminal database. Is more preferable.
  • the input means has a sensor
  • the input means may be a human interface such as a keyboard instead of the sensor.
  • the human interface By using the human interface, artificially input information such as restaurant information can be used as registration data.
  • the input means is not an essential component and can be omitted.
  • a database constructed in advance is registered in the layered database. Examples of the method of registering the database constructed in advance include a method using a medium such as a DVD and distribution via a network.
  • the database management system can also manage the multi-layered layered database 10a as shown in FIG.
  • the layered database 10a can be used in place of the layered database 10 of the database management system 1 shown in FIG.
  • the database management system has one main database 11 and a plurality of terminal databases 13 and one or a plurality of sub-hierarchies that are directly or indirectly connected to the main database 11 via one or a plurality of intermediate databases 12.
  • a layered database 10a having a database 14 is provided.
  • the sub-layered database 14 has one main sub-database 14a and a plurality of terminal sub-databases 14c that are directly connected to the main sub-database 14a or indirectly via one or a plurality of intermediate sub-databases 14b.
  • the sub-tiered database 14 is connected to the main database 11 or the intermediate database 12 having the sub-tiered database 14 as the direct layer database via the main sub-database 14a.
  • connection method between the sub-tiered database 14 and the main database 11 or the intermediate database 12 having the sub-tiered database 14 as the direct layer database is not particularly limited, and for example, a known gateway method may be adopted.
  • the sub-tiered database 14 can be defined as one independent closed area.
  • the sub-tiered database 14 When the sub-tiered database 14 is defined as one independent closed area, it is possible to manage the sub-tiered database 14 with different strengths of security. Further, it becomes possible to adopt a different communication method as the communication method. By adopting the multiplex layered database 10a in this way, it becomes easy to configure different security management and communication methods. In particular, in the communication method, it is possible to alleviate the communication congestion of the entire layered database 10a by changing the communication frequency or the like for each sub-layered database 14 according to the network load.
  • the terminal sub-database 14c stores a plurality of registered data
  • the primary sub-database 14a or the intermediate sub-database 14b is directly connected to the lower intermediate sub-database 14b or the terminal.
  • the search route to the registration data stored in the direct lower layer database which is the subdatabase 14c, or the intermediate subdatabase 14b or the terminal subdatabase 14c which is indirectly connected via the direct lower layer database is the plurality of registration data. It has a virtual sub-data table grouped by common information related to.
  • the virtual sub data table is a data table used only in the sub-tiered database 14.
  • the sub-layered database 14 functions as one terminal database 13.
  • the common information held by the sub-tiered database 14 in the layered database 10a matches a part or all of the common information held by the main sub-database 14a of the sub-tiered database 14.
  • the layered database 10a has one sub-layered database 14, but the number is not limited to 1, and may be 2 or more. Further, the sub-tiered database 14 may further have a sub-tiered database.
  • the sub-layered database 14 may be mounted on a moving body such as a vehicle. At this time, the main database 11 or the intermediate database 12 to which the sub-layered database 14 should be connected may change due to the movement of the moving body. In such a case, it is advisable to change the network connection relationship to the optimum one by, for example, a data allocation means.
  • the search means uses the intermediate database 12 or the terminal database 13 in which the common information of the virtual data table is included in the search condition as the search starting point.
  • the sub-hierarchical database 14 may be regarded as one terminal database 13 and its main sub-database 14a may be used as a starting point.
  • the intermediate sub-database 14b or the terminal sub-database 14c in the sub-layered database 14 may be used as a starting point.
  • the search means when the search means performs a search, the case where the search means searches for the terminal database that is the starting point and then moves to the intermediate database directly above and searches for another terminal database has been described.
  • the search means has a top-level database identification function that identifies the top-level intermediate database or terminal database whose common information is included in the search condition based on the virtual data table, and this top-level intermediate database or terminal database. It is also possible to start the search for registered data from.
  • the search means determines whether or not the intermediate database directly above has the same common information based on the virtual data table with respect to the terminal database as the starting point. If the intermediate database directly above does not have the same common information, the terminal database from which this is the starting point is the top-level database. If the intermediate database directly above has the same common information, it is further determined whether or not the intermediate database directly above the intermediate database has the same common information. By repeating this judgment, the intermediate database directly above identifies the intermediate database that does not have the same common information, and this identified intermediate database is designated as the top-level database. Start searching for registered data from this top-level database.
  • the top-level database can be quickly identified by the information in the virtual data table. Moreover, since the uppermost database and the lower database are connected in a tree shape, it is easy to search the registered data in parallel. Therefore, since the search means has the top-level database specifying function for specifying the top-level database, the registered data can be searched more efficiently. Further, the above common information, that is, the search condition is not transmitted to the intermediate database or the main database located higher than the intermediate database or the terminal database specified as the highest database. Therefore, in the multi-layered database, it is possible to prevent the search conditions from being leaked to the upper database, so that the confidentiality of the information can be improved.
  • the search means of the above embodiment is not limited to each embodiment.
  • the search means used in the first embodiment can be used in the second embodiment, and conversely, the search means used in the second embodiment can be used in the first embodiment.
  • the search means selection function used in the second embodiment may be used in the first embodiment. Further, the database management system of the second embodiment may not have a selection function.
  • the virtualization means used in the second embodiment may be used in the first embodiment. Further, the database management system of the second embodiment may not have the virtualization means.
  • the virtualization means groups a plurality of terminal databases based on their geographical information into one virtualized terminal database
  • the criteria for grouping is geographical. Not limited to information.
  • grouping can be performed based on the perspective distance information of the attribute.
  • the above attribute is a geographical position, and the perspective distance can be defined by a physical distance or the like.
  • attributes include those having a hierarchical structure.
  • the classification class of biology Kerdom ⁇ Gate ⁇ Class ⁇ Eye ⁇ Family ⁇ Genus ⁇ Species
  • company organization Department ⁇ Section ⁇ Group, etc.
  • the geographical information described above also has a hierarchical structure when, for example, administrative divisions such as prefectures and municipalities are used as attributes.
  • those having high relevance between the upper and lower layers are linked and layered in a tree shape (see, for example, FIG. 13). There is a connection from one element to another via a branch of the tree to the upper hierarchy, and the number of branches that must be passed from one element to another (the minimum value if there are multiple routes).
  • the element 3A and the element 3B can be reached by the path of 3A ⁇ 2A ⁇ 3B, and the number of passing branches is 2, so the perspective distance is 2.
  • element 3A and element 3C it is necessary to follow the path of 3A ⁇ 2A ⁇ 1A ⁇ 2B ⁇ 3C, and since the number of passing branches is 4, the perspective distance is 4, from between element 3A and element 3B. Can be judged to be far away.
  • the database management system of the present invention can prevent the amount of processing from swelling in the data search and can efficiently search the data.

Landscapes

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

Abstract

本発明のデータベース管理システムは、1の主データベース、中間データベース及び複数の末端データベースを有する階層化データベースと、階層化データベースに登録されている登録データから検索条件に合致する合致データを検索する検索手段とを備え、主データベース又は中間データベースが、これに直接接続されている下位側の中間データベース又は末端データベースである直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間データベース又は末端データベースに格納されている登録データへ至る検索経路を、複数の登録データに関連する共通情報によりグループ化した仮想データテーブルを有し、検索手段が、共通情報が検索条件に含まれる末端データベースを検索の起点とする。

Description

データベース管理システム
 本発明は、データベース管理システムに関する。
 例えばセンサから得られたデータ(センサデータ)を記憶するデータベースでは、近年ニーズの高まっているIoT(Internet of Things)に関連し、その情報は広範囲から集められ、情報量も膨大なものとなっている。このような膨大な情報量のデータベースを管理し、解析や分析する方法として、データベースを分散させる考え方は古くから知られており、大規模化及び高速化に関する研究が盛んに行われている。このような分散型のデータベースでは同程度の演算能力を持つコンピュータを並べることやクラウドコンピュータを用いることで、大規模化及び高速化を達成している。
 しかし、膨大な量のセンサデータを単一大規模データベースだけで解析や分析をするためには、センサデータを収集するための高額な通信費と、収集したデータを記憶するための超大規模大容量データベース基盤が必要となってしまう。
 ところで、膨大な量のセンサデータの中には、通常時のセンシング情報が大部分を占め、通常時とは異なるセンシング情報や異常時のセンシング情報は一部を占めるに過ぎない場合がほとんどである。このような状況下では、システム全体の情報管理及び活用の視野から見た場合、クラウド等のデータセンタにすべてのセンサデータを提供する必然性は低下し、むしろエッジ部(末端)で情報管理及び活用を実施する方が有利となる。
 このようなエッジ部で情報管理及び活用を実施する方法として、階層化データベースが提案されている(特開2007-184850号公報参照)。この公報に記載の階層化データベースは、コグニティブラジオを行う無線通信システムのための周波数利用状況管理に用いられている。コグニティブラジオとは使用可能性がある周波数帯域をスキャンして使用状況を検出し、使用されていなければ使用する通信システムである。
 この公報に記載のコグニティブ通信システムは、周囲の電波の周波数の利用状況を検出する検出装置と、上記検出装置において検出された周波数の利用状況を保存する第1のデータベース装置とから構成される無線通信システムと、第1のデータベース装置を1つ以上統合する第2のデータベース装置とを備える。上記コグニティブ通信システムでは、第1のデータベース装置で不足しているデータの収集などを上位のデータベースである第2のデータベース装置に任せることで、通信量を削減し、また大容量データベースを不要としている。
特開2007-184850号公報
 しかし、上記従来の階層化データベースにおいても、末端に位置する個々のデータベースを一定規模以下に抑えるためにはデータベースの個数が膨大なものとなる場合がある。そのような場合に、第1のデータベース装置で不足しているデータの収集を上位のデータベースである第2のデータベース装置に任せると、この第2のデータベース装置は、自身の下位に接続されている多くの第1のデータベース装置のデータを検索する必要が生じる。また、それでも情報が不足している場合は、階層構造によっては、さらに上位のデータベース装置に任せる必要が生じる。このように上記従来の階層化データベースにおいては、データの検索において処理量が膨れ上がるおそれがある。
 本発明は、以上のような事情に基づいてなされたものであり、登録データの検索において処理量が膨れ上がることを抑止し、かつ登録データを効率的に検索することができるデータベース管理システムを提供することを目的とする。
 本発明の一態様に係るデータベース管理システムは、1の主データベースと、この主データベースと直接あるいは1又は複数の中間データベースを介して間接に接続される複数の末端データベースとを有する階層化データベースと、上記階層化データベースに登録されている登録データから検索条件に合致する合致データを検索する検索手段とを備え、少なくとも上記末端データベースが、複数の登録データを格納しており、上記主データベース又は上記中間データベースが、これに直接接続されている下位側の中間データベース又は末端データベースである直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間データベース又は末端データベースに格納されている上記登録データへ至る検索経路を、上記複数の登録データに関連する共通情報によりグループ化した仮想データテーブルを有し、上記検索手段が、上記共通情報が上記検索条件に含まれる末端データベースを検索の起点とする。
 本発明のデータベース管理システムは、データの検索において処理量が膨れ上がることを抑止し、かつデータを効率的に検索することができる。
図1は、本発明の一実施形態に係るデータベース管理システムの構成を示す模式図である。 図2は、図1の階層化データベースの構成を示す模式図である。 図3は、共通情報を場所とした場合の階層化データベースの構成例を示す模式図である。 図4は、共通情報を時間とした場合の階層化データベースの構成例を示す模式図である。 図5は、ネットワーク接続関係を変更するデータアロケーションを説明する説明図である。 図6は、図1とは異なる実施形態に係るデータベース管理システムの構成を示す模式図である。 図7は、共通情報を時間とした場合の階層化データベースの構成例を示す模式図である。 図8は、仮想化手段の動作を説明する説明図である。 図9は、階層化データベースの各データベースの地理的位置を示すイメージ図である。 図10は、仮想化末端データベースの構成を示す模式図である。 図11は、図8の仮想化手段の動作で、さらに中間データベースを含めた場合を説明する説明図である。 図12は、多重型階層化データベースの構成例を示す模式図である。 図13は、階層構造を有する属性の遠近を説明する説明図である。
[本発明の実施形態の説明]
 最初に本発明の実施態様を列記して説明する。
 本発明の一実施形態に係るデータベース管理システムは、1の主データベースと、この主データベースと直接あるいは1又は複数の中間データベースを介して間接に接続される複数の末端データベースとを有する階層化データベースと、上記階層化データベースに登録されている登録データから検索条件に合致する合致データを検索する検索手段とを備え、少なくとも上記末端データベースが、複数の登録データを格納しており、上記主データベース又は上記中間データベースが、これに直接接続されている下位側の中間データベース又は末端データベースである直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間データベース又は末端データベースに格納されている上記登録データへ至る検索経路を、上記複数の登録データに関連する共通情報によりグループ化した仮想データテーブルを有し、上記検索手段が、上記共通情報が上記検索条件に含まれる中間データベース又は末端データベースを検索の起点とする。
 当該データベース管理システムは、登録データに関連する共通情報によりグループ化した仮想データテーブルを有しており、検索範囲となるデータベースを絞り込むので、上記直下層データベース及びこの直下層データベースに間接に接続される中間データベースや末端データベースとの間との通信量を削減できる。また、当該データベース管理システムは、検索条件に上記共通情報が含まれる中間データベース又は末端データベースを検索の起点とする。このように共通情報を用いて末端側から検索を開始することで上記末端データベースやこの末端データベースと接続関係のある一部の中間データベースを検索するのみで検索を実行することができる。従って、当該データベース管理システムは、登録データの検索において処理量が膨れ上がることを抑止し、かつ登録データを効率的に検索することができる。
 上記検索手段が複数の検索条件を同時に実行する際、上記起点が互いに異なる中間データベース又は末端データベースであるとよい。このように上記検索手段が複数の検索条件を同時に実行する際、上記起点を互いに異なる中間データベース又は末端データベースとすることで、特定のデータベース間での通信が混雑することを避けつつ、並列して検索を実行できるので、データをさらに効率的に検索することができる。ここで「同時に実行する」とは、任意の2つの検索の実行において、検索命令が発せられた開始時刻から検索結果を取得する終了時刻までの間にオーバーラップする時間があることをいう。
 上記検索手段が、上記起点に検索要求を出す要求機能と、上記検索要求を受けた中間データベースに対し、この中間データベースと直接に接続される主データベース、中間データベース又は末端データベースのうち上記検索要求を出した要求元を除く全てのデータベースに上記検索要求を伝達する伝達機能と、上記検索要求を受けた主データベース、中間データベース又は末端データベースに対し、上記検索要求に対する結果を集計して上記要求元へ返す集計機能とを有するとよい。このように検索手段が上述の機能を有することで、どの中間データベース又は末端データベースを検索の起点としても、登録データを効率的に検索することができる。
 上記検索手段が上記仮想データテーブルに基づいて上記共通情報が検索条件に含まれる最上位の中間データベース又は末端データベースを特定する最上位データベース特定機能を有するとよい。最上位データベースは仮想データテーブルの情報によって速やかに特定できる。また、最上位データベースから下位のデータベースはツリー状に接続されているので、登録データの検索を並列に行うことが容易である。従って、検索手段が最上位データベースを特定する最上位データベース特定機能を有することで、登録データをさらに効率的に検索することができる。
 上記主データベース又は上記中間データベースが、上記共通情報の属性が異なる複数の上記仮想データテーブルを有し、上記属性ごとに上記階層化データベースの階層構造が異なるものであり、上記検索手段が、上記属性が上記検索条件に含まれる階層構造を選択する選択機能を有するとよい。このように属性ごとに階層化データベースの階層構造を異なるものとし、検索手段が上記属性が検索条件に含まれる階層構造を選択することで、登録データをさらに効率的に検索することができる。
 上記階層化データベースの階層構造を変更するデータアロケーション手段を備えるとよい。このように上記階層化データベースの階層構造を変更するデータアロケーション手段を備えることで、検索径路の最適化や多重化を行うことができるので、登録データをさらに効率的に検索することができるようになる。
 上記データアロケーション手段が、上記仮想データテーブルと、その仮想データテーブルに属する登録データとの複製を、他の末端データベース又は中間データベースに作成する複製機能を有するとよい。このように上記データアロケーション手段に複製機能を持たせることで、検索径路の多重化が容易に行えるので、通信負荷の低減が容易に行えるほか、階層化データベースの一部に通信障害等が生じた場合に検索が不可能となることを抑止できる。
 上記検索手段の対象である上記階層化データベースに登録されている登録データとして、上記複製された登録データが含まれるとよい。このように上記検索手段の対象である上記階層化データベースに登録されている登録データに上記複製された登録データを含めることで、複製された登録データをその複製元の登録データと置き換えて利用することが可能となる。このため、利用する登録データとして複数の選択肢を持つことができるので、通信負荷の低減をさらに容易に行える。
 複数の末端データベースを、その地理的情報をもとにグループ化し、1つの仮想化末端データベースとする仮想化手段を備えるとよい。このように地理的情報をもとに末端データベースをグループ化することで、主データベースから見たみかけのデータベース数を削減できるので、登録データをさらに効率的に検索することができるようになる。
 上記仮想化手段が、上記仮想化末端データベースに含まれる複数の末端データベースを第1データベース群及び第2データベース群の2群に分割し、上記第1データベース群及び第2データベース群が上記仮想化末端データベースに含まれる全登録データをそれぞれ格納するように再構成する冗長化機能を有するとよい。このように仮想化手段に冗長化機能を持たせることで、利用する登録データとして複数の選択肢を持つことができるので、通信負荷の低減をさらに容易に行える。
[本発明の実施形態の詳細]
 以下、本発明の実施形態に係るデータベース管理システムについて、適宜図面を参照しつつ説明する。
〔第1実施形態〕
 図1に示すデータベース管理システム1は、階層化されたデータベースを制御する階層化されたコンピュータシステムである。当該データベース管理システム1は、階層化データベース10と、入力手段20と、データアロケーション手段30と、検索手段40とを備える。
 当該データベース管理システム1は、検索手段40以外の登録データ操作や、登録データの収集、削除、更新等の管理処理を行う手段を有してもよい。また、当該データベース管理システム1は、地図情報等のビットマップ情報等を表現するデバイスに接続され、地図データ等を参照できてもよい。
<階層化データベース>
 階層化データベース10は、図2に示すように、1の主データベース11と、この主データベース11と直接又は中間データベース12を介して間接に接続される複数の末端データベース13とを有する。
 主データベース11は、階層化データベース10のツリー構造の最上位に位置し、末端データベース13は、最下位に位置する。中間データベース12は、主データベース11と末端データベース13との間に位置する。
 図2に示すように、主データベース11と1の末端データベース13との間に存在する中間データベース12の数は1に限定されない。つまり、主データベース11と1の末端データベース13との間に2以上の中間データベース12が存在してもよい。また、主データベース11と1の末端データベース13との間に中間データベース12が存在せず、主データベース11に末端データベース13が直接接続されていてもよい。また、主データベース11との間に存在する中間データベース12の数は、全ての末端データベース13に対して同じである必要はない。
 主データベース11及び中間データベース12には、図2に示すように、下位側に中間データベース12又は末端データベース13が直接接続されており、その接続数は1又は複数である(以降、この直接接続されている中間データベース12又は末端データベース13をまとめて「直下層データベース」と言うことがある)。また、下位側に位置する中間データベース12又は末端データベース13のさらに下位側に、上位側の中間データベース12又は末端データベース13が再び接続される、いわゆる循環的な接続は存在しない。
 1つの中間データベース12に直接又は間接に接続される中間データベース12の数及び末端データベース13の数は、特に限定されず、また各中間データベース12において同一である必要はない。一方、一部又は全部の中間データベース12に直接又は間接に接続される中間データベース12や末端データベース13の構造が同一で繰り返されるような、いわゆるネスティング構造を取ってもよい。
 主データベース11、中間データベース12及び末端データベース13は、クラウドコンピュータ及びエッジコンピュータのいずれに配置することもできるが、中でも主データベース11はクラウドコンピュータに配置することが好ましく、末端データベース13は、エッジコンピュータに配置することが好ましい。主データベース11をクラウドコンピュータに配置することで、データ処理を高速化し易い。また、末端データベース13をエッジコンピュータに配置することで、例えば後述する入力手段20との通信遅延を低減し易い。
 また、主データベース11、中間データベース12及び末端データベース13は、それぞれを区別するため固有のデータベースIDを有するとよい。
 階層化データベース10には、データが登録され、格納されている(以降、この格納されているデータを「登録データ」ともいう)。上記登録データの種類は、特に限定されるものではない。天候、気温といった任意の自然現象や、交通渋滞等の人工物で生ずる現象、心拍数、呼吸数、血圧等の人間のバイタル情報などのセンサで検知できるものや、レストランの情報といった人為的に入力される情報などを挙げることができる。
 上記登録データは、例えば末端データベース13に格納されている。この登録データは、後述する入力手段20により末端データベース13に登録された電子データであり、一般的にはデジタルデータである。
 なお、本実施形態では、説明の簡単化のため、以降は全ての登録データが末端データベース13に格納されているものとするが、登録データの一部を主データベース11又は中間データベース12に格納することを妨げるものではない。一部の登録データが主データベース11又は中間データベース12に格納されていても本発明は同様に機能する。
 また、データベースの構築初期等において、登録データ数が1である場合もあり得るが、登録データは通常複数であり、特に階層化データベース10にあっては多数の登録データが登録されることを前提に構成されている。従って、階層化データベース10は、少なくとも一部の、通常は全ての末端データベース13が複数の登録データを格納している。
<入力手段>
 入力手段20は、階層化データベース10に登録するデータ(登録データ)を入力する。具体的には、入力手段20は、当該データベース管理システム1で処理する登録データを末端データベース13に格納する。当該データベース管理システム1は、ダイナミックにそのデータが変化するデータベースに対して好適に用いることができる。入力手段20を有することで、このようなダイナミックに変化するデータを取り扱うことができる。
 入力手段20は、末端データベース13と共に各エッジコンピュータに分散して配置することが好ましい。当該データベース管理システム1は、図2に示すように、入力手段20がセンサ21を有している。なお、「センサ」とは、実世界での現象を検知して、その検知された現象を、コンピュータが処理可能な信号に置き換える素子又は装置のことをいう。
 センサ21は、個々の末端データベース13に対して1以上設けられる。つまり、入力手段20は、全体では上記登録データを自動で検知する複数のセンサ21を有している。
 入力手段20により末端データベース13に登録される登録データは、実データテーブルに記憶される。上記実データテーブルは、例えばセンサデータを永続的に記憶する記憶領域である。上記実データテーブルのテーブル構造は、すべてのデータベースで同一であることが好ましい。また、上記実データテーブルのテーブル構造は、任意に設計することができるが、後述する仮想データテーブルのテーブル構造を含むことが好ましい。
 上記実データテーブルはサイクリックテーブル(cyclic table)であってもよい。「サイクリックテーブル」とは、格納できるレコード数があらかじめ決められたテーブルのことをいう。サイクリックテーブルではデータがFIFO(先入れ先出し)、LIFO(後入れ先出し)などのルールによって管理される。つまり、最大レコード数を越える場合には、ルールに基づいて、追加されるレコードによって特定の1レコードが上書きされる。サイクリックテーブル内のカラムは固定長に設定されてもよい。このようにカラムを設定することで、個々のレコードの合計データサイズが同一になるので、メモリ配置のずれに起因するメモリの断片化を防ぐことができる。
<仮想データテーブル>
 主データベース11及び中間データベース12は全て、これに直接接続されている下位側の中間データベース12又は末端データベース13である直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間データベース12又は末端データベース13に格納されている上記登録データへ至る検索経路を、上記複数の登録データに関連する共通情報によりグループ化した仮想データテーブルを有する。本実施形態では、全てのデータが末端データベース13に格納されている。このため、上記仮想データテーブルは、直接又は間接に接続されている下位側の末端データベース13に格納されている登録データへ至る検索経路を対象に共通情報でグループ化され、構成される。
 上記仮想データテーブルは、末端データベース13が格納する登録データの検索結果を表現する仮想的な記憶領域である。上記仮想データテーブルは、登録データそのものは記憶せず、従ってビュー(view)ということもできる。上記仮想データテーブルは、下位側に位置する1以上の末端データベース13の登録データの集合をあたかも単一のテーブルのように見せる。
 上記仮想データテーブルのテーブル構造(レコードの構成、各カラムのデータ型、最大レコード数など)はすべてのデータベースで同一であることが好ましい。また、上記仮想データテーブルのデータ構造は限定されず、任意に設計することができる。なお、上記仮想データテーブルは、少なくとも上記検索経路及び上記共通情報を含む。
 上記検索経路は、例えば末端データベース13のデータベースIDを用いて構成することができる。一方、階層化データベース10は、コンピュータシステム上に実装され、クラウドシステム、サーバー、エッジコンピュータ等から構成される階層コンピュータシステム上に展開される。この場合、コンピュータ間の接続が多数存在するが、その接続方式にもまた種々の接続方式が採用される。このため、上記検索経路は、上記データベースIDに代えてコンピュータ間の接続に準じた経路を用いて構成してもよい。
 以下に、仮想データテーブルの具体的構成例について、いくつか列挙して説明する。なお、仮想データテーブルの構成は、これらの具体的構成例に限定されるものではない。
(具体例1)
 図3に、上記仮想データテーブルの共通情報が上記登録データが検知される場所である場合の構成例を示す。この構成例では、主データベース11は、上記登録データが検知される全域であり、図3の例では広域、中域、小域の3段階に階層化されている。
 この場合、1の末端データベース13に格納されている全ての登録データが同じ仮想データテーブルに属するとよい。1の末端データベース13に格納されている登録データが、例えば共通情報の異なる2つ以上の仮想データテーブルに属している場合、他の仮想データテーブルが検索範囲と判断されると、この末端データベース13に対して検索を行う必要が生じる。このため、検索範囲となるデータベースの絞り込みが不十分となおそれがある。これに対し、1の末端データベース13に格納されている全ての登録データが同じ仮想データテーブルに属していると、他の仮想データテーブルの影響を受けることなく、検索範囲となるデータベースの絞り込みが行えるので、さらに効率的にデータを検索できる。
 具体的には、当該データベース管理システム1は、入力手段20が末端データベース13と共に各エッジコンピュータに分散して配置されている場合、エッジコンピュータのカバーする範囲として物理的な位置情報を用い、各エッジコンピュータのカバーする範囲内にあるセンサ21のデータを、そのエッジコンピュータに配置されている末端データベース13に登録するとよい。このように登録を行うと、カバー範囲が同一のデータが全て同一の末端データベース13に登録され、かつそれらのデータに関連する共通情報が場所となる。
 また、中間データベース12は、複数のエッジコンピュータのカバー範囲を包含することとなる。さらに、中間データベース12のカバー範囲が大きくなり過ぎる場合は、中間データベース12自体を階層化することが可能である。このとき、図3に示すように、階層数は、例えば登録データ数に応じて末端データベース13ごとに変えることができる。あるいは、中間データベース12を2群に分けて、例えば場所及び時刻の2次元で登録データに関連する共通情報を管理してもよい。
 場所の設定方法としては、緯度、経度情報の物理情報を用いることが好ましい。緯度、経度情報はGPS衛星からの情報により比較的容易に取得できる。これらの情報は、対応する登録データとともに上記実データテーブルに加えられる。このとき、上記共通情報は上記場所であり、主データベース11又は中間データベース12が、上記場所が予め定められた一定の領域(カバー範囲)により規定される範囲内にあることによりグループ化されている仮想データテーブルを有する。
 図3の例では、各末端データベース13へ至る検索経路は、主データベース11を起点として、(→広域A→中域a)、(→広域A→中域b)、(→広域B→中域c→小域1)、(→広域B→中域c→小域2)、(→広域C)の5つで表され、それぞれが細分化された場所を共通情報として持つこととなる。また、例えば中間データベース12の中域cでは、小域1と小域2とを合わせた場所が共通情報となる。
 これらの検索径路は、例えば新たな末端データベース13が階層化データベース10に接続された場合等に、上記共通情報と共に末端データベース13側から主データベース11側へ集められ、仮想データテーブルが構成される。
 構成された仮想データテーブルは、主データベース11により各中間データベース12及び各末端データベース13に、共通マスターテーブルとして伝達されるとよい。このように各中間データベース12及び各末端データベース13に上記共通マスターテーブルを持たせることで、どのデータベースからでも検索範囲となるデータベースの絞り込みが行えるようになる。
 あるいは、各中間データベース12及び各末端データベース13に、上記仮想データテーブルのうち、該当する中間データベース12又は末端データベース13を検索径路に含む部分のみを分散テーブルとして伝達してもよい。このように各中間データベース12及び各末端データベース13に上記分散テーブルを持たせることで、データベースの絞り込み機能を維持しつつ、伝達するデータ量を削減することができる。なお、この場合は検索径路及び共通情報が、末端データベース13側から主データベース11側へ集められる際に、各中間データベース12の分散テーブルに情報を付加することが可能であるので、必ずしも主データベース11から伝達する必要はない。
(具体例2)
 図4に、上記仮想データテーブルの共通情報が上記登録データが検知された時間である場合の構成例を示す。この構成例では、末端データベース13は、実データテーブル13aと、中期統計テーブル13bと、長期統計テーブル13cと、異常値データテーブル13dと、マスターテーブル13eと、AIモジュール13fとを有する。なお、図4では主データベース11と末端データベース13との間に1つの中間データベース12を有する場合を示しているが、主データベース11と末端データベース13との間の中間データベース12の数は1に限定されるものではなく、2以上であってもよい。また、中間データベース12は複数の中間データベース12又は末端データベース13を直下層データベースとして有することもできる。
 実データテーブル13aは、センサ21により検知される登録データを時系列に沿って記憶する。この実データテーブル13aは、例えばサイクリックテーブルとして実現され、従って至近から一定時間前(例えば1時間前)までの登録データを記憶することができる。
 中期統計テーブル13bは、実データテーブル13aから後述するAIモジュール13fにより異常値を取り除かれた複数の登録データを圧縮して中期的な(例えば2ヶ月間の)時系列データを記憶する。同様に長期統計テーブル13cは、中期統計テーブル13bの時系列データをさらに圧縮して長期的な(例えば18ヶ月間の)時系列データを記憶する。また、異常値データテーブル13dは、AIモジュール13fにより取り除かれた登録データの一部又は全部を記憶する。これらのテーブルは、実データテーブル13aと同様にサイクリックテーブルとして実現できる。
 この構成にあっては、4つのテーブルが異なる時間あるいは種別に属するため、各テーブルに異なる共通情報が設定される。例えば実データテーブル13aの共通情報は、「現在」であり、中期統計テーブル13bでは「中期」であり、長期統計テーブル13cでは「長期」であり、異常値データテーブル13dでは「異常値」である。このように当該データベース管理システム1では、1つの末端データベース13が、異なる共通情報を有する複数の仮想データテーブルにグループ化されていてもよい。
 また、上記4つのテーブルは、必ずしも全ての末端データベース13が有していなくともよい。つまり、一部の末端データベース13が、上記4つのテーブルの一部を有していなくともよい。当該データベース管理システム1では、末端データベース13が有しているテーブルの種類については、仮想データテーブルで管理することができるので、このように一部のテーブルを有していない末端データベース13が混在しても、データを効率的に検索することができる。
 上記4つのテーブルの登録データに至る検索径路及び共通情報によりグループ化した仮想データテーブルを作成するため、これらのデータは、直上の階層にある中間データベース12に送られ、さらに主データベース11に送られる。主データベース11では、各末端データベース13から集められた情報から、仮想データテーブルが構成される。
 マスターテーブル13eは、当該データベース管理システム1の各データベースに共通する情報を格納するテーブルであり、具体例1で説明した共通マスターテーブルを含む。このマスターテーブル13eは、主データベース11により生成され、各末端データベース13に伝達されたものである。
 このマスターデータテーブル13eには、AIモジュール13fで必要なパラメータ、つまり機械的学習による推定モデルを伝達するとよい。主データベース11は、各末端データベース13でのAIモジュール13fの結果を参照し得る位置にあるため、全ての末端データベース13での結果を参照しつつ、推定モデルの精度を高め、その情報を各末端データベース13でのAIモジュール13fに反映させることができる。従って、比較的短期間で各末端データベース13でのAIモジュール13fの精度が高まる。
 AIモジュール13fは、実データテーブル13aから異常値データ(非日常データ)を取り除くフィルタとして機能する。登録データの中期的あるいは長期的傾向を捉えるには非日常データは取り除かれることが好ましい。しかし、非日常データ自体を価値のあるデータとして捉えることが可能であるため、AIモジュール13fは、異常値データの中でも価値の高いものを判断し、異常値データテーブル13dへ優先的に記憶させる。
 なお、AIモジュール13fに代えて、従来の決定論的な評価モジュールにより同様の判定をさせることもできる。
(具体例3)
 具体例2では、センサ21で検知されるデータそのものを登録データとして使用する例を示したが、AIモジュール等を活用し、識別された情報として末端データベース13に登録データを格納することもできる。
 このような事例として、例えば果実の収穫情報を用いて説明する。収穫した果実から得られる物理情報は、例えば色合い、糖度等である。これに対し、AIモジュールは、これらの物理情報から果実の味覚(例えばみずみずしい、こくがある等)についての抽出を行う。つまり、AIモジュールは、物理情報から味覚情報のインデックスを抽出し、これを共通情報として末端データベース13を構築する。このように構成することで、単なる物理情報とは抽象度が異なる情報を検索対象として、高精度かつ高効率に検索を行うことができる。
 なお、この構成にあっては、センサ21で検知される物理情報のデータテーブルは必ずしも必要としないが、物理情報として合わせてデータテーブルに格納しておいてもよい。
<データアロケーション手段>
 データアロケーション手段30は、階層化データベース10の階層構造を変更する。ここで「階層構造を変更する」とは、中間データベース12及び末端データベース13のネットワーク接続関係を変更することに加え、登録データが格納されているデータベースを変更することも含み、さらに登録データが1つのデータベースに格納されているところ、2つのデータベースに格納されるようにすること等のデータ移動も含む。
(ネットワーク接続変更機能)
 データアロケーション手段30は、ネットワーク接続関係の変更機能を有する。図5は、このネットワーク接続関係を変更する例であり、上図が変更前、下図が変更後の状態を示す。この例では、接続変更する末端データベース13gが変更前には第1中間データベース12aの直下層に属していたところ(図5上図)、データアロケーション手段30により第2中間データベース12bの直下層に属するように(図5下図)ネットワーク接続関係が変更されている。例えば第1中間データベース12aに属する登録データ数が第2中間データベース12bに属する登録データ数よりも極端に多くなった場合等に、このような接続変更を行うことで、それぞれの中間データベース12が管理する登録データ数を均衡させることができる。これにより登録データ数が多い中間データベース12を含む特定の通信経路に混雑が発生することを回避でき、結果として登録データを効率的に検索することができるようになる。
 ネットワーク接続関係に変更が生じると、仮想データテーブルにも変更が生じるため、仮想データテーブルは、接続変更と同期して更新される。なお、ネットワーク接続関係の変更は、仮想データテーブルの変更が最小となるように行われることが好ましい。仮想データテーブルの更新量を削減するとともに、再構築後に登録データの検索効率の低下を抑止できる。
 なお、図5では末端データベース13のネットワーク接続関係を同階層の他の中間データベース12へ接続変更する場合を示しているが、末端データベース13を異なる階層の中間データベース12へ接続変更してもよい。また、2つの末端データベース13同士の入替を行ってもよい。中間データベース12を対象として同様の接続変更を行うこともできる。
(データベース複製機能)
 また、データアロケーション手段30は、仮想データテーブルと、その仮想データテーブルに属する登録データとの複製を、他の末端データベース13又は中間データベース12に作成する複製機能を有する。
 具体的には、末端データベース13に格納されている仮想データテーブル及び登録データを、上位に位置する中間データベース12に複製したり、他の末端データベース13に複製したりするとよい。なお、複製に伴い登録データの格納されているデータベースに変更が生じるため、複製される仮想データテーブルは、同期して更新される。
 このように複製された登録データ及び仮想データテーブル(以下、単に「複製データ」ともいう)は、バックアップデータとして活用することが可能である。階層化データベース10は、一般に巨大なデータベースとなり、多くの末端データベース13に登録データが分散配置されることとなる。このため通信障害が発生したり、データ消失が発生したりする末端データベース13が発生する不具合に遭遇する確率も低くない。このような場合にあっても、複製データがあれば、これを代替として検索を実行することができる。つまり、このようにデータアロケーション手段30に複製機能を持たせることで、階層化データベース10の一部に通信障害等が生じた場合に検索が不可能となることを抑止できる。
 上述の観点から、複製データは、元のデータとは物理的に異なるエッジコンピュータ上にあることが好ましい。また、短時間で複製を可能とするため、この複製機能は主データベース11のデータ処理を行うコンピュータを介さずに行うことが好ましい。
 また、階層化データベース10が複製データを有することは、同じ登録データに対して複数の径路選択が可能であること、すなわち検索径路が多重化されていることを意味する。従って、登録データの検索において、いずれの登録データ(元のデータか、複製データか)を検索対象とするか制御することで、通信負荷の低減が可能となる。つまり、このようにデータアロケーション手段30に複製機能を持たせることで、検索径路の多重化が容易に行えるので、通信負荷の低減が容易に行うことができる。
 データ保護という観点からは、直上にある中間データベース12に複製データを配置すると効率的である。しかし、直上の中間データベース12が複製データを配置するに十分なストレージの空き容量を有しているとは限らない。このような場合に対応すべく、データアロケーション手段30は、上位の中間データベース12を遡ってストレージの空き容量が十分にあり、登録データを複製可能な中間データベース12を探索する探索機能を有するとよい。当該データベース管理システム1では、この配置すべき中間データベース12は仮想データテーブルを利用して容易に把握することができる。
 また、主データベース11又は主データベース11に加えて中間データベース12が、そのデータベースよりも下位の中間データベース12及び末端データベース13のストレージ空き容量を記憶する容量記憶領域を有しているとよい。このような容量記憶領域を有することで、上記探索機能の探索効率を高めることができる。
 この場合、主データベース11が中間データベース12及び末端データベース13のストレージ空き容量を監視する監視機能を有し、複製データの増減等に伴い各データベースの容量記憶領域の情報を更新するとよい。
(データ領域拡張機能)
 さらに、データアロケーション手段30は、末端データベース13等のストレージが不足する場合においても、格納すべきデータ量を拡張する機能を提供することもできる。
 具体的には、ある末端データベース13のストレージが不足しており、近傍の他の末端データベース13のストレージに余裕がある場合、データアロケーション手段30は、これらをまとめて1つの仮想ストレージと定義し、アドレス空間をまとめて制御できるようにアロケーションする。このようにアドレス空間をまとめて制御することで、ある末端データベース13に格納すべきデータの一部を余裕がある他の末端データベース13に格納することが可能となる。つまり、データアロケーション手段30は、上記仮想ストレージで容量管理を行うので、仮想ストレージ全体での容量管理を行えるため、ストレージの利用効率が高められる。
 登録データの格納に上述したサイクリックテーブルを用いる場合、例えばデータ保持の有効期間を指定して適宜データの量を制限し、有効期間を過ぎたデータは削除される方式でデータ量が増え過ぎることを抑止することができるが、このデータ領域拡張機能を利用することで、上記有効期間を動的に拡張させることが容易に行えるようになる。
 以上説明したように、当該データベース管理システム1では、このように階層化データベース10の階層構造を変更するデータアロケーション手段30を備えることで、検索径路の最適化や多重化を行うことができるので、登録データをさらに効率的に検索することができるようになる。
<セキュリティ>
 階層化データベース10では、上述のように仮想データテーブルを構成するための検索径路情報の通信やデータアロケーション手段30による複製やネットワーク接続変更の制御は、有線あるいは無線方式でのネットワークを介して行われることとなる。このようなネットワーク経由の情報のやりとりでは、セキュリティ管理が必要とされる。
 ネットワークを介して通信される情報(以下、単に「通信情報」ともいう)は、一般に暗号化されてネットワークを伝搬し、各データベースで秘密鍵等を利用して平文化され、情報操作が行われた後、再度暗号化されて送信される。当該データベース管理システム1では、この暗号化処理に加えて、以下のような対策を講じることが可能である。
 セキュリティ対策として、複数の中間データベース12を経由する検索径路において、検索径路の情報を各中間データベース12間で比較する機能を有するとよい。複数の中間データベース12を経由する場合、その検索径路の情報には、ともに経由する中間データベース12の情報が含まれるから、共通部分が存在する。従って、共通部分が存在しない検索径路の情報が含まれる場合、外部から侵入した不正な情報であると判断することができる。このように階層間で横断的にセキュリティチェックを行うことで、通信情報の信頼性を高められる。
 また、各中間データベース12での情報操作を暗号空間内部で実行してもよい。中間データベース12での情報操作は、一般に情報の付加であるから、必ずしも平文化しなくとも実行することが可能である。このように情報が通過する中間データベース12で平文化しないことで、通過情報を平文で読み取られることがなくなるため、データの秘匿性を高めることができる。
 秘密鍵は、通常公開鍵と秘密鍵とから構成される。当該データベース管理システム1では、公開鍵と秘密鍵とに加え、登録データが末端データベース13に登録されている構成を利用した径路鍵の設定が可能である。ここで「径路鍵」とは、主データベース11から末端データベース13に至る検索径路を利用した鍵である。各データベース(中間データベース12及び末端データベース13)は、上述したように仮想データテーブル又は分散テーブルを有する。これらのテーブルにはそのデータベースを通過する検索径路が格納されている。一方、実際の検索時に検索径路を順に記録していくと、その径路は上記テーブルに格納されている検索径路のいずれかと一致すべきものである。この性質を利用して、正しい径路をたどってきている検索径路であるか否かをチェックすることができる。このように径路鍵を加えることで、秘匿性をさらに向上することができる。
<検索手段>
 検索手段40は、登録データから検索条件に合致する合致データを検索する。上記検索条件は、図1に示すように、例えば携帯端末MからクエリQとして発信される。
 一般にはクエリQは、主データベース11のデータ処理を行うコンピュータ(以下、「主コンピュータ」ともいう)に送信され、主コンピュータから下位階層に位置する中間データベース12、末端データベース13と順次下層に向かって検索が行われる。つまり、主データベース11を起点とした検索が行われる。これに対し、当該データベース管理システム1では、検索手段40が、仮想データテーブルの共通情報が検索条件に含まれる中間データベース12又は末端データベース13を検索の起点とする。
 検索手段40の検索は、抽出工程と、起点選択工程と、登録データ検索工程とを備える検索方法により行うことができる。上記共通情報が場所である図3の階層化データベース10で、データテーブルの共通情報「中域c」が検索条件に含まれる場合を例にとり、検索手段40による検索手順を説明する。
(抽出工程)
 この場合、検索手段40は、まず共通情報「中域c」が含まれる中間データベース12(検索対象中間データベース12c)及びその下層に位置する2つの末端データベース13(第1検索対象末端データベース13h及び第2検索対象末端データベース13i)を抽出する。
 この抽出は、仮想データテーブルが共通マスターテーブルとして各データベースに展開されている場合は、任意のデータベースにアクセスし、共通マスターテーブルを参照することで特定できる。
 この場合、検索手段40は、至近の、つまりクエリQを発信した携帯端末Mに近いデータベースにアクセスするとよい。共通情報が「場所」である場合、クエリQを発信した携帯端末Mの近傍の情報を検索している可能性が高く、アクセスしたデータベースが共通情報「中域c」が含まれるデータベースである確率が高い。従って、アクセスしたデータベースをそのまま起点とできるので、検索効率を高められる。
 なお、仮想データテーブルが共通マスターテーブルとして各データベースに展開されていない場合は、主データベース11にアクセスし、仮想データテーブルを直接参照するとよい。
(起点選択工程)
 次に、検索手段40は、抽出したデータベースの中から検索の起点を選択する。この場合、3つのデータベースのいずれを起点としてもよいが、末端データベース13の1つを起点とするとよい。末端データベース13を起点とする方が、後述する階層制御を行い易い。
(登録データ検索工程)
 検索手段40は、選択した末端データベース13を起点として検索を行う。
 検索手段40が第1検索対象末端データベース13hを検索の起点とした場合、まず検索手段40は、この第1検索対象末端データベース13hの登録データの検索を行い、検索条件に合致する合致データを抽出する。合致データの抽出は、実際には第1検索対象末端データベース13hのデータ処理を行う末端コンピュータにより行われる。
 次に、検索手段40は、検索対象中間データベース12cを経て第2検索対象末端データベース13iの登録データの検索を行う。検索手段40は、同様に検索条件に合致する合致データを抽出し、検索対象中間データベース12cを経て第1検索対象末端データベース13hの抽出結果と合わせて、携帯端末Mへ検索結果を送信する。
 検索対象中間データベース12cを起点とする場合は、同様に検索手段40は、下位階層にある第1検索対象末端データベース13h及び第2検索対象末端データベース13iの登録データの検索を行い、携帯端末Mへ検索結果を送信することとなる。
 階層化データベース10は、一般に巨大なデータベースとなり、これに対して発信されるクエリQも同時に多数となる場合が想定される。このため、検索手段40には、複数の検索条件を同時に実行することが求められる場合がある。
 このように検索手段40が複数の検索条件を同時に実行する際、上記起点を互いに異なる末端データベース13とするとよい。例えば上述の例で、データテーブルの共通情報「中域c」が検索条件に含まれる2つのクエリQ(第1クエリ及び第2クエリ)が同時に発信された場合、第1クエリに対しては、検索の起点を第1検索対象末端データベース13hとし、第2クエリに対しては、第2検索対象末端データベース13iとするとよい。
 この場合、第1クエリと第2クエリとでは起点となる末端データベース13が異なるため、直上の階層にある検索対象中間データベース12cとは異なる通信経路で通信することとなる。一方、第1クエリ及び第2クエリの検索の起点を同じ末端データベース13とした場合、直上の階層にある検索対象中間データベース12cとは同じ通信経路で通信することとなるから、この通信経路は2倍混在することとなる。また、第1クエリ及び第2クエリの検索の起点を主データベース11とすると、検索対象中間データベース12cへ至るまでの径路は同一であるので、この間の全ての通信経路が2倍混雑することとなる。
 このように検索手段40が複数の検索条件を同時に実行する際、上記起点を互いに異なる末端データベース13とすることで、特定のデータベース間での通信が混雑することを避けつつ、並列して検索を実行できるので、データをさらに効率的に検索することができる。特に主データベース11を起点とすると、検索条件が異なる場合であっても上流の通信経路は重複する場合が多く通信混雑も大きいから、起点を互いに異なる末端データベース13とする効果は高い。
 また、検索手段40が合わせて同時に実行できるクエリQの数を制御したり、末端データベース13から遡ることができる階層数を制御したりすることも通信混雑の緩和に有効である。これらの制御は、各階層間の通信負荷状況に応じてダイナミックに変更してもよい。
 当該データベース管理システム1では、一部のデータベースを抽出して検索を行うため、階層化データベース10の一部、特に検索対象とはならないデータベース間の通信負荷が低くなり易い。この通信負荷が一定以下となったことを検出して、これらのデータベース間の自己診断を行ってもよい。この自己診断は例えば検索手段40に上記データベース間を活性化させるダミーの検索をさせることで行える。このような自己診断機能を有することで、検索径路の健全性を担保することができる。
 また、検索手段40が、上述したデータアロケーション手段30により複製された複製データを活用して検索を行うとよい。つまり、検索手段40の対象である階層化データベース10に登録されている登録データとして、上記複製された登録データが含まれるとよい。このように検索手段40の対象である階層化データベース10に登録されている登録データに上記複製された登録データを含めることで、複製された登録データをその複製元の登録データと置き換えて利用することが可能となる。このため、利用する登録データとして複数の選択肢を持つことができるので、通信負荷の低減をさらに容易に行える。
<利点>
 当該データベース管理システム1は、登録データに関連する共通情報によりグループ化した仮想データテーブルを有しており、検索範囲となるデータベースを絞り込むので、直下層データベース及びこの直下層データベースに間接に接続される中間データベース12や末端データベース13との間との通信量を削減できる。また、当該データベース管理システム1は、検索条件に上記共通情報が含まれる中間データベース12又は末端データベース13を検索の起点とする。このように共通情報を用いて末端側から検索を開始することで末端データベース13やこの末端データベース13と接続関係のある一部の中間データベース12を検索するのみで検索を実行することができる。従って、当該データベース管理システム1は、登録データの検索において処理量が膨れ上がることを抑止し、かつ登録データを効率的に検索することができる。
〔第2実施形態〕
 図6に示すデータベース管理システム2は、階層化されたデータベースを制御する階層化されたコンピュータシステムである。当該データベース管理システム2は、階層化データベース10と、入力手段20と、データアロケーション手段30と、検索手段41と、仮想化手段50とを備える。
<階層化データベース>
 階層化データベース10は、図2に示すように、1の主データベース11と、この主データベース11と直接又は中間データベース12を介して間接に接続される複数の末端データベース13とを有する。
 末端データベース13は、複数の登録データを格納している。
 主データベース11、中間データベース12及び末端データベース13は、第1実施形態の主データベース11、中間データベース12及び末端データベース13と同様に構成できるので、詳細説明を省略する。
<入力手段>
 入力手段20は、第1実施形態の入力手段20と同様に構成できるので、詳細説明を省略する。
<データアロケーション手段>
 データアロケーション手段30は、第1実施形態のデータアロケーション手段30と同様に構成できるので、詳細説明を省略する。
<セキュリティ>
 階層化データベース10のセキュリティ管理は、第1実施形態のセキュリティ管理と同様とすることができるので、詳細説明を省略する。
<仮想データテーブル>
 主データベース11又は中間データベース12は、これに直接接続されている下位側の中間データベース12又は末端データベース13である直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間データベース12又は末端データベース13に格納されている上記登録データへ至る検索経路を、上記複数の登録データに関連する共通情報によりグループ化した仮想データテーブルを有している。
 上記仮想データテーブルは、第1実施形態の仮想データテーブルと同様に構成することができる。第2実施形態では、主データベース11又は中間データベース12が、共通情報の属性が異なる複数の上記仮想データテーブルを有する。
 ここで、「属性」とはグループ化される共通情報に共通する特徴を指す。例えば第1実施形態の具体例1では、共通情報は広域、中域、小域の3つであり、共通する特徴つまり属性は、登録データが検知される「場所」である。第1実施形態の具体例2であれば、共通情報は現在、中期、長期、異常値の4つであり、属性は、登録データが検知される「時間」である。以下、仮想データテーブル数を2とし、異なる属性が上述の「場所」及び「時間」である場合を例に取り説明するが、仮想データテーブル数や属性はこれに限定されるものではない。
 当該データベース管理システム2では、上記属性ごとに階層化データベース10の階層構造が異なるものである。例えば属性が「場所」である場合、階層化データベース10の階層構造は、図3のように構成される。一方、属性が「時間」である場合、階層化データベース10の階層構造は、図3とは異なり図7のように構成される。具体的には、両者は、1つの末端データベース13iの直上の階層にある中間データベース12が異なっている。
 このとき、例えば図7に示すように、同一の共通情報を有する末端データベース13が同一の中間データベース12の下位に属するように階層構造を構成するとよい。このように構成すると、特定の中間データベース12に至った時点で、その下位に検索条件に合致する登録データが存在しないことが判断できる機会が増える。その場合、さらに下位のデータベースは検索を打ち切ることができるので、さらに効率的にデータを検索できる。当該データベース管理システム2では、属性ごとに階層化データベース10の階層構造を異なるものとしているので、属性ごとに階層構造を最適化できる。従って、探索を打ち切れる機会が増え、データ検索の効率化を向上することができる。
 この2つの階層構造は、属性に応じてそれぞれ階層化データベース10に登録されていてもよいし、例えばデータアロケーション手段30のネットワーク接続変更機能を用いて、使用する属性あるいは検索条件に応じてダイナミックに切り替えてもよい。
 ダイナミックに階層構造を切り替える場合、検索条件に対応して階層ごとに属性の抽象度を変えて階層構造を構成するとよい。つまり、階層の上位にある中間データベース12に対しては分類が少ない概念的なタグを与え、下位へ行くに従ってより具体的、物理的な意味づけをしたタグを与える構成とするとよい。このように構成すると比較的早い段階で多くのデータベースを検索から除外できるようになるのでデータ検索の効率化を向上することができる。
 その具体例として、例えば遊園地に入場した人の画像の中から特定の(例えば迷子の)画像を抽出する場合を想定する。検索条件が例えば「2時半頃に入門した赤い服を着た女の子」を含むような場合、上位側から主データベース11の直下の中間データベース12は、性別をタグとして階層化する。そうすると、およそ半数の登録データが属すると期待される男性を共通情報とするデータベースは早々に検索を打ち切ることができる。同様に、性別をタグとした中間データベース12の直下の中間データベース12は時間帯、さらにその直下の中間データベース12又は末端データベース13は服の色をタグとして構成するとよい。このように構成すると、上記検索条件に対して効率的にデータを検索できる階層構造とすることができる。
<検索手段>
 検索手段41は、階層化データベース10に登録されている登録データから検索条件に合致する合致データを検索する。検索手段41は、上記共通情報が上記検索条件に含まれる中間データベース12を検索の起点とする。上記検索条件は、図6に示すように、例えば携帯端末MからクエリQとして発信される。
 当該データベース管理システム2では、検索手段41が、上記属性が上記検索条件に含まれる階層構造を選択する選択機能と、上記起点に検索要求を出す要求機能と、上記検索要求を受けた中間データベース12に対し、この中間データベース12と直接に接続される主データベース11、中間データベース12又は末端データベース13のうち上記検索要求を出した要求元を除く全てのデータベースに上記検索要求を伝達する伝達機能と、上記検索要求を受けた主データベース11、中間データベース12又は末端データベース13に対し、上記検索要求に対する結果を集計して上記要求元へ返す集計機能とを有する。
(選択機能)
 上記選択機能は、具体的には上記検索条件に「場所」が含まれる場合は、図3に示す階層化データベース10の階層構造を選択し、上記検索条件に「時間」が含まれる場合は、図7に示す階層化データベース10の階層構造を選択する。なお、上記検索条件に「場所」及び「時間」が両方含まれる場合、いずれも含まれない場合は、どちらの階層構造を選択してもよい。
(要求機能)
 上記要求機能は、まず第1実施形態の起点選択工程と同様にして上記起点を選択する。このとき、上記検索条件に含まれる共通情報のうち、上記選択機能で選択した階層構造の属性に対応する共通情報を抽出し、この少なくとも共通情報が含まれる中間データベース12を起点とすることが好ましい。
 次に、上記要求機構は、上記起点に対して検索条件を伝える。
(伝達機能)
 上記伝達機能は、再帰的に動作する。
 まず、上記起点となる中間データベース12に対し、この起点と直接に接続される主データベース11、中間データベース12又は末端データベース13全てに検索要求を伝える。具体的には、検索条件を伝える。なお、上記検索要求を出した要求元のデータベースは除かれるが、上記起点への検索要求はクエリQから発せられるものであり、データベースではないから、除外されるデータベースはない。
 検索条件を伝えられた中間データベース12等はこの中間データベース12と直接に接続される主データベース11、中間データベース12又は末端データベース13のうち上記検索要求を出した要求元を除く全てのデータベースに上記検索要求を伝達する。
 なお、このとき伝達すべき下位のデータベースについて、さらにその下位に位置するデータベースも含めて上記検索条件に合致する登録データが登録されていない場合、上記検索要求の伝達にかえて、該当する登録データがないことを要求元のデータベースに返すとよい。以下、このようなデータベースを終端データベースともいう。
(集計機能)
 上記検索要求が末端データベース13又は終端データベースまで伝達されると、上記検索要求をさらに伝達するデータベースは存在しない。この場合、上記集計機能は、上記検索要求に合致する登録データを集計し、その集計結果を要求元のデータベースに返す。
 要求元のデータベースは、自身が検索要求を発した全てのデータベースから集計結果が返ってくるのを待ち、さらに要求元のデータベースに伝える。
 このように集計結果を伝えていくと、最後に上記起点の中間データベース12に集計結果が集約される。そして、上記起点の中間データベース12は、上記起点への検索要求元であるクエリQに上記集計結果を送り、一連の検索を完了することができる。
<仮想化手段>
 仮想化手段50は、図8に示すように、複数の末端データベース13を、その地理的情報をもとにグループ化し、1つの仮想化末端データベース13xとする。構築された仮想化末端データベース13xは、1つの末端データベース13として取り扱うことができる。なお、図8では、2つの末端データベース13をグループ化し、1つの仮想化末端データベース13xを構成する例を示しているが、グループ化する末端データベース13の数及び仮想化末端データベース13xの数は、これに限定されるものではない。
 このグループ化は上述のように地理的情報をもとに行われる。すなわち近接する末端データベース13が1つの仮想化末端データベース13xにグループ化される。具体的に説明すると、図9に示すように、主データベース11、中間データベース12及び末端データベース13は、例えば日本全国あるいは世界中に地理的に分散して存在し、これらがネットワークにより結ばれている。これらの中から比較的物理的距離が近いもの、例えば破線内の末端データベース13が1つの仮想化末端データベース13xとして仮想化されることとなる。このグループ化の基準は、例えば経度緯度が一定の範囲内にあるものとしてもよいし、市町村名等の地理的区分によってもよい。
 なお、図9では、2次元平面、つまり1層でデータベースの近接空間を規定しているが、複数の層で規定したものとすることもできる。例えば繊維生地を対象としたデータベース管理システムであって、1層目が生地の材質、2層目が手触り感、3層目が高級感を表現している場合を想定すると、データベース管理システムを3層構造として、各層で主データベース、中間データベース及び末端データベースを有する階層化データベースを構築するとよい。このように複数の層で構成すると、例えばAIモジュールが登録データから情報を効率的に抽出することが可能となる。また、複数の層を跨いで検索を行うことも可能である。
 図10を用いて、仮想化データベース13yについて詳説する。なお、図10の仮想化末端データベース13yでは、4つの末端データベース13がグループ化されているが、末端データベース13の数を4に限定するものではない。
 仮想化末端データベース13yに含まれる複数の末端データベース13は、仮想化データベース13y内で相互に通信可能な通信リンクを有するとよい。図10では、4つの末端データベース13間にはリング状の通信リンクが構成されており、互いに通信可能である。上記通信リンクとしては、リング状以外にもメッシュ状、星状等種々の構成を採用可能である。このように通信リンクが構成されることで、仮想化末端データベース13yを1つの末端データベース13として扱うことが容易化される。
 仮想化手段50が、仮想化末端データベース13yに含まれる複数の末端データベース13を第1データベース群G1及び第2データベース群G2の2群に分割し、第1データベース群G1及び第2データベース群G2が仮想化末端データベース13yに含まれる全登録データをそれぞれ格納するように再構成する冗長化機能を有するとよい。このように仮想化手段50に冗長化機能を持たせることで、利用する登録データとして複数の選択肢を持つことができるので、通信負荷の低減をさらに容易に行える。
 仮想化手段50は、図11に示すように、さらに中間データベース12aを仮想化末端データベース13xに取り込むことも可能である。図11では、便宜的に図8に示す2つの末端化データベース13のグループ化後に中間データベース12aを取り込む処理を行っているが、これらは一度に行ってもよい。
 また、仮想化手段50は、必要に応じて仮想化末端データベース13xの構築と同時に仮想化末端データベース13xの階層構造を変えてもよい。例えば図11では、仮想化末端データベース13xは、本来主データベース11の直下に配置されるべきところ、中間データベース12bの直下に配置されるように階層構造を変えている。このような階層構造の変更は、各データベースが共通情報によるグループ化が進むように行われるとよい。
<利点>
 当該データベース管理システム2は、検索手段41が要求機能、伝達機能及び集計機能を有するので、どの中間データベース12又は末端データベース13を検索の起点としても、登録データを効率的に検索することができる。
 また、当該データベース管理システム2は、属性ごとに階層化データベース10の階層構造を異なるものとし、検索手段41が上記属性が検索条件に含まれる階層構造を選択するので、登録データをさらに効率的に検索することができる。
 さらに当該データベース管理システム2は、仮想化手段50を備える。仮想化手段50により地理的情報をもとに末端データベース13をグループ化することで、主データベース11から見たみかけのデータベース数を削減できるので、登録データをさらに効率的に検索することができるようになる。
[その他の実施形態]
 上記実施形態は、本発明の構成を限定するものではない。従って、上記実施形態は、本明細書の記載及び技術常識に基づいて上記実施形態各部の構成要素の省略、置換又は追加が可能であり、それらは全て本発明の範囲に属するものと解釈されるべきである。
 上記実施形態では、当該データベース管理システムがデータアロケーション手段を備える場合を説明したが、データアロケーション手段は必須の構成要素ではなく、データアロケーション手段を備えないデータベース管理システムも本発明の意図するところである。
 また、上記実施形態では、データアロケーション手段が、ネットワーク接続関係の変更機能及び複製機能の両方を有する場合を説明したが、いずれか一方のみの機能を有するものも本発明の意図するところである。
 上記実施形態では、登録データの全部が末端データベースに格納されている場合を説明したが、これは必須の構成要件ではなく、本発明は、登録データの一部が末端データベースに格納されている場合を含む。つまり、主データベースや中間データベースが登録データを格納することを妨げるものではない。例えば当該データベース管理システムが、中間データベースにセンサからのデータが収集される機構を有してもよい。ただし、データ処理の効率性の観点から、主データベースや中間データベースが格納する登録データ数が末端データベースに格納される登録データ数に比べて少ないことが好ましく、登録データの全部が末端データベースに格納されていることがより好ましい。
 上記実施形態では、入力手段がセンサを有する場合を説明したが、例えば入力手段はセンサに代えてキーボード等のヒューマンインターフェイスであってもよい。ヒューマンインターフェイスを用いることで、レストランの情報といった人為的に入力される情報を登録データとすることができる。また、入力手段は必須の構成要素ではなく、省略することも可能である。この場合、階層化データベースには予め構築されたデータベースが登録される。予め構築されたデータベースを登録する方法としては、例えばDVD等の媒体による方法やネットワークによる配信を挙げることができる。
 当該データベース管理システムは、図12に示すような多重型の階層化データベース10aを管理することもできる。この階層化データベース10aは、図1の当該データベース管理システム1の階層化データベース10に代えて用いることができる。
 多重型の階層化データベース10aは、図2に示す階層化データベース10の末端データベース13の一部又は全部がサブ階層化データベース14に置き換わったものである。つまり、当該データベース管理システムは、1の主データベース11と、この主データベース11と直接あるいは1又は複数の中間データベース12を介して間接に接続される複数の末端データベース13及び1又は複数のサブ階層化データベース14とを有する階層化データベース10aを備える。
 サブ階層化データベース14は、1の主サブデータベース14aと、この主サブデータベース14aと直接あるいは1又は複数の中間サブデータベース14bを介して間接に接続される複数の末端サブデータベース14cとを有する。サブ階層化データベース14は、このサブ階層化データベース14を直下層データベースとする主データベース11又は中間データベース12と主サブデータベース14aを介して接続されている。
 サブ階層化データベース14と、このサブ階層化データベース14を直下層データベースとする主データベース11又は中間データベース12との接続方式は、特に限定されず、例えば公知のゲートウェイ方式を採用してもよい。ゲートウェイ方式を採用することで、サブ階層化データベース14を一つの独立したクローズドエリアとして規定することもできる。
 サブ階層化データベース14を一つの独立したクローズドエリアとして規定する場合、このサブ階層化データベース14に対して強度の異なるセキュリティで管理することが可能となる。また、通信方式においても、異なる通信方式を採用することが可能となる。このように多重型の階層化データベース10aを採用することで、異なるセキュリティ管理や通信方式を構成することが容易化される。特に通信方式では、サブ階層化データベース14ごとにそのネットワーク負荷に応じて通信周波数等を変更することで、階層化データベース10a全体の通信混雑を緩和することが可能となる。
 サブ階層化データベース14は、末端サブデータベース14cが、複数の登録データを格納しており、主サブデータベース14a又は中間サブデータベース14bが、これに直接接続されている下位側の中間サブデータベース14b又は末端サブデータベース14cである直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間サブデータベース14b又は末端サブデータベース14cに格納されている上記登録データへ至る検索経路を、上記複数の登録データに関連する共通情報によりグループ化した仮想サブデータテーブルを有する。
 仮想サブデータテーブルは、サブ階層化データベース14内でのみ使用されるデータテーブルである。上位の階層化データベース10aにとっては、サブ階層化データベース14は、1つの末端データベース13として機能する。ただし、階層化データベース10aでサブ階層化データベース14が有する共通情報は、サブ階層化データベース14の主サブデータベース14aが有する共通情報の一部又は全部と一致する。
 図12では、階層化データベース10aは1つのサブ階層化データベース14を有しているが、その数は1に限定されるものではなく、2以上であってもよい。また、サブ階層化データベース14がさらにサブ階層化データベースを有してもよい。
 サブ階層化データベース14は、例えば車両等の移動体に搭載されていてもよい。このとき、上記移動体の移動によりサブ階層化データベース14が接続されるべき主データベース11又は中間データベース12が変わる場合がある。このような場合には、例えばデータアロケーション手段によりネットワーク接続関係を最適なものに変更するとよい。
 多重型の階層化データベース10aにおいても、検索手段が、仮想データテーブルの共通情報が検索条件に含まれる中間データベース12又は末端データベース13を検索の起点とする。仮想データテーブルの共通情報が検索条件に含まれるデータベースにサブ階層化データベース14が含まれる場合、このサブ階層化データベース14を1つの末端データベース13とみなして、その主サブデータベース14aを起点としてもよいし、サブ階層化データベース14内の中間サブデータベース14b又は末端サブデータベース14cを起点としてもよい。
 上記実施形態では、検索手段が検索を行う際、起点となる末端データベースの検索を行った後、直上の中間データベースへ移動して他の末端データベースの検索を行う場合を説明した。これに対し、検索手段が仮想データテーブルに基づいて共通情報が検索条件に含まれる最上位の中間データベース又は末端データベースを特定する最上位データベース特定機能を有し、この最上位の中間データベース又は末端データベースから登録データの検索を始める構成とすることもできる。
 この場合、検索手段は、起点となる末端データベースに対して仮想データテーブルに基づいて直上の中間データベースが同じ共通情報を有するか否かを判断する。直上の中間データベースが同じ共通情報を有していない場合は、この起点とした末端データベースが最上位データベースである。直上の中間データベースが同じ共通情報を有している場合は、さらにこの中間データベースの直上の中間データベースが同じ共通情報を有するか否かを判断する。この判断を繰り返し、直上の中間データベースが同じ共通情報を有さない中間データベースを特定し、この特定された中間データベースを最上位データベースとする。この最上位データベースから登録データの検索を始める。
 最上位データベースは仮想データテーブルの情報によって速やかに特定できる。また、最上位データベースから下位のデータベースはツリー状に接続されているので、登録データの検索を並列に行うことが容易である。従って、検索手段が最上位データベースを特定する最上位データベース特定機能を有することで、登録データをさらに効率的に検索することができる。また、最上位データベースと特定された中間データベース又は末端データベースのさらに上位に位地する中間データベースや主データベースには上記共通情報、つまり検索条件が伝達されない。このため、多重型の階層化データベースにあっては、検索条件が上位側のデータベースに漏れることが抑止されるので、情報の秘匿性も向上させることができる。
 上記実施形態の検索手段は、それぞれの実施形態に限定されるものではない。例えば上記第1実施形態で用いた検索手段を第2実施形態に用いることもできるし、逆に第2実施形態で用いた検索手段を第1実施形態に用いることもできる。
 上記第2実施形態で用いた検索手段の選択機能を第1実施形態で用いてもよい。また、第2実施形態のデータベース管理システムにおいて選択機能を有さないものとすることもできる。
 上記第2実施形態で用いた仮想化手段を第1実施形態で用いてもよい。また、第2実施形態のデータベース管理システムで仮想化手段を有さないものとすることもできる。
 上記第2実施形態では、仮想化手段が、複数の末端データベースを、その地理的情報をもとにグループ化し、1つの仮想化末端データベースとする場合を説明したが、グループ化する基準は地理的情報に限定されない。複数の末端データベースが、互いの遠近距離を定義可能な要素から構成される属性を有する場合、その属性の遠近距離情報をもとにグループ化を行うことができる。例えば上記地理的情報の場合、上記属性は地理的位置であり、遠近距離は物理的距離等で定義可能である。
 このような属性としては、階層構造を有するものが挙げられる。例えば生物学の分類階級(界→門→綱→目→科→属→種)や、会社組織(部→課→班等)などが該当する。先に述べた地理的情報においても、例えば都道府県や市町村等の行政区分を属性とする場合は、階層構造を有する。このような階層構造を有する属性にあっては、上下の階層間で関連性の高いものが結び付けられ、ツリー状に階層化される(例えば図13参照)。ある要素から他の要素へは上位階層へのツリーの枝を介して接続関係があり、ある要素から他の要素へ至るために通過すべき枝の数(複数の径路がある場合はその最小値)を両者の遠近距離として定義できる。例えば図13において、要素3Aと要素3Bとは、3A→2A→3Bという径路で到達可能であり、通過する枝数は2であるから遠近距離は2である。一方、要素3Aと要素3Cとでは、3A→2A→1A→2B→3Cという径路と辿る必要があり、通過する枝数は4であるから遠近距離は4であり、要素3A-要素3B間よりも遠いと判断できる。
 以上説明したように、本発明のデータベース管理システムは、データの検索において処理量が膨れ上がることを抑止し、かつデータを効率的に検索することができる。
1、2 データベース管理システム
10、10a 階層化データベース
11 主データベース
12 中間データベース
12a 第1中間データベース
12b 第2中間データベース
12c 検索対象中間データベース
13 末端データベース
13a 実データテーブル
13b 中期統計テーブル
13c 長期統計テーブル
13d 異常値データテーブル
13e マスターテーブル
13f AIモジュール
13g 接続変更する末端データベース
13h 第1検索対象末端データベース
13i 第2検索対象末端データベース
13x、13y 仮想化末端データベース
14 サブ階層化データベース
14a 主サブデータベース
14b 中間サブデータベース
14c 末端サブデータベース
20 入力手段
21 センサ
30 データアロケーション手段
40、41 検索手段
50 仮想化手段
G1 第1データベース群
G2 第2データベース群

Claims (10)

  1.  1の主データベースと、この主データベースと直接あるいは1又は複数の中間データベースを介して間接に接続される複数の末端データベースとを有する階層化データベースと、
     上記階層化データベースに登録されている登録データから検索条件に合致する合致データを検索する検索手段と
    を備え、
     少なくとも上記末端データベースが、複数の登録データを格納しており、
     上記主データベース又は上記中間データベースが、これに直接接続されている下位側の中間データベース又は末端データベースである直下層データベース、若しくはこの直下層データベースを介して間接に接続される中間データベース又は末端データベースに格納されている上記登録データへ至る検索経路を、上記複数の登録データに関連する共通情報によりグループ化した仮想データテーブルを有し、
     上記検索手段が、上記共通情報が上記検索条件に含まれる中間データベース又は末端データベースを検索の起点とするデータベース管理システム。
  2.  上記検索手段が複数の検索条件を同時に実行する際、上記起点が互いに異なる中間データベース又は末端データベースである請求項1に記載のデータベース管理システム。
  3.  上記検索手段が、
     上記起点に検索要求を出す要求機能と、
     上記検索要求を受けた中間データベースに対し、この中間データベースと直接に接続される主データベース、中間データベース又は末端データベースのうち上記検索要求を出した要求元を除く全てのデータベースに上記検索要求を伝達する伝達機能と、
     上記検索要求を受けた主データベース、中間データベース又は末端データベースに対し、上記検索要求に対する結果を集計して上記要求元へ返す集計機能と
     を有する請求項1又は請求項2に記載のデータベース管理システム。
  4.  上記検索手段が、上記仮想データテーブルに基づいて上記共通情報が検索条件に含まれる最上位の中間データベース又は末端データベースを特定する最上位データベース特定機能を有する請求項1、請求項2又は請求項3に記載のデータベース管理システム。
  5.  上記主データベース又は上記中間データベースが、上記共通情報の属性が異なる複数の上記仮想データテーブルを有し、
     上記属性ごとに上記階層化データベースの階層構造が異なるものであり、
     上記検索手段が、上記属性が上記検索条件に含まれる階層構造を選択する選択機能を有する請求項1から請求項4のいずれか1項に記載のデータベース管理システム。
  6.  上記階層化データベースの階層構造を変更するデータアロケーション手段を備える請求項1から請求項5のいずれか1項に記載のデータベース管理システム。
  7.  上記データアロケーション手段が、上記仮想データテーブルと、その仮想データテーブルに属する登録データとの複製を、他の末端データベース又は中間データベースに作成する複製機能を有する請求項6に記載のデータベース管理システム。
  8.  上記検索手段の対象である上記階層化データベースに登録されている登録データとして、上記複製された登録データが含まれる請求項7に記載のデータベース管理システム。
  9.  複数の末端データベースを、その地理的情報をもとにグループ化し、1つの仮想化末端データベースとする仮想化手段を備える請求項1から請求項8のいずれか1項に記載のデータベース管理システム。
  10.  上記仮想化手段が、上記仮想化末端データベースに含まれる複数の末端データベースを第1データベース群及び第2データベース群の2群に分割し、上記第1データベース群及び第2データベース群が上記仮想化末端データベースに含まれる全登録データをそれぞれ格納するように再構成する冗長化機能を有する請求項9に記載のデータベース管理システム。
     
     
     
PCT/JP2021/015732 2020-04-21 2021-04-16 データベース管理システム WO2021215362A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/919,793 US20230205788A1 (en) 2020-04-21 2021-04-16 Database management system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2020075264 2020-04-21
JP2020-075264 2020-04-21
JP2020177165A JP7490529B2 (ja) 2020-04-21 2020-10-22 データベース管理システム
JP2020-177165 2020-10-22

Publications (1)

Publication Number Publication Date
WO2021215362A1 true WO2021215362A1 (ja) 2021-10-28

Family

ID=78269268

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/015732 WO2021215362A1 (ja) 2020-04-21 2021-04-16 データベース管理システム

Country Status (2)

Country Link
US (1) US20230205788A1 (ja)
WO (1) WO2021215362A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04274534A (ja) * 1991-02-28 1992-09-30 Nec Corp データ所在情報の分散管理方法
JPH09244939A (ja) * 1996-03-11 1997-09-19 Hitachi Ltd 分散データベースのデータアクセス方法及び装置
WO2019031006A1 (ja) * 2017-08-10 2019-02-14 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP6602500B1 (ja) * 2019-04-22 2019-11-06 Dendritik Design株式会社 データベース管理システム、データベース管理方法、およびデータベース管理プログラム
JP2020004339A (ja) * 2018-07-02 2020-01-09 株式会社東芝 データベース管理装置およびクエリ分割方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04274534A (ja) * 1991-02-28 1992-09-30 Nec Corp データ所在情報の分散管理方法
JPH09244939A (ja) * 1996-03-11 1997-09-19 Hitachi Ltd 分散データベースのデータアクセス方法及び装置
WO2019031006A1 (ja) * 2017-08-10 2019-02-14 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2020004339A (ja) * 2018-07-02 2020-01-09 株式会社東芝 データベース管理装置およびクエリ分割方法
JP6602500B1 (ja) * 2019-04-22 2019-11-06 Dendritik Design株式会社 データベース管理システム、データベース管理方法、およびデータベース管理プログラム

Also Published As

Publication number Publication date
US20230205788A1 (en) 2023-06-29

Similar Documents

Publication Publication Date Title
CN105005274B (zh) 管理过程控制系统中的大数据
CN102567394B (zh) 获取平面数据的层级信息的方法和装置
US8676951B2 (en) Traffic reduction method for distributed key-value store
CN109964216A (zh) 识别未知数据对象
CN108140040A (zh) 存储器中数据库的选择性数据压缩
CN110383261A (zh) 用于多流存储装置的流选择
CN108463817A (zh) 个性化实体库
CN101641695A (zh) 资源接入过滤系统及供与资源接入过滤系统一起使用的数据库结构
US20100268714A1 (en) System and method for analysis of information
Wang et al. Research and implementation on spatial data storage and operation based on Hadoop platform
CN106164897A (zh) 用于寄存内存数据库的系统及方法
CN106528793A (zh) 一种分布式空间数据库的时空分片存储方法
CN103384878A (zh) 分布式数据库系统和分布式数据库的数据结构
CN104281980B (zh) 基于分布式计算的火力发电机组远程诊断方法及系统
CN109359115A (zh) 基于图数据库的分布式存储方法、装置及系统
WO2021215362A1 (ja) データベース管理システム
JP2021174508A (ja) データベース管理システム
US20070236508A1 (en) Management of gridded map data regions
Pektürk et al. Performance-aware high-performance computing for remote sensing big data analytics
do Carmo Oliveira et al. Set similarity joins with complex expressions on distributed platforms
US20090150355A1 (en) Software method for data storage and retrieval
CN114036262B (zh) 一种基于图的搜索结果多样化方法
CN107609136A (zh) 基于访问特征标示的自主可控数据库审计方法和系统
Cuzzocrea et al. Complex Mining from Uncertain Big Data in Distributed Environments: Problems, Definitions, and Two Effective and Efficient Algorithms
JP6810780B2 (ja) Cnn基盤イメージ検索方法および装置

Legal Events

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

Ref document number: 21793197

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21793197

Country of ref document: EP

Kind code of ref document: A1