JP2014157442A - データベース装置 - Google Patents

データベース装置 Download PDF

Info

Publication number
JP2014157442A
JP2014157442A JP2013027317A JP2013027317A JP2014157442A JP 2014157442 A JP2014157442 A JP 2014157442A JP 2013027317 A JP2013027317 A JP 2013027317A JP 2013027317 A JP2013027317 A JP 2013027317A JP 2014157442 A JP2014157442 A JP 2014157442A
Authority
JP
Japan
Prior art keywords
cabinet
database
actual data
database device
row
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
Application number
JP2013027317A
Other languages
English (en)
Other versions
JP5732084B2 (ja
Inventor
Shunsuke Tsurumi
俊輔 鶴見
Kenji Abe
健二 阿部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013027317A priority Critical patent/JP5732084B2/ja
Publication of JP2014157442A publication Critical patent/JP2014157442A/ja
Application granted granted Critical
Publication of JP5732084B2 publication Critical patent/JP5732084B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】範囲検索の機能を停止させることなく、データを移行できるようにする。
【解決手段】データベース装置10は、配置先情報変更コマンドを受信した後に、キーMを含む検索電文を受信した際に、分割中情報があり、且つ、移行先情報Rが自データベース装置を示すものなら、検索電文を送信した他のデータベース装置10に対し、移行元情報Qをリダイレクト先として指定したリダイレクト信号を送信する(S201)。データベース装置10は、他のデータベース装置10からリダイレクト信号を受信したなら、当該リダイレクト信号に指定されたリダイレクト先に対し、該当の検索電文を送信する(S203)。
【選択図】図9

Description

本発明は、データベース装置に関するものである。
従来の範囲検索においては、粒度(10〜30 のような10 単位の範囲や、15〜35のような5単位の範囲など)を複数種類想定し、それぞれの範囲に対するバリューを紐付けて管理しておき、クエリによって、それらの複数種類の管理情報を組み合わせて、どのような範囲検索であっても、ある程度高速に範囲に対するバリューを読み出すことができる仕組みがある(非特許文献1)。
Range-Key Skip Graph による範囲検索可能な大規模分散キーバリューストアの実現 IPSJ SIG Notes 2010-DPS-144(9), 1-8, 2010-09-10
しかし、このような複数種類の範囲の粒度に対するバリューへの紐付けの情報を保持する必要があり、また、それらを参照して範囲検索を実行する必要もある。よって、コストがかかり、高速な範囲検索が難しいという問題がある。
また、図13に示すように、複数のデータベース装置10Aを備える分散データベースシステムにおいて、あるデータベース装置10Aに保持された一群のデータを他のデータベース装置10Aに移行する場合には、範囲検索の機能を停止させる必要があり、利便性が損なわれる。
本発明は、上記の課題に鑑みてなされたものであり、その目的とするところは、範囲検索の機能を停止させることなく、データを移行できるデータベース装置を提供することにある。
上記の課題を解決するために、本発明は、複数のデータベース装置からなる分散データベースシステムを構成するデータベース装置であって、いずれかのデータベース装置に記憶される一群の実データのそれぞれにつき、当該一群の実データを検索するためキー範囲情報(11)、当該一群の実データが記憶されるデータベース装置を示す配置先情報(12)、当該データベース装置において当該一群の実データに対応して設けられるキャビネットに対し全データベース装置で一意となるように割り当てられるキャビネット論理通番(13)、を含む共有テーブル行を備える共有テーブル(1)と、自データベース装置に設けられるキャビネットのそれぞれにつき、当該キャビネットに割り当てられるキャビネット論理通番(21)、当該キャビネットに対し自データベース装置で一意となるように割り当てられるキャビネット物理通番(22)、を含む変換テーブル行を備える変換テーブル(2)と、自データベース装置に設けられるキャビネット(4)であり、且つ、当該キャビネットに対応する一群の実データの中での実データのそれぞれにつき、当該一群の中で当該実データを一意に示すキャビネットインデクス(41)、自データベース装置の中での当該実データの位置を示す実データポインタ(42)、含むキャビネット行を備えるキャビネット(4)と、キャビネット(4)ごとに設けられ、当該キャビネット(4)に対応する実データのそれぞれにつき、当該実データを検索するためのキー(51)、当該実データに対応するキャビネットインデクス(41)を辿るためのインデクス(52)、を含むキーテーブル行を備えるキーテーブル(5)と、自データベース装置において実データを個々に記憶するためのデータベース行からなり、当該データベース行に対し、当該データベース行の位置を示す実データインデクス(61)、当該データベース行に記憶すべき実データ(62)、を記憶させるためのデータベース(6)とを備え、共有テーブル(1)のキャビネット論理通番(13)と変換テーブル(2)のキャビネット論理通番(21)は連携する番号であって、変換テーブル(2)のキャビネット物理通番(22)とキャビネット(4)のキャビネット物理通番は連携する番号であって、キャビネット(4)のキャビネットインデックス(41)とキーテーブル(5)のインデックス(52)は連携する番号であって、キャビネット(4)の実データポインタ(42)とデータベース(6)の実データインデックス(61)は連携する番号であることを特徴とする。
例えば、データベース装置は、キー(X)と実データ(Y)を含む電文を受信し、共有テーブル(1)から、キー(X)の一部に一致するキー範囲情報(11)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)が他のデータベース装置を示すものなら、電文を当該他のデータベース装置に送信する機能、配置先情報(12)が自データベース装置を示すものなら、変換テーブル(2)から、共有テーブル行のキャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出す機能、キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)から、実データポインタ(42)のないキャビネット行を検索し、キャビネット行に対し、実データ(62)のないデータベース行の実データインデクス(61)と同じ実データポインタ(42)を追加する機能、当該キャビネット(4)に対応するキーテーブル(5)に対し、キー(X)と同じキー(51)、キャビネットインデクス(41)と同じインデクス(52)、を含むキーテーブル行を追加する機能および、データベース(6)から、追加されたキャビネット行の実データポインタ(42)と同じ実データインデクス(61)を含むデータベース行を検索し、データベース行に対し、実データ(Y)と同じ実データ(62)ならびに、キャビネット論理通番(21)を記憶させる機能を備える。
例えば、データベース装置は、キー(M)を含む電文を受信し、共有テーブル(1)から、キー(M)の一部に一致するキー範囲情報(11)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)が他のデータベース装置を示すものなら、電文を当該他のデータベース装置に送信する機能、配置先情報(12)が自データベース装置を示すものなら、変換テーブル(2)から、キャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出す機能、キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)に対応するキーテーブル(5)から、キー(M)と同じキー(51)を含むキーテーブル行を検索し、キーテーブル行からインデクス(52)を読み出す機能、キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)から、インデクス(52)と同じキャビネットインデクス(41)を含むキャビネット行を検索し、キャビネット行から実データポインタ(42)を読み出す機能および、データベース(6)から、実データポインタ(42)と同じ実データインデクス(61)を含むデータベース行を検索する機能を備える。
例えば、データベース装置は、キャビネット論理通番(N1)とキャビネットインデクス(N2)を含む電文を受信し、共有テーブル(1)から、キャビネット論理通番(N1)と同じキャビネット論理通番(13)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)が他のデータベース装置を示すものなら、電文を当該他のデータベース装置に送信する機能、配置先情報(12)が自データベース装置を示すものなら、変換テーブル(2)から、キャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出す機能、キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)から、キャビネットインデクス(N2)と同じキャビネットインデクス(41)を含むキャビネット行を検索し、キャビネット行から実データポインタ(42)を読み出す機能および、データベース(6)から、実データポインタ(42)と同じ実データインデクス(61)を含むデータベース行を検索する機能を備える。
例えば、データベース装置は、分割番号帯情報(P)と移行元情報(Q)と移行先情報(R)を含む分割中情報を保持する機能、移行元情報(Q)が自データベース装置を示すものなら、分割番号帯情報(P)をキー(M)として、一群の実データを読み出し、読み出された一群の実データを、移行先情報(R)に対応する他のデータベース装置に送信する機能、キー(M)を含む電文を受信した際に、分割中情報があり、且つ、分割番号帯情報(P)がキー(M)の一部に一致し、且つ、移行先情報(R)が他のデータベース装置を示すなら、電文を当該他のデータベース装置に送信する機能、配置先情報変更コマンドとともに分割番号帯情報(P)と移行元情報(Q)と移行先情報(R)を含むを受信したら、共有テーブル(1)から、分割番号帯情報(P)と同じキー範囲情報(11)および移行元情報(Q)と同じ配置先情報(12)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)を、移行先情報(R)と同じ配置先情報(12)に変更する機能、配置先情報変更コマンドを受信した後に、キー(M)を含む電文を受信した際に、分割中情報があり、且つ、移行先情報(R)が自データベース装置を示すものなら、電文を送信した他のデータベース装置に対し、移行元情報(Q)をリダイレクト先として指定したリダイレクト信号を送信する機能、他のデータベース装置からリダイレクト信号を受信したなら、当該リダイレクト信号に指定されたリダイレクト先に対し、該当の電文を送信する機能、データ移行終了コマンドを受信した際、他のデータベース装置への実データの送信中であるなら、その後に受信する電文を蓄積する機能、他のデータベース装置への一群の実データの送信が終了したなら、分割中情報を削除し、移行先情報(R)に対応する他のデータベース装置に指示して、当該他のデータベース装置に保持された分割中情報を削除させる機能、他のデータベース装置への一群の実データの送信が終了したなら、蓄積した電文のそれぞれにつき、当該電文の最終的な送信先が他のデータベース装置である場合は、当該他のデータベース装置に対し、リダイレクト先を指定しないリダイレクト信号を送信する機能、共有テーブル(1)から、分割番号帯情報(P)と同じキー範囲情報(11)を含む共有テーブル行を検索し、変換テーブル(2)から、共有テーブル行のキャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出し、他のデータベース装置への一群の実データの送信が終了したなら、キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)を削除する機能および、他のデータベース装置からの一群の実データの受信が終了し、当該実データでデータベース(6)が更新されたなら、新たなキャビネット(4)を生成し、当該キャビネット(4)、変換テーブル(2)を更新する機能を備える。
本発明によれば、範囲検索の機能を停止させることなく、データを移行することができる。
本実施の形態に係る分散データベースシステムの一例を示す図である。 各データベース装置10の概略構成を示す図である。 キャビネット4を増設する際の動作を示す図である。 実データをデータベース6に記憶させる際の動作を示す図である。 キーによる実データ検索および更新の動作を示す図である。 実データ検索の際に検索電文が他のデータベース装置に送信される様子を示す図である。 識別子による実データ検索および更新の動作を示す図である。 データ移行における動作の第1段階を示す図である。 データ移行における動作の第2段階を示す図である。 データ移行における動作の第3段階を示す図である。 データ移行における動作の第4段階を示す図である。 移行元と移行先のデータベース装置における移行前と移行後の状態と識別子による実データ検索の動作を示す図である。 分散データベースシステムのあるデータベース装置10Aに保持された一群のデータを他のデータベース装置10Aに移行する様子を示す図である。
以下、本発明の実施の形態について図面を参照して説明する。
図1は、本実施の形態に係る分散データベースシステムの一例を示す図である。
分散データベースシステム100は、複数のデータベース装置10を備え、各データベース装置10は、互いに通信可能となっている。
各データベース装置10は、また、制御装置20および呼処理サーバ(SIPサーバなど)30とも通信可能となっている。呼処理サーバ30には、複数の電話機301が収容されている。
図2は、各データベース装置10の概略構成を示す図である。
データベース装置10は、1つの共有テーブル1、1つの変換テーブル2、1つの空塞状況テーブル3、1つ以上のキャビネット4、キャビネット4ごとのキーテーブル5および1つのデータベース6を備える。
共有テーブル1には、いずれかのデータベース装置10に記憶される一群の実データのそれぞれにつき、共有テーブル行を備える。
共有テーブル行は、一群の実データを検索するためキー範囲情報11、一群の実データが記憶されるデータベース装置10を示す配置先情報12、当該データベース装置10において当該一群の実データに対応して設けられるキャビネットに対し全データベース装置で一意となるように割り当てられるキャビネット論理通番13、を含む。
変換テーブル2は、変換テーブル2を備えるデータベース装置(以下、自データベース装置のように呼称する)に設けられるキャビネット4のそれぞれにつき、変換テーブル行を備える。
変換テーブル行は、該当のキャビネット4に割り当てられるキャビネット論理通番(変換テーブル行においては、キャビネット論理通番21という)、該当のキャビネット4に対し自データベース装置で一意となるように割り当てられるキャビネット物理通番22、を含む。
空塞状況テーブル3は、自データベース装置におけるキャビネット4の状況を示すものであり、各キャビネット4につき、空塞状況テーブル行を備える。
空塞状況テーブル行は、該当のキャビネット4に割り当てられるキャビネット物理通番(空塞状況テーブル行においては、キャビネット物理通番31という)、該当のキャビネットにおける実データポインタ42(詳しくは後述する)の有無を示す空塞状況フラグ32、を含む。
キャビネット4には、自データベース装置で一意となるようにキャビネット物理通番が割り当てられる。
また、キャビネット4は、所定数(N)のキャビネット行を備える。
キャビネット行は、当初からキャビネットインデクス41を含み、後に実データポインタ42を含むように更新される。
キャビネット行は、キャビネット行を含むキャビネット4に対応する一群の実データの中での1つの実データに対応するものである。キャビネットインデクス41は、当該一群の中で当該実データを一意に示すものである。実データポインタ42は、自データベース装置のデータベース6の中で当該実データを保持するデータベース行の位置を示すものである。
キーテーブル5は、対応するキャビネット4に記憶される実データのそれぞれにつき、キーテーブル行を備える。キーテーブル行は、該当の実データを検索するためのキー51、当該実データに対応するキャビネットインデクス(41)を辿るためのインデクス52、を含む。
データベース6は、自データベース装置において実データを個々に記憶するためのデータベース行からなる。
データベース行は、当初から実データインデクス61を含み、後に実データ(データベース行においては、実データ62という)、識別子63、を含むように更新される。
実データインデクス61は、当該実データインデクス61を含むデータベース行のデータベース6における位置を示すものである。
識別子63は、当該識別子63を含むデータベース行内の実データインデクス61と同じ実データポインタ42を含むキャビネット4に割り当てられたキャビネット物理通番と同じキャビネット物理通番を含む変換テーブル行内のキャビネット論理通番21と同じキャビネット論理通番(識別子63においては、キャビネット論理通番N1という)、当該キャビネット4において当該実データポインタ42を含むキャビネット行内のキャビネットインデクス41と同じキャビネットインデクス(識別子63においては、キャビネットインデクスN2という)、を含む。
共有テーブル1のキャビネット論理通番13と変換テーブル2のキャビネット論理通番21は連携する番号である。
変換テーブル2のキャビネット物理通番22とキャビネット4のキャビネット物理通番は連携する番号である。
キャビネット4のキャビネットインデックス41とキーテーブル5のインデックス52は連携する番号である。
キャビネット4の実データポインタ42とデータベース6の実データインデックス61は連携する番号である。
図3は、キャビネット4を増設する際の動作を示す図である。
例えば、データベース装置10は、制御装置20や他のデータベース装置10から、増設キー情報A:050-2222、配置先情報B:#1を含むキャビネット増設電文を受信する。
図示しないが、データベース装置10は、配置先情報Bが他のデータベース装置を示すものなら、キャビネット増設電文を他のデータベース装置に送信する。
一方、データベース装置10は、配置先情報Bが自データベース装置を示すものなら、共有テーブル1に対し、増設キー情報Aと同じキー範囲情報11、配置先情報Bと同じ配置先情報12、共有テーブル1にないキャビネット論理通番13、を含む共有テーブル行を追加する(S1)。
次に、データベース装置10は、変換テーブル2に対し、追加された共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21、変換テーブル2にないキャビネット物理通番22、を含む変換テーブル行を追加する(S2)。
また、図示しないが、データベース装置10は、新たなキャビネット4を生成し、キャビネット4に対し、追加された変換テーブル行のキャビネット物理通番22と同じキャビネット物理通番を割り当てる。
また、データベース装置10は、空塞状況テーブル3において、割り当てられたキャビネット物理通番22と同じキャビネット物理通番31を含む空塞状況テーブル行内の空塞状況フラグ32が、キャビネット4が存在することを示すように(「空」→「塞」)、空塞状況テーブル3を更新する。
また、データベース装置10は、更新された共有テーブル1を他のデータベース装置に送信する(S3)。他のデータベース装置10は、共有テーブル1を受信し、受信した共有テーブル1で、自データベース装置の共有テーブル1を置き換える。なお、共有テーブル1を送信したデータベース装置10は、他のデータベース装置10から共有テーブル1を受信した場合、受信した共有テーブル1で、自データベース装置の共有テーブル1を置き換える。
図4は、実データをデータベース6に記憶させる際の動作を示す図である。
例えば、データベース装置10は、制御装置20や他のデータベース装置10から、キーX:050-1111-bbbb、実データY:xxxを含む新規投入電文を受信する。
データベース装置10は、共有テーブル1から、キーXの一部に一致するキー範囲情報11を含む共有テーブル行を検索する(S11)。データベース装置10は、共有テーブル行の配置先情報12が他のデータベース装置を示すものなら、新規投入電文を当該他のデータベース装置に送信する(図示せず)。
一方、データベース装置10は、配置先情報12が自データベース装置を示すものなら、変換テーブル2から、共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21を含む変換テーブル行を検索し(S13)、変換テーブル行からキャビネット物理通番22を読み出す。
次に、データベース装置10は、キャビネット物理通番22と同じキャビネット物理通番を割り当てられたキャビネット4から、実データポインタ42のないキャビネット行を検索し(S15)、キャビネット行に対し、実データ62のないデータベース行の実データインデクス61と同じ実データポインタ42を追加する。
次に、データベース装置10は、キャビネット4に対応するキーテーブル5に対し、キーXと同じキー51、キャビネットインデクス41と同じインデクス52、を含むキーテーブル行を追加する。
次に、データベース装置10は、データベース6から、追加されたキャビネット行の実データポインタ42と同じ実データインデクス61を含むデータベース行を検索し、データベース行に対し、実データYと同じ実データ62ならびに識別子63を記憶させる。
識別子63は、当該識別子63を含むデータベース行内の実データインデクス61と同じ実データポインタ42を含むキャビネット4に割り当てられたキャビネット物理通番と同じキャビネット物理通番を含む変換テーブル行内のキャビネット論理通番21と同じキャビネット論理通番N1、当該キャビネット4において当該実データポインタ42を含むキャビネット行内のキャビネットインデクス41と同じキャビネットインデクスN2、を含む。
図5は、キーによる実データ検索および更新の動作を示す図である。
例えば、データベース装置10は、電話機301から呼処理サーバ30を介して、または、他のデータベース装置10から、キーM:050-1111-bbbb、実データMD:yyyを含む検索電文を受信する。
データベース装置10は、共有テーブル1から、キーMの一部に一致するキー範囲情報11を含む共有テーブル行を検索する(S21)。
図6に示すように、データベース装置10は、共有テーブル行の配置先情報12が他のデータベース装置を示すものなら、検索電文を当該他のデータベース装置に送信する。
図5に戻り、一方、データベース装置10は、配置先情報12が自データベース装置を示すものなら、変換テーブル2から、共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21を含む変換テーブル行を検索し(S23)、変換テーブル行からキャビネット物理通番22を読み出す。
次に、データベース装置10は、キャビネット物理通番22と同じキャビネット物理通番を割り当てられたキャビネット4に対応するキーテーブル5から、キーMと同じキー51を含むキーテーブル行を検索し、キーテーブル行からインデクス52を読み出す。
次に、データベース装置10は、キャビネット物理通番22と同じキャビネット物理通番を割り当てられたキャビネット4から、インデクス52と同じキャビネットインデクス41を含むキャビネット行を検索し、キャビネット行から実データポインタ42を読み出す。
次に、データベース装置10は、データベース6から、実データポインタ42と同じ実データインデクス61を含むデータベース行を検索し、データベース行の実データ62に代えて、実データMDと同じ実データ62を記憶させる。
なお、検索電文には、実データ62を得るためのものもあり、かかる検索電文は実データを含まない。データベース装置10は、かかる検索電文を受信した場合には、同様にデータベース行を検索し、データベース行から実データ62を読み出し、実データ62を例えば、呼処理サーバ30を介して電話機301に送信する。
図7は、識別子による実データ検索および更新の動作を示す図である。
例えば、データベース装置10は、電話機301から呼処理サーバ30を介して、または、他のデータベース装置10から、識別子:12、実データn:yyyを含む検索電文を受信する。識別子は、キャビネット論理通番N1、キャビネットインデクスN2を含む。
データベース装置10は、共有テーブル1から、キャビネット論理通番N1と同じキャビネット論理通番13を含む共有テーブル行を検索し(S31)、共有テーブル行の配置先情報12が他のデータベース装置を示すものなら、検索電文を当該他のデータベース装置に送信する(図示せず)。
一方、データベース装置10は、配置先情報12が自データベース装置を示すものなら、変換テーブル2から、共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21を含む変換テーブル行を検索し(S33)、変換テーブル行からキャビネット物理通番22を読み出す。
次に、データベース装置10は、キャビネット物理通番22と同じキャビネット物理通番を割り当てられたキャビネット4から、キャビネットインデクスN2と同じキャビネットインデクス41を含むキャビネット行を検索し(S35)、キャビネット行から実データポインタ42を読み出す。
次に、データベース装置10は、データベース6から、実データポインタ42と同じ実データインデクス61を含むデータベース行を検索し、データベース行の実データ62に代えて、実データnと同じ実データ62を記憶させる。
なお、検索電文には、実データ62を得るためのものもあり、かかる検索電文は実データを含まない。データベース装置10は、かかる検索電文を受信した場合には、同様にデータベース行を検索し、データベース行から実データ62を読み出し、実データ62を例えば、呼処理サーバ30を介して電話機301に送信する。
図8は、データ移行における動作の第1段階を示す図である。
例えば、データベース装置10は、制御装置20からデータ移行開始コマンドを受信したなら、分割中情報を生成し、保持する。
分割中情報は、分割番号帯情報P:050-2222、移行元情報Q:#1、移行先情報R:#2を含む。
図示しないが、データベース装置10は、共有テーブル1から、分割番号帯情報Pと同じキー範囲情報11を含む共有テーブル行を検索し、変換テーブル2から、共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番22(以下、削除対象キャビネット物理通番という)を読み出す。
データベース装置10は、例えば、分割中情報を、移行先情報Rに対応する他のデータベース装置10に送信する。他のデータベース装置10は、分割中情報を受信し、保持する。
データ移行開始コマンドを受信したデータベース装置10は、移行元情報Qが自データベース装置を示すものなら、分割番号帯情報PをキーMとして、図5に示す機能により実データを読み出し、読み出された一群の実データを、移行先情報Rに対応する他のデータベース装置に送信する。
例えば、これら一群の実データは、大量なので、データベース装置10は、その送信中(移行中)であっても検索電文を受信する。
データベース装置10は、キーMを含む検索電文を受信した際に、分割中情報があり、且つ、分割番号帯情報PがキーMの一部に一致し、且つ、移行先情報Rが他のデータベース装置を示すなら、検索電文を当該他のデータベース装置に送信する(S101)。
図9は、データ移行における動作の第2段階を示す図である。
例えば、データベース装置10は、制御装置20から配置先情報変更コマンドとともに分割番号帯情報P:050-2222、移行元情報Q:#1、移行先情報R:#2を受信する。
データベース装置10は、共有テーブル1から、分割番号帯情報P:050-2222と同じキー範囲情報11および移行元情報Qと同じ配置先情報12を含む共有テーブル行を検索し、共有テーブル行の配置先情報12を、移行先情報Rと同じ配置先情報12に変更する。
データベース装置10は、配置先情報変更コマンドを受信した後に、キーMを含む検索電文を受信した際に、分割中情報があり、且つ、移行先情報Rが自データベース装置を示すものなら、検索電文を送信した他のデータベース装置10に対し、移行元情報Qをリダイレクト先として指定したリダイレクト信号を送信する(S201)。
データベース装置10は、他のデータベース装置10からリダイレクト信号を受信したなら、当該リダイレクト信号に指定されたリダイレクト先に対し、該当の検索電文を送信する(S203)。
図10は、データ移行における動作の第3段階を示す図である。
例えば、データベース装置10は、制御装置20からデータ移行終了コマンドを受信する。
データベース装置10は、データ移行終了コマンドを受信した際、他のデータベース装置への実データの送信中であるなら、その後に受信する検索電文を処理せず、蓄積する(S301)。
データベース装置10は、検索電文を処理せず、蓄積するので、つまり、実データは不要なので、実データの送信が終了したら、実データを削除する。また、データベース装置10は、実データの送信が終了したなら、分割中情報を削除し(S303)、移行先情報Rに対応する他のデータベース装置10に指示して、当該他のデータベース装置10に保持された分割中情報を削除させる(S305)。
図11は、データ移行における動作の第4段階を示す図である。
データベース装置10は、実データの送信が終了したなら(実データと分割中情報を削除したなら)、蓄積した電文のそれぞれにつき、当該電文の最終的な送信先が他のデータベース装置10である場合は、当該他のデータベース装置10に対し、リダイレクト先を指定しないリダイレクト信号を送信する(S401)。
データベース装置10は、かかるリダイレクト信号を受信したなら、再び共有テーブル1を検索し、例えば、配置先情報12に対応する他のデータベース装置10に検索電文を送信する(S403)。
データベース装置10は、他のデータベース装置への一群の実データの送信が終了したなら、削除対象キャビネット物理通番を割り当てられたキャビネット4を削除する(S403)。
受信側のデータベース装置10は、実データの受信が終了し、当該実データでデータベース6が更新されたなら、新たなキャビネット4を生成し(S405)、当該キャビネット4、変換テーブル2、空塞状況テーブル3を更新する。
図12は、移行元と移行先のデータベース装置における移行前と移行後の状態と識別子による実データ検索の動作を示す図である。
(移行前)
移行前において、移行元のデータベース装置10(#1)は、識別子:12(N1:1、N2:2)、実データn:yyyを含む検索電文を受信したら、共有テーブル1から、キャビネット論理通番N1と同じキャビネット論理通番13を含む共有テーブル行を検索し、共有テーブル行の配置先情報12が自データベース装置10(#1)を示すものなので、変換テーブル2から、共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番22を読み出す。
次に、図示しないが、データベース装置10は、キャビネット物理通番22と同じキャビネット物理通番を割り当てられたキャビネット4から、キャビネットインデクスN2と同じキャビネットインデクス41を含むキャビネット行を検索し、キャビネット行から実データポインタ42を読み出す。
次に、図示しないが、データベース装置10は、データベース6から、実データポインタ42と同じ実データインデクス61を含むデータベース行を検索する。
移行前において、移行先のデータベース装置10(#2)は、同じ内容の検索電文を受信したら、共有テーブル1から、キャビネット論理通番N1と同じキャビネット論理通番13を含む共有テーブル行を検索し、共有テーブル行の配置先情報12が移行元のデータベース装置10(#1)を示すものなので、検索電文を移行元のデータベース装置10(#1)に送信する。
移行元のデータベース装置10(#1)は、移行先からの検索電文を受信したなら、上記のように実データを検索する。
(移行後)
上記のキャビネット4は、移行後に削除され、移行先のデータベース装置10では、新たなキャビネット4が生成される。
移行後において、移行元のデータベース装置10(#1)は、同じ内容の検索電文を受信したら、共有テーブル1から、キャビネット論理通番N1と同じキャビネット論理通番13を含む共有テーブル行を検索し、共有テーブル行の配置先情報12が移行先のデータベース装置10(#2)を示すものなので、検索電文を移行先のデータベース装置10(#2)に送信する。
移行先のデータベース装置10(#2)は、移行元からの検索電文を受信したら、共有テーブル1から、キャビネット論理通番N1と同じキャビネット論理通番13を含む共有テーブル行を検索し、共有テーブル行の配置先情報12が自データベース装置を示すものなので、変換テーブル2から、共有テーブル行のキャビネット論理通番13と同じキャビネット論理通番21を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番22を読み出す。
次に、図示しないが、データベース装置10は、キャビネット物理通番22と同じキャビネット物理通番を割り当てられたキャビネット4(生成されたキャビネット4)から、キャビネットインデクスN2と同じキャビネットインデクス41を含むキャビネット行を検索し、キャビネット行から実データポインタ42を読み出す。
次に、図示しないが、データベース装置10は、データベース6から、実データポインタ42と同じ実データインデクス61を含むデータベース行を検索する。
移行後において、移行先のデータベース装置10(#2)は、同じ内容の検索電文を受信したら、上記のように、新たに生成されたキャビネット4を使用して、実データを検索する。
以上のように、本実施の形態に係る分散データベースシステムによれば、範囲検索の機能を停止させることなく、データを移行することができる。
1…共有テーブル
2…変換テーブル
3…空塞状況テーブル
4…キャビネット
5…キーテーブル
6…データベース
10…データベース装置
11…キー範囲情報
12…配置先情報
13…キャビネット論理通番
20…制御装置
21…キャビネット論理通番
22…キャビネット物理通番
30…呼処理サーバ
31…キャビネット物理通番
32…空塞状況フラグ
41…キャビネットインデクス
42…実データポインタ
51…キー
52…インデクス
61…実データインデクス
62…実データ
63…識別子
100…分散データベースシステム
301…電話機
A…増設キー情報
B…配置先情報
M…キー
MD…実データ
N1…キャビネット論理通番
N2…キャビネットインデクス
P…分割番号帯情報
Q…移行元情報
R…移行先情報
X…キー
Y…実データ
n…実データ

Claims (5)

  1. 複数のデータベース装置からなる分散データベースシステムを構成するデータベース装置であって、
    いずれかのデータベース装置に記憶される一群の実データのそれぞれにつき、当該一群の実データを検索するためキー範囲情報(11)、当該一群の実データが記憶されるデータベース装置を示す配置先情報(12)、当該データベース装置において当該一群の実データに対応して設けられるキャビネットに対し全データベース装置で一意となるように割り当てられるキャビネット論理通番(13)、を含む共有テーブル行を備える共有テーブル(1)と、
    自データベース装置に設けられるキャビネットのそれぞれにつき、当該キャビネットに割り当てられるキャビネット論理通番(21)、当該キャビネットに対し自データベース装置で一意となるように割り当てられるキャビネット物理通番(22)、を含む変換テーブル行を備える変換テーブル(2)と、
    自データベース装置に設けられるキャビネット(4)であり、且つ、当該キャビネットに対応する一群の実データの中での実データのそれぞれにつき、当該一群の中で当該実データを一意に示すキャビネットインデクス(41)、自データベース装置の中での当該実データの位置を示す実データポインタ(42)、含むキャビネット行を備えるキャビネット(4)と、
    キャビネット(4)ごとに設けられ、当該キャビネット(4)に対応する実データのそれぞれにつき、当該実データを検索するためのキー(51)、当該実データに対応するキャビネットインデクス(41)を辿るためのインデクス(52)、を含むキーテーブル行を備えるキーテーブル(5)と、
    自データベース装置において実データを個々に記憶するためのデータベース行からなり、当該データベース行に対し、当該データベース行の位置を示す実データインデクス(61)、当該データベース行に記憶すべき実データ(62)、を記憶させるためのデータベース(6)とを備え、
    共有テーブル(1)のキャビネット論理通番(13)と変換テーブル(2)のキャビネット論理通番(21)は連携する番号であって、
    変換テーブル(2)のキャビネット物理通番(22)とキャビネット(4)のキャビネット物理通番は連携する番号であって、
    キャビネット(4)のキャビネットインデックス(41)とキーテーブル(5)のインデックス(52)は連携する番号であって、
    キャビネット(4)の実データポインタ(42)とデータベース(6)の実データインデックス(61)は連携する番号であることを特徴とするデータベース装置。
  2. 請求項1に記載のデータベース装置であって、
    キー(X)と実データ(Y)を含む電文を受信し、共有テーブル(1)から、キー(X)の一部に一致するキー範囲情報(11)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)が他のデータベース装置を示すものなら、電文を当該他のデータベース装置に送信する機能、
    配置先情報(12)が自データベース装置を示すものなら、変換テーブル(2)から、共有テーブル行のキャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出す機能、
    キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)から、実データポインタ(42)のないキャビネット行を検索し、キャビネット行に対し、実データ(62)のないデータベース行の実データインデクス(61)と同じ実データポインタ(42)を追加する機能、
    当該キャビネット(4)に対応するキーテーブル(5)に対し、キー(X)と同じキー(51)、キャビネットインデクス(41)と同じインデクス(52)、を含むキーテーブル行を追加する機能および、
    データベース(6)から、追加されたキャビネット行の実データポインタ(42)と同じ実データインデクス(61)を含むデータベース行を検索し、データベース行に対し、実データ(Y)と同じ実データ(62)ならびに、キャビネット論理通番(21)を記憶させる機能
    を備えることを特徴とするデータベース装置。
  3. 請求項1に記載のデータベース装置であって、
    キー(M)を含む電文を受信し、共有テーブル(1)から、キー(M)の一部に一致するキー範囲情報(11)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)が他のデータベース装置を示すものなら、電文を当該他のデータベース装置に送信する機能、
    配置先情報(12)が自データベース装置を示すものなら、変換テーブル(2)から、キャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出す機能、
    キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)に対応するキーテーブル(5)から、キー(M)と同じキー(51)を含むキーテーブル行を検索し、キーテーブル行からインデクス(52)を読み出す機能、
    キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)から、インデクス(52)と同じキャビネットインデクス(41)を含むキャビネット行を検索し、キャビネット行から実データポインタ(42)を読み出す機能および、
    データベース(6)から、実データポインタ(42)と同じ実データインデクス(61)を含むデータベース行を検索する機能
    を備えることを特徴とするデータベース装置。
  4. 請求項1に記載のデータベース装置であって、
    キャビネット論理通番(N1)とキャビネットインデクス(N2)を含む電文を受信し、共有テーブル(1)から、キャビネット論理通番(N1)と同じキャビネット論理通番(13)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)が他のデータベース装置を示すものなら、電文を当該他のデータベース装置に送信する機能、
    配置先情報(12)が自データベース装置を示すものなら、変換テーブル(2)から、キャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出す機能、
    キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)から、キャビネットインデクス(N2)と同じキャビネットインデクス(41)を含むキャビネット行を検索し、キャビネット行から実データポインタ(42)を読み出す機能および、
    データベース(6)から、実データポインタ(42)と同じ実データインデクス(61)を含むデータベース行を検索する機能
    を備えることを特徴とするデータベース装置。
  5. 請求項1記載のデータベース装置であって、
    分割番号帯情報(P)と移行元情報(Q)と移行先情報(R)を含む分割中情報を保持する機能、
    移行元情報(Q)が自データベース装置を示すものなら、分割番号帯情報(P)をキー(M)として、一群の実データを読み出し、読み出された一群の実データを、移行先情報(R)に対応する他のデータベース装置に送信する機能、
    キー(M)を含む電文を受信した際に、分割中情報があり、且つ、分割番号帯情報(P)がキー(M)の一部に一致し、且つ、移行先情報(R)が他のデータベース装置を示すなら、電文を当該他のデータベース装置に送信する機能、
    配置先情報変更コマンドとともに分割番号帯情報(P)と移行元情報(Q)と移行先情報(R)を含むを受信したら、共有テーブル(1)から、分割番号帯情報(P)と同じキー範囲情報(11)および移行元情報(Q)と同じ配置先情報(12)を含む共有テーブル行を検索し、共有テーブル行の配置先情報(12)を、移行先情報(R)と同じ配置先情報(12)に変更する機能、
    配置先情報変更コマンドを受信した後に、キー(M)を含む電文を受信した際に、分割中情報があり、且つ、移行先情報(R)が自データベース装置を示すものなら、電文を送信した他のデータベース装置に対し、移行元情報(Q)をリダイレクト先として指定したリダイレクト信号を送信する機能、
    他のデータベース装置からリダイレクト信号を受信したなら、当該リダイレクト信号に指定されたリダイレクト先に対し、該当の電文を送信する機能、
    データ移行終了コマンドを受信した際、他のデータベース装置への実データの送信中であるなら、その後に受信する電文を蓄積する機能、
    他のデータベース装置への一群の実データの送信が終了したなら、分割中情報を削除し、移行先情報(R)に対応する他のデータベース装置に指示して、当該他のデータベース装置に保持された分割中情報を削除させる機能、
    他のデータベース装置への一群の実データの送信が終了したなら、蓄積した電文のそれぞれにつき、当該電文の最終的な送信先が他のデータベース装置である場合は、当該他のデータベース装置に対し、リダイレクト先を指定しないリダイレクト信号を送信する機能、
    共有テーブル(1)から、分割番号帯情報(P)と同じキー範囲情報(11)を含む共有テーブル行を検索し、変換テーブル(2)から、共有テーブル行のキャビネット論理通番(13)と同じキャビネット論理通番(21)を含む変換テーブル行を検索し、変換テーブル行からキャビネット物理通番(22)を読み出し、他のデータベース装置への一群の実データの送信が終了したなら、キャビネット物理通番(22)と同じキャビネット物理通番を割り当てられたキャビネット(4)を削除する機能および、
    他のデータベース装置からの一群の実データの受信が終了し、当該実データでデータベース(6)が更新されたなら、新たなキャビネット(4)を生成し、当該キャビネット(4)、変換テーブル(2)を更新する機能
    を備えることを特徴とするデータベース装置。
JP2013027317A 2013-02-15 2013-02-15 データベース装置 Active JP5732084B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013027317A JP5732084B2 (ja) 2013-02-15 2013-02-15 データベース装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013027317A JP5732084B2 (ja) 2013-02-15 2013-02-15 データベース装置

Publications (2)

Publication Number Publication Date
JP2014157442A true JP2014157442A (ja) 2014-08-28
JP5732084B2 JP5732084B2 (ja) 2015-06-10

Family

ID=51578292

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013027317A Active JP5732084B2 (ja) 2013-02-15 2013-02-15 データベース装置

Country Status (1)

Country Link
JP (1) JP5732084B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185270A (ja) * 2002-12-03 2004-07-02 Fujitsu Ltd アンロードプログラム,ロードプログラム及びデータ移行方法
EP2091184A1 (en) * 2007-04-19 2009-08-19 Huawei Technologies Co., Ltd. Method and system for publishing the content, method and system for querying the content
JP2012168781A (ja) * 2011-02-15 2012-09-06 Nippon Telegr & Teleph Corp <Ntt> 分散型データストアシステム及び分散型データストアシステムにおけるレコード管理方法
JP2012234354A (ja) * 2011-04-28 2012-11-29 Nippon Telegr & Teleph Corp <Ntt> データベース増設方法、及びデータベース減設方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185270A (ja) * 2002-12-03 2004-07-02 Fujitsu Ltd アンロードプログラム,ロードプログラム及びデータ移行方法
EP2091184A1 (en) * 2007-04-19 2009-08-19 Huawei Technologies Co., Ltd. Method and system for publishing the content, method and system for querying the content
JP2012168781A (ja) * 2011-02-15 2012-09-06 Nippon Telegr & Teleph Corp <Ntt> 分散型データストアシステム及び分散型データストアシステムにおけるレコード管理方法
JP2012234354A (ja) * 2011-04-28 2012-11-29 Nippon Telegr & Teleph Corp <Ntt> データベース増設方法、及びデータベース減設方法

Also Published As

Publication number Publication date
JP5732084B2 (ja) 2015-06-10

Similar Documents

Publication Publication Date Title
CN112866111B (zh) 流表管理的方法和装置
CN104462304A (zh) 一种信息处理方法和装置
CN105847336A (zh) 一种通讯录同步方法及装置
US10078663B2 (en) Dual overlay query processing
JP3756349B2 (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
JP5732084B2 (ja) データベース装置
US20200311029A1 (en) Key value store using generation markers
US11334623B2 (en) Key value store using change values for data properties
CN102045262B (zh) 媒体接入控制地址表更新方法、装置及网络设备
CN103092767A (zh) 一种对云计算内部物理机信息内存池的管理方法
KR101605045B1 (ko) 이중화 통신선로의 중복 데이타 처리장치 및 방법
CN113934742B (zh) 数据更新方法、节点信息存储方法、电子设备及介质
JP5732082B2 (ja) データ管理装置およびデータ管理プログラム
JP2018032072A (ja) プログラム、情報処理装置、ストレージシステム、およびストレージシステムの制御方法
CN102681970A (zh) 信号处理器的配置方法及信号处理器
CN102413038B (zh) 一种路由下一跳不可达的处理方法及系统
CN103577277A (zh) 一种数据处理的方法及装置
KR101247767B1 (ko) 그룹자료 동기화 방법 및 그에 따른 시스템
JP2001356994A (ja) 電子メール装置および電子メール転送方法
JP5718990B2 (ja) データベース装置
CN105471743A (zh) 一种ip数据通信设备中硬件多级路由表的管理方法
EP3036665B1 (en) A method of transmitting data structures from one computer to another computer
CN109240988A (zh) 用于避免大数据存储系统进入访问失衡状态的方法及系统
JP2013175117A (ja) データ移行装置およびその動作方法
US11349950B1 (en) Remotely interacting with database

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150309

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: 20150407

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150410

R150 Certificate of patent or registration of utility model

Ref document number: 5732084

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150