Data management system, primary server, and secondary server for data registration and retrieval in distributed environment
First Claim
1. A data management system for allowing terminals on a network to register records with search keywords and to retrieve the records by entering a specific search keyword, comprising:
- a plurality of primary areas which constitute an entire coverage area of the network;
a plurality of secondary areas which constitute each of said primary areas;
a plurality of secondary servers, one for each secondary area, uniquely identified in each primary area by secondary server identifiers assigned thereto, which store records in a distributed manner to serve the terminals coupled thereto;
a plurality of primary servers, one for each primary area, uniquely identified in the network by primary server identifiers assigned thereto, which control storing and retrieving of the records to/from said plurality of secondary servers;
primary transformation means, disposed in each primary server, for processing a given search keyword to derive a specific primary server identifier indicating one of said primary servers that governs a particular primary area where the secondary server having a record corresponding to the given search keyword is located; and
secondary transformation means, disposed in each primary server and each secondary server, for processing the given search keyword to derive a specific secondary server identifier indicating one of said secondary servers that is located in the same primary area and has a record corresponding to the given search keyword, wherein a record originated in one of said primary area and accepted by one of said secondary servers is registered in;
(a) said secondary server that has accepted the record, (b) a second secondary server that is identified by said secondary transformation means of said accepting secondary server, and (c) a third secondary server in a primary area other than said originating primary area and that is identified by said primary transformation means serving in said originating primary area.
1 Assignment
0 Petitions
Accused Products
Abstract
A data management system that allows client terminals on a network to register records with search keywords to distributed data management servers and to retrieve them by entering a specific search keyword. The entire coverage area of the network is divided into a plurality of primary areas, and each primary area is further subdivided into a plurality of secondary areas. Primary and secondary servers are deployed over the network, one for each individual primary area and secondary area, respectively. The primary servers employ a primary hash function that processes a given search keyword to derive a primary server identifier indicating one of the primary servers that governs a particular primary area where the secondary server having a record relevant to the given search keyword is located. Further, the primary servers have a secondary hash function that processes a given search keyword to derive a specific secondary server identifier indicating one of the secondary servers that is located in the same primary area as their own and has a record relevant to the given search keyword. The secondary servers are also equipped with the same secondary hash function as the primary servers'"'"'. Those two hash functions are used in both data registration and data retrieval processes.
-
Citations
20 Claims
-
1. A data management system for allowing terminals on a network to register records with search keywords and to retrieve the records by entering a specific search keyword, comprising:
-
a plurality of primary areas which constitute an entire coverage area of the network;
a plurality of secondary areas which constitute each of said primary areas;
a plurality of secondary servers, one for each secondary area, uniquely identified in each primary area by secondary server identifiers assigned thereto, which store records in a distributed manner to serve the terminals coupled thereto;
a plurality of primary servers, one for each primary area, uniquely identified in the network by primary server identifiers assigned thereto, which control storing and retrieving of the records to/from said plurality of secondary servers;
primary transformation means, disposed in each primary server, for processing a given search keyword to derive a specific primary server identifier indicating one of said primary servers that governs a particular primary area where the secondary server having a record corresponding to the given search keyword is located; and
secondary transformation means, disposed in each primary server and each secondary server, for processing the given search keyword to derive a specific secondary server identifier indicating one of said secondary servers that is located in the same primary area and has a record corresponding to the given search keyword, wherein a record originated in one of said primary area and accepted by one of said secondary servers is registered in;
(a) said secondary server that has accepted the record, (b) a second secondary server that is identified by said secondary transformation means of said accepting secondary server, and (c) a third secondary server in a primary area other than said originating primary area and that is identified by said primary transformation means serving in said originating primary area. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
data registration request message transmission means, disposed in each terminal and activated when data registration is requested, for transmitting a data registration request message containing registration data to the secondary server in the secondary area where the requesting terminal is located, the retrieval data including a search keyword and a data object to be retrieved; and
data registration request message transmission means, disposed in each terminal and activated when data retrieval is requested, for transmitting a data retrieval request message to the secondary server in the secondary area where the requesting terminal resides, the data retrieval request message containing a search keyword and an identifier of the requesting terminal.
-
-
3. The data management system according to claim 1, further comprising:
-
registration data storage means, disposed in each secondary server and activated when a data registration request message containing registration data is received from one of the terminals, for storing the registration data into regular data storage thereof, the registration data including a search keyword and a data object to be retrieved with the search keyword;
first registration requesting means, disposed in each secondary server and activated when the data registration request message containing the registration data is received, for subjecting the search keyword as part of the received registration data to said secondary transformation means, and if the resultant secondary server identifier differs from the secondary server identifier of its own, transmitting a local replicated data registration request message containing the registration data to one of said secondary servers that is identified in the same primary area by the resultant secondary server identifier; and
second registration requesting means, disposed in each secondary server, for transmitting another data registration request message containing the same registration data to one of said primary servers that covers the primary area where said secondary server is located.
-
-
4. The data management system according to claim 3, further comprising storage means, disposed in each secondary server and activated when the local replicated data registration request message is received from said first registration requesting means, for storing the registration data into local replicated data storage thereof.
-
5. The data management system according to claim 3, further comprising:
-
third registration requesting means, disposed in each primary server and activated when the data registration request message is received from said second registration requesting means, for subjecting the search keyword as part of the received registration data to said primary transformation means, and transmitting still another data registration request message containing the same registration data to one of said primary servers that is identified by a primary server identifier obtained from said primary transformation means;
fourth registration requesting means, disposed in each primary server and activated when the data registration request message is received from said third registration requesting means, for subjecting the search keyword as part of the received registration data to said secondary transformation means, and transmitting a remote replicated data registration request message containing the same registration data to one of said secondary servers that is located in the same primary area and identified by a secondary server identifier obtained from said secondary transformation means; and
storage means, disposed in each secondary server and activated when the remote replicated data registration request message is received from said fourth registration requesting means, for storing the registration data into remote replicated data storage thereof.
-
-
6. The data management system according to claim 1, further comprising:
-
reporting means, disposed in each secondary server and activated when a data retrieval request message containing at least a search keyword is received from one of the terminals, for searching regular data storage in said secondary server to find a record relevant to the search keyword, and if the record is found, sending the found record to the requesting terminal;
transformation activation means, disposed in each secondary server and activated when the data retrieval request message is received, for searching the regular data storage to find a record relevant to the search keyword, and if the record is not found, subjecting the search keyword to said secondary transformation means in said secondary server; and
first data retrieval requesting means, disposed in each secondary server and activated when the secondary server identifier derived from said secondary transformation means differs from the secondary server identifier of its own, for transmitting a local replicated data registration request message containing at least the search keyword to one of said secondary servers that is located in the same primary area and identified by the obtained secondary server identifier.
-
-
7. The data management system according to claim 6, further comprising:
-
data retrieval means, disposed in each secondary server and activated when the local replicated data retrieval request message is received, for searching local replicated data storage in said secondary server to find a record relevant to the search keyword;
first successful search report sending means, disposed in each secondary server and activated when said data retrieval means has successfully found the record relevant to the search keyword, for sending a successful search report message containing the found record; and
second data retrieval requesting means, disposed in each secondary server and activated when said data retrieval means has failed to find the record relevant to the search keyword, for sending another data retrieval request message containing at least the search keyword to one of said primary servers that covers the primary area where said secondary server is located.
-
-
8. The data management system according to claim 7, further comprising:
-
third data retrieval requesting means, disposed in each primary server and activated when the data retrieval request message is received from said second data retrieval requesting means, for subjecting the search keyword to said primary transformation means in the primary server, and transmitting still another data retrieval request message containing at least the search keyword to one of said primary servers that is identified by a primary server identifier obtained by said primary transformation means; and
fourth data retrieval requesting means, disposed in each primary server and activated when the data retrieval request message is received from said third data retrieval requesting means, for subjecting the search keyword to said secondary transformation means in said receiving primary server, and transmitting a remote replicated data retrieval request message containing at least the search keyword to one of said secondary servers that is located in the same primary area and identified by a secondary server identifier obtained by said secondary transformation means.
-
-
9. The data management system according to claim 8, further comprising:
second successful search report sending means, disposed in each secondary server and activated when the remote replicated data retrieval request message is received from said fourth data retrieval requesting means, for searching remote replicated data storage in said receiving secondary server to find a record relevant to the search keyword, and if the record is found, sending a successful search report message containing the found record.
-
10. The data management system according to claim 1, further comprising:
-
a system supervisory server disposed in the network;
first assignment means, disposed in said system supervisory server and activated when an activation request message is received from one of said primary servers, for assigning a primary server identifier to said requesting primary server so that said requesting primary server will be uniquely identified within the network by the primary server identifier assigned thereto;
first notification means, disposed in said system supervisory server, for notifying said requesting primary server, which has sent the activation request message, of the primary server identifier assigned by said first assignment means, along with network addresses and the primary server identifiers of the other primary servers which have been activated so far; and
second notification means, disposed in said system supervisory server and activated when said first assignment means has assigned the primary server identifier, for notifying said primary servers that have already been activated of the primary server identifier assigned by said first assignment means and a network address corresponding thereto.
-
-
11. The data management system according to claim 10, further comprising:
-
second assignment means, disposed in each primary server and activated when an activation request message is received from one of said secondary servers that are located in the same primary area, for assigning a secondary server identifier to said requesting secondary server so that said requesting secondary server will be uniquely identified within the same primary area by the secondary server identifier assigned thereto;
third notification means, disposed in each primary server, for notifying said requesting secondary server, which has sent the activation request message, of the secondary server identifier assigned by said second assignment means, along with the network addresses and the secondary server identifiers of the other secondary servers which have been activated so far; and
fourth notification means, disposed in each primary server and activated when said second assignment means has assigned the secondary server identifier, for notifying the other secondary servers that have already been activated of the secondary server identifier assigned by said second assignment means and a network address corresponding thereto.
-
-
12. The data management system according to claim 1, wherein
said primary transformation means disposed in said primary servers use the same algorithm for processing the given search keyword, and said secondary transformation means disposed in said primary and secondary servers located in the same primary area use the same algorithm for processing the given search keyword. -
13. The data management system according to claim 1, wherein said primary transformation means applies a primary hash function to the given search keyword.
-
14. The data management system according to claim 1, wherein said secondary transformation means applies a secondary hash function to the given search keyword.
-
15. A primary server used in a data management system that allows terminals on a network to register records with search keywords and to retrieve the records by entering a specific search keyword, the data management system covers a plurality of primary areas, the primary server being deployed in each primary area to govern a plurality of secondary servers located therein, the primary server comprising:
-
a primary server identifier which allows the primary server to be uniquely identified in the network;
primary transformation means for processing a given search keyword to derive a specific primary server identifier indicating one of the primary servers that governs the primary area where the secondary server having a record corresponding to the given search keyword is located; and
secondary transformation means for processing a given search keyword to derive a secondary server identifier indicating one of the secondary servers that is located in the same primary area and has a record corresponding to the given search keyword wherein a record originated in one of said primary area and accepted by one of said secondary servers is registered in;
(a) said secondary server that has accepted the record, (b) a second secondary server that is identified by said secondary transformation means of said accepting secondary server, and (c) a third secondary server in a primary area other than said originating primary area and that is identified by said primary transformation means serving in said originating primary area.
-
-
16. A secondary server used in a data management system that allows terminals on a network to register records with search keywords and to retrieve the records by entering a specific search keyword, the data management system covers a plurality of primary areas, a primary server being deployed in each primary area to cover a plurality of secondary areas constituting the primary area, the secondary server being deployed in each secondary area, the secondary server comprising:
-
a secondary server identifier which allows the secondary server to be uniquely identified within the primary area where the secondary server belongs; and
secondary transformation means for processing a given search keyword to derive a specific secondary server identifier indicating one of the secondary servers that is located in the same primary area and has a record corresponding to the given search keyword wherein a record originated in one of said primary area and accepted by one of said secondary servers is registered in;
(a) said secondary server that has accepted the record, (b) a second secondary server that is identified by said secondary transformation means of said accepting secondary server, and (c) a third secondary server in a primary area other than said originating primary area and that is identified by said primary transformation means serving in said originating primary area. - View Dependent Claims (17, 18, 19, 20)
registration data storage means, activated when a data registration request message containing registration data is received from one of the terminals, for storing the registration data into regular data storage thereof, the registration data including a search keyword and a data object to be retrieved with the search keyword;
first registration requesting means, coupled to said registration data storage means, for subjecting the search keyword as part of the received registration data to said second transformation means, and if the resultant secondary server identifier differs from the secondary server'"'"'s own secondary server identifier, transmitting a local replicated data registration request message containing the registration data to one of said secondary servers that is identified by the obtained secondary server identifier in the same primary area as its own; and
second registration requesting means for transmitting another data registration request message containing the same registration data as received to one of said primary servers that covers the primary area where the secondary server belongs.
-
-
18. The secondary server according to claim 17, further comprising storage means, responsive to the local replicated data registration request message received from said first registration requesting means, for storing the registration data into local replicated data storage thereof.
-
19. The secondary server according to claim 16, further comprising
reporting means, activated when a data retrieval request message containing at least a search keyword is received from one of the terminals, for searching regular data storage in the secondary server to find a record relevant to the search keyword, and if the record is found, sending the found record to the requesting terminal; - and
transformation activation means, activated when the data retrieval request message is received, for searching the regular data storage to find a record relevant to the search keyword, and if the record is not found, subjecting the search keyword to said secondary transformation means; and
first data retrieval requesting means, activated when the secondary server identifier obtained from said secondary transformation means differs from the secondary server'"'"'s own secondary server identifier, for transmitting a local replicated data registration request message containing at least the search keyword to one of said secondary servers that is located in the same primary area and identified by the obtained secondary server identifier.
- and
-
20. The secondary server according to claim 19, further comprising
data retrieval means, responsive to the local replicated data retrieval request message, for searching local replicated data storage in the secondary server to find a record relevant to the search keyword extracted from the received replicated data retrieval request message; -
first successful search report sending means, activated when said data retrieval means has successfully found the record relevant to the search keyword, for sending a successful search report message containing the found record; and
second data retrieval requesting means, activated when said data retrieval means has failed to find the record relevant to the search keyword, for sending another data retrieval request message containing at least the search keyword to one of said primary servers that covers the primary area where the secondary server belongs.
-
Specification