JP2012234354A - データベース増設方法、及びデータベース減設方法 - Google Patents

データベース増設方法、及びデータベース減設方法 Download PDF

Info

Publication number
JP2012234354A
JP2012234354A JP2011102383A JP2011102383A JP2012234354A JP 2012234354 A JP2012234354 A JP 2012234354A JP 2011102383 A JP2011102383 A JP 2011102383A JP 2011102383 A JP2011102383 A JP 2011102383A JP 2012234354 A JP2012234354 A JP 2012234354A
Authority
JP
Japan
Prior art keywords
database
variable
feature
devices
correspondence table
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.)
Withdrawn
Application number
JP2011102383A
Other languages
English (en)
Inventor
Hiroki Kamiya
弘樹 神谷
Hiroshi Shibata
弘 柴田
Hajime Matsumura
一 松村
Satoshi Kotabe
悟士 小田部
Taizo Yamamoto
太三 山本
Takeshi Ogawa
猛志 小川
Yoshikazu Nakamura
義和 中村
Hidenori Toshinaga
秀紀 俊長
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 JP2011102383A priority Critical patent/JP2012234354A/ja
Publication of JP2012234354A publication Critical patent/JP2012234354A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】管理する可変IDの増減に応じて、無中断でデータベース装置を増減設できるデータベース増減設方法を提供する。
【解決手段】データベース装置7(#5、#6)を新設し、データベース装置7(#1、#2)と同一の情報を保持させるよう情報をコピーした後、端末情報管理サーバ5(#1、#2)のルール変更を順番に行う。水平分割ルールの変更が完了した時点で、末尾が0で終わる可変IDの生成を禁止した後、データベース装置7(#1、#2、#5、#6)のレプリケーション設定を変更する。設定変更完了後、末尾が0の可変ID生成の禁止、及び削除の保留を解除し、データベース装置7(#1、#5)に含まれる末尾00以外の可変ID、及びデータベース装置7(#2、#6)に含まれる末尾10以外の可変IDを削除する。
【選択図】図12

Description

本発明は、分散型データベースに係り、データベース増設方法、及びデータベース減設方法に関する。
従来のデータベースの構築方法は、集中型データベースと分散型データベースとに分けることができる(例えば非特許文献1参照)。
集中型データベースは、容量と性能に限界のある1台のデータベース装置で全てのデータを管理する。そのため、データ量が膨大な場合に、負荷がかかり、処理性能が低下する、あるいは、データベース装置の障害時の影響範囲が大きい、という問題がある。これに対し、分散型データベースは、複数のデータベース装置を組み合わせて1つのデータベース装置群としてデータを扱うため、負荷を分散して高速に処理することが可能となる。また、単一データベース装置障害時の影響範囲を限定することができる。
分散型データベースを構築するためのデータ分割方法は、垂直分割と水平分割とに分類することができる(例えば非特許文献2、3参照)。通常、データベースで使われるテーブルにおいては、データの種類数と同じ数の垂直方向の列があり、その1列を単位とするデータセットの数と同じ数の水平方向の行がある構造になっていることが多い。垂直分割とは、テーブルを垂直に分割して特定の列だけを別のデータベース装置に配置することを言う。水平分割とは、テーブルを水平に分割して特定の行だけを別のデータベース装置に配置することを言う。
例えば、顧客情報データベースを例にとると、氏名、年齢、住所など、1人の顧客の情報を表す値の種類数と同じ数の列があり、格納する情報の顧客数と同じ数の行が存在することになる。垂直分割の場合は、例えば、一方のデータベースには、全顧客の氏名と年齢の2列を、他方のデータベースには、全顧客の氏名と住所の2列を格納する。水平分割の場合には、例えば、2台のデータベースに全顧客情報のうち、それぞれ半分ずつの顧客情報の行を格納する。
水平分割の際に、どの行をどのサーバに格納するかという基準にはいくつかあり、基準によって範囲分割、リスト分割、ハッシュ分割、ラウンドロビン分割などの分割方法が存在する(例えば非特許文献2、3参照)。
範囲分割では、予めデータベース装置毎にキーとなる特定の列の値の担当範囲を決めておき、データベース装置は、担当範囲内の値を持つ行を全て格納する。リスト分割では、予めデータベース装置毎にキーとなる特定の列の値の担当分のリストを作成しておき、データベース装置は、担当するリストに存在する値を持つ行を全て格納する。ハッシュ分割では、特定の列の値に対してハッシュ演算を行い、演算結果の値から担当するデータベース装置を決定する。ラウンドロビン分割では、データを追加するタイミングで値の内容とは無関係に、順番に担当するデータベースを割り当てていく。
農林水産業の高度情報システム 農林水産省 農林水産技術会議事務局監修(1996年)、「3.3.1 分散データベース」、<URL:http://agrinfo.narc.affrc.go.jp/fs/cdrom/3syou/303st/t0301.htm、(2010年7月26日検索)> 「分割(データベース)」(2010年3月19日最終編集版)、Wikipediaホームページ<URL:http://ja.wikipedia.org/wiki/分割_(データベース)、(2010年7月26日検索)> 鈴木幸市、「第2回:データベースのスケールアウト(前半)」、2005年8月26日、Software Developer's Think IT ホームページ、<URL:http://www.thinkit.co.jp/free/trend/10/2/1.html、(2010年7月26日検索)>
通信システムや管理システムにおいて、端末・ユーザ・物品などに割り当てられる膨大な数の可変IDと、その端末・ユーザ・物品の固定IDや、関連情報との対応を管理するデータベース装置群において、サービスを中断させることなく、データベース装置を増設、減設することが必要となる。
ここで、可変IDとは、端末・ユーザ・物品などに対して時間経過とともに異なる識別子を次々と変化させながら割り当てて運用する識別子のことである。主に、通信における匿名性の確保や、トラッキング防止、プライバシ保護の目的から利用されることが多い。
上記の固定・可変IDの取り扱い規模については、1台のデータベース装置では処理しきれないくらい膨大であり、データベースをレコードの集合単位で複数のデータベース装置に分割して分散化を行う、水平分割を利用した分散型データベースを用いることが前提となる。
このような膨大な数の可変IDを管理する分散型データベースに対し、管理する可変IDが増えた場合に無中断でデータベース装置を増設、管理する可変IDが減った場合に無中断でデータベース装置を減設する方法が必要となるが、前述のデータベース分割技術では、このような条件下における無中断増設方法、および、無中断減設方法は提供されていなかった。
以下に課題の詳細について説明する。
膨大な数の可変IDを管理するため、管理用のデータベース(可変ID検索DB;TSDB(Temporary ID Search DataBase))は、データ量や、処理性能が一定で限界のある集中型データベースではなく、複数のデータベース装置を組み合わせて、データ量や、処理性能を増強できる分散型データベースを用いることが前提となる。分散型データベースでは、管理する可変IDの増減に応じて構成するデータベース装置を増減することが必要となる。また、管理する可変IDの数は、増減する可能性が高いため、分割方法は、水平分割が前提となる。
可変IDは、通常の識別子とは以下のように生成方法、生成契機が異なる。
・乱数などの、第三者に予測のつかない識別子を端末・ユーザ・物品に対して割り当てるため、新しい可変IDの生成時は、利用中の別の識別子と同じになっていないかを重複チェックにより確認する。同じ識別子が既に利用されている場合には、再度、別の可変IDを生成し、重複チェックを行う(生成方法)。
・可変IDは、端末・ユーザ・物品などの識別対象が新規に出現した場合に生成されるが、それだけでなく、時間とともに、定期的、あるいは通信イベントを契機に異なる新しい可変IDを生成し、同一識別対象に割り当て、データベースに登録する。一方、当該識別対象が利用しなくなった古い可変IDについては、利用を停止し、データベースから削除する。同一識別対象が複数の可変IDを同時に利用する期間があってもかまわない(生成契機)。
上記のような特徴から、可変IDには、当該識別対象に別の識別対象と同じ可変IDを割り当てることの無いよう重複チェックを行い、次々と生成し、登録・削除を行う必要性がある。可変IDの生成と重複チェックとを効率よく行うため、水平分割方法としては、可変IDから管理するデータベース装置を特定することができる水平分割方法(つまり、範囲分割、リスト分割、ハッシュ分割など)を採用することが前提となる。可変IDから管理するデータベース装置を特定することができない水平分割方法、例えば、ラウンドロビン分割などは、可変IDの生成時に全データベース装置の更新を禁止したり、可変IDの重複チェック時に全データベースの更新を禁止して全データベース内を検索したりする必要が発生し、スケール性が低いため採用できない。
但し、単純に上記のような可変IDから管理するデータベース装置を特定することができる水平分割方法による分散型データベースとして、可変IDを管理するデータベースを構築しただけでは、サービスを無中断のままデータベースを増減設させることができない。管理する可変IDが増減して分散型データベースを構成するデータベース装置数の増減を行う瞬間に、各データベース装置が担当する可変IDの水平分割のルールを変更する必要があり、同時に複数のデータベース装置の設定変更を行う場合は変更処理に時間を要するため、一時的に全データベース装置を停止させる必要が発生してしまうためである。
全データベース装置の停止を行うと、サービス中の可変IDの生成、重複チェックだけでなく、可変IDの検索処理が中断してしまう。可変IDの生成、重複チェックが中断してしまうと、新たな可変IDを端末・ユーザ・物品に対して割り当てることができなくなり、端末・ユーザ・物品の匿名性が保てなくなり、トラッキング(追跡)が行われる危険性が高まってしまうなどのプライバシの問題が発生する。
また、可変IDの検索処理が中断してしまうと、可変IDを用いた一切のソフトウェア処理(例えば、可変IDを元に、当該可変IDに対応する実際の端末・ユーザ・物品の固定IDや関連情報を取得して行う通信処理や、データ操作処理など)を実行することができなくなってしまう。したがって、当該可変IDを用いた認証や、データの送受信などの通信処理までも停止してしまうという問題が発生する。
本発明は、このような事情を考慮してなされたものであり、その目的は、膨大な数の可変IDを管理する分散型データベースに対し、管理する可変IDが増えた場合に無中断でデータベース装置を増設、管理する可変IDが減った場合に無中断でデータベース装置を減設することができるデータベース増設方法、及びデータベース減設方法を提供することにある。
上述した課題を解決するために、本発明は、値が変化する可変IDの入力に対し、該可変IDと識別対象が同一であり、かつ、値が変化しない固定IDを用いるデータベースシステムにおけるデータベース増設方法であって、該データベースシステムは、データベース装置と端末情報管理サーバとを有し、前記データベース装置は、各識別対象について、可変IDと固定IDとを対応付けて記憶し、可変IDから固定IDを検索できる対応表を、水平分割により複数のデータベース装置に格納した分散型データベースであり、前記端末情報管理サーバは、所望の可変IDに関する参照、変更、追加、あるいは削除のいずれかの操作を行う際、前記複数のデータベース装置の対応表のうち、いずれを操作するべきかを示す水平分割ルールを備え、前記データベースシステムにN台のデータベース装置が増設される際に、前記N台のデータベース装置X(i=1〜N)に格納された特徴yを有する可変ID、及び特徴zを有する可変IDが登録された対応表の情報に基づいて、前記特徴yを有する可変IDが登録され、前記特徴zを有する可変IDが登録されない対応表を格納するN台のデータベース装置Y(j=1〜N)と、前記特徴zを有する可変IDが登録され、前記特徴yを有する可変IDが登録されない対応表を格納するN台のデータベース装置Z(k=1〜N)とを生成する第1のステップと、前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、該特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2のステップとを含むことを特徴とするデータベース増設方法である。
本発明は、上記の発明において、前記第1のステップは、前記N台のデータベース装置Xi1(i1=1〜N)にN台のデータベース装置Xi2(i2=N+1〜2N)を増設し、合わせて2N台のデータベース装置Xi3(i3=1〜2N)間でレプリケーションを行う第1−1−1のサブステップと、前記2N台のデータベース装置Xi3のうち、N台をデータベース装置Y、残りN台をデータベース装置Zとして、しかる後に前記データベース装置YとZ(jとkは、1〜Nの任意の整数)の間にレプリケーション設定がない状態とし、Nが2以上の場合にN台のデータベース装置Y間でのレプリケーション設定とN台のデータベース装置Z間でのレプリケーション設定とを行う第1−1−2のサブステップと、前記N台のデータベース装置Yの前記対応表から特徴zを有する可変IDの登録の削除を行い、前記N台のデータベース装置Zの前記対応表から特徴yを有する可変IDの登録の削除を行う第1−1−3のサブステップとから構成され、前記特徴yを有する可変ID、及び前記特徴zを有する可変IDについては生成を禁止し、可変IDの生成においては前記特徴y以外で、かつ前記特徴z以外の特徴を有する可変IDを生成するか、もしくは予め生成して払い出す第3のステップを更に含み、前記第1−1−1のサブステップが終了後に、前記第2のステップを実行し、前記第2のステップが終了後に、前記第1−1−2のサブステップを実行し、前記第1−1−2のサブステップが終了後に、前記第1−1−3のサブステップを実行し、前記第1−1−2のサブステップの動作中に、前記第3のステップを実行する、ことを特徴とする。
本発明は、上記の発明において、Nは2であり、前記第1のステップは、前記データベース装置Yと前記データベース装置Zとを増設し、前記データベース装置Xと前記データベース装置Yでレプリケーションを行い、前記データベース装置Xと前記データベース装置Zとでレプリケーションを行う第1−2−1のサブステップと、前記データベース装置Xと前記データベース装置Yとの前記対応表から特徴zを有する可変IDの登録を削除することで、前記データベース装置Xの機能を前記データベース装置Yの機能に変更し、前記データベース装置Xと前記データベース装置Zとの前記対応表から特徴yを有する可変IDの登録を削除することで、前記データベース装置Xの機能を前記データベース装置Zの機能に変更する第1−2−2のサブステップとから構成され、前記第2のステップは、前記特徴yを有する可変IDに関する操作を、前記データベース装置X、あるいは前記データベース装置Xが有する前記対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置X、あるいは前記データベース装置Xが有する前記対応表に対して行うように、前記水平分割ルールを変更する第2−2−1のサブステップと、該特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、該特徴zを有する可変IDに関する操作を、該データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを再変更する第2−2−2のサブステップとから構成され、前記特徴yを有する可変ID、及び前記特徴zを有する可変IDについては生成を禁止し、可変IDの生成においては前記特徴y以外で、かつ前記特徴z以外の特徴を有する可変IDを生成するか、もしくは予め生成して払い出す第3のステップを更に含み、前記第2−2−1のサブステップが終了後に、前記第1−2−1のサブステップを実行し、前記第1−2−1のサブステップが終了後に、前記第2−2−2のサブステップを実行し、前記第2−2−2のサブステップが終了後に、前記第1−2−2のサブステップを実行し、前記第2のステップの動作中に、前記第3のステップを実行する、ことを特徴とする。
本発明は、上記の発明において、前記第1のステップは、前記データベース装置Yを増設し、Nが2以上の場合に前記データベース装置Y間でレプリケーション設定を行う第1−3−1のサブステップと、前記データベース装置Xが有する前記対応表のうち、特徴yを有する可変IDに関する情報を、前記データベース装置Yの全てにコピーする第1−3−2のサブステップと、前記データベース装置Xを前記データベース装置Zとして、前記データベース装置Zが有する前記対応表から特徴yを有する可変IDの登録を削除する第1−3−3のサブステップとから構成され、前記第2のステップは、前記特徴yを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表、及び前記データベース装置Yのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−3−1のサブステップと、前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表、及び前記データベース装置Xのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−3−2のサブステップと、該特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、該特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを再変更する第2−3−3のサブステップとから構成され、前記第1−3−1のサブステップが終了後に、前記第2−3−1のサブステップを実行し、前記第2−3−1のサブステップが終了後に、前記第1−3−2のサブステップを実行し、前記第1−3−2のサブステップが終了後に、前記第2−3−2のサブステップを実行し、前記第2−3−2のサブステップが終了後に、前記第2−3−3のサブステップを実行し、前記第2−3−3のサブステップが終了後に、前記第1−3−3のサブステップを実行する、ことを特徴とする。
本発明は、上記の発明において、前記第1のステップは、前記データベース装置Y、ならびに、前記データベース装置Zを増設し、Nが2以上の場合に前記データベース装置Y間でレプリケーション設定を行う第1−4−1のサブステップと、前記データベース装置Xが有する前記対応表のうち、前記特徴yを有する可変IDに関する情報を前記データベース装置Yの全てにコピーし、前記データベース装置Xが有する前記対応表のうち、前記特徴zを有する可変IDに関する情報を前記データベース装置Zの全てにコピーする第1−4−2のサブステップとから構成され、前記第2のステップは、前記特徴yを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表、及び前記データベース装置Yのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表、及び前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−4−1のサブステップと、前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表、及び前記データベース装置Xのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表、及び前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−4−2のサブステップと、前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを再変更する第2−4−3のサブステップとから構成され、前記第1−4−1のサブステップが終了後に、前記第2−4−1のサブステップを実行し、前記第2−4−1のサブステップが終了後に、前記第1−4−2のサブステップを実行し、前記第1−4−2のサブステップが終了後に、前記第2−4−2のサブステップを実行し、前記第2−4−2のサブステップが終了後に、前記第2−4−3のサブステップを実行する、ことを特徴とする。
本発明は、上記の発明において、前記特徴yを有する可変ID、及び前記特徴zを有する可変IDについては削除を保留し、削除予定の可変IDとして記憶する第4のステップと、前記記憶していた削除予定の可変IDを、前記N台のデータベース装置Y、または、前記N台のデータベース装置Zが格納する対応表の登録から削除する第5のステップとを更に含み、前記第2のステップの動作中に、前記第4のステップを実行し、前記第2のステップの終了後に、前記第5のステップを実行する、ことを特徴とする。
上述した課題を解決するために、本発明は、値が変化する可変IDの入力に対し、該可変IDと識別対象が同一であり、かつ、値が変化しない固定IDを用いるデータベースシステムにおけるデータベース減設方法であって、前記データベースシステムは、データベース装置と端末情報管理サーバとを有し、前記データベース装置は、各識別対象について、可変IDと固定IDとを対応付けて記憶し、可変IDから固定IDを検索できる対応表を、水平分割により複数のデータベース装置に格納した分散型データベースであり、前記端末情報管理サーバは、所望の可変IDに関する参照、変更、追加、あるいは削除のいずれかの操作を行う際、前記複数のデータベース装置の対応表のうち、いずれを操作するべきかを示す水平分割ルールを備え、前記データベースシステムからN台のデータベース装置が減設される際に、前記N台のデータベース装置X(i=1〜N)に格納された特徴xを有する可変ID、及び前記N台のデータベース装置Y(j=1〜N)に格納された特徴yを有する可変IDが登録された対応表に基づいて、前記特徴xを有する可変IDと前記特徴yを有する可変IDとが登録された対応表を格納する前記N台のデータベース装置Xを生成する第1のステップと、前記特徴xを有する可変IDに関する操作、ならびに前記特徴yを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2のステップと、前記特徴yを有する可変IDについては生成を禁止し、可変IDの生成においては前記特徴y以外の特徴を有する可変IDを生成する第3のステップとを有し、前記第1のステップが終了後に、前記第2のステップを実行し、前記第1のステップ開始前から前記第2のステップ終了後において、前記第3のステップを実行する、ことを特徴とするデータベース減設方法である。
本発明は、上記の発明において、前記特徴yを有する可変IDについては削除を保留し、削除予定の可変IDとして記憶する第4のステップと、前記記憶していた削除予定の可変IDを、N台のデータベース装置Xが格納する対応表の登録から削除する第5のステップとを更に含み、前記第2のステップが動作中に、前記第4のステップを実行し、前記第2のステップが動作後に、前記第5のステップを実行する、ことを特徴とする。
この発明によれば、膨大な数の可変IDを管理する分散型データベースに対し、管理する可変IDが増えた場合に無中断でデータベース装置を増設、管理する可変IDが減った場合に無中断でデータベース装置を減設することができる。
本実施形態によるデータベースシステムの構成を示すブロック図である。 本実施形態によるデータベース部分の構成を示すブロック図である。 本実施形態による冗長化時のデータベース部分の構成を示すブロック図である。 本実施形態による、無線端末1と無線基地局3が3回のメッセージ交換で相互認証を行う場合の認証の手順を示すシーケンス図である。 本実施形態による、データ通信(アップロード、ダウンロード)の手順を示すシーケンス図である。 本実施形態による管理データベース6が保持する可変IDから固定IDを検索可能な対応表を示す概念図である。 本実施形態において、管理データベース6が保持する可変IDから当該可変IDに対応した固定IDとその他の関連情報を含むデータベース装置7の番号とを検索可能な対応表を示す概念図である。 本実施形態において、管理データベース6が保持する固定IDから可変ID、及びその他の関連情報を検索可能な対応表を示す概念図である。 本実施形態において、可変IDを管理するデータベース装置7の増設方法を示す概念図である。 本実施形態において、可変IDを管理するデータベース装置7の増設時に複数装置の停止が必要である理由を示す概念図である。 本実施形態による第1増設方法における増設時の処理手順を示す概念図である。 本実施形態による第1増設方法における増設時の処理手順を示す概念図である。 本実施形態による第2増設方法における増設時の処理手順を示す概念図である。 本実施形態による第2増設方法における増設時の処理手順を示す概念図である。 本実施形態による第2増設方法における増設時の処理手順を示す概念図である。 本実施形態による第3増設方法における増設時の処理手順を示す概念図である。 本実施形態による第3増設方法における増設時の処理手順を示す概念図である。 本実施形態による第3増設方法における増設時の処理手順を示す概念図である。 本実施形態による第4増設方法における増設時の処理手順を示す概念図である。 本実施形態による第4増設方法における増設時の処理手順を示す概念図である。 本実施形態による第4増設方法における増設時の処理手順を示す概念図である。 本実施形態による第4増設方法における増設時の処理手順を示す概念図である。 本実施形態によるデータベース装置の減設時の処理手順を示す概念図である。
本願発明は、可変IDと固定IDとを対応させるデータベースが複数のデータベース装置で構成される場合に、データベース装置をサービス無中断で増設したり、減設したりするための技術を提供する。
端末・ユーザ・物品に対し、無線通信時に、固定IDとは別に可変IDを割り当てることにより、無線区間におけるトラッキング防止・プライバシ保護・匿名性の確保が可能となる。すなわち、可変IDを定期的に更新すれば、上記は可能となる。その際、可変IDと固定IDとを対応させるデータベースも定期的に更新する必要がある。
一方、データベース技術においては、高速処理が可能で高障害耐性を有する分散型データベースがある。分散型データベースは、複数のデータベース装置を組み合わせて1つのデータベースとして扱うものである。そこで、可変IDと固定IDとを対応させるデータベースを分散型データベースで構築することが考えられる。そのようなシステムにおける可変IDの増減に伴うデータベース装置の増減設中においては、可変IDの追加、削除、参照はサービスを継続する上で中断することなく継続できる必要がある。
しかし、分散型データベースを構成するデータベース装置を増設、あるいは、減設する際に、可変ID独自の問題が発生する。すなわち、水平分割方法により分散化されたデータベース装置の増減設時には複数存在する端末情報管理サーバすべてに水平分割ルールの変更を行う必要があるが、可変IDは常に更新されているので、完全に同時に端末情報管理サーバの設定を変更することが困難であるため、順番に変更していくとデータベース装置に保持している情報に不整合が発生してしまう。ゆえに、従来技術では、データベース装置の増設時、あるいは、減設時に、サービスを中断しないと、データベースの整合性が保てないという問題が発生する。
これに対し、本願発明は、以下の方法を取る。すなわち、データベース装置は、水平分割されており、処理を担当する可変IDは、可変IDの持つ特徴により振り分けられている(振り分けルールを「水平分割のルール」と言う)。増設時、及び減設時には、データベースの運用を行ないながら水平分割のルールを変更し、また、データをデータベース装置間で移行していく。
より具体的には、これを防止するため、特定の可変IDの生成を禁止し、かつ特定の可変IDの削除を保留させる機能を端末情報管理サーバに持たせることで、サービス中断することなく、増減設対象のデータベース装置への可変IDの追加、削除、変更処理のない状態を作り出すことができる。または、上記の特定の可変IDの生成の禁止、及び削除の保留を行わない場合には、水平分割ルールの変更回数を1回ではなく、2回、3回などの複数回に分けて水平分割ルールの変更を行うことで、サービス中断することなく、増減設対象のデータベース装置への可変IDの追加、削除、変更処理を行っても、保持情報の不整合がない状態を作り出すことができる。
上述の特徴により、本願発明は、可変IDと固定IDとを対応させるデータベースが複数のデータベース装置で構成される分散型データベースである場合に、水平分割ルールを変更中も保持情報の不整合が発生することなく、データベース装置をサービス無中断で増設したり、減設したりすることが可能となるという効果を有する。これは、可変IDの特徴として、可変IDは、時間とともに変化していく事に意味があるのであり、新たに割り当てる可変IDと以前割り当てた可変IDとの関係が始めから決まっているものである必要はないという特徴を持つためである。以下、本発明の一実施形態を、図面を参照して説明する。
(想定される利用シーン)
本実施形態では、人口と同じか、その10倍、100倍程度の多数の物(家電、自転車、照明、PC、衣類、食品、乗り物、車、宅配便、封書、ペット、メータ、ドア、窓、設備、調理器具、野生生物、電話、センサ、アクチュエータ、携帯品など)を管理するため、物に取り付けた無線端末がインターネット上の管理サーバ(インターネット端末)と片方向、あるいは双方向で通信を行うような、物品の情報を取得・管理、または物品を制御するための通信システムを対象とする。無線通信においては、通信における匿名性の確保や、トラッキング防止、プライバシ保護の目的から、識別子として固定のIDではなく、可変IDを無線端末に割り当てて通信に使用する。
(全体装置構成)
図1は、本実施形態によるデータベースシステムの構成を示すブロック図である。本実施形態では、ユーザ装置としては、移動可能な無線端末1と固定のインターネット端末2があり、ネットワーク装置がこれらの間のデータの送受信が可能になるように経路制御と転送、及びセキュリティのための必要な処理を行う。ネットワーク装置は、無線基地局3、無線基地局管理サーバ4、端末情報管理サーバ5、管理データベース6からなる。なお、図1では、ネットワーク装置は、インターネット10を含んでいる。
無線基地局3は、無線端末1と無線通信を行う装置である。無線基地局管理サーバ4は、複数台の無線基地局3の管理を行い、無線端末1、及びインターネット端末2の認証や、無線端末1が移動したときの管理データベース6への位置登録処理、インターネット端末2と無線基地局3との間のデータの送受信の際の経路選択・転送処理を行う。
端末情報管理サーバ5は、認証処理・位置登録処理などの通信に必要な情報を無線基地局管理サーバ4へ提供する。端末情報管理サーバ5は、情報を蓄積する管理データベース6と接続されており、無線基地局管理サーバ4からの要求に応じて管理データベース6への情報の追加、削除、検索、更新を行う。
管理データベース6には、無線端末1の可変IDと当該可変IDに対応する実際の端末・ユーザ・物品の固定IDや、関連情報の対応が記録されており、水平分割方法による複数のデータベース装置7を用いた構成になっている。但し、データベース装置7の容量に対し、情報が少ない場合においては、水平分割が行われず、1台のデータベース装置7である場合もあり得る。
上記無線端末1、インターネット端末2、無線基地局3、無線基地局管理サーバ4、端末情報管理サーバ5、データベース装置7は、それぞれ複数台(情報が少ない場合には1台)存在する。上記の位置登録処理とは、本システムでは、無線端末1が複数の無線基地局3の間を時間とともに移動する可能性があるため、インターネット端末2から送信されたデータの転送先となる無線基地局3を管理データベース6に記録しておく処理のことである。位置登録処理は、一般的に無線端末1が異なる無線基地局3の通信圏内に移動したことを契機に実施される。
なお、無線基地局3、無線基地局管理サーバ4、端末情報管理サーバ5、管理データベース6からなるネットワーク装置は、物理的に異なる装置であっても良いし、物理的に同一の装置内に複数の異なるソフトウェアとして実装されていても良いし、物理的に同一の装置内に同一のソフトウェアとして統合されて実装されていても良い。
(管理データベース構成)
図2は、本実施形態によるデータベース部分の構成を示すブロック図である。無線基地局管理サーバ4、4は、1台以上の端末情報管理サーバ5と接続している。端末情報管理サーバ5、5は、管理データベース6を構成する全てのデータベース装置7、7、7と接続している。管理データベース6は、水平分散方式により複数倍に分散化されており、水平分割方法は、範囲分割、リスト分割、ハッシュ分割などが可能である。(但し、以降、特に断らない限り、管理データベース6は、1台のデータベース装置7でも対応可能である。)
無線基地局管理サーバ4、4は、可変IDと可変IDとに対応する実際の端末・ユーザ・物品の固定IDや、関連情報に関する情報を取得する際、端末情報管理サーバ5、5へ当該情報の取得要求とともに、可変ID、または固定IDを送信する。端末情報管理サーバ5、5は、受信した要求に含まれる可変ID、あるいは固定IDを用いて、水平分割のルールにより当該情報が含まれているデータベース装置7を特定する。
範囲分割ならば、可変IDや、固定IDの範囲で当該情報が含まれているデータベース装置7を特定する。リスト分割ならば、可変IDや、固定IDとデータベース装置7との対応が格納されたリストの検索結果により、当該情報が含まれているデータベース装置7を特定する。ハッシュ分割ならば、可変IDや、固定IDを用いたハッシュ演算結果により、当該情報が含まれているデータベース装置7を特定する。
図3は、本実施形態による冗長化時のデータベース部分の構成を示すブロック図である。1台の装置が故障した場合でもサービスを継続可能な冗長化を考慮した場合の装置構成は、無線基地局管理サーバ4、4を、2台以上の端末情報管理サーバ5、5と接続する。端末情報管理サーバ5、5は、いずれも同一機能を持つため、無線基地局3は、いずれかの動作中の端末情報管理サーバ5に情報の取得・更新・追加・削除の要求行うことで、1台の端末情報管理サーバ5が停止した場合でも情報の取得が可能となる。
また、データベース装置7、7、7は、冗長化のために同一の情報を蓄積する2台以上のデータベース装置群で存在する。そのため、端末情報管理サーバ5、5は、水平分割ルールによりデータベース装置群を特定した後、その群を構成するデータベース装置群のうち、動作している1台のデータベース装置7に情報の取得・更新・追加・削除を要求することで、1台のデータベース装置7が停止した場合でも、情報の取得・更新・追加・削除が可能となる。したがって、端末情報管理サーバ5、5は、同一情報を格納するデータベース装置群のうち、2台以上に接続する。
(可変IDの利用方法)
可変IDと固定IDの利用範囲は、次の通りである。可変IDとは、無線端末1と無線基地局3との間の無線区間における通信で用いられる無線端末1の識別子である。無線区間は、誰でも盗聴可能であり、可変IDを用いることで、悪意の第三者による無線端末1のトラッキング防止、プライバシ保護、匿名性の確保が可能となる。また、有線区間においては、基本的に固定IDを用いて無線端末1の識別を行うが、固定IDが不明な場合には、可変IDにより管理データベース6を検索し、可変IDから対応する固定IDを取得する。また、無線区間で通信を行う際に固定IDのみしか情報がない場合には、固定IDにより管理データベース6を検索し、固定IDから対応する可変IDを取得する。
図4は、本実施形態による、無線端末1と無線基地局3が3回のメッセージ交換で相互認証を行う場合の認証の手順を示すシーケンス図である。まず、無線端末1は、可変IDを含む認証要求メッセージを送信する(ステップSa1)。無線基地局3は、認証要求メッセージを無線基地局管理サーバ4へ送信する(ステップSa2)。無線基地局管理サーバ4は、可変IDを用いて管理データベース6から当該無線端末1に対応する固定IDや、認証に必要な情報、その他の関連情報を取得するため、端末情報管理サーバ5に問い合わせを行う(ステップSa3)。
端末情報管理サーバ5は、可変IDを元に水平分割のルールを参照し、当該可変IDに対応する固定ID、認証に必要な情報、その他の関連情報が含まれているデータベース装置7を特定し、当該データベース装置7へ可変IDに基づく検索を行う(ステップSa4)。その後、端末情報管理サーバ5は、検索結果を無線基地局管理サーバ4へ送信する(ステップSa5)。無線基地局管理サーバ4は、端末情報管理サーバ5から得た認証に必要な情報を元に、無線端末1の認証を行った後、その結果を無線端末1に送信するために、無線基地局3に対して認証要求の応答として認証応答メッセージを送信する(ステップSa6)。認証応答メッセージには、認証の結果のほかに、固定IDが含まれている。
無線基地局3は、無線端末1から認証要求メッセージで受信した可変IDと無線基地局管理サーバ4から認証応答で受信した固定IDとの対応を保持し、当該無線端末1に対して可変IDを用いて認証応答メッセージを送信する(ステップSa7)。認証応答メッセージを受信した無線端末1は、無線基地局3から受信した認証要求メッセージが正しい内容であることを確認して、可変IDを含む認証完了メッセージを無線基地局3へ送信する(ステップSa8)。無線基地局3は、無線端末1から受信した認証完了メッセージを、必要に応じて無線基地局管理サーバ4へ固定IDを含む認証完了メッセージとして送信する(ステップSa9)。
なお、最初の認証要求メッセージ以外のメッセージは、認証要求メッセージとの対応付けが取れていれば、可変IDや、固定IDを含まなくても良い。例えば、下位レイヤの情報や、一時的な別のIDを割り当てて識別を行ってもかまわない。なお、可変IDを無線区間だけでなく、その他の区間で用いても良い。また、無線基地局3で固定IDと可変IDとの対応を保持しなくとも、データ送受信のたびに管理データベース6に可変IDと固定IDとの対応を問い合わせても良い。
図5は、本実施形態による、データ通信(アップロード、ダウンロード)の手順を示すシーケンス図である。無線端末1がインターネット端末2へデータを送信(アップロード)する場合には、無線端末1は、可変IDとデータとを無線基地局3へ送信する(ステップSb1)。無線基地局3は、無線基地局3が認証の際に保持した可変IDと固定IDとの対応表を検索して、受信した可変IDに対応する固定IDを取得する。そして、無線基地局3は、無線端末1から受信した可変IDに対応する固定IDとデータとを無線基地局管理サーバ4へ送信する(ステップSb2)。無線基地局管理サーバ4は、インターネット10を通じてインターネット端末2へ固定IDとデータとを送信する(ステップSb3)。
インターネット端末2が無線端末1へデータを送信(ダウンロード)する場合には、インターネット端末2は、固定IDとデータとをインターネット10を通じて無線基地局管理サーバ4へ送信する(ステップSb4)。無線基地局管理サーバ4は、固定IDとデータとを無線基地局3へ送信する(ステップSb5)。無線基地局3は、無線基地局3が認証の際に保持した可変IDと固定IDとの対応表を検索して、受信した固定IDに対応する可変IDを取得する。そして、無線基地局3は、無線基地局管理サーバ4から受信した固定IDに対応する可変IDとデータとを無線端末1へ送信する(ステップSb6)。
なお、データを送受信するためのメッセージは、以前に認証を行った際に送受信した認証要求メッセージとの対応付けが取れていれば、可変IDや、固定IDを含まなくても良い。例えば、下位レイヤの情報や、一時的な別のIDを割り当てて識別を行ってもかまわない。なお、可変IDを無線区間だけでなく、その他の区間で用いても良い。また、無線基地局で固定IDと可変IDとの対応表を保持しなくとも、データ送受信の度に管理データベース6に可変IDと固定IDとの対応を問い合わせても良い。
(可変IDの更新方法)
可変IDを悪意の第三者による無線端末1のトラッキング防止、プライバシ保護、匿名性の確保を行うための識別子として用いるには、一定の期間、または一定の通信回数、一定の通信量を超える通信を行う前に、可変IDの更新処理を行い、無線端末1の識別子としては、古い可変IDの利用を停止し、新しい可変IDの利用を開始する必要がある。本実施形態において、可変IDを更新する際には、無線端末1と管理データベース6とに新たな可変IDと固定IDとの対応関係を記録する。
手作業で無線端末1と管理データベースとの更新も可能だが、無線端末1で新たな可変IDを作成して、外部に盗聴されない方法で古い可変IDと新しい可変IDとの対応を無線基地局3へ送信し、無線基地局管理サーバ4と端末情報管理サーバ5経由で、古い可変IDに対応していた固定IDや、関連する情報と新しい可変IDとの対応関係を管理データベース6に記録するようにしてもよい。
また、端末情報管理サーバ5や、無線基地局管理サーバ4、無線基地局3のいずれかで新たな可変IDを作成し、必要に応じて端末情報管理サーバ5や、無線基地局管理サーバ4を経由して古い可変IDに対応していた固定IDや、関連する情報と新しい可変IDとの対応関係を管理データベース6に記録するとともに、必要に応じて無線基地局管理サーバ4や、無線基地局3を経由して無線端末1へ古い可変IDと新しい可変IDとの対応関係を送信して無線端末1に記録しても良い。
なお、可変ID更新の契機は、どの装置で判定してもかまわない。新しい可変IDは、その可変ID自体を直接送信してもかまわないが、新しい可変IDを生成するために必要な演算回数、ハッシュ回数、演算に用いるパラメータや、その一部などのパラメータ、計算式などの形式で送信しても良い。
(可変IDの保持場所)
無線端末1は、可変IDを保持する。インターネット端末2は、固定IDを保持する。管理データベース6は、可変IDから固定IDを検索可能な対応表と、固定IDから可変IDが検索可能な対応表を保持する。もしくは、管理データベース6は、可変IDから当該可変IDに対応した固定IDとその他の関連情報を含むデータベース装置の番号とを検索可能な対応表と、固定IDから可変IDが検索可能な対応表を保持する。
図6は、本実施形態による管理データベース6が保持する可変IDから固定IDを検索可能な対応表を示す概念図である。本実施形態では、可変IDから固定IDを検索可能な対応表は、4台のデータベース装置7(DB1、DB2、DB3、DB4)に水平分割方式により分割されて格納されている。水平分割方法としては、可変IDから管理するデータベース装置7(DB1、DB2、DB3、DB4)を特定することができる水平分割方法(つまり範囲分割、リスト分割、ハッシュ分割など)を採用することとする。
図6では、その一例として、可変IDのビット列に基づく範囲分割の例を示す。本実施形態では、下位2ビットが00、01、10、11である可変IDのそれぞれの範囲毎に、格納するデータベース装置7(DB1、DB2、DB3、DB4)が異なるように水平分割されている。他にも、可変IDとそれを格納するデータベース装置7とのリストを予め保持しておくリスト分割や、可変IDのハッシュ結果から格納するデータベース装置7(DB1、DB2、DB3、DB4)を特定するハッシュ分割などの方法で水平分割を行っても良い。
図7は、本実施形態において、管理データベース6が保持する可変IDから当該可変IDに対応した固定IDとその他の関連情報を含むデータベース装置7の番号(1、2、3)とを検索可能な対応表を示す概念図である。本実施形態では、可変IDからデータベース装置7の番号(1、2、3)を検索可能な対応表が、4台のデータベース装置7(DB1、DB2、DB3、DB4)に水平分割方式により分割されて格納されている。水平分割方法としては、可変IDから管理するデータベース装置7(DB1、DB2、DB3、DB4)を特定することができる水平分割方法(つまり、範囲分割、リスト分割、ハッシュ分割など)を採用することとする。
図7では、その一例として、可変IDのビット列に基づく範囲分割の例を示す。本実施形態では、下位2ビットが00、01、10、11である可変IDのそれぞれの範囲毎に、格納するデータベース装置7(DB1、DB2、DB3、DB4)が異なるように水平分割されている。他にも、可変IDとそれを格納するデータベース装置7とのリストを予め保持しておくリスト分割や、可変IDのハッシュ結果から格納するデータベース装置7(DB1、DB2、DB3、DB4)を特定するハッシュ分割などの方法で水平分割を行っても良い。
図8は、本実施形態において、管理データベース6が保持する固定IDから可変ID、及びその他の関連情報を検索可能な対応表を示す概念図である。本実施形態では、対応表は、3台のデータベース装置7(DB1、DB2、DB3)に水平分割により分割されて格納されている。水平分割方法としては、固定IDから管理するデータベース装置7(DB1、DB2、DB3)を特定することができる水平分割方法(つまり、範囲分割、リスト分割、ハッシュ分割など)を採用することとする。
図8では、その一例として、固定IDの値の範囲に基づく範囲分割の例を示す。本実施形態では、001x、003x、005xで始まる固定IDのそれぞれの範囲毎に、格納するデータベース装置7(DB1、DB2、DB3)が異なるように水平分割されている。他にも、固定IDとそれを格納するデータベース装置7とのリストを予め保持しておくリスト分割や、固定IDのハッシュ結果から格納するデータベース装置7(DB1、DB2、DB3)を特定するハッシュ分割などの方法で水平分割を行っても良い。
(固定IDから可変ID等を検索する対応表を管理するデータベース装置7の増減設)
固定IDから可変ID、及びその他の関連情報を検索可能な図8のような対応表においては、認証や、データの送受信時に対応表の参照があり、可変IDの更新時に対応表の更新があり、固定IDの利用を開始・停止したときに対応表の追加、削除が行われる。対応表が固定ID毎に分割されており、固定IDは、端末数に応じて増えるため、固定IDが増えた場合には、新しいデータベース装置7を新設して新たな固定IDに対応する情報を格納すればよい。したがって、最初に利用開始した固定IDに対応する情報から順番にデータベース装置7(DB1、DB2、DB3)を割り当て、当該データベース装置7に格納した固定IDが全て利用を停止されたときに、当該データベース装置7を廃棄すればよいため、サービス途中で増減設を行う際に、水平分割ルールの変更などのサービス停止を伴う作業を行う必要性はない。
(可変IDから固定ID等を検索する対応表を管理するデータベース装置7の増減設)
可変IDから固定IDを検索可能な対応表(図6)、または可変IDから当該可変IDに対応した固定IDとその他の関連情報を含むデータベース装置7の番号とを検索可能な対応表(図7)において、取り扱う可変IDの数が増えた場合には、1台の新たな範囲の値を管理するデータベース装置7を増設するという方法で対応することはできない。なぜなら、可変IDは、乱数のような予測されにくい値へ次々と更新しながら用いるという特徴があるため、各々のデータベース装置7(DB1、DB2、DB3、DB4)に均等に格納する可変IDが存在し、均等に管理する可変IDの数が増えていくためである。
図9は、本実施形態において、可変IDを管理するデータベース装置7の増設方法を示す概念図である。例えば、管理する可変IDの数が倍に増えて場合、範囲分割により末尾が00で終わる可変IDを管理していたデータベース装置7(#1)の許容量を超えてしまう。そこで、末尾が000で終わる可変IDと末尾が100で終わる可変IDとを異なるデータベース装置7(#1、#2)に水平分割して格納するという増設方法を行うことで増設が可能となる。図9に示す例では、末尾が00で終わる可変IDを管理していたデータベース装置7(#1)をそのまま末尾が000で終わる可変IDを管理するデータベース装置7(#1)へ転用し、新規に増設したデータベース装置7(#2)に末尾が100で終わる可変IDを管理させている。
上述した方法により、乱数のような値を持ち、更新があるという特徴を持つ可変IDのデータベース装置7を増設することが可能だが、上記手順は、水平分割のルールを変更することが必要となる。同時に複数のデータベース装置7、及び端末情報管理サーバ5の設定変更を行う場合には、変更処理に時間を要するため、一時的にデータベース装置7、端末情報管理サーバ5を停止させる必要が発生し、サービスの中断が発生してしまう危険性がある。
可変IDから固定IDを検索可能な対応表(図6)、または可変IDから当該可変IDに対応した固定IDとその他の関連情報を含むデータベース装置7の番号とを検索可能な対応表(図7)においては、データベース装置7へのアクセスは、認証や、データ送受信時に可変IDから固定IDや、その他の関連情報を取得するための対応表の参照、新しい可変ID生成時の対応表の追加、古い可変ID削除時の対応表の削除が想定される。
このうち、新規の無線端末1が導入された際の追加や、無線端末1の利用停止を行った際の削除については、運用者の都合で時期を前後できると考えられるため、水平分割ルール変更時は停止しても問題がないと考えられる。しかし、可変IDの更新時の新しい可変IDの対応表への追加や、削除、及び可変IDによる対応表の参照については、認証や、データの送受信を行う上で必要な機能であるため、データベース装置7の増減設時に水平分割ルールの変更が必要になったとしても、参照、追加、削除が継続できる必要がある。
(増設時の可変IDの不一致の例)
図10は、本実施形態において、可変IDを管理するデータベース装置7の増設時に複数装置の停止が必要である理由を示す概念図である。図10では、末尾が00で終わるデータベース装置7(#1)の許容量を超える可変IDを格納する必要性を認識した時点で、末尾が000で終わる可変IDの対応表と、末尾が100で終わる可変IDの対応表に分割を行い、従来1台のデータベース装置7(#1)が管理していた情報を、2台のデータベース装置7(#1)、7(#5)に格納する場合の手順を示している。
上記手順を行う際には、端末情報管理サーバ5(#1、#2)上の水平分割ルールの変更が必要となるが、同時に複数の装置が完全に時刻同期を取って更新することは困難である。このため、例えば、1台の端末情報管理サーバ5(#1)は、水平分割ルールを変更済みで、もう1台の端末情報管理サーバ5(#2)は、水平分割ルールの変更前であるという状況が発生し得る。さらに、このとき、異なる無線基地局管理サーバ5(#1、#2)が新たな可変IDの生成を試みた場合、一方の端末情報管理サーバ5(#1)は、新設したデータベース装置7(#5)へ可変IDの対応表の追加を行うが、一方の端末情報管理サーバ5(#2)は、従来のデータベース装置7(#1)に可変IDの対応表の追加を行ってしまい、結果的に異なる無線端末1に同一の可変IDを生成してしまうという問題が発生してしまう。つまり、可変IDを管理するデータベース装置7の増設中は、更新・追加・削除などの変更を伴うアクセスをすることは、可変IDを管理する対応表の不一致という問題を生んでしまう。
(可変IDデータベースの増減設方法の種類)
上述したようなシステムにおいて、データベース装置7の増減設を行う場合、以下の方法が考えられる。増設の場合には、全部のデータベース装置7を一斉に分割するのではなく、部分的な1台または複数台のデータベース装置7に対して分割を行う。分割方法は、ビット列に基づく範囲分割であれば、2分割、4分割、8分割など、ビット列との対応が可能な単位で分割すべきであるが、特定の値の範囲を柔軟に設定できる範囲分割ルールや、リスト分割、ハッシュ分割を行う場合には、任意の数に分割が可能である。
また、減設の場合には、その逆となり、複数台のデータベース装置7の内容を1台のデータベース装置7に集約することになる。増減設の際には、水平分割ルールの変更や、データベース内の対応表のコピーなどに時間を要するため、可変IDの不一致が発生しないためには、全ての端末情報管理サーバ5の停止などの対策が必要となるが、本実施形態では、可変IDの特徴を利用して、サービスを中断することなく、増減設を行う次のような方法を提案する。
[水平分割ルール変更作業中のTSDB(Temporary ID Search DataBase)の情報参照方法]
各データベース装置7について、増減設前に予め変更後と同じ台数のデータベース装置7のコピーを作成しておくことで、情報の複製時間の影響をなくすことが可能となる。これにより、水平分割ルールを変える直前の通信は、そのまま継続でき、変更後の通信に対しても応答が可能となるため、無中断を実現できる。
[水平分割ルール変更作業中のTSDBへの情報追加方法]
新しく生成した可変IDが変更作業中のデータベース装置7が管理する可変IDであった場合のみ、再度演算を行い、異なる可変IDを再生成する。例えば、乱数を作り直すなどがある。
または、予め定常的、あるいは準備処理として、複数個の可変IDを作成しておいたものを新しい可変IDとして払い出すことで、情報の追加ではなく、参照で対応できるようにする。
[水平分割ルール変更作業中のTSDBからの情報削除方法]
対象となる水平分割ルール変更作業中のデータベース装置7への削除をすぐには行わず、一時的に保留し、削除予定の可変IDリストに蓄積しておく。そして、水平分割ルール変更作業が完了した時点で、当該可変IDの削除を行う。
上述した提案を実現するデータベース装置の増設方法は4種類存在する。
(第1増設方法)
図11、及び図12は、本実施形態による第1増設方法における増設時の処理手順を示す概念図である。前提として、ここでは、2台のデータベース装置7、7が冗長化により1台ずつの複製を持ち、かつ2台の端末情報管理サーバ5(#1)、5(#2)がある場合を例に説明する。データベース装置7(#1、#2)は、同一の情報を保持し、末尾が0で終わる可変IDを管理している。データベース装置7(#3、#4)は、同一の情報を保持し、末尾が1で終わる可変IDを管理している。
また、端末情報管理サーバ5(#1)、5(#2)の2台は、全てのデータベース装置7、7にアクセスが可能で、可変IDの値の範囲(末尾が0か1か)による水平分割ルールに基づいてアクセスするデータベース装置7、7を選択する。また、増設は、データベース装置7(#5、#6)を新設して、末尾が0で終わる可変IDの管理を、末尾が00で終わる可変IDと末尾が10で終わる可変IDの2グループに分けることを目的とする。そのため、データベース装置7(#1、#2、#5、#6)の4台のうち、2台ずつでそれぞれの可変IDのグループを管理するよう端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更をサービス無中断で行う。
増設手順1においては、まず、手動で、データベース装置7(#5、#6)を新設し(ステップS1)、端末情報管理サーバ5(#1)、5(#2)と接続し、データベース装置7(#1、#2)と同一の情報を保持させるよう情報をコピーする(ステップS2)。コピーは、一時的なものではなく、作業中に加えられた情報の追加、削除、変更を共有できるレプリケーション(マルチマスタレプリケーション(DBMS機能を利用して実現))という方法を用いる。
次に、端末情報管理サーバ5(#1)、5(#2)のルール変更を1台づつ順番に行う(ステップS3、S4)。水平分割ルールを変更する前は末尾が0で終わる可変IDに関する参照、変更、追加、削除はデータベース装置7(#1、#2、#5、#6)のグループに対して行うルールであるが、これを末尾が00で終わる可変IDは、データベース装置7(#1、#5)のグループ、末尾が10で終わる可変IDは、データベース装置7(#2、#6)のグループに対して参照、変更、追加、削除を行うように変更を行う。
なお、端末情報管理サーバ5(#1)と端末情報管理サーバ5(#2)とで同時に可変ID=0010を生成し、それぞれデータベース装置にINSERTしに行った場合、先着した方が成功し、後着した方は失敗に終わるため問題はない。
データベース装置のグループに対する参照、変更、追加、削除とは、参照であれば、グループ内の任意の単一のデータベース装置7に対して情報を問い合わせればよい。追加、変更、削除については、グループ内の全てのデータベース装置7に追加、変更、削除が反映されるように処理ができればよく、グループ内の単一のデータベース装置7が残りのデータベース装置7へ操作に関する情報をレプリケーションにより伝播させることで実現する。
全ての端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更が完了した時点で、末尾が0で終わる可変ID(特定可変ID)の生成を禁止する(ステップS5)。これ以降に可変IDを生成する必要が出てしまった場合で、かつ末尾が0の可変IDを生成してしまった場合には、何らかの方法で末尾が1の可変IDを再生成する。例えば、乱数の末尾が1になるまで乱数の再生成を行い続け、その結果を可変IDとして用いるなどの処理を行う。
加えて、可変IDを削除する必要が出た場合には、端末情報管理サーバ5(#1)、5(#2)にて削除対象の可変IDのリストを作成し、一時的にリストに削除対象の可変IDを記録し、データベース装置7の可変IDの削除を保留する。これにより、データベース装置7(#1、#2、#5、#6)への可変IDの生成、変更、削除は行われず、参照のみ行われる状態となる。
その後、データベース装置7(#1、#2、#5、#6)のレプリケーション設定を変更し、データベース装置7(#1、#5)をグループGr1として設定、データベース装置7(#2、#6)をグループGr2として設定し、それぞれのグループ内で追加、削除、変更が伝播するように変更を行う(ステップS6)。
設定変更完了後、末尾が0の可変ID生成の禁止、及び削除の保留を解除する(ステップS7)。加えて、端末情報管理サーバ5(#1)、5(#2)が保留していた削除予定の可変IDの削除を、新ルールに基づいてデータベース装置に反映させる。これにより、可変ID=xx00、可変ID=xx10の更新が可能となる。
次に、データベース装置7(#1、#5)に含まれる末尾00以外の可変ID、及びデータベース装置7(#2、#6)に含まれる末尾10以外の可変IDを削除する(ステップS8)。図示の例では、データベース装置7(#1)から、可変ID=xx10を削除、データベース装置7(#1、#5)から可変ID=xx10の可変IDが削除される。また、データベース装置7(#2)から、可変ID=xx00を削除、データベース装置7(#2、#6)から可変ID=xx00の可変IDが削除される
これらの手順により、サービスを継続したまま、無中断でデータベース装置7の増設が可能となる。また、レプリケーションを行うグループの変更時の不完全な可変ID情報の変更、追加、削除の発生を防ぐことができる。
なお、上述した手順の特徴は、データベース装置7間でマルチマスタ方式(同一情報を保持する各データベース装置7の間に役割分担がなく、当該データベース装置7間でリアルタイムに保持情報の同期を取っている方式)のレプリケーションが必要である点と、端末情報管理サーバ5に対する水平分割ルールの設定変更が1回という点、最後に重複する可変IDをデータベース装置7から削除する必要がある点、特定の可変IDの追加禁止と削除保留とが必要となる点である。
また、増設前・増設後とも、2台のデータベース装置7がレプリケーション(冗長化)された構成について例示したが、データベース装置7が3台以上でレプリケーション(冗長化)される構成や、レプリケーション(冗長化)されない構成についても、本技術は適用可能である。さらに、本実施形態では、データベース装置7(#1、#2、#5、#6)をレプリケーションした後に、データベース装置7(#1)と7(#5)、7(#2)と7(#6)をグループ化したが、この選び方は任意であり、端末情報管理サーバ5(#1)、5(#2)における水平分割ルールの変更と整合性が取れていれば、どのような組み合わせでも問題ない。
また、上述した実施形態では、末尾が0と1の場合の範囲分割による水平分割を用いた場合の例で示したが、値の範囲が異なっていてもよく、水平分割方法が範囲分割、リスト分割、ハッシュ分割であっても実施が可能である。
(第2増設方法)
図13、図14、及び図15は、本実施形態による第2増設方法における増設時の処理手順を示す概念図である。前提として、ここでは、2台のデータベース装置7、7が冗長化により1台ずつの複製を持ち、かつ2台の端末情報管理サーバ5(#1)、5(#2)がある場合を例に説明する。
データベース装置7(#1、#2)は、同一の情報を保持し、末尾が0で終わる可変IDを管理している。データベース装置7(#3、#4)は、同一の情報を保持し、末尾が1で終わる可変IDを管理している。また、2台の端末情報管理サーバ5(#1)、5(#2)は、全てのデータベース装置7(#1、#2)、7(#3、#4)にアクセスが可能であり、可変IDの値の範囲(末尾が0か1か)による水平分割ルールに基づいてアクセスするデータベース装置7を選択する。
また、増設は、データベース装置7(#5、#6)を新設して、末尾が0で終わる可変IDの管理を、末尾が00で終わる可変IDと末尾が10で終わる可変IDの2つのグループGr1、Gr2に分けることを目的とする。そのため、データベース装置7(#1、#2)、7(#5、#6)の4台のうち、2台ずつでそれぞれの可変IDのグループGr1、Gr2を管理するよう端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更をサービス無中断で行う。
第2増設方法においては、データベース装置7(#1、#2)、及び7(#3、#4)をそれぞれグループGr1、Gr2とし、それぞれのグループGr1、Gr2内では、データベース装置7(#1)とデータベース装置7(#3)とがそれぞれマスタ装置、データベース装置7(#2)とデータベース装置7(#4)とがスレーブ装置というように役割を分けている。端末情報管理サーバ5(#1)、5(#2)からの情報の追加、削除、参照、変更は、常にマスタ装置へ行われ、かつ、マスタ装置に対して行われた情報の操作(追加、削除、変更)は、マスタ装置からスレーブ装置へ反映され、最終的に保持情報がマスタ装置とスレーブ装置とで同一になるようなレプリケーション方法を用いたマスタスレーブ構成をとっていることを前提とする。
増設手順においては、まず、末尾が0で終わる可変IDの生成を禁止する(ステップS10)。これ以降に、可変IDを生成する必要が出てしまった場合で、かつ末尾が0の可変IDを生成してしまった場合には、何らかの方法で末尾が1の可変IDを再生成する。例えば、乱数の末尾が1になるまで乱数の再生成を行い続け、その結果を可変IDとして用いるなどの処理を行う。
加えて、可変IDを削除する必要が出た場合には、端末情報管理サーバ5(#1)、5(#2)にて削除対象の可変IDのリストを作成し、一時的にリストに削除対象の可変IDを記録し、データベース装置7の可変IDの削除を保留する。これにより、データベース装置7(#1、#2)への可変IDの生成、変更、削除は行われず、参照のみ行われる状態となる。そして、マスタ装置とスレーブ装置との情報がレプリケーションにより同一になるまで待つ(マスタスレーブによる同期ずれが解消される)。
次に、端末情報管理サーバ5(#1)、5(#2)のルール変更を1台ずつ順番に行う(ステップS11、S12)。水平分割ルールを変更する前には、末尾が0で終わる可変IDに関する参照、変更、追加、削除は、データベース装置7(#1、#2)のグループGr1のマスタ装置であるデータベース装置7(#1)に対して行うルールであるが、これを末尾が00で終わる可変IDを参照する場合には、データベース装置7(#1)を参照して、もし情報がなければ、データベース装置7(#2)を参照する(通常はデータベース装置7(#1)のみアクセス。データベース装置7(#1)で障害が発生し、アクセス不可時に限り、データベース装置7(#2)へアクセス)。また、末尾が10で終わる可変IDを参照する場合には、データベース装置7(#2)を参照して、もし情報がなければ、データベース装置7(#1)を参照するように変更を行う。
全ての端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更が完了した時点で、データベース装置7(#1、#2)で構成されるグループGr1を解除し、データベース装置7(#1)のみからなるグループのマスタ装置をデータベース装置7(#1)とし、データベース装置7(#2)のみからなるグループのマスタ装置をデータベース装置7(#2)とするようにグループの変更を行い、結果としてデータベース装置7(#1)と7(#2)との間での情報の操作(追加、削除、変更)の反映を行うためのレプリケーションを停止させる(ステップS13)。
この時点でデータベース装置7(#1)とデータベース装置7(#2)の間のレプリケーションの関係は無くなっているが、まだ可変IDの追加、削除、変更が行われないように、端末情報管理サーバ5(#1)、5(#2)に末尾が0で終わる可変IDの生成に対する禁止、削除を保留しているため、一方のデータベース装置が壊れても、データベース装置7(#1)、7(#2)の双方で障害が発生しない限り、参照アクセス可能であり、他方に情報が残っている冗長化の効果は失われていない。
その後、データベース装置7(#5)、7(#6)を新設して、データベース装置7(#1、#5)をグループGr3にグループ化、データベース装置7(#2、#6)をグループGr4にグループ化して、それぞれデータベース装置7(#1)、7(#2)をマスタ装置、データベース装置7(#5)、7(#6)をスレーブ装置として構成する(ステップS14)。
マスタ装置に対して行われた情報の操作(追加、削除、変更)は、マスタ装置からスレーブ装置へ反映され、最終的に保持情報がマスタ装置とスレーブ装置で同一になる様なレプリケーション方法を開始する(ステップS15)。当初、データベース装置7(#5)、7(#6)は、情報を保持していないが、データベース装置7(#1)からデータベース装置7(#5)へ、データベース装置7(#2)からデータベース装置7(#6)へそれぞれレプリケーションにより保持情報が完全にコピーされるまで待つ。可変ID=xx00参照アクセス時に、データベース装置7(#1)で障害が発生した場合、レプリケーションにより、データベース装置7(#5)に参照アクセスすることになる(端末情報管理サーバ5(#1)、5(#2)が参照アクセス先を複数持つ必要がなくなる)。
そして、データベース装置7(#1、#5)のグループGr3、データベース装置7(#2、#6)のグループGr4で、マスタ装置とスレーブ装置とで保持情報が同一になった時点で、端末情報管理サーバ5(#1)、5(#2)のルール変更を1台ずつ順番に行う(ステップS16)。末尾が00で終わる可変IDを追加、削除、変更、参照する場合には、データベース装置7(#1)へ追加、削除、変更、参照を行い、また、末尾が10で終わる可変IDを参照する場合には、データベース装置7(#2)へ追加、削除、変更、参照を行うように順次変更する。但し、この時点で、全ての端末情報管理サーバ5(#1)、5(#2)のルール変更を行うまでは、まだ末尾が0で終わる可変IDの追加を禁止し、削除は保留のルールを設定したままとする。
その後、全ての端末情報管理サーバ5(#1)、5(#2)のルール変更が完了した後、全ての端末情報管理サーバ5(#1)、5(#2)に対して、順次、末尾0の可変IDの追加禁止を解除し、削除の保留を解除して、さらに保留中となっていた可変IDの削除を新ルールに基づいてデータベース装置7(#1、#5)、7(#2、#6)に対して実行開始するように設定を変更する(ステップS17)。すなわひ、グループGr3、Gr4に対して更新アクセスが開始される。
全ての端末情報管理サーバ5(#1)、5(#2)への設定変更が完了した後、データベース装置7(#1、#5)に含まれる末尾00以外の可変ID、及びデータベース装置7(#2、#6)に含まれる末尾10以外の可変IDを削除する(ステップS18)。すなわち、端末情報管理サーバ#1に対して、重複可変IDの削除を指示し、データベース装置7(#1)から、可変ID=xx10を削除することで、データベース装置7(#1、#5)から可変ID=xx10の可変IDが削除される。また、データベース装置7(#2)から、可変ID=xx00を削除することで、データベース装置7(#2、#6)から可変ID=xx00の可変IDが削除される。
これらの手順により、サービスを継続したまま無中断でデータベース装置7の増設が可能となる。レプリケーションを行うグループの変更時の不完全な可変ID情報の変更、追加、削除の発生を防ぐことができる。なお、本手順の特徴は、データベース装置7間でマスタスレーブ方式のレプリケーションを採用した場合に実施が可能である点と、端末情報管理サーバ5に対する水平分割ルールの設定変更が2回という点、最後に重複する可変IDをデータベース装置7から削除する必要がある点、特定の可変IDの追加禁止と削除保留とが必要となる点である。
なお、上述した実施形態では、末尾が0と1の場合の範囲分割による水平分割を用いた場合の例で示したが、値の範囲が異なっていてもよく、水平分割方法が範囲分割、リスト分割、ハッシュ分割であっても実施が可能である。冗長化ありの例で示しているが、冗長化がない場合でも実施が可能である。
(第3増設方法)
図16、図17、及び図18は、本実施形態による第3増設方法における増設時の処理手順を示す概念図である。前提として、ここでは、2台のデータベース装置7、7が冗長化により1台ずつの複製を持ち、かつ2台の端末情報管理サーバ5(#1)、5(#2)がある場合を例に説明する。
データベース装置7(#1、#2)は、同一の情報を保持し、末尾が0で終わる可変IDを管理している。データベース装置7(#3、#4)は、同一の情報を保持し、末尾が1で終わる可変IDを管理している。また、2台の端末情報管理サーバ5(#1)、5(#2)は、全てのデータベース装置7(#1、#2、#3、#4)にアクセスが可能であり、可変IDの値の範囲(末尾が0か1か)による水平分割ルールに基づいてアクセスするデータベース装置7を選択する。
また、増設は、データベース装置7(#5、#6)を新設して、末尾が0で終わる可変IDの管理を、末尾が00で終わる可変IDと末尾が10で終わる可変IDとの2グループに分けることを目的とする。そのため、データベース装置7(#1、#2、#5、#6)の4台のうち、2台ずつでそれぞれの可変IDのグループを管理するよう端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更をサービス無中断で行う。
第3増設方法においては、データベース装置7(#1、#2)、及び7(#3、#4)をそれぞれグループGr1、Gr2とし、グループGr1、Gr2内の2台のデータベース装置7(#1)、7(#2)間、及び7(#3)、7(#4)間は、レプレケーションを行っている前提とする。レプリケーション方法がマスタスレーブ方式の場合には、それぞれのグループGr1、Gr2内では、データベース装置7(#1)とデータベース装置7(#3)とがそれぞれマスタ装置、データベース装置7(#2)とデータベース装置7(#4)とがスレーブ装置というように役割を分けている。
端末情報管理サーバ5(#1)、5(#2)からの情報の追加、削除、参照、変更は、常にマスタ装置へ行われ、かつ、マスタ装置に対して行われた情報の操作(追加、削除、変更)は、マスタ装置からスレーブ装置へ反映され、最終的に保持情報がマスタ装置とスレーブ装置で同一になる様なレプリケーション方法を用いたマスタスレーブ構成をとっている前提とする。また、マルチマスタ方式の場合には、データベース装置7(#1、#2)間、及び7(#3、#4)間でリアルタイムに保持情報の同期を取っており、端末情報管理サーバ5(#1)、5(#2)からの情報の追加、削除、参照、変更は、グループGr1、Gr2内のいずれかのデータベース装置7(#1、#2、#3、#4)に対して行われる前提とする。
増設手順においては、まず、手動で、データベース装置7(#5、#6)を新設して、データベース装置7(#5、#6)をグループGr3にグループ化する(ステップS20)。マルチマスタ方式の場合には、データベース装置7(#5、#6)の双方がマスタとして保持情報の同期を取るように構成し、マスタスレーブ方式の場合には、データベース装置7(#5)をマスタ装置、データベース装置7(#6)をスレーブ装置として構成する。マルチマスタ方式の場合も、マスタスレーブ方式の場合も、この時点からデータベース装置7(#5、#6)の間のレプリケーションを開始する。この時点でデータベース装置7(#5、#6)は、情報を保持していない。
次に、端末情報管理サーバ5(#1)、5(#2)のルール変更#1を1台ずつ順番に行う(ステップS21、S22)。水平分割ルールを変更する前には、末尾が0で終わる可変IDに関する操作(参照、変更、追加、削除)は、データベース装置7(#1、#2)のグループGr1に対して行うルールであるが、これを末尾が00で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1、#2)のグループGr1にのみ操作を行い、末尾が10で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1、#2)のグループGr1に対して操作を行ってから、データベース装置7(#5、#6)のグループGr3に対しても操作を行うように変更する。データベースコネクションも、このタイミング確立される。
全ての端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更#1が完了した時点で、データベース装置7(#5、#6)のグループGr3には、水平分割ルールの変更後の末尾10の可変IDに対する操作のみが反映されている状態となる。この時点では、グループGr1にしかない可変ID=xx10のデータが存在する。可変ID=xx10については、グループGr1がマスタ、グループGr3がスレーブとなる。
その後、データベース装置7(#1、#2)のグループGr1が保持する末尾10の可変IDに関する情報の全てをデータベース装置7(#5、#6)のグループGr3にコピーする(ステップS23)。より具体的には、端末情報管理サーバ5(#1)に可変ID=xx10のコピー要求を指示し、端末情報管理サーバ5(#1)は、データベース装置7(#1)に対し、可変ID=xx10のレコードを全検索し、ヒットしたレコード全てを、データベース装置7(#5)へコピーする。グループGr1、グループGr3で、可変ID=xx10のレコードについて、マスタスレーブの関係になる(マスタ:グループGr1、スレーブ:グループGr3)。
コピー完了後、端末情報管理サーバ5(#1)、5(#2)のルール変更#2を1台ずつ順番に行う(ステップS24、S25)。末尾が00で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1、#2)のグループGr1にのみ操作を行い、末尾が10で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#5、#6)のグループGr3に対して操作を行ってから、データベース装置7(#1、#2)のグループGr1に対して操作を行うように変更する。
なお、途中で端末情報管理サーバ5(#1)、5(#2)間で操作開始するデータベース装置7のグループの順番が異なる状態が発生し、同一対象に対して複数の端末情報管理サーバ5(#1)、5(#2)が異なる順番で操作を行う場合が発生するが、そのような競合が発覚した時点で、次のようなロールバックを行うルールとして設定をしておく。
ルール変更後の、データベース装置7(#5、#6)のグループGr3に対して操作を行ってから、データベース装置7(#1、#2)のグループGr1に対して操作を行う設定となっている端末情報管理サーバ5は、後者のデータベース装置7(#1、#2)への操作の時点で、他の端末情報管理サーバ5による操作との競合が発覚した場合には、前者のデータベース装置7(#5、#6)のグループGr3に対する操作を取り消して、以前の状態に戻す。
また、ルール変更前の、データベース装置7(#1、#2)のグループGr1に対して操作を行ってから、データベース装置7(#5、#6)のグループGr3に対して操作を行う設定となっている端末情報管理サーバ5は、後者のデータベース装置7(#5、#6)への操作の時点で、他の端末情報管理サーバ5による操作との競合が発覚した場合には、前者のデータベース装置7(#1、#2)のグループGr1に対する操作を取り消して、以前の状態に戻す。
全ての端末情報管理サーバ5(#1)、5(#2)に順次、ルール変更を指示した結果、可変ID=xx10のレコードについて、グループGr1、グループGr3のマスタスレーブの関係が逆転する(マスタ:グループGr3、スレーブ:グループGr1)。
全ての端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更が完了した時点で、さらに端末情報管理サーバ5(#1)、5(#2)のルール変更#3を1台ずつ順番に行う(ステップS26)。全ての端末情報管理サーバ5(#1)、5(#2)に対してルール変更を指示し、可変ID=xx10のルールを変更する。具体的には、末尾が00で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1、#2)のグループGr1に操作を行い、末尾が10で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#5、#6)のグループGr3に対して操作を行うように変更する。
以上の全ての端末情報管理サーバ5(#1)、5(#2)への設定変更が完了した後、データベース装置7(#1、#2)に含まれる末尾00以外の可変IDを削除する(ステップS27)。具体的には、端末情報管理サーバ5(#1)に重複可変IDの削除を指示することで、グループGr1から、可変ID=xx10のデータが削除され、可変ID=xx00のみとなる。
これらの手順により、サービスを継続したまま、無中断でデータベース装置7の増設が可能となる。また、レプリケーションを行うグループの変更時の不完全な可変ID情報の変更、追加、削除の発生を防ぐことができる。なお、本手順の特徴は、データベース装置7間でマルチマスタ方式だけでなく、マスタスレーブ方式のレプリケーションでも実施が可能である点と、端末情報管理サーバ5に対する水平分割ルールの設定変更が3回という点、最後に重複する可変IDをデータベース装置5から削除する必要がある点である。
また、グループGr1、Gr2、Gr3とも、それぞれレプリケーションされた2台のデータベース装置7、7から構成される場合について例示したが、グループGr1、Gr2、Gr3がそれぞれ1台のデータベース装置7から構成される場合や、それぞれレプリケーションされたN(Nは3以上の整数)台のデータベース装置7から構成される場合についても、本技術は適用可能である。
なお、上述した実施形態では、末尾が0と1の場合の範囲分割による水平分割を用いた場合の例で示したが、値の範囲が異なっていてもよく、水平分割方法が範囲分割、リスト分割、ハッシュ分割であっても実施が可能である。また、冗長化ありの例で示しているが、冗長化がない場合でも実施が可能である。
(第4増設方法)
図19、図20、図21、及び図22は、本実施形態による第4増設方法における増設時の処理手順を示す概念図である。前提として、ここでは、2台のデータベース装置7、7が冗長化により1台ずつの複製を持ち、かつ2台の端末情報管理サーバ5(#1)、5(#2)がある場合を例に説明する。
データベース装置7(#1、#2)は、同一の情報を保持し、末尾が0で終わる可変IDを管理している。データベース装置7(#3、#4)は、同一の情報を保持し、末尾が1で終わる可変IDを管理している。また、2台の端末情報管理サーバ5(#1)、5(#2)は、全てのデータベース装置7(#1、#2、#3、#4)にアクセスが可能で、可変IDの値の範囲(末尾が0か1か)による水平分割ルールに基づいてアクセスするデータベース装置7を選択する。
また、増設はデータベース装置7(#5、#6、#7、#8)を新設して、データベース装置7(#1、#2)で管理していた末尾が0で終わる可変IDの管理を、末尾が00で終わる可変IDと末尾が10で終わる可変IDとの2つのグループGr3、Gr4に分けて、新設のデータベース装置7(#5、#6、#7、#8)で管理することを目的とする。そのため、最終的にデータベース装置7(#5、#6、#7、#8)の4台のうち、2台ずつでそれぞれの可変IDのグループを管理するよう端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更をサービス無中断で行う。
第4増設方法においては、データベース装置7(#1、#2)、及び7(#3、#4)をそれぞれグループGr1、Gr2とし、グループGr1、Gr2内の2台のデータベース装置7(#1、#2)間、及び7(#3、#4)間は、レプレケーションを行っている前提とする。レプリケーション方法がマスタスレーブ方式の場合には、それぞれのグループGr1、Gr2内では、データベース装置7(#1)とデータベース装置7(#3)とがそれぞれマスタ装置、データベース装置7(#2)とデータベース装置7(#4)とがスレーブ装置というように役割を分けている。
端末情報管理サーバ5(#1)、5(#2)からの情報の追加、削除、参照、変更は、常にマスタ装置へ行われ、かつ、マスタ装置に対して行われた情報の操作(追加、削除、変更)は、マスタ装置からスレーブ装置へ反映され、最終的に保持情報がマスタ装置とスレーブ装置で同一になる様なレプリケーション方法を用いたマスタスレーブ構成をとっている前提とする。また、マルチマスタ方式の場合には、データベース装置7(#1、#2)、7(#3、#4)間でリアルタイムに保持情報の同期を取っており、端末情報管理サーバ5(#1)、5(#2)からの情報の追加、削除、参照、変更は、グループGr1、Gr2内のいずれかのデータベース装置7(#1、#2、#3、#4)に対して行われる前提とする。
増設手順においては、まず、データベース装置7(#5、#6、#7、#8)を新設して、データベース装置7(#5、#6)の2台とデータベース装置7(#7、#8)の2台をそれぞれグループGr3、Gr4にグループ化する(ステップ)。マルチマスタ方式の場合には、データベース装置7(#5、#6)、及びデータベース装置7(#7、#8)の双方がマスタとして保持情報の同期を取るように構成し、マスタスレーブ方式の場合には、データベース装置7(#5、#7)をマスタ装置、データベース装置7(#6、#8)をスレーブ装置として構成する。マルチマスタ方式の場合も、マスタスレーブ方式の場合も、この時点からデータベース装置7(#5、#6)の間とデータベース装置7(#7、#8)の間のレプリケーションを開始する。この時点でデータベース装置7(#5、#6、#7、#8)は、情報を保持していない。
次に、端末情報管理サーバ5(#1)、5(#2)のルール変更#1を1台ずつ順番に行う(ステップS31、S32)。水平分割ルールを変更する前には、末尾が0で終わる可変IDに関する操作(参照、変更、追加、削除)は、データベース装置7(#1、#2)のグループGr1に対して行うルールであるが、これを末尾が00で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1、#2)のグループGr1に操作を行った後に、データベース装置7(#5、#6)のグループGr3にも同様の操作を行い、末尾が10で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1、#2)のグループGr1に対して操作を行った後に、データベース装置7(#7、#8)のグループGr4に対しても同様の操作を行うように変更する。
全ての端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更が完了した時点で、データベース装置7(#5、#6)のグループGr3には、水平分割ルールの変更後の末尾00の可変IDに対する操作のみが反映されており、データベース装置7(#7、#8)のグループGr4には、水平分割ルールの変更後の末尾10の可変IDに対する操作のみが反映されている状態となる。
すなわち、グループGr3には、ルール変更#1開始後に更新要求のあった可変ID=xx00のみが格納されている状態であり、グループGr4には、ルール変更#1開始後に更新要求のあった可変ID=xx10のみが格納されている状態である。この時点では、グループGr1にしかない可変ID=xx00、xx10のデータが存在する。可変ID=xx00については、グループGr1がマスタ、グループGr3がスレーブ、可変ID=xx10については、グループGr1がマスタ、グループGr4がスレーブである。
その後、データベース装置7(#1、#2)のグループGr1が保持する末尾00の可変IDに関する情報の全てをデータベース装置7(#5、#6)のグループGr3にコピーし、データベース装置7(#1、#2)のグループGr1が保持する末尾10の可変IDに関する情報の全てをデータベース装置7(#7、#8)のグループGr4にコピーする(ステップS33)。
具体的には、端末情報管理サーバ5(#1)に可変ID=xxx0のコピー要求を指示すると、端末情報管理サーバ5(#1)は、データベース装置7(#1)に対し、全レコードを取得後、可変ID=xx00は、データベース装置7(#5)へコピー、可変ID=xx10は、データベース装置7(#7)へコピーする。可変ID=xx00のレコードは、グループGr1、グループGr3で、マスタスレーブ(M:グループGr1、S:グループGr3)、可変ID=xx10のレコードは、グループGr1、グループGr4で、マスタスレーブ(M:グループGr1、S:グループGr4)となる。
コピー完了後、端末情報管理サーバ5(#1),5(#2)のルール変更#2を1台ずつ順番に行う(ステップS34、S35)。末尾が00で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#5、#6)のグループGr3に対して操作を行ってから、データベース装置7(#1、#2)のグループGr1に対して操作を行うように変更する。末尾が10で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#7、#8)のグループGr4に対して操作を行ってから、データベース装置7(#1、#2)のグループGr1に対して操作を行うように変更する。
なお、途中で端末情報管理サーバ5(#1),5(#2)間で、操作開始するデータベース装置7のグループの順番が異なる状態が発生し、同一対象に対して複数の端末情報管理サーバ5(#1),5(#2)が異なる順番で操作を行う場合が発生するが、そのような競合が発覚した時点で、次のようなロールバックを行うルールとして設定をしておく。
ルール変更後の、データベース装置7(#5、#6)のグループGr3に対して操作を行ってから、データベース装置7(#1、#2)のグループGr1に対して操作を行う設定となっている端末情報管理サーバ5は、後者のデータベース装置7(#1、#2)への操作の時点で他の端末情報管理サーバ5による操作との競合が発覚した場合には、前者のデータベース装置7(#5、#6)のグループGr3に対する操作を取り消して、以前の状態に戻す。
また、ルール変更前の、データベース装置7(#1、#2)のグループGr1に対して操作を行ってから、データベース装置7(#5、#6)のグループGr3に対して操作を行う設定となっている端末情報管理サーバ5は、後者のデータベース装置7(#5、#6)への操作の時点で他の端末情報管理サーバ5による操作との競合が発覚した場合には、前者のデータベース装置7(#1、#2)のグループGr1に対する操作を取り消して、以前の状態に戻す。
ルール変更後の、データベース装置7(#7、#8)のグループGr4に対して操作を行ってから、データベース装置7(#1、#2)のグループGr1に対して操作を行う設定となっている端末情報管理サーバ5は、後者のデータベース装置7(#1、#2)への操作の時点で他の端末情報管理サーバ5による操作との競合が発覚した場合には、前者のデータベース装置7(#7、#8)のグループGr4に対する操作を取り消して、以前の状態に戻す。
また、ルール変更前の、データベース装置7(#1、#2)のグループGr1に対して操作を行ってから、データベース装置7(#7、#8)のグループGr4に対して操作を行う設定となっている端末情報管理サーバ5は、後者のデータベース装置7(#7、#8)への操作の時点で他の端末情報管理サーバ5による操作との競合が発覚した場合には、前者のデータベース装置7(#1、#2)のグループGr1に対する操作を取り消して、以前の状態に戻す。
全ての端末情報管理サーバ5(#1),5(#2)に順次、ルール変更を指示する結果、可変ID=xx00のレコードについて、グループGr1、グループGr3のマスタスレーブの関係が逆転し(M:グループGr3、S:グループGr1)、可変ID=xx10のレコードについて、グループGr1、グループGr4のマスタスレーブの関係が逆転する(M:グループGr4、S:グループGr1)。
全ての端末情報管理サーバ5(#1),5(#2)の水平分割ルールの変更が完了した時点で、さらに、端末情報管理サーバ5(#1),5(#2)のルール変更#3を1台ずつ順番に行う(ステップS36)。末尾が00で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#5、#6)のグループGr3に操作を行い、末尾が10で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#7、#8)のグループGr4に対して操作を行うように変更する。
以上の全ての端末情報管理サーバ5(#1),5(#2)への設定変更が完了した後、データベース装置7(#1、#2)と端末情報管理サーバ5(#1),5(#2)の間の接続を切断し、データベース装置7(#1、#2)の利用を停止する。
これらの手順により、サービスを継続したまま無中断でデータベース装置7の増設が可能となる。また、レプリケーションを行うグループの変更時の不完全な可変ID情報の変更、追加、削除の発生を防ぐことができる。なお、本手順の特徴は、データベース装置7間でマルチマスタ方式だけでなく、マスタスレーブ方式のレプリケーションでも実施が可能である点と、端末情報管理サーバ5に対する水平分割ルールの設定変更が3回という点、他の方法よりもデータベース装置7を一時的に2台多く必要とする点である。
また、グループGr1、Gr2、Gr3とも、それぞれレプリケーションされた2台のデータベース装置7、7から構成される場合について例示したが、グループGr1、Gr2、Gr3がそれぞれ1台のデータベース装置7から構成される場合や、それぞれレプリケーションされたN(Nは3以上の整数)台のデータベース装置7から構成される場合についても、本技術は適用可能である。
なお、上述した実施形態では、末尾が0と1の場合の範囲分割による水平分割を用いた場合の例で示したが、値の範囲が異なっていてもよく、水平分割方法が範囲分割、リスト分割、ハッシュ分割であっても実施が可能である。また、冗長化ありの例で示しているが、冗長化がない場合でも実施が可能である。
また、本実施形態によるデータベース装置の減設方法は1種類存在する。
(減設方法)
図23は、本実施形態によるデータベース装置の減設時の処理手順を示す概念図である。前提として、ここでは、2台のデータベース装置7(#1)、7(#2)と2台の端末情報管理サーバ5(#1)、5(#2)がある場合を例に説明する。データベース装置7(#1)は、末尾が0で終わる可変IDを管理している。データベース装置7(#2)は、末尾が1で終わる可変IDを管理している。また、2台の端末情報管理サーバ5(#1)、5(#2)は、全てのデータベース装置7(#1)、7(#2)にアクセスが可能で、可変IDの値の範囲(末尾が0か1か)による水平分割ルールに基づいて、アクセスするデータベース装置7を選択する。
また、減設は、データベース装置7(#2)を減設して、末尾が0で終わる可変IDと末尾が1で終わる可変IDとの管理を、最終的にデータベース装置7(#1)のみで管理できるよう集約することを目的とする。そのため、データベース装置7(#1)のみ、それぞれの可変IDを管理するよう端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更をサービス無中断で行う。
また、本例は、データベース装置7(#1、#2)の収容レコード数が、限界性能の10%程度と少なくなった場合に1つのデータベース装置7(#1)に統合するケースである。更新要求を停止することが可能であるRSDB等も同様である。また、図では、理解を優先させるため最少構成で手順を記載しているが、データベース装置7の最少構成は2台であり、それ以下への縮退は、再度のデータベース装置7の分割が不可能となるため不可とする。
減設手順においては、まず、末尾が1で終わる可変IDの生成を禁止する(ステップS40)。これ以降に可変IDを生成する必要が出てしまった場合で、かつ末尾が1の可変IDを生成してしまった場合には、何らかの方法で末尾が0の可変IDを再生成する。例えば、乱数の末尾が0になるまで乱数の再生成を行い続け、その結果を可変IDとして用いるなどの処理を行う。
加えて、可変IDを削除する必要が出た場合には、端末情報管理サーバ5(#1)、5(#2)にて削除対象の可変IDのリストを作成し、一時的にリストに削除対象の可変IDを記録し、データベース装置7の可変IDの削除を保留する。これにより、データベース装置7(#2)への可変IDの生成、変更、削除は行われず、参照のみ行われる状態となる。
その後、データベース装置2が保持する末尾1の可変IDに関する情報の全てをデータベース装置7(#1)にコピーする(ステップS41)。
コピー完了後、端末情報管理サーバ5(#1)、5(#2)のルール変更を1台ずつ順番に行う(ステップS42)。水平分割ルールを変更する前には、末尾が1で終わる可変IDに関する操作(参照、変更、追加、削除)は、データベース装置7(#2)に対して行うルールであるが、これを末尾が1で終わる可変IDに関する操作(参照、変更、追加、削除)を行う場合には、データベース装置7(#1)に操作を行うように変更する。
全ての端末情報管理サーバ5(#1)、5(#2)の水平分割ルールの変更が完了した時点で、末尾が1の可変ID生成の禁止、及び削除の保留を解除する(ステップS43)。加えて、端末情報管理サーバ5(#1)、5(#2)が保留していた削除予定の可変IDの削除を新ルールに基づいてデータベース装置7(#1)に反映させる。
そして、全ての端末情報管理サーバ5(#1)、5(#2)への設定変更が完了した後、データベース装置7(#2)と端末情報管理サーバ5(#1)、5(#2)の間の接続を切断し、データベース装置7(#2)の利用を停止する(ステップS44)。
これらの手順により、サービスを継続したまま無中断でデータベース装置7の減設が可能となる。また、特定の値の範囲の可変IDを管理するデータベース装置7の変更時の不完全な可変ID情報の変更、追加、削除の発生を防ぐことができる。なお、本手順の特徴は、冗長化がない場合だけでなく、データベース装置7間でマルチマスタ方式や、マスタスレーブ方式のレプリケーションを行った冗長化のある場合でも実施が可能である点と、端末情報管理サーバ5に対する水平分割ルールの設定変更が1回という点、特定の可変IDの追加禁止と削除保留が必要となる点である。
なお、上述した実施形態では、末尾が0と1の場合の範囲分割による水平分割を用いた場合の例で示したが、値の範囲が異なっていてもよく、水平分割方法が範囲分割、リスト分割、ハッシュ分割であっても実施が可能である。また、冗長化なしの例で示しているが、冗長化があった場合でも実施が可能である。
上述した実施形態によれば、膨大な数の可変IDを管理する分散型データベースに対し、管理する可変IDが増えた場合には、無中断でデータベース装置7を増設することが可能となり、管理する可変IDが減った場合には、無中断でデータベース装置7を減設することが可能となる。データベース装置7が冗長化されている場合には、マスタスレーブ方式や、マルチマスタ方式により冗長化されている場合でも、無中断でデータベース装置7を増減設することが可能となる。なお、データベースの分散化方式は、水平分散を想定しているが、範囲分割、リスト分割、ハッシュ分割であっても実施が可能である。
また、上述した実施形態によれば、無中断でデータベース装置7を増減設できるため、可変IDの生成、重複チェック、可変IDの検索処理を中断することなく、通信サービスを継続することが可能となる。
また、上述した実施形態によれば、可変IDの生成、重複チェックを中断せずにデータベース装置7を増減設できるため、データベース装置7を増減設中でも、端末・ユーザ・物品に対して新たな可変IDを割り当てることができ、端末・ユーザ・物品の匿名性を維持することができる。したがって、トラッキング(追跡)が行われてプライバシが低下する危険性を低くすることができ、高いセキュリティを維持することが可能となる。
また、上述した実施形態によれば、データベース装置7を増減設中でも、可変IDの検索処理を継続できるため、可変IDを用いたソフトウェア処理(例えば、可変IDを元に、当該可変IDに対応する実際の端末・ユーザ・物品の固定IDや、関連情報を取得して行う通信処理や、データ操作処理など)を継続的に実行することができる。したがって、当該可変IDを用いた認証や、データの送受信などの通信処理を中断することなく、データベース装置7の増減設中が可能となる。
(第1増設方法の効果)
上述した本実施形態による第1増設方法によれば、冗長化なし、またはマルチマスタ方式の冗長化ありのデータベース装置7を採用した分散データベースに対して、無中断でデータベース装置7を増設できる。また、端末情報管理サーバ5に対する水平分割ルールの設定変更回数を1回という最小回数に抑えることが可能となる。また、増設時に複数のデータベース装置7に重複した可変IDが保持されることになるが、不要になった重複分の可変IDを、すぐに消すのではなく、サービスを継続しながら徐々に時間をかけて消去することができ、負荷の時間的分散化が可能となる。
(第2増設方法の効果)
上述した本実施形態による第2増設方法によれば、冗長化なし、またはマスタスレーブ方式の冗長化ありのデータベース装置7を採用した分散データベースに対して無中断でデータベース装置7を増設できる。また、端末情報管理サーバ5に対する水平分割ルールの設定変更が2回という少ない回数で可能である。また、増設時に複数のデータベース装置7に重複した可変IDが保持されることになるが、不要になった重複分の可変IDはすぐに消すのではなく、サービスを継続しながら徐々に時間をかけて消去することができ、負荷の時間的分散化が可能となる。
(第3増設方法の効果)
上述した本実施形態による第3増設方法によれば、冗長化なし、またはマルチマスタ方式か、マスタスレーブ方式の冗長化ありのデータベース装置7を採用した分散データベースに対して無中断でデータベース装置7を増設できる。また、増設時に複数のデータベース装置7に重複した可変IDが保持されることになるが、不要になった重複分の可変IDは、すぐに消すのではなく、サービスを継続しながら徐々に時間をかけて消去することができ、負荷の時間的分散化が可能となる。また、水平分割ルールの変更回数は、多くなるものの、特定の可変IDの生成の禁止、及び削除の保留などの操作を行わず、水平分割ルールの変更のみの単純な手順の繰り返しで実施することができる。
(第4増設方法の効果)
上述した本実施形態による第4増設方法によれば、冗長化なし、またはマスタスレーブ方式の冗長化ありのデータベース装置7を採用した分散データベースに対して無中断でデータベース装置7を増設できる。また、増設時にいままで仕様していた該当箇所のデータベースを完全に新設のサーバで置き換えるため、古い水平分散ルールに基づいて保持された情報を再整理する必要がなくなり、処理負荷を低減することが可能となる。また、水平分割ルールの変更回数は、多くなるものの、特定の可変IDの生成の禁止、及び削除の保留などの操作を行わず、水平分割ルールの変更のみの単純な手順の繰り返しで実施することができる。
(減設方法の効果)
上述した本実施形態による減設方法によれば、冗長化なし、またはマスタスレーブ方式の冗長化ありのデータベース装置7を採用した分散データベースに対して無中断でデータベース装置7を減設できる。また、端末情報管理サーバ5に対する水平分割ルールの設定変更回数を1回という最小回数に抑えることが可能となる。
また、上述した無線端末1、無線基地局3、無線基地局管理サーバ4、端末情報管理サーバ6、管理データでーベース6などにおける機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
1 無線端末
2 インターネット端末
3 無線基地局
4 無線基地局管理サーバ
5 端末情報管理サーバ
6 管理データベース
7 データベース装置
10 インターネット

Claims (8)

  1. 値が変化する可変IDの入力に対し、該可変IDと識別対象が同一であり、かつ、値が変化しない固定IDを用いるデータベースシステムにおけるデータベース増設方法であって、
    該データベースシステムは、
    データベース装置と端末情報管理サーバとを有し、
    前記データベース装置は、
    各識別対象について、可変IDと固定IDとを対応付けて記憶し、可変IDから固定IDを検索できる対応表を、水平分割により複数のデータベース装置に格納した分散型データベースであり、
    前記端末情報管理サーバは、
    所望の可変IDに関する参照、変更、追加、あるいは削除のいずれかの操作を行う際、前記複数のデータベース装置の対応表のうち、いずれを操作するべきかを示す水平分割ルールを備え、
    前記データベースシステムにN台のデータベース装置が増設される際に、
    前記N台のデータベース装置X(i=1〜N)に格納された特徴yを有する可変ID、及び特徴zを有する可変IDが登録された対応表の情報に基づいて、前記特徴yを有する可変IDが登録され、前記特徴zを有する可変IDが登録されない対応表を格納するN台のデータベース装置Y(j=1〜N)と、前記特徴zを有する可変IDが登録され、前記特徴yを有する可変IDが登録されない対応表を格納するN台のデータベース装置Z(k=1〜N)とを生成する第1のステップと、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、該特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2のステップと
    を含むことを特徴とするデータベース増設方法。
  2. 前記第1のステップは、
    前記N台のデータベース装置Xi1(i1=1〜N)にN台のデータベース装置Xi2(i2=N+1〜2N)を増設し、合わせて2N台のデータベース装置Xi3(i3=1〜2N)間でレプリケーションを行う第1−1−1のサブステップと、
    前記2N台のデータベース装置Xi3のうち、N台をデータベース装置Y、残りN台をデータベース装置Zとして、しかる後に前記データベース装置YとZ(jとkは、1〜Nの任意の整数)の間にレプリケーション設定がない状態とし、Nが2以上の場合にN台のデータベース装置Y間でのレプリケーション設定とN台のデータベース装置Z間でのレプリケーション設定とを行う第1−1−2のサブステップと、
    前記N台のデータベース装置Yの前記対応表から特徴zを有する可変IDの登録の削除を行い、前記N台のデータベース装置Zの前記対応表から特徴yを有する可変IDの登録の削除を行う第1−1−3のサブステップと
    から構成され、
    前記特徴yを有する可変ID、及び前記特徴zを有する可変IDについては生成を禁止し、可変IDの生成においては前記特徴y以外で、かつ前記特徴z以外の特徴を有する可変IDを生成するか、もしくは予め生成して払い出す第3のステップを更に含み、
    前記第1−1−1のサブステップが終了後に、前記第2のステップを実行し、
    前記第2のステップが終了後に、前記第1−1−2のサブステップを実行し、
    前記第1−1−2のサブステップが終了後に、前記第1−1−3のサブステップを実行し、
    前記第1−1−2のサブステップの動作中に、前記第3のステップを実行する、
    ことを特徴とする請求項1に記載のデータベース増設方法。
  3. Nは2であり、
    前記第1のステップは、
    前記データベース装置Yと前記データベース装置Zとを増設し、前記データベース装置Xと前記データベース装置Yでレプリケーションを行い、前記データベース装置Xと前記データベース装置Zとでレプリケーションを行う第1−2−1のサブステップと、
    前記データベース装置Xと前記データベース装置Yとの前記対応表から特徴zを有する可変IDの登録を削除することで、前記データベース装置Xの機能を前記データベース装置Yの機能に変更し、前記データベース装置Xと前記データベース装置Zとの前記対応表から特徴yを有する可変IDの登録を削除することで、前記データベース装置Xの機能を前記データベース装置Zの機能に変更する第1−2−2のサブステップと
    から構成され、
    前記第2のステップは、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置X、あるいは前記データベース装置Xが有する前記対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置X、あるいは前記データベース装置Xが有する前記対応表に対して行うように、前記水平分割ルールを変更する第2−2−1のサブステップと、
    該特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、該特徴zを有する可変IDに関する操作を、該データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを再変更する第2−2−2のサブステップと
    から構成され、
    前記特徴yを有する可変ID、及び前記特徴zを有する可変IDについては生成を禁止し、可変IDの生成においては前記特徴y以外で、かつ前記特徴z以外の特徴を有する可変IDを生成するか、もしくは予め生成して払い出す第3のステップを更に含み、
    前記第2−2−1のサブステップが終了後に、前記第1−2−1のサブステップを実行し、
    前記第1−2−1のサブステップが終了後に、前記第2−2−2のサブステップを実行し、
    前記第2−2−2のサブステップが終了後に、前記第1−2−2のサブステップを実行し、
    前記第2のステップの動作中に、前記第3のステップを実行する、
    ことを特徴とする請求項1に記載のデータベース増設方法。
  4. 前記第1のステップは、
    前記データベース装置Yを増設し、Nが2以上の場合に前記データベース装置Y間でレプリケーション設定を行う第1−3−1のサブステップと、
    前記データベース装置Xが有する前記対応表のうち、特徴yを有する可変IDに関する情報を、前記データベース装置Yの全てにコピーする第1−3−2のサブステップと、
    前記データベース装置Xを前記データベース装置Zとして、前記データベース装置Zが有する前記対応表から特徴yを有する可変IDの登録を削除する第1−3−3のサブステップと
    から構成され、
    前記第2のステップは、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表、及び前記データベース装置Yのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−3−1のサブステップと、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表、及び前記データベース装置Xのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−3−2のサブステップと、
    該特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、該特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを再変更する第2−3−3のサブステップと
    から構成され、
    前記第1−3−1のサブステップが終了後に、前記第2−3−1のサブステップを実行し、
    前記第2−3−1のサブステップが終了後に、前記第1−3−2のサブステップを実行し、
    前記第1−3−2のサブステップが終了後に、前記第2−3−2のサブステップを実行し、
    前記第2−3−2のサブステップが終了後に、前記第2−3−3のサブステップを実行し、
    前記第2−3−3のサブステップが終了後に、前記第1−3−3のサブステップを実行する、
    ことを特徴とする請求項1に記載のデータベース増設方法。
  5. 前記第1のステップは、
    前記データベース装置Y、ならびに、前記データベース装置Zを増設し、Nが2以上の場合に前記データベース装置Y間でレプリケーション設定を行う第1−4−1のサブステップと、
    前記データベース装置Xが有する前記対応表のうち、前記特徴yを有する可変IDに関する情報を前記データベース装置Yの全てにコピーし、前記データベース装置Xが有する前記対応表のうち、前記特徴zを有する可変IDに関する情報を前記データベース装置Zの全てにコピーする第1−4−2のサブステップと
    から構成され、
    前記第2のステップは、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表、及び前記データベース装置Yのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表、及び前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−4−1のサブステップと、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表、及び前記データベース装置Xのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表、及び前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2−4−2のサブステップと、
    前記特徴yを有する可変IDに関する操作を、前記データベース装置Yのいずれかが有する対応表に対して行い、前記特徴zを有する可変IDに関する操作を、前記データベース装置Zのいずれかが有する対応表に対して行うように、前記水平分割ルールを再変更する第2−4−3のサブステップと
    から構成され、
    前記第1−4−1のサブステップが終了後に、前記第2−4−1のサブステップを実行し、
    前記第2−4−1のサブステップが終了後に、前記第1−4−2のサブステップを実行し、
    前記第1−4−2のサブステップが終了後に、前記第2−4−2のサブステップを実行し、
    前記第2−4−2のサブステップが終了後に、前記第2−4−3のサブステップを実行する、
    ことを特徴とする請求項1に記載のデータベース増設方法。
  6. 前記特徴yを有する可変ID、及び前記特徴zを有する可変IDについては削除を保留し、削除予定の可変IDとして記憶する第4のステップと、
    前記記憶していた削除予定の可変IDを、前記N台のデータベース装置Y、または、前記N台のデータベース装置Zが格納する対応表の登録から削除する第5のステップと
    を更に含み、
    前記第2のステップの動作中に、前記第4のステップを実行し、
    前記第2のステップの終了後に、前記第5のステップを実行する、
    ことを特徴とする請求項1から5のいずれかに記載のデータベース増設方法。
  7. 値が変化する可変IDの入力に対し、該可変IDと識別対象が同一であり、かつ、値が変化しない固定IDを用いるデータベースシステムにおけるデータベース減設方法であって、
    前記データベースシステムは、
    データベース装置と端末情報管理サーバとを有し、
    前記データベース装置は、
    各識別対象について、可変IDと固定IDとを対応付けて記憶し、可変IDから固定IDを検索できる対応表を、水平分割により複数のデータベース装置に格納した分散型データベースであり、
    前記端末情報管理サーバは、
    所望の可変IDに関する参照、変更、追加、あるいは削除のいずれかの操作を行う際、前記複数のデータベース装置の対応表のうち、いずれを操作するべきかを示す水平分割ルールを備え、
    前記データベースシステムからN台のデータベース装置が減設される際に、
    前記N台のデータベース装置X(i=1〜N)に格納された特徴xを有する可変ID、及び前記N台のデータベース装置Y(j=1〜N)に格納された特徴yを有する可変IDが登録された対応表に基づいて、前記特徴xを有する可変IDと前記特徴yを有する可変IDとが登録された対応表を格納する前記N台のデータベース装置Xを生成する第1のステップと、
    前記特徴xを有する可変IDに関する操作、ならびに前記特徴yを有する可変IDに関する操作を、前記データベース装置Xのいずれかが有する対応表に対して行うように、前記水平分割ルールを変更する第2のステップと、
    前記特徴yを有する可変IDについては生成を禁止し、可変IDの生成においては前記特徴y以外の特徴を有する可変IDを生成する第3のステップと
    を有し、
    前記第1のステップが終了後に、前記第2のステップを実行し、
    前記第1のステップ開始前から前記第2のステップ終了後において、前記第3のステップを実行する、
    ことを特徴とするデータベース減設方法。
  8. 前記特徴yを有する可変IDについては削除を保留し、削除予定の可変IDとして記憶する第4のステップと、
    前記記憶していた削除予定の可変IDを、N台のデータベース装置Xが格納する対応表の登録から削除する第5のステップと
    を更に含み、
    前記第2のステップが動作中に、前記第4のステップを実行し、
    前記第2のステップが動作後に、前記第5のステップを実行する、
    ことを特徴とする請求項7に記載のデータベース減設方法。
JP2011102383A 2011-04-28 2011-04-28 データベース増設方法、及びデータベース減設方法 Withdrawn JP2012234354A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011102383A JP2012234354A (ja) 2011-04-28 2011-04-28 データベース増設方法、及びデータベース減設方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011102383A JP2012234354A (ja) 2011-04-28 2011-04-28 データベース増設方法、及びデータベース減設方法

Publications (1)

Publication Number Publication Date
JP2012234354A true JP2012234354A (ja) 2012-11-29

Family

ID=47434621

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011102383A Withdrawn JP2012234354A (ja) 2011-04-28 2011-04-28 データベース増設方法、及びデータベース減設方法

Country Status (1)

Country Link
JP (1) JP2012234354A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103020268A (zh) * 2012-12-26 2013-04-03 大唐软件技术股份有限公司 关系型数据库序列号应用方法和系统
JP2014157442A (ja) * 2013-02-15 2014-08-28 Nippon Telegr & Teleph Corp <Ntt> データベース装置
JP2015041207A (ja) * 2013-08-21 2015-03-02 日本電信電話株式会社 データベース装置
JP2018142333A (ja) * 2016-05-11 2018-09-13 オラクル・インターナショナル・コーポレイション マルチテナントアイデンティティおよびデータセキュリティ管理クラウドサービス

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103020268A (zh) * 2012-12-26 2013-04-03 大唐软件技术股份有限公司 关系型数据库序列号应用方法和系统
JP2014157442A (ja) * 2013-02-15 2014-08-28 Nippon Telegr & Teleph Corp <Ntt> データベース装置
JP2015041207A (ja) * 2013-08-21 2015-03-02 日本電信電話株式会社 データベース装置
JP2018142333A (ja) * 2016-05-11 2018-09-13 オラクル・インターナショナル・コーポレイション マルチテナントアイデンティティおよびデータセキュリティ管理クラウドサービス

Similar Documents

Publication Publication Date Title
US10209893B2 (en) Massively scalable object storage for storing object replicas
US9898521B2 (en) Massively scalable object storage system
US10104175B2 (en) Massively scalable object storage system
US8510267B2 (en) Synchronization of structured information repositories
US20130332418A1 (en) Method of managing data in asymmetric cluster file system
US10452304B2 (en) Efficient repository migration and storage
JP2012234354A (ja) データベース増設方法、及びデータベース減設方法
JP2011522337A (ja) サーバクラスタに配信されるコンピュータシステムのソフトウェアモジュールの同期化方法、同期化システムおよびデータストレージへの適用
KR101748913B1 (ko) 분산 저장 환경에서 게이트웨이를 선택하기 위한 클러스터 관리 방법 및 데이터 저장 시스템
JP5890452B2 (ja) クラスタシステムのサーバ装置およびそのプログラム
JP2015011642A (ja) サーバ/クライアントシステム
JP2015064804A (ja) 無効リンクの発生を抑止するデータ管理システムおよび記憶装置
JP2015162053A (ja) クラスタシステムのサーバ装置およびプログラム

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20130606

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130726

A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20140701