JP5706956B1 - Database system and database control method - Google Patents
Database system and database control method Download PDFInfo
- Publication number
- JP5706956B1 JP5706956B1 JP2013258276A JP2013258276A JP5706956B1 JP 5706956 B1 JP5706956 B1 JP 5706956B1 JP 2013258276 A JP2013258276 A JP 2013258276A JP 2013258276 A JP2013258276 A JP 2013258276A JP 5706956 B1 JP5706956 B1 JP 5706956B1
- Authority
- JP
- Japan
- Prior art keywords
- cache
- data
- base station
- station information
- distributed database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】キャッシュされるデータの整合性を保ちつつキャッシュを利用したデータへのアクセスを高速化する。
【解決手段】データベースシステムは複数のキャッシュサーバとキャッシュデータ管理装置を備える。キャッシュデータ管理装置は、分散データベースに記憶させるデータの識別コードと各キャッシュサーバがキャッシュすべきデータとを対応付けたテーブルを有し、キャッシュサーバからキャッシュすべきデータの問合せを受信すると、テーブルに基づいて、キャッシュすべきデータの識別コードのリストを応答として送信する。キャッシュサーバは、クライアントからデータを分散データベースに記憶させる要求を受信すると、当該要求に含まれるデータが自サーバにおいてキャッシュすべきデータであるか否かを判定し、判定結果に応じてデータをメモリキャッシュに記憶させた後に、分散データベースにデータを記憶させるキャッシュ対象判定部を有する。
【選択図】図1Access to data using a cache is speeded up while maintaining consistency of cached data.
A database system includes a plurality of cache servers and a cache data management device. The cache data management device has a table in which identification codes of data to be stored in the distributed database are associated with data to be cached by each cache server. When a query for data to be cached is received from the cache server, the cache data management device Then, a list of identification codes of data to be cached is transmitted as a response. When the cache server receives a request to store data in the distributed database from the client, the cache server determines whether the data included in the request is data to be cached in the server, and stores the data in the memory cache according to the determination result. And having a cache target determination unit for storing data in the distributed database.
[Selection] Figure 1
Description
本発明は、データベースシステム及びデータベース制御方法に関する。 The present invention relates to a database system and a database control method.
分散データベースに記憶されているデータへのアクセスを高速化するために、データを一時的に記憶するキャッシュを用いることが行われている(例えば、特許文献1)。 In order to speed up access to data stored in a distributed database, a cache that temporarily stores data is used (for example, Patent Document 1).
しかしながら、分散データベースを構成する各データベースに記憶されているデータの更新が並行して行われた場合などにおけるデータの整合性を保つための処理が煩雑になってしまうという問題があった。 However, there is a problem that processing for maintaining data consistency becomes complicated when data stored in each database constituting the distributed database is updated in parallel.
上記事情に鑑み、本発明は、簡便な処理で、分散データベースに記憶されているデータの整合性を保ちつつ、キャッシュを利用したデータへのアクセスを高速化できるデータベースシステム及びデータベース制御方法を提供することを目的としている。 In view of the above circumstances, the present invention provides a database system and a database control method capable of speeding up access to data using a cache while maintaining the consistency of data stored in a distributed database with simple processing. The purpose is that.
本発明の一態様は、分散データベースと、前記分散データベースに記憶させるデータの取得と利用とを行うクライアントと、前記分散データベースに記憶させるデータをキャッシュする複数のキャッシュサーバと、キャッシュデータ管理装置とを備えるデータベースシステムであって、前記キャッシュデータ管理装置は、前記分散データベースに記憶させるデータの識別コードと前記キャッシュサーバそれぞれがキャッシュすべきデータとを対応付けたテーブルを有し、前記クライアントから前記分散データベースへのアクセスの際に利用するキャッシュサーバの問合せを受信すると、複数の前記キャッシュサーバのうち前記クライアントが利用するデータに対応するキャッシュサーバを第1のアクセス先とし、他の前記キャッシュサーバを第2のアクセス先とするアクセス情報を問合せに対する応答として送信し、前記キャッシュサーバからキャッシュすべきデータの問合せを受信すると、前記テーブルに基づいて、キャッシュすべきデータの識別コードのリストを応答として送信し、前記キャッシュサーバは、前記クライアントからデータを前記分散データベースに記憶させる蓄積要求を受信すると、当該蓄積要求に含まれるデータが自サーバにおいてキャッシュすべきデータであるか否かを判定し、判定結果に応じて当該データをメモリキャッシュに記憶させた後に、前記分散データベースに当該データを記憶させるキャッシュ対象判定部を有することを特徴とするデータベースシステムである。 One aspect of the present invention includes a distributed database, a client that acquires and uses data stored in the distributed database, a plurality of cache servers that cache data to be stored in the distributed database, and a cache data management device. The cache data management device includes a table in which an identification code of data to be stored in the distributed database and data to be cached by each cache server are associated with each other from the client to the distributed database. When a query of a cache server to be used for accessing is received, a cache server corresponding to data used by the client among the plurality of cache servers is set as a first access destination, and the other cache servers are 2 is sent as a response to the query, and when a query for data to be cached is received from the cache server, a list of identification codes of the data to be cached is sent as a response based on the table. When the cache server receives a storage request for storing data in the distributed database from the client, the cache server determines whether or not the data included in the storage request is data to be cached in its own server. Accordingly, the data base system includes a cache target determination unit that stores the data in the memory cache and then stores the data in the distributed database.
また、本発明の一態様は、上記のデータベースシステムにおいて、前記キャッシュ対象判定部は、前記メモリキャッシュにデータを記憶させてから一定期間が経過すると当該データをクリアすることを特徴とする。 One aspect of the present invention is characterized in that, in the above-described database system, the cache target determination unit clears the data when a predetermined period has elapsed since the data was stored in the memory cache.
また、本発明の一態様は、上記のデータベースシステムにおいて、前記クライアントは、前記第1のアクセス先で示されるキャッシュサーバから応答がない場合に、前記第2のアクセス先で示されるキャッシュサーバを介して前記分散データベースにアクセスすることを特徴とする。 In addition, according to one aspect of the present invention, in the above database system, when the client does not respond from the cache server indicated by the first access destination, the client passes through the cache server indicated by the second access destination. And accessing the distributed database.
また、本発明の一態様は、分散データベースと、前記分散データベースに記憶させるデータの取得と利用とを行うクライアントと、前記分散データベースに記憶させるデータをキャッシュする複数のキャッシュサーバと、前記分散データベースに記憶させるデータの識別コードと前記キャッシュサーバそれぞれがキャッシュすべきデータとを対応付けたテーブルを有するキャッシュデータ管理装置とを備えるデータベースシステムにおけるデータベース制御方法であって、前記キャッシュデータ管理装置が、前記クライアントから前記分散データベースへのアクセスの際に利用するキャッシュサーバの問合せを受信すると、複数の前記キャッシュサーバのうち前記クライアントが利用するデータに対応するキャッシュサーバを第1のアクセス先とし、他の前記キャッシュサーバを第2のアクセス先とするアクセス情報を問合せに対する応答として送信する第1のステップと、前記キャッシュデータ管理装置が、前記キャッシュサーバからキャッシュすべきデータの問合せを受信すると、前記テーブルに基づいて、キャッシュすべきデータの識別コードのリストを応答として送信する第2のステップと、前記キャッシュサーバが、前記クライアントからデータを前記分散データベースに記憶させる蓄積要求を受信すると、当該蓄積要求に含まれるデータが自サーバにおいてキャッシュすべきデータであるか否かを判定し、判定結果に応じて当該データをメモリキャッシュに記憶させた後に、前記分散データベースに当該データを記憶させる第3のステップとを含むことを特徴とするデータベース制御方法である。 One embodiment of the present invention includes a distributed database, a client that acquires and uses data to be stored in the distributed database, a plurality of cache servers that cache data to be stored in the distributed database, and the distributed database. A database control method in a database system comprising: a cache data management device having a table in which an identification code of data to be stored and data to be cached by each cache server are associated with each other, wherein the cache data management device includes the client When a query for a cache server to be used for accessing the distributed database is received from the cache server, the cache server corresponding to the data used by the client among the plurality of cache servers is first accessed. And when the cache data management device receives an inquiry about data to be cached from the cache server, the first step of transmitting access information with the other cache server as a second access destination as a response to the inquiry. A second step of transmitting, as a response, a list of identification codes of data to be cached based on the table, and when the cache server receives an accumulation request for storing data in the distributed database from the client, It is determined whether or not the data included in the accumulation request is data to be cached in the local server, and the data is stored in the memory cache according to the determination result, and then stored in the distributed database. And a step characterized in that It is a database control method.
本発明によれば、キャッシュサーバがキャッシュすべきデータを限定していることにより、クライアントが他のキャッシュサーバを介して分散データベースにアクセスした場合でも、複数のキャッシュサーバに同じデータのキャッシュがされ整合性が崩れることを防ぐことができる。本発明では、キャッシュデータ管理装置を設け、クライアントがキャッシュデータ管理装置にアクセス先のキャッシュサーバを問い合せるという簡便な処理で、分散データベースに記憶されているデータとキャッシュサーバに一時的に記憶されているデータとの整合性を保ちつつ、キャッシュサーバを利用したデータへのアクセスの高速化が可能となる。 According to the present invention, since the data to be cached by the cache server is limited, even when the client accesses the distributed database via another cache server, the same data is cached in a plurality of cache servers and is consistent. It is possible to prevent the sex from breaking. In the present invention, a cache data management device is provided, and the data stored in the distributed database and the cache server are temporarily stored in a simple process in which the client inquires the cache data management device of the access destination cache server. It is possible to speed up access to data using a cache server while maintaining consistency with the data.
以下、図面を参照して、本発明に係る実施形態におけるデータベースシステム及びデータベース制御方法を説明する。図1は、実施形態におけるデータベースシステムの構成例を示すブロック図である。図1に示すように、データベースシステムは、複数の基地局情報蓄積装置11、複数の基地局情報利用装置12、分散データベース2、複数のキャッシュサーバ3、及び、キャッシュデータ管理装置4を備えている。図1に示す構成例では、データベースシステムがキャッシュデータ管理装置4を一つ備える構成が示されているが、キャッシュデータ管理装置4を複数備えて冗長化されていてもよい。
Hereinafter, a database system and a database control method according to an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram illustrating a configuration example of a database system in the embodiment. As shown in FIG. 1, the database system includes a plurality of base station
また、図1に示す構成例では、分散データベース2に対するクライアントとしての基地局情報蓄積装置11及び基地局情報利用装置12と、キャッシュサーバ3と、キャッシュデータ管理装置4とがネットワーク5を介して通信可能に接続されている構成が示されているが、クライアントとキャッシュサーバ3とを通信可能に接続するネットワークと、クライアントとキャッシュデータ管理装置4とを通信可能に接続するネットワークと、キャッシュサーバ3とキャッシュデータ管理装置4とを通信可能に接続するネットワークとが個別に存在していてもよい。
In the configuration example shown in FIG. 1, the base station
複数の基地局情報蓄積装置11は、それぞれが定められた地域に対応して設けられている。基地局情報蓄積装置11は、自装置に対応付けられている地域の基地局情報を取得する。基地局情報蓄積装置11は、キャッシュサーバ3を介して、取得した基地局情報を分散データベース2に記憶させる。基地局情報には、自身に対応する地域及び自身に対応する基地局を一意に識別する識別コードが含まれている。
The plurality of base station
複数の基地局情報利用装置12は、基地局情報蓄積装置11と同様に、それぞれが定められた地域に対応して設けられている。基地局情報利用装置12は、任意の地域の基地局情報を識別コードに基づいて、キャッシュサーバ3を介して分散データベース2から取得する。基地局情報利用装置12は、取得した基地局情報に基づいて、自装置が対応付けられている地域における基地局の制御に用いる制御情報の生成や、基地局の制御などを行う。
Similar to the base station
分散データベース2は、複数の基地局情報蓄積装置11によって取得された複数の地域における基地局情報を記憶する。分散データベース2は、複数の地域における基地局情報を記憶する複数のデータベース21を有している。分散データベース2に記憶される基地局情報は、アクセス頻度や更新頻度などに基づいて、複数のデータベース21のいずれかのデータベース21に分散して記憶される。
The
複数のデータベース21は、ネットワーク22を介して通信可能に接続されている。データベース21は、キャッシュサーバ3から受信した基地局情報の蓄積要求に応じて、自身が基地局情報を記憶したり、他のデータベース21に基地局情報を記憶させたりする。また、データベース21は、キャッシュサーバ3から受信した基地局情報の検索要求に応じて、自身が記憶している基地局情報を応答として送信したり、他のデータベース21に記憶されている基地局装置を他のデータベース21から受信して転送したりする。
The plurality of
複数のキャッシュサーバ3は、それぞれが分散データベース2におけるデータベース21のいずれかに通信可能に接続されている。キャッシュサーバ3は、地域ごとに設けられている。キャッシュサーバ3には、それぞれを識別及びアクセスする際に用いられるアドレスが一意に割り当てられている。キャッシュサーバ3は、キャッシュ対象判定部31、及び、メモリキャッシュ32を有している。キャッシュ対象判定部31は、自サーバがキャッシュすべき基地局情報の識別コードを含むキャッシュ対象情報をキャッシュデータ管理装置4から受信して記憶する。
Each of the plurality of
キャッシュ対象判定部31は、基地局情報蓄積装置11から受信する基地局情報の蓄積要求に含まれる基地局情報とキャッシュ対象情報とに基づいて、自サーバのメモリキャッシュ32に当該基地局情報を記憶させるか否かを判定する。キャッシュ対象判定部31は、判定結果に応じて、基地局情報蓄積装置11から受信した基地局情報をメモリキャッシュ32に記憶させる。また、キャッシュ対象判定部31は、基地局情報蓄積装置11から受信した基地局情報の蓄積要求を分散データベース2に送信して、基地局情報を分散データベース2に記憶させる。キャッシュ対象判定部31は、基地局情報をメモリキャッシュ32に記憶させる際に、当該基地局情報にメモリキャッシュ32に記憶させるときの時刻を対応付けて記憶させる。
The cache
また、キャッシュ対象判定部31は、基地局情報利用装置12から受信する基地局情報の検索要求を受信すると、当該検索要求に含まれる識別コードとキャッシュ対象情報とに基づいて、検索要求に含まれる識別コードにより示される基地局情報がキャッシュ対象であるか否かを判定する。更に、キャッシュ対象判定部31は、検索要求に含まれる識別コードにより示される基地局情報がキャッシュ対象である場合、当該基地局情報がメモリキャッシュ32に記憶されているか否かを判定する。キャッシュ対象判定部31は、検索要求の対象である基地局情報がメモリキャッシュ32に記憶されている場合、当該基地局情報をメモリキャッシュ32から読み出す。キャッシュ対象判定部31は、基地局情報の検索要求を送信した基地局情報利用装置12に、読み出した基地局情報を検索結果として送信する。
Further, when receiving the base station information search request received from the base station
キャッシュ対象判定部31は、受信した基地局情報の検索要求で要求されている基地局情報が自サーバにおけるキャッシュ対象でない場合、又はキャッシュ対象であってもメモリキャッシュ32に記憶されていない場合、受信した基地局情報の検索要求を分散データベース2に送信する。キャッシュ対象判定部31は、分散データベース2に送信した基地局の検索要求に対する基地局情報を受信する。キャッシュ対象判定部31は、受信した基地局情報を基地局情報の検索要求の送信元の基地局情報利用装置12に送信する。
The cache
キャッシュデータ管理装置4は、データベースシステムが備えるキャッシュサーバ3ごとに、キャッシュサーバ3がキャッシュすべき基地局情報の識別コードのリストを含むテーブルを有している。キャッシュデータ管理装置4は、キャッシュサーバ3からキャッシュすべき基地局情報の問合せを受信すると、当該キャッシュサーバ3に対応付けられている識別コードのリストをテーブルから読み出す。キャッシュデータ管理装置4は、読み出した識別コードのリストを、キャッシュ対象情報として問合せの送信元のキャッシュサーバ3に送信する。
The cache
また、キャッシュデータ管理装置4は、基地局情報を分散データベース2に記憶させる際にアクセスすべきキャッシュサーバ3を問い合せる要求を基地局情報蓄積装置11から受信する。この問合せには、基地局情報に対応する識別コードが含まれる。キャッシュデータ管理装置4は、受信した問合せの要求に含まれる識別コードに対応付けられているキャッシュサーバ3をテーブルで特定し、特定したキャッシュサーバ3のアドレスを第1のアクセス先とし、他のキャッシュサーバ3のアドレスを第2のアクセス先に定める。キャッシュデータ管理装置4は、第1のアクセス先と第2のアクセス先とを含むアクセス先情報を問合せの送信元の基地局情報蓄積装置11に送信する。
In addition, the cache
また、キャッシュデータ管理装置4は、基地局情報を分散データベース2において検索する際にアクセスすべきキャッシュサーバ3を問い合せる要求を基地局情報利用装置12から受信する。この問合せには、基地局情報又は地域に対応する識別コードが含まれる。キャッシュデータ管理装置4は、受信した問合せの要求に含まれる識別コードに対応付けられているキャッシュサーバ3をテーブルで特定し、特定したキャッシュサーバ3のアドレスを第1のアクセス先とし、他のキャッシュサーバ3のアドレスを第2のアクセス先に定める。キャッシュデータ管理装置4は、第1のアクセス先と第2のアクセス先とを含むアクセス先情報を問合せの送信元の基地局情報利用装置12に送信する。
Further, the cache
図2は、実施形態のデータベースシステムにおいて分散データベース2に基地局情報を記憶させる処理の一例を示す図である。図2に示す例では、データベースシステムが2つのキャッシュサーバ3(キャッシュサーバ3aとキャッシュサーバ3b)を備える場合を示している。また、基地局情報蓄積装置11が記憶させる基地局情報にキャッシュサーバ3aが対応付けられている場合について説明する。
FIG. 2 is a diagram illustrating an example of processing for storing base station information in the distributed
キャッシュサーバ3aにおいて、キャッシュ対象判定部31は、自サーバがキャッシュすべき基地局情報(キャッシュ対象)を問い合せる要求を、キャッシュデータ管理装置4に送信する(ステップS11)。
In the cache server 3a, the cache
キャッシュデータ管理装置4は、自装置が有するテーブルから、問合せ要求の送信元のキャッシュサーバ3aがキャッシュすべき基地局情報を示す識別コードのリストを読み出す。キャッシュデータ管理装置4は、読み出した識別コードのリストを問合せ要求の返信としてキャッシュサーバ3aに送信して、キャッシュ対象を通知する(ステップS12)。キャッシュサーバ3aにおいて、キャッシュ対象判定部31はキャッシュデータ管理装置4から通知された識別コードのリストを記憶する。
The cache
キャッシュサーバ3bにおいて、キャッシュ対象判定部31は、自サーバがキャッシュすべき基地局情報(キャッシュ対象)を問い合せる要求を、キャッシュデータ管理装置4に送信する(ステップS13)。
In the cache server 3b, the cache
キャッシュデータ管理装置4は、自装置が有するテーブルから、問合せ要求の送信元のキャッシュサーバ3bがキャッシュすべき基地局情報を示す識別コードのリストを読み出す。キャッシュデータ管理装置4は、読み出した識別コードのリストを問合せ要求の返信としてキャッシュサーバ3bに送信して、キャッシュ対象を通知する(ステップS14)。キャッシュサーバ3bにおいて、キャッシュ対象判定部31はキャッシュデータ管理装置4から通知された識別コードのリストを記憶する。
The cache
基地局情報蓄積装置11は、自装置が取得した基地局情報を分散データベース2に記憶させる際にアクセスすべきキャッシュサーバ3を問い合せる要求をキャッシュデータ管理装置4に送信する(ステップS15)。
The base station
キャッシュデータ管理装置4は、問合せ要求に含まれる基地局情報の識別コードに基づいて第1のアクセス先(キャッシュサーバ3a)と第2のアクセス先(キャッシュサーバ3b)とを定め、第1のアクセス先と第2のアクセス先とを含むアクセス情報を、問合せ要求の返信として基地局情報蓄積装置11に送信する(ステップS16)。
The cache
基地局情報蓄積装置11は、キャッシュデータ管理装置4から受信したアクセス情報に含まれる第1のアクセス先(キャッシュサーバ3a)に、分散データベース2に記憶させる基地局情報と当該基地局情報を記憶させる要求とを含む蓄積要求を送信する(ステップS17)。
The base station
キャッシュサーバ3aは、基地局情報蓄積装置11から蓄積要求を受信する。キャッシュサーバ3aにおいて、キャッシュ対象判定部31は、受信した蓄積要求に含まれる基地局情報の識別コードが、記憶している識別コードのリストに含まれていることを検出する。キャッシュ対象判定部31は、受信した蓄積要求に含まれる基地局情報がキャッシュすべき基地局情報であると判定し、当該基地局情報と現在の時刻とを対応付けてメモリキャッシュ32に記憶させる(ステップS18)。
The cache server 3a receives a storage request from the base station
キャッシュ対象判定部31は、メモリキャッシュ32に基地局情報を記憶させると、当該基地局情報を分散データベース2に記憶させる保存要求を分散データベース2に送信する(ステップS19)。
When the cache
キャッシュ対象判定部31は、分散データベース2から保存完了の通知を受信すると(ステップS20)、基地局情報の蓄積が完了したことを蓄積要求の送信元の基地局情報蓄積装置11に送信して、蓄積完了の通知をする(ステップS21)。
When receiving the storage completion notification from the distributed database 2 (step S20), the cache
図3は、実施形態のデータベースシステムにおいて基地局情報利用装置12が基地局情報を検索する処理の一例を示す図である。図3に示す例では、図2に示した例と同様に、データベースシステムが2つのキャッシュサーバ3(キャッシュサーバ3aとキャッシュサーバ3b)を備える場合を示している。また、基地局情報利用装置12が検索の対象とする基地局情報にキャッシュサーバ3aが対応付けられ、キャッシュサーバ3aが有するメモリキャッシュ32に当該基地局情報が記憶されている場合について説明する。なお、図3におけるステップS11〜ステップS14は、図2におけるステップS11〜ステップS14と同じ処理であり、その説明を省略する。
FIG. 3 is a diagram illustrating an example of processing in which the base station
基地局情報利用装置12は、自装置が利用する基地局情報を分散データベース2において検索する際にアクセスすべきキャッシュサーバ3を問い合せる要求をキャッシュデータ管理装置4に送信する(ステップS31)。
The base station
キャッシュデータ管理装置4は、問合せ要求に含まれる基地局情報の識別コードに基づいて第1のアクセス先と第2のアクセス先とを定め、第1のアクセス先と第2のアクセス先とを含むアクセス情報を、問合せ要求の返信として基地局情報利用装置12に送信する(ステップS32)。
The cache
基地局情報利用装置12は、キャッシュデータ管理装置4から受信したアクセス情報に含まれる第1のアクセス先(キャッシュサーバ3a)に、利用する基地局情報の識別コードと当該基地局情報の検索を要求する検索要求を送信する(ステップS33)。
The base station
キャッシュサーバ3aは、基地局情報利用装置12から検索要求を受信する。キャッシュサーバ3aにおいて、キャッシュ対象判定部31は、受信した検索要求に含まれる基地局情報の識別コードが、記憶している識別コードのリストに含まれていることを検出する。キャッシュ対象判定部31は、受信した検索要求で示される基地局情報がキャッシュすべき基地局情報であると判定し、更にメモリキャッシュ32に当該基地局情報が記憶されていることを検出する。キャッシュ対象判定部31は、検索要求に対応する基地局情報をメモリキャッシュ32から読み出す(ステップS34)。
The cache server 3a receives the search request from the base station
キャッシュ対象判定部31は、検索要求の送信元の基地局情報利用装置12に検索結果として、読み出した基地局情報を送信する(ステップS35)。
The cache
図4は、実施形態のデータベースシステムにおいて分散データベース2に基地局情報を記憶させる処理の一例を示す図である。図4に示す例では、図2に示した例と同様に、データベースシステムが2つのキャッシュサーバ3(キャッシュサーバ3aとキャッシュサーバ3b)を備える場合を示している。また、基地局情報利用装置12が検索の対象とする基地局情報にキャッシュサーバ3aが対応付けられている。なお、図4に示す例では、ネットワーク5における障害によって基地局情報蓄積装置11とキャッシュサーバ3aとが通信不能になっている場合について説明する。なお、図4におけるステップS11〜ステップS16は、図2におけるステップS11〜ステップS16と同じ処理であり、その説明を省略する。
FIG. 4 is a diagram illustrating an example of processing for storing base station information in the distributed
基地局情報蓄積装置11は、キャッシュデータ管理装置4から受信したアクセス情報に含まれる第1のアクセス先(キャッシュサーバ3a)に、分散データベース2に記憶させる基地局情報と当該基地局情報を記憶させる要求とを含む蓄積要求を送信する(ステップS41)。
The base station
基地局情報蓄積装置11は、蓄積要求に対する応答がキャッシュサーバ3aから得られないことから、ネットワーク5又はキャッシュサーバ3aに障害が発生していると判定する。基地局情報蓄積装置11は、アクセス情報に含まれる第2のアクセス先(キャッシュサーバ3b)に、分散データベース2に記憶させる基地局情報と当該基地局情報を記憶させる要求とを含む蓄積要求を送信する(ステップS42)。
The base station
キャッシュサーバ3bは、基地局情報蓄積装置11から蓄積要求を受信する。キャッシュサーバ3bにおいて、キャッシュ対象判定部31は、受信した蓄積要求に含まれる基地局情報の識別コードが、記憶している識別コードのリストに含まれていないことを検出する。キャッシュ対象判定部31は、受信した蓄積要求に含まれる基地局情報がキャッシュすべき基地局情報でないと判定し、当該基地局情報を分散データベース2に記憶させる保存要求を分散データベース2に送信する(ステップS43)。
The cache server 3b receives a storage request from the base station
キャッシュ対象判定部31は、分散データベース2から保存完了の通知を受信すると(ステップS44)、基地局情報の蓄積が完了したことを蓄積要求の送信元の基地局情報蓄積装置11に送信して、蓄積完了の通知をする(ステップS45)。
When the cache
キャッシュサーバ3aにおいて、キャッシュ対象判定部31は、メモリキャッシュ32に記憶されている基地局情報に対応付けられている時刻に基づいて、基地局情報をメモリキャッシュ32に記憶させてから一定期間が経過しているか否かを判定する。一定期間が経過していると判定した場合、キャッシュ対象判定部31は、記憶させてから一定期間が経過している基地局情報をメモリキャッシュ32からクリア(削除)する(ステップS46)。
In the cache server 3a, the cache
図5は、実施形態のデータベースシステムにおいて基地局情報利用装置12が基地局情報を検索する処理の一例を示す図である。図5に示す例では、図2に示した例と同様に、データベースシステムが2つのキャッシュサーバ3(キャッシュサーバ3aとキャッシュサーバ3b)を備える場合を示している。また、基地局情報利用装置12が検索の対象とする基地局情報にキャッシュサーバ3aが対応付けられている。なお、図5に示す例では、ネットワーク5における障害によって基地局情報利用装置12とキャッシュサーバ3aとが通信不能になっている場合について説明する。なお、図5におけるステップS11〜ステップS14及びステップS31〜ステップS32は、図3におけるステップS11〜ステップS14及びステップS31〜ステップS32と同じ処理であり、その説明を省略する。
FIG. 5 is a diagram illustrating an example of processing in which the base station
基地局情報利用装置12は、キャッシュデータ管理装置4から受信したアクセス情報に含まれる第1のアクセス先(キャッシュサーバ3a)に、利用する基地局情報の識別コードと当該基地局情報の検索を要求する検索要求を送信する(ステップS51)。
The base station
基地局情報利用装置12は、検索要求に対する応答がキャッシュサーバ3aから得られないことから、ネットワーク5又はキャッシュサーバ3aに障害が発生していると判定する。基地局情報利用装置12は、アクセス情報に含まれる第2のアクセス先(キャッシュサーバ3b)に、利用する基地局情報の識別コードと当該基地局情報の検索を要求する検索要求を送信する(ステップS52)。
The base station
キャッシュサーバ3bは、基地局情報利用装置12から検索要求を受信する。キャッシュサーバ3bにおいて、キャッシュ対象判定部31は、受信した検索要求に含まれる基地局情報の識別コードが、記憶している識別コードのリストに含まれていないことを検出する。キャッシュ対象判定部31は、受信した検索要求で示される基地局情報がキャッシュすべき基地局情報でないと判定し、当該検索要求を分散データベース2に送信する(ステップS53)。
The cache server 3b receives the search request from the base station
キャッシュ対象判定部31は、分散データベース2から検索要求で示される基地局情報を検索結果として受信すると(ステップS54)、当該検索結果を検索要求の送信元の基地局情報利用装置12に送信する(ステップS55)。
When the cache
図4及び図5において、基地局情報蓄積装置11及び基地局情報利用装置12がネットワーク5の障害のためにキャッシュサーバ3aにアクセスできない場合における処理を説明したが、キャッシュサーバ3aに障害が発生してダウンしている場合においても同様の処理が行われる。なお、キャッシュサーバ3aがダウンしている場合には、図4におけるステップS46のメモリキャッシュ32のクリアは行われない。
4 and 5, the processing when the base station
実施形態のデータベースシステムによれば、ある基地局情報をキャッシュすべきキャッシュサーバ3が停止している場合、クライアント(基地局情報蓄積装置11及び基地局情報利用装置12)は第2のアクセス先で示される他のキャッシュサーバ3を介して分散データベース2にアクセスする。このとき、他のキャッシュサーバ3は、自サーバがキャッシュすべき基地局情報以外をメモリキャッシュ32に記憶させない。これにより、ある基地局情報をキャッシュすべきキャッシュサーバ3が復旧した後に、他のキャッシュサーバ3に更新されない基地局情報が残ることを防ぎ、クライアントが他のキャッシュサーバ3に記憶されている古い基地局情報を取得してしまうことを防ぐことができる。
According to the database system of the embodiment, when the
また、実施形態のデータベースシステムによれば、キャッシュサーバ3は、メモリキャッシュ32に記憶している基地局情報に対して、一定期間において新たな蓄積要求(更新要求)を受信しなかった場合に当該基地局情報を無効な情報としてクリアする。これにより、ネットワーク5の障害(例えば、切断)により基地局情報蓄積装置11がある基地局情報をキャッシュするキャッシュサーバ3ではなく、第2のアクセス先で示されるキャッシュサーバ3を介して分散データベース2にアクセスした場合に、分散データベース2における基地局情報とキャッシュサーバ3がキャッシュしている基地局情報とにおける不一致を解消することができる。
Further, according to the database system of the embodiment, the
分散データベースの可用性を生かすために、単一障害点とならないようにメモリキャッシュを分散データベースの各ノードに配置した場合、分散データベースはどのノードからでもデータ更新が可能であるので様々な場所から分散データベースのデータが更新される。この場合、メモリキャッシュのデータと分散データベースのデータとの整合性がなってしまう。これに対して、本実施形態のデータベースシステムでは、キャッシュサーバ3にキャッシュさせる基地局情報を限定しているので、キャッシュサーバ3にキャッシュされている基地局情報と、分散データベース2に記憶されている基地局情報とにおける整合性が崩れることを防ぎ、信頼性のある基地局情報を高速に蓄積、検索することが可能になる。また、本実施形態のデータベースシステムでは、基地局情報蓄積装置11及び基地局情報利用装置12のクライアントがアクセス先のキャッシュサーバ3をキャッシュデータ管理装置4に問い合せるという簡便な処理で、分散データベース2におけるデータの整合性を保ちつつ、キャッシュサーバを利用したデータへのアクセスの高速化を図ることができる。
In order to take advantage of the availability of the distributed database, when the memory cache is arranged at each node of the distributed database so that it does not become a single point of failure, the distributed database can be updated from any node, so the distributed database from various locations The data of is updated. In this case, the consistency between the data in the memory cache and the data in the distributed database is lost. On the other hand, in the database system of the present embodiment, the base station information to be cached in the
また、キャッシュサーバ3がキャッシュする基地局情報を限定し、キャッシュされている基地局情報に一定期間の有効期限を設けていることにより、キャッシュサーバ3が停止したり、キャッシュサーバ3への通信に障害が生じたりした際に、他のキャッシュサーバ3を介して分散データベース2に基地局情報を記憶させた後に、キャッシュサーバ3が復帰した場合でも、メモリキャッシュ32と分散データベース2との整合性を保つことができる。
Further, the base station information cached by the
また、基地局情報蓄積装置11から一定期間において基地局情報の蓄積要求がない場合にメモリキャッシュ32をクリアするので、ネットワーク5等のダウンによりクライアントと、キャッシュを行っているキャッシュサーバ3との通信が行えない状況が続いて、クライアントが他のキャッシュサーバ3に基地局情報の蓄積要求を行った後に、クライアントと、キャッシュを行っているキャッシュサーバ3との通信が回復した場合でも、キャッシュサーバ3が検索要求を受信したときに古い基地局情報をクライアントに返信することを防ぐことができる。
In addition, since the
上述した実施形態における基地局情報蓄積装置11、基地局情報利用装置12、キャッシュサーバ3、キャッシュデータ管理装置4のいずれか又はすべてをコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、更に前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。
Any or all of the base station
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.
分散データベースの可用性を保ちつつメモリキャッシュによる高速化が不可欠な用途にも適用できる。 It can also be applied to applications where speeding up with a memory cache is essential while maintaining the availability of a distributed database.
11…基地局情報蓄積装置
12…基地局情報利用装置
2…分散データベース
21…データベース
22…ネットワーク
3、3a、3b…キャッシュサーバ
31…キャッシュ対象判定部
32…メモリキャッシュ
4…キャッシュデータ管理装置
5…ネットワーク
DESCRIPTION OF
Claims (4)
前記キャッシュデータ管理装置は、
前記分散データベースに記憶させるデータの識別コードと前記キャッシュサーバそれぞれがキャッシュすべきデータとを対応付けたテーブルを有し、
前記クライアントから前記分散データベースへのアクセスの際に利用するキャッシュサーバの問合せを受信すると、複数の前記キャッシュサーバのうち前記クライアントが利用するデータに対応するキャッシュサーバを第1のアクセス先とし、他の前記キャッシュサーバを第2のアクセス先とするアクセス情報を問合せに対する応答として送信し、
前記キャッシュサーバからキャッシュすべきデータの問合せを受信すると、前記テーブルに基づいて、キャッシュすべきデータの識別コードのリストを応答として送信し、
前記キャッシュサーバは、
前記クライアントからデータを前記分散データベースに記憶させる蓄積要求を受信すると、当該蓄積要求に含まれるデータが自サーバ宛に送信された前記リストに含まれるか否かを判定し、当該データが前記リストに含まれる場合、当該データをメモリキャッシュに記憶させた後に前記分散データベースに当該データを記憶させ、当該データが前記リストに含まれていない場合、当該データをメモリキャッシュに記憶させずに前記分散データベースに当該データを記憶させるキャッシュ対象判定部を有する
ことを特徴とするデータベースシステム。 A database system comprising: a distributed database; a client that acquires and uses data stored in the distributed database; a plurality of cache servers that cache data stored in the distributed database; and a cache data management device,
The cache data management device includes:
A table associating identification codes of data to be stored in the distributed database with data to be cached by the cache servers;
When receiving an inquiry of a cache server used when accessing the distributed database from the client, a cache server corresponding to data used by the client among the plurality of cache servers is set as a first access destination, Sending access information with the cache server as the second access destination as a response to the inquiry;
When a query for data to be cached is received from the cache server, a list of identification codes of data to be cached is transmitted as a response based on the table,
The cache server is
When a storage request for storing data in the distributed database is received from the client, it is determined whether the data included in the storage request is included in the list transmitted to its own server, and the data is included in the list. If included , store the data in the memory cache and then store the data in the distributed database.If the data is not included in the list, store the data in the distributed database without storing the data in the memory cache. database system characterized by having a cache object determination unit Ru is stored the data.
前記キャッシュ対象判定部は、
前記メモリキャッシュにデータを記憶させてから一定期間が経過すると当該データをクリアする
ことを特徴とするデータベースシステム。 The database system according to claim 1,
The cache target determination unit
A database system, wherein a predetermined period of time elapses after data is stored in the memory cache, and the data is cleared.
前記クライアントは、
前記第1のアクセス先で示されるキャッシュサーバから応答がない場合に、前記第2のアクセス先で示されるキャッシュサーバを介して前記分散データベースにアクセスする
ことを特徴とするデータベースシステム。 In the database system according to claim 1 or 2,
The client
When there is no response from the cache server indicated by the first access destination, the distributed database is accessed via the cache server indicated by the second access destination.
前記キャッシュデータ管理装置が、前記クライアントから前記分散データベースへのアクセスの際に利用するキャッシュサーバの問合せを受信すると、複数の前記キャッシュサーバのうち前記クライアントが利用するデータに対応するキャッシュサーバを第1のアクセス先とし、他の前記キャッシュサーバを第2のアクセス先とするアクセス情報を問合せに対する応答として送信する第1のステップと、
前記キャッシュデータ管理装置が、前記キャッシュサーバからキャッシュすべきデータの問合せを受信すると、前記テーブルに基づいて、キャッシュすべきデータの識別コードのリストを応答として送信する第2のステップと、
前記キャッシュサーバが、前記クライアントからデータを前記分散データベースに記憶させる蓄積要求を受信すると、当該蓄積要求に含まれるデータが前記リストに含まれるか否かを判定し、当該データが前記リストに含まれる場合、当該データをメモリキャッシュに記憶させた後に前記分散データベースに当該データを記憶させ、当該データが前記リストに含まれていない場合、当該データをメモリキャッシュに記憶させずに前記分散データベースに当該データを記憶させる第3のステップと
を含むことを特徴とするデータベース制御方法。 A distributed database; a client that acquires and uses data stored in the distributed database; a plurality of cache servers that cache data stored in the distributed database; an identification code of data stored in the distributed database; and the cache A database control method in a database system comprising a cache data management device having a table that associates data to be cached by each server,
When the cache data management apparatus receives an inquiry from a cache server used when accessing the distributed database from the client, a cache server corresponding to data used by the client among the plurality of cache servers is first selected. A first step of transmitting, as a response to the query, access information having the other access destination as the second access destination;
A second step of transmitting, as a response, a list of identification codes of data to be cached based on the table when the cache data management device receives a query of data to be cached from the cache server;
When the cache server receives a storage request for storing data from the client in the distributed database, the cache server determines whether the data included in the storage request is included in the list, and the data is included in the list. If the data is stored in the memory cache after the data is stored in the memory cache and the data is not included in the list, the data is stored in the distributed database without storing the data in the memory cache. database control method characterized by including a third step of Ru is stored.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013258276A JP5706956B1 (en) | 2013-12-13 | 2013-12-13 | Database system and database control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013258276A JP5706956B1 (en) | 2013-12-13 | 2013-12-13 | Database system and database control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5706956B1 true JP5706956B1 (en) | 2015-04-22 |
JP2015114972A JP2015114972A (en) | 2015-06-22 |
Family
ID=52986047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013258276A Expired - Fee Related JP5706956B1 (en) | 2013-12-13 | 2013-12-13 | Database system and database control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5706956B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110580731A (en) * | 2019-08-28 | 2019-12-17 | 稿定(厦门)科技有限公司 | 3D character rendering method, medium, device and apparatus |
CN116303608A (en) * | 2023-03-16 | 2023-06-23 | 中国建设银行股份有限公司 | Data processing method and device for application service |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11224219A (en) * | 1998-02-05 | 1999-08-17 | Nippon Telegr & Teleph Corp <Ntt> | Distributed cache control method, distributed control device, distributed cache system, and storage medium storing distributed cache control program |
JP2003015829A (en) * | 2001-06-29 | 2003-01-17 | Minolta Co Ltd | Data transmitter, data communication system, data communication method, data transmission program and computer readable recording medium in which data transmission program is recorded |
JP2006196008A (en) * | 2006-01-25 | 2006-07-27 | Toshiba Corp | Managing device, cache control method of the same, recording medium, and cache control method of information transfer system |
JP2012018607A (en) * | 2010-07-09 | 2012-01-26 | Nomura Research Institute Ltd | Distributed cache system |
JP2012141900A (en) * | 2011-01-05 | 2012-07-26 | Nippon Telegr & Teleph Corp <Ntt> | Cache control system and cache control method |
-
2013
- 2013-12-13 JP JP2013258276A patent/JP5706956B1/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11224219A (en) * | 1998-02-05 | 1999-08-17 | Nippon Telegr & Teleph Corp <Ntt> | Distributed cache control method, distributed control device, distributed cache system, and storage medium storing distributed cache control program |
JP2003015829A (en) * | 2001-06-29 | 2003-01-17 | Minolta Co Ltd | Data transmitter, data communication system, data communication method, data transmission program and computer readable recording medium in which data transmission program is recorded |
JP2006196008A (en) * | 2006-01-25 | 2006-07-27 | Toshiba Corp | Managing device, cache control method of the same, recording medium, and cache control method of information transfer system |
JP2012018607A (en) * | 2010-07-09 | 2012-01-26 | Nomura Research Institute Ltd | Distributed cache system |
JP2012141900A (en) * | 2011-01-05 | 2012-07-26 | Nippon Telegr & Teleph Corp <Ntt> | Cache control system and cache control method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110580731A (en) * | 2019-08-28 | 2019-12-17 | 稿定(厦门)科技有限公司 | 3D character rendering method, medium, device and apparatus |
CN110580731B (en) * | 2019-08-28 | 2023-03-14 | 稿定(厦门)科技有限公司 | 3D character rendering method, medium, device and apparatus |
CN116303608A (en) * | 2023-03-16 | 2023-06-23 | 中国建设银行股份有限公司 | Data processing method and device for application service |
Also Published As
Publication number | Publication date |
---|---|
JP2015114972A (en) | 2015-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240406106A1 (en) | Request routing based on class | |
US8065275B2 (en) | Systems and methods for cache optimization | |
JP5828760B2 (en) | Method and system for cache optimization | |
US8812651B1 (en) | Systems and methods for client cache awareness | |
US10225231B2 (en) | Method and server of remote information query | |
US20050240574A1 (en) | Pre-fetching resources based on a resource lookup query | |
JP2008519362A (en) | Content address storage device for maintaining content address mapping | |
CN108494755B (en) | Method and device for transmitting Application Programming Interface (API) request | |
KR20210044281A (en) | Method and apparatus for ensuring continuous device operation stability in cloud degraded mode | |
KR20150103477A (en) | Apparatus and method for managing cache in cache distributed environment | |
CN109254981B (en) | Data management method and device of distributed cache system | |
JP5706956B1 (en) | Database system and database control method | |
JP5449462B2 (en) | Distributed database system and program | |
JP6233846B2 (en) | Variable-length nonce generation | |
US11442960B2 (en) | Edge key value store for a distributed platform | |
US20160050292A1 (en) | Local web resource access | |
JP5908057B1 (en) | Database system and database control method | |
JPH05143435A (en) | Data base system | |
US20090254526A1 (en) | Network management information (nmi) distribution | |
JP5345577B2 (en) | Name resolution device, name resolution method, and name resolution program | |
JPH1198162A (en) | Continuous data access method | |
CN105897832A (en) | Service data providing server, method and system | |
US10938878B2 (en) | Separate cache servers for storing objects in different dedicated size ranges | |
JP2020095434A (en) | Communication device, communication method, and communication program | |
JP6901262B2 (en) | Content distribution system transfer devices and programs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150121 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150210 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5706956 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |