JP2018041322A - 異種データベース管理装置、方法及びプログラム - Google Patents
異種データベース管理装置、方法及びプログラム Download PDFInfo
- Publication number
- JP2018041322A JP2018041322A JP2016175716A JP2016175716A JP2018041322A JP 2018041322 A JP2018041322 A JP 2018041322A JP 2016175716 A JP2016175716 A JP 2016175716A JP 2016175716 A JP2016175716 A JP 2016175716A JP 2018041322 A JP2018041322 A JP 2018041322A
- Authority
- JP
- Japan
- Prior art keywords
- data
- database
- rule
- request
- information
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】異種データベース管理装置は、データ特性分析部と、ルール生成部と、を備えている。データ特性分析部は、クライアントから受け付けた1以上のリクエストに関するデータをテーブルIDごとに含んだリクエスト履歴テーブルと、データ実体をデータIDごとに含んだデータテーブルを取得し、これからテーブルIDごとに1以上の特性情報項目に対する値を含んだ特性情報テーブルを生成する。ルール生成部は、特性情報テーブルから1以上の特性情報を抽出しこれらの特性情報を、1以上の情報からテーブルIDごとに格納先として最適なデータベースを選択する判定ロジックに適用して、テーブルIDごとに振り分ける際に最適なデータベースを対応付けるルールテーブルを生成する。
【選択図】図1
Description
本実施形態の異種データベース管理装置(以下、異種DB管理装置と称す)について図1を参照して説明する。
本実施形態の異種DB管理装置100は、振り分けエンジン部101、振り分け情報DB102、メモリ103、データ特性分析部104、ルール生成部105、永続化部106、アダプタA107、アダプタZ108、DB−A109、DB−Z110を備えている。本実施形態の異種DB管理装置は、複数種別のデータベースを対象とする。異種データベース管理装置は、上述したシステムに対応している。
また、振り分けエンジン部101がデータテーブルの新規定義リクエストを受けた場合及び振り分けルールの更新依頼を受けた場合には、振り分けエンジン部101は以下のように動作する。(1)ルールテーブル及びリクエスト履歴テーブルに該当するテーブルのIDを持つデータを追加する。その際、ルールテーブル上の当該データテーブルIDのPrimary−DB(プライマリーデータベース)をメモリに設定する。(2)クライアントからリクエストを受けると、データをメモリ103上のデータテーブルに読み書きする。さらにリクエスト履歴テーブルを更新する。(3)一定量のデータがメモリ103上に蓄積されると、データ特性分析部104にデータ特性分析を依頼する。なお、データテーブルは、クライアントのデータテーブルを定義する度に生成され通常複数ある。また、テーブルIDは、複数あるデータテーブルを識別するためのものである。各データテーブルには、複数のデータ実体を記録するため、データ実体を特定するデータIDを、各データ実体に対応付けている。
この他の場合には、振り分けエンジン部101は、取得した格納先DBにデータのリクエスト先を送信する。ここでは、データの新規作成リクエストの場合、Primary−DBを参照先とする。データの新規作成リクエスト以外の場合、Primary−DBとSecondary−DB(セカンダリーデータベース)を参照先とする。複数のテーブルを対象としたリクエストの場合、格納先DBごとにリクエストを分解し、各リクエストを実行する。
データ特性分析部104がリクエスト履歴テーブルの作成を振り分け情報DB102に依頼する(ステップS201)。振り分け情報DB102がリクエスト履歴テーブルの定義を行い(ステップS202)、その定義を行った旨をデータ特性分析部104に知らせる。リクエスト履歴テーブルは、テーブル名の項目と、リクエスト内容を示す1以上の項目と、が設定されている。リクエスト履歴テーブルについては後に図11を参照して説明する。
同様に、データ特性分析部104が特性情報テーブルの作成を振り分け情報DB102に依頼する(ステップS203)。振り分け情報DB102が特性情報テーブルの定義を行い(ステップS204)、その行った旨をデータ特性分析部104に知らせる。特性情報テーブルは、テーブル名の項目と、データに関する特性情報を示す1以上の項目とが設定されている。特性情報テーブルについては後に図8を参照して説明する。
振り分けエンジン部101がクライアントからデータテーブルの新規定義の依頼を受け、振り分けエンジン部101は上述した動作を行う(ステップS301)。これはデータテーブルの新規定義及び当該データテーブルのテーブルIDを定義することである。ルールテーブル及びリクエスト履歴テーブルのそれぞれに依頼されたデータテーブルのデータテーブルIDを追加し、情報DB102に蓄積する(ステップS302、ステップS303)。その旨を振り分けエンジン部101及びクライアントに知らせる(ステップS305)。これでクライアントからのリクエスト受け付ける準備ができたことになる。
データ特性分析部104が、振り分け情報DB102へ定期的な分析を依頼する(ステップS401)。この依頼は特定の複数のテーブルIDに対する分析でもよいし、1つのテーブルIDについての分析でもよい。すなわち、1以上のテーブルIDについて分析することができる。振り分け情報DB102はルールテーブルの更新を受け付け(ステップS402)、データ特性分析部104へその旨を伝える。
図3のルールテーブルの更新がなされた後に、振り分け情報DB102からデータ特性分析部104にその旨の知らせが送信され、これを受けてデータ特性分析部104はデータの永続化の処理に入り永続化部106へメモリ103が格納しているデータを永続化する処理を開始する(ステップS501)。永続化部106がメモリ103内にあるデータを取得する(ステップS502)。図3の処理で得ているルールテーブルに基づいて、メモリ103にあるデータテーブルごとに対応するデータ実体をDB−A109からDB−Z110のいずれかのデータベースへデータテーブルを移動させ(ステップS504、506)そこに格納し(永続化:ステップS505、S507)永続化した旨を永続化部106へ返す。DB−A109からDB−Z110は複数であれば任意の個数あり、それぞれの仕様も任意あるが、特性情報テーブルの項目に対応する仕様はそれぞれのデータベースで異なっていることが想定される。換言すれば、図9の判定ロジックで選択が多様になるようなデータベースの仕様であればよい。
ルール生成部105は、振り分けルールを振り分け情報DB102から取得する(ステップS601)。ルール生成部105は、取得した振り分けルールに基づいて、Secondary−DBであるデータベースを特定しそのデータベース名を抽出する(ステップS602)。ルール生成部105が、抽出されたSecondary−DBであるデータベースのそれぞれにデータ実体が格納されているかどうかを検索する(ステップS603)。その後、ルール生成部105が、抽出された全てのSecondary−DBそれぞれにデータが格納されているかどうかを判定して更新するかどうかを判定する(ステップS604)。この更新判定では、データが格納されていないDBはルールテーブル(振り分けルール)から記載を削除し、一方、1つでもデータが格納されているDBはそのままルールテーブルに記載を残しておく。その後、ルール生成部105がこの更新判定の結果を振り分け情報DB102に送信し、振り分け情報DB102がルールテーブルを更新する(ステップS606)。
クライアントがリクエストを送信し振り分けエンジン部101が受け付けると、振り分けエンジン部101がリクエストに含まれるデータのURI情報からテーブル名を特定し、振り分け情報DB102に格納されているルールテーブル(振り分けルールが記載)にテーブル名ごとに登録された格納先DB情報を取得する(ステップS702)。その後、振り分け先がDB−A109であった場合にはDB−A109へ送信し(ステップS703)、DB−A109でリクエストが実行される(ステップS704)。一方、振り分け先がDB−Z110であった場合にはDB−Z110へ送信し(ステップS705)、DB−Z110でリクエストが実行される(ステップS706)。
特性情報テーブルは、データ特性分析部104が、メモリ103に格納されているデータテーブルと、振り分けエンジン部101に格納されて更新されているリクエスト履歴テーブルから作成する。リクエスト履歴テーブルは、後に図11を参照して詳細に説明するが、リクエストの統計情報である次のものをテーブルIDごとに格納している。このリクエストの統計情報は、例えば、データの生成回数、最新及び最古のデータ生成リクエストの受信時刻、データの更新回数、最新及び最古のデータ更新リクエストの受信時刻、データの取得回数、最新及び最古のデータ取得リクエストの受信時刻、削除されたデータの生成時刻、削除されたデータの削除時刻、データの検索回数、及び検索クエリの条件数(リスト形式)を含んでいる。
判定ロジックは、ステップS312でデータ特性分析部104が分析して生成し特性情報テーブルから、特性情報項目の1つ以上を用いてルールテーブルを得るためのロジックである。そのロジックの一例が図9に示されている。図9の例では、まず、平均データサイズの大きさで分け、平均データサイズが第1閾値(ここでは1000[KB])よりも小さいかどうか判定する(ステップS901)。ステップS901で平均データサイズが第1閾値よりも小さいと判定された場合には、データの合計生成頻度が合計更新頻度よりも大きいかどうか判定し(ステップS902)、ステップS901で平均データサイズが第1閾値よりも小さくないと判定された場合には、平均データサイズが第2閾値(8000[KB])よりも小さいかどうか判定する(ステップS903)。
リクエスト履歴テーブルは、(1)データの生成リクエスト、(2)データの更新リクエスト、(3)データの取得リクエスト、(4)データの削除リクエスト、及び(5)データの検索リクエストの情報のうち少なくとも1つ以上を保持する。
Claims (8)
- クライアントから受け付けた1以上のリクエストに関するデータをテーブルIDごとに含んだリクエスト履歴テーブルと、データ実体をデータIDごとに含んだデータテーブルとを取得し、このデータテーブルからテーブルIDごとに1以上の特性情報項目に対する値を含んだ特性情報テーブルを生成するデータ特性分析部と、
前記特性情報テーブルから1以上の特性情報を抽出しこれらの特性情報を、1以上の情報からテーブルIDごとに格納先として最適なデータベースを選択する判定ロジックに適用して、テーブルIDごとに振り分ける際に最適なデータベースを対応付けるルールテーブルを生成するルール生成部と、を備える異種データベース管理装置。 - 前記ルールテーブルは、テーブルIDごとにプライマリーデータベースとセカンダリーデータベースとを設定する請求項1に記載の異種データベース管理装置。
- 前記ルールテーブルに従って、一時的に格納しているデータの実体を、対応するデータベースに書き込む永続化部をさらに備える請求項1または2に記載の異種データベース管理装置。
- 前記ルールテーブルを取得し前記リクエストに含まれるデータのURI情報からテーブルIDを特定し、ルールテーブルに従って当該テーブルIDの格納先データベースにリクエストを送信し、新規作成リクエストの場合にプライマリーデータベースを格納先とし、新規作成以外のリクエストの場合にプライマリーデータベースとセカンダリーデータベースを格納先とする請求項1から3のいずれか1項に記載の異種データベース管理装置。
- クライアントから受け付けた1以上のリクエストに関するデータをテーブルIDごとに含んだリクエスト履歴テーブルと、データ実体をデータIDごとに含んだデータテーブルとを取得し、このデータテーブルからテーブルIDごとに1以上の特性情報項目に対する値を含んだ特性情報テーブルを生成するステップと、
前記特性情報テーブルから1以上の特性情報を抽出しこれらの特性情報を、1以上の情報からテーブルIDごとに格納先として最適なデータベースを選択する判定ロジックに適用して、テーブルIDごとに振り分ける際に最適なデータベースを対応付けるルールテーブルを生成するステップと、を備える異種データベース管理方法。 - 前記ルールテーブルに従って、一時的に格納しているデータの実体を、対応するデータベースに書き込むステップをさらに備える請求項5に記載の異種データベース管理方法。
- 前記ルールテーブルを取得し前記リクエストに含まれるデータのURI情報からテーブルIDを特定し、ルールテーブルに従って当該テーブルIDの格納先データベースにリクエストを送信し、新規作成リクエストの場合にプライマリーデータベースを格納先とし、新規作成以外のリクエストの場合にプライマリーデータベースとセカンダリーデータベースを格納先とする請求項5または6に記載の異種データベース管理方法。
- コンピュータに、請求項5から7のいずれか1項に記載の異種データベース管理方法の各ステップを実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016175716A JP6674871B2 (ja) | 2016-09-08 | 2016-09-08 | 異種データベース管理装置、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016175716A JP6674871B2 (ja) | 2016-09-08 | 2016-09-08 | 異種データベース管理装置、方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018041322A true JP2018041322A (ja) | 2018-03-15 |
JP6674871B2 JP6674871B2 (ja) | 2020-04-01 |
Family
ID=61626070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016175716A Active JP6674871B2 (ja) | 2016-09-08 | 2016-09-08 | 異種データベース管理装置、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6674871B2 (ja) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1078903A (ja) * | 1996-09-04 | 1998-03-24 | Hitachi Ltd | データ分散設計支援装置 |
JP2000267903A (ja) * | 1999-03-16 | 2000-09-29 | Nec Corp | 複数性質別データ格納装置 |
JP2006221513A (ja) * | 2005-02-14 | 2006-08-24 | Hitachi Ltd | 計算機システムにおけるデータ配置設定 |
JP2007310569A (ja) * | 2006-05-17 | 2007-11-29 | Hitachi Ltd | 情報配置決定方法の評価方法及び評価プログラム |
JP2009122966A (ja) * | 2007-11-15 | 2009-06-04 | Nomura Research Institute Ltd | データベース振分装置、データベース振分方法、プログラム、および記録媒体 |
JP2013030035A (ja) * | 2011-07-29 | 2013-02-07 | Nippon Telegr & Teleph Corp <Ntt> | 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム |
JP2013065104A (ja) * | 2011-09-15 | 2013-04-11 | Toshiba Corp | 負荷分散システム、データアクセス装置、及び負荷分散方法 |
JP2013065120A (ja) * | 2011-09-15 | 2013-04-11 | Toshiba Corp | 負荷分散システム、データアクセス装置、及び負荷分散方法 |
JP2015132972A (ja) * | 2014-01-14 | 2015-07-23 | 株式会社野村総合研究所 | データ再配置システム |
JP2015179449A (ja) * | 2014-03-19 | 2015-10-08 | Kddi株式会社 | 仮想データベースシステム管理装置、管理方法及び管理プログラム |
-
2016
- 2016-09-08 JP JP2016175716A patent/JP6674871B2/ja active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1078903A (ja) * | 1996-09-04 | 1998-03-24 | Hitachi Ltd | データ分散設計支援装置 |
JP2000267903A (ja) * | 1999-03-16 | 2000-09-29 | Nec Corp | 複数性質別データ格納装置 |
JP2006221513A (ja) * | 2005-02-14 | 2006-08-24 | Hitachi Ltd | 計算機システムにおけるデータ配置設定 |
JP2007310569A (ja) * | 2006-05-17 | 2007-11-29 | Hitachi Ltd | 情報配置決定方法の評価方法及び評価プログラム |
JP2009122966A (ja) * | 2007-11-15 | 2009-06-04 | Nomura Research Institute Ltd | データベース振分装置、データベース振分方法、プログラム、および記録媒体 |
JP2013030035A (ja) * | 2011-07-29 | 2013-02-07 | Nippon Telegr & Teleph Corp <Ntt> | 呼処理データ保存方法、呼処理データ振り分け装置およびプログラム |
JP2013065104A (ja) * | 2011-09-15 | 2013-04-11 | Toshiba Corp | 負荷分散システム、データアクセス装置、及び負荷分散方法 |
JP2013065120A (ja) * | 2011-09-15 | 2013-04-11 | Toshiba Corp | 負荷分散システム、データアクセス装置、及び負荷分散方法 |
JP2015132972A (ja) * | 2014-01-14 | 2015-07-23 | 株式会社野村総合研究所 | データ再配置システム |
JP2015179449A (ja) * | 2014-03-19 | 2015-10-08 | Kddi株式会社 | 仮想データベースシステム管理装置、管理方法及び管理プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP6674871B2 (ja) | 2020-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8738572B2 (en) | System and method for storing data streams in a distributed environment | |
JP6006267B2 (ja) | 索引キーを使用して検索を絞込むシステムおよび方法 | |
US8706710B2 (en) | Methods for storing data streams in a distributed environment | |
US8140495B2 (en) | Asynchronous database index maintenance | |
CN103729471B (zh) | 数据库查询方法和装置 | |
US20220083618A1 (en) | Method And System For Scalable Search Using MicroService And Cloud Based Search With Records Indexes | |
US9183267B2 (en) | Linked databases | |
JP6281225B2 (ja) | 情報処理装置 | |
JP6135509B2 (ja) | 情報システム、その管理方法およびプログラム、データ処理方法およびプログラム、ならびに、データ構造 | |
KR20210121315A (ko) | 데이터베이스 동기화 | |
Borkar et al. | Have your data and query it too: From key-value caching to big data management | |
US10902069B2 (en) | Distributed indexing and aggregation | |
US11811851B2 (en) | Method and system for enforcing governance across multiple content repositories using a content broker | |
KR20200094074A (ko) | 인덱스 관리 방법, 장치, 기기 및 저장 매체 | |
US10019483B2 (en) | Search system and search method | |
JP6084700B2 (ja) | 検索システム及び検索方法 | |
JP5684671B2 (ja) | 条件検索データ保存方法、条件検索データベースクラスタシステム、ディスパッチャ、およびプログラム | |
JP6674871B2 (ja) | 異種データベース管理装置、方法及びプログラム | |
KR20190129474A (ko) | 데이터 검색 장치 및 방법 | |
US8666972B2 (en) | System and method for content management and determination of search conditions | |
JP2016062522A (ja) | データベース管理システム、データベースシステム、データベース管理方法およびデータベース管理プログラム | |
KR101646954B1 (ko) | 데이터베이스 장치, 데이터베이스 장치에서 수행되는 데이터베이스 관리 방법 및 이를 저장하는 기록매체 | |
US10311155B2 (en) | Dynamic master record selection | |
JP2015176276A (ja) | データ処理装置及びデータ処理方法 | |
WO2020225925A1 (ja) | 情報処理装置、情報処理システムおよび情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180830 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190806 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190918 |
|
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: 20200303 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200309 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6674871 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |