(57)【要約】【課題】クライアントがデータを格納している記憶装置を意識することなくデータにアクセスすることを可能にする。【解決手段】分散データベースシステムは、複数台の記憶装置１０と、選択装置２０とを備える。記憶装置１０は、電気通信回線３０を通して通信する機能を有し、格納するデータの種別ごとにグループを形成している。選択装置２０は、電気通信回線３０を通して通知される識別情報で特定される所要のデータにアクセスする。識別情報は、グループを識別する第１の識別情報と、グループの中でデータの格納場所を識別する第２の識別情報とを含む。選択装置２０は、第１の識別情報を用いて所要のデータが格納されたグループにアクセスする第１の抽出部２１と、第１の抽出部２１がアクセスしたグループにおいて第２の識別情報を用いて所要のデータにアクセスする第２の抽出部２２とを備える。【選択図】図１
2015049542.tif 000002
【特許請求の範囲】
【請求項１】
電気通信回線を通して通信する機能を有し、格納するデータの種別ごとにグループを形成している複数台の記憶装置と、
前記電気通信回線を通して通知される識別情報で特定される所要のデータにアクセスする選択装置とを備え、
前記識別情報は、
前記グループを識別する第１の識別情報と、
前記グループの中で前記データを識別する第２の識別情報とを含み、
前記選択装置は、
前記第１の識別情報を用いて前記所要のデータが格納された前記グループにアクセスする第１の抽出部と、
前記第１の抽出部がアクセスした前記グループにおいて前記第２の識別情報を用いて前記所要のデータにアクセスする第２の抽出部とを備える
ことを特徴とする分散データベースシステム。
【請求項２】
前記選択装置は、前記電気通信回線を通して前記記憶装置と通信するサーバである
請求項１記載の分散データベースシステム。
【請求項３】
請求項２記載の分散データベースシステムに用いられる前記サーバである
ことを特徴とする選択装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の記憶装置を備える分散データベースシステム、およびそれに用いる選択装置に関する。
【背景技術】
【０００２】
近年、電気通信回線を通して通信する複数台の記憶装置を、データベース管理システムで統合することにより、利用者からはあたかも１台の記憶装置を用いたデータベースであるかのように扱うことができる分散データベースの技術が採用されている。
【０００３】
特許文献１に記載された技術は、複数のサーバ内の複数のリソースで管理されているデータを要求されたとき、データアクセス処理により、要求データを、サーバ、リソース、アイテムの順に分類した管理テーブルを作成している。さらに、データアクセス処理は、管理テーブルに基づいてデータを収集し、データを要求順に並べることにより、クライアントが要求するデータを一括して表示等ができるようにしている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−５７０７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載された技術は、クライアントがデータの配置等を意識することなくデータを一括して取得できるようにするという課題を解決している。すなわち、複数のサーバに分散して管理されているデータを収集する処理と、データを順に並べる処理とを、データアクセス処理が行っている。
【０００６】
しかしながら、この構成においてクライアントは、要求するデータをデータアクセス処理に指示するために、データを管理しているサーバを指定しなければならず、どのデータがどのサーバに存在しているかがわからなければ、データにアクセスできないという問題がある。
【０００７】
本発明は、データを格納している記憶装置をクライアントが意識することなくデータにアクセスすることを可能にした分散データベースシステムを提供することを目的とし、さらに分散データベースシステムに用いる選択装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る分散データベースシステムは、電気通信回線を通して通信する機能を有し、格納するデータの種別ごとにグループを形成している複数台の記憶装置と、前記電気通信回線を通して通知される識別情報で特定される所要のデータにアクセスする選択装置とを備え、前記識別情報は、前記グループを識別する第１の識別情報と、前記グループの中で前記データの格納場所を識別する第２の識別情報とを含み、前記選択装置は、前記第１の識別情報を用いて前記所要のデータが格納された前記グループにアクセスする第１の抽出部と、前記第１の抽出部がアクセスした前記グループにおいて前記第２の識別情報を用いて前記所要のデータにアクセスする第２の抽出部とを備えることを特徴とする。
【０００９】
この分散データベースシステムにおいて、前記選択装置は、前記電気通信回線を通して前記記憶装置と通信するサーバであることが好ましい。
【００１０】
本発明に係る選択装置は、上述した分散データベースシステムに用いられる前記サーバであることを特徴とする。
【発明の効果】
【００１１】
本発明の構成によれば、複数台の記憶装置が格納するデータの種別ごとにグループを形成し、グループを識別する第１の識別情報を用いて、データが格納されている記憶装置を絞り込んでいる。さらに、グループの中でデータの格納場所を識別する第２の識別情報を用いて、グループにおいて所要のデータにアクセスしている。したがって、クライアントは、データを格納している記憶装置を意識することなくデータにアクセスすることが可能になる。
【図面の簡単な説明】
【００１２】
【図１】実施形態を示すブロック図である。
【図２】同上の一使用例を示す概略構成図である。
【図３】同上の他の使用例を示す概略構成図である。
【図４】同上における記憶装置の構成例を示す概略図である。
【発明を実施するための形態】
【００１３】
以下に説明する分散データベースシステム（以下、「分散データベース」と略称する）は、図１に示すように、複数台の記憶装置１０と、選択装置２０とを備える。記憶装置１０は、電気通信回線３０を通して通信する機能を有し、格納するデータの種別ごとにグループＧ１，Ｇ２を形成している。選択装置２０は、電気通信回線３０を通して通知される識別情報で特定される所要のデータにアクセスする。識別情報は、グループを識別する第１の識別情報と、グループＧ１，Ｇ２の中でデータの格納場所を識別する第２の識別情報とを含む。選択装置２０は、第１の識別情報を用いて所要のデータが格納されたグループＧ１，Ｇ２にアクセスする第１の抽出部２１と、第１の抽出部２１がアクセスしたグループＧ１，Ｇ２において第２の識別情報を用いて所要のデータにアクセスする第２の抽出部２２とを備える。
【００１４】
記憶装置１０を実現する構成は、データを格納できれば、ハードディスク装置のような専用のストレージ、データベース管理システムが扱うストレージ、データテーブルなどどのような構成でもよい。ただし、記憶装置１０は電気通信回線３０を通して通信可能でなければならない。したがって、記憶装置１０は、コンピュータシステムからなるサーバとして実現される。
【００１５】
記憶装置１０が形成するグループＧ１，Ｇ２には、グループＧ１，Ｇ２ごとにデータベースサーバ４１（すなわち、データベース管理システムを搭載したサーバ）が設けられる。データベースサーバ４１は、グループＧ１，Ｇ２内に複数台設けられていてもよい。選択装置２０は、アプリケーションプログラムインターフェイス（Application Program InterfaceまたはApplication Programming Interface：ＡＰＩ）を設けた専用のサーバにより実現される。すなわち、選択装置２０は、電気通信回線３０を通して記憶装置１０と通信するサーバであることが望ましい。電気通信回線２０がインターネットである場合、選択装置２０は、ウェブサーバにより構成される。なお、図示例において、選択装置２０は１台のみ記載しているが、必要に応じて選択装置２０を複数台設けてもよいのはもちろんのことである。また、ＡＰＩはデータベースサーバ４１に設けられていてもよい。この場合、選択装置２０はデータベースサーバ４１に設けられることになる。あるいはまた、いずれかの記憶装置１０にＡＰＩを設け、選択装置２０として用いることも可能である。
【００１６】
図示例において、選択装置２０は、サーバ４２を通してクライアントである端末装置４３および管理対象である設備４４と、電気通信回線３０を通して通信する。また、選択装置２０は、電気通信回線３０を通してデータベースサーバ４１と通信する。サーバ４２は、電気通信回線３０を通して設備４４の監視あるいは設備４４の制御を行うために設けられ、サーバ４２が設備４４から取得したデータは選択装置２０を通して記憶装置１０に格納される。また、端末装置４３が記憶装置１０に格納されたデータを要求すると、サーバ４２が選択装置２０を通して所要のデータを記憶装置１０から読み出す。すなわち、選択装置２０は、サーバ４２からの要求に応じて記憶装置１０のデータにアクセスする機能を有する。ここでは、データへのアクセスは、記憶装置１０に格納されたデータを取り出すことと、記憶装置１０の所要の場所にデータを格納することとの両方を意味する。
【００１７】
図１では、サーバ４２が接続されている電気通信回線３０と、選択装置２０が接続されている電気通信回線３０とは、データの内容が異なるから分けて記載しているが、２つの電気通信回線３０は物理的には同じであってもよい。また、サーバ４２が主としてデータの収集を行う場合、サーバ４２と設備４４とはＭ２Ｍ（Machine-to-Machine）技術を用いることが望ましい。
【００１８】
図１に示す構成例では、サーバ４２と選択装置２０とを分離することによって、様々なサービスを提供するサーバ４２に対して分散データベースを共用可能にしているが、選択装置２０をサーバ４２が兼用する構成を採用することも可能である。サーバ４２の機能については後述する。電気通信回線３０は、インターネットを用いたＶＰＮ（Virtual Private Network）を想定しているが、専用の通信経路を用いる電気通信回線３０であってもよい。
【００１９】
いま、１５万施設の電気、ガス、水道などに関するデータを４００万件以上扱うために分散データベースを用いる場合を想定する。この規模のデータを自動収集する場合、たとえば、３００万ポイント以上について、合計で２０テラバイト以上のデータ容量のデータを処理する性能を確保することが必要になる。施設の一例を挙げると、事業用の建物（オフィスビル、商業施設など）、住居用の建物（集合住宅など）、公園、運動施設などがある。データは、電気、ガス、水道などの使用量に関するデータ（以下、「エネルギーデータ」という）のほか、施設に設けられた設備の構成に関するデータ、設備の稼働状態に関するデータなどを含むことが望ましい。データを自動収集する周期は、より短くすることが要求されており、現状では１０分程度であるが、１分以下に短縮することも要求されてきている。
【００２０】
上述のように、エネルギーデータのほかに、設備の構成、設備の稼働状態などの種々のデータを統括して管理することができれば、これらのデータを様々に組み合わせ、またデータを加工することによって、様々なサービスを提供することが可能になる。たとえば、エネルギーデータを収集するサービス、エネルギーデータの推移を可視化するサービス、施設における電力、ガス、水道の総使用量を管理するサービス、施設に設けられた設備の稼働状態を監視するサービスなど種々のサービスが提供可能になる。
【００２１】
分散データベースを用いて提供されるサービスの種類は、サービスを受ける利用者との契約によって決まり、サーバ４２は、利用者との契約により決めたサービスを提供する。サービスは電気通信回線３０を通して提供されるから、サービスを提供可能な地域は広範囲であって、国内だけではなく海外であってもサービスの提供が可能になっている。そのため、分散データベースは、クラウドを構築していることが望ましい。
【００２２】
また、使用するデータの種類は、利用者に提供するサービスの種類により異なるから、データの種類に応じてデータを格納する記憶装置１０を分けていることが望ましい。つまり、データの種類によって情報量が異なるから、複数種類のデータが混在している場合にデータを一括して扱うと、一括されたデータに含まれているデータの種類に応じて情報量に大きなばらつきが生じる。そのため、複数種類のデータが混在した状態で、この種のデータを一括して１つの記憶装置１０に格納すると、記憶装置１０のアクセス時間に大きなばらつきが生じる。
【００２３】
本実施形態では、記憶装置１０は、格納するデータの種類ごとにグループＧ１，Ｇ２を形成している。上述のように、エネルギーデータ、設備の構成に関するデータ、設備の稼働状態に関するデータの３種類のデータが存在する場合、３グループの記憶装置１０が設けられ、各種類のデータが互いに異なるクループに格納される。このようなグループＧ１，Ｇ２を形成することによって、１つのグループＧ１，Ｇ２の中では、記憶装置１０のアクセス時間のばらつきが抑制される。
【００２４】
図２に示す構成例では、記憶装置１０は、マスタ管理データを格納するグループＧ１、エネルギーデータを格納するグループＧ２、設備稼働データを格納するグループＧ３の３グループを構成している。マスタ管理データは、設備の構成に関するデータであり、たとえば、利用者（事業者）−事業所−建物−フロア−設備などの設備の階層構造および設備の仕様などが格納されている。
【００２５】
図２に示す構成例では、種々のサーバ４２が上述した分散データベースシステム（クラウド）を共通のプラットフォームに用いることによって、種々のサービスを行う場合を例示している。上段のサーバ４２は、主として端末装置４３にデータ（情報）を提供するサービスを行い、下段のサーバ４２は、主として設備４４からデータを収集するサービスを行う。
【００２６】
図示例において、下段のサーバ４２は、それぞれエネルギー収集、ＢＥＭＳ（Building and Energy Management System）監視、冷設・空調、遠隔監視のサービスを行い、上段のサーバ４２は、それぞれ情報発信、総量管理、見える化、分析・診断のサービスを行う場合を示している。ＢＥＭＳ監視および遠隔監視は、設備４４から収集したデータを用いて設備４４の遠隔監視あるいは遠隔制御を行うサービスである。ＢＥＭＳ監視は、オフィスビルやテナントビルの照明器具、空調機器などの消費電力を抑制するための制御を支援するサービスであり、遠隔監視は、蓄電設備などの遠隔制御を行うサービスである。冷設・空調は、店舗において冷凍・冷蔵ショーケースや空調設備を対象とした遠隔監視などを行うサービスである。また、情報発信は、商品情報、省エネ事例などの情報を発信するサービスであり、総量管理は、エネルギー使用量をグラフなどで示すサービスである。見える化は、太陽光発電設備、蓄電設備などの運転状況をグラフなどで示すサービスである。分析・診断は、設備４４が無駄なく効率的に運転されるように分析や診断を行うサービスである。
【００２７】
ただし、図２に示す構成例は一例であり、サービスの種類や内容は適宜に選択される。また、図３に示すように、地理的に分散して配置されている複数台の記憶装置１０を備える構成において、地域ごとに１種類以上のグループの記憶装置１０を配置するようにしてもよい。図示例では、一点鎖線で囲んだ３地域Ｄ１，Ｄ２，Ｄ３が示され、２地域Ｄ１，Ｄ３ではグループＧ２とグループＧ３とが組み合わせて用いられ、残りの１地域Ｄ２ではグループＧ２のみが用いられている。図の左端の地域Ｄ１におけるグループＧ３の記憶装置１０は、たとえば、太陽光発電設備と蓄電設備との稼働状態に関する設備稼働データを格納する。また、図の右端の地域Ｄ３におけるグループＧ３の記憶装置１０は、たとえば、店舗用の冷凍庫および冷蔵庫の稼働状態に関する設備稼働データを格納する。
【００２８】
図３に示す例のように、同じグループＧ１，Ｇ２，Ｇ３の記憶装置１０は、異なる地域に分散して設けられていてもよい。たとえば、エネルギーデータを格納するグループＧ２に属する記憶装置１０が東京と大阪とにそれぞれ設けられてもよい。また、同じグループＧ１，Ｇ２，Ｇ３に属する複数台の記憶装置１０が同じ地域に配置されてもよい。
【００２９】
一方、サービスを提供するために必要なデータが複数台の記憶装置１０に分散して格納されている場合、サーバ４２は、複数台の記憶装置１０のデータにアクセスしなければならない。この場合でも、利用者は、データが格納されている記憶装置１０の構成および場所を意識せずに、端末装置４３あるいは設備４４から所要のデータにアクセスすることが可能である。つまり、複数台の記憶装置１０に格納されたデータにアクセスする場合であっても、端末装置４３あるいは設備４４から所要のデータへのアクセスは、あたかも１台のデータベースサーバにアクセスしているかのようにシームレスに行われる。
【００３０】
利用者がサービスを受けるのに必要なデータへのアクセスは、選択装置２０が代行して行う。すなわち、選択装置２０は、サーバ４２から要求を受けると、サービスの種類に応じて記憶装置１０にアクセスする。つまり、利用者はサーバ４２を通してサービスを受け、サーバ４２はクラウドとして構築されている分散データベースを用いることによって、サーバ４２が提供するサービスに応じたデータにアクセスする。選択装置２０にはサーバ４２からサービスの種類に応じた識別情報が通知されるから、選択装置２０は、上述のように、識別情報に含まれる第１の識別情報と第２の識別情報とを用いて所要のデータにアクセスする。
【００３１】
図２、図３において、選択装置２０は、複数のグループＧ１，Ｇ２，Ｇ３あるいは複数の地域Ｄ１，Ｄ２，Ｄ３に跨がって設けられているが、選択装置２０は、クラウドとしての分散データベースに含まれるから、適宜に分割されていてもよい。すなわち、上述したように、分散データベースにおいて、複数の選択装置２０が含まれていてもよい。
【００３２】
以下、識別情報を「グローバルＩＤ」と呼ぶ。グローバルＩＤは、さらに第１の識別情報である「発行元ＩＤ」と、第２の識別情報である「ローカルＩＤ」とを含む。発行元ＩＤは、分散データベースの範囲内でユニークになるように定められ、ローカルＩＤは、発行元ＩＤの範囲内においてユニークになるように定められる。
【００３３】
発行元ＩＤは、記憶装置１０のグループを識別する情報であって、本実施形態では、グループＧ１，Ｇ２，Ｇ３を識別する情報に、サービスを受ける利用者（通常は事業者を想定する）の所在地域を識別する情報と、利用者を識別する情報とが結合されている。所在地および利用者には、それぞれ識別する情報になるユニークな番号が付与される。同様に、グループを識別する情報もグループごとにユニークになる番号が付与される。また、所在地は、国、県（地方）、市町村などから選択される単位で設定される。したがって、発行元ＩＤは、たとえば、（国番号、利用者番号、グループ番号）の組で表される。なお、所在地、利用者、グループをそれぞれ識別する情報は、番号でなくてもよいのはもちろんのことである。
【００３４】
一方、ローカルＩＤは、発行元ＩＤの中でユニークになるように設定されていればよいから、通常は、ローカルＩＤの範囲内において順番を表す情報が付与される。つまり、ローカルＩＤは、記憶装置１０にデータを格納した順番を表す番号が用いられる。ローカルＩＤを用いると、グループの中でデータが格納される場所が特定されるから、当該場所にデータを格納し、また当該場所に格納されたデータにアクセスすることが可能になる。言い換えると、ローカルＩＤは、グループの中でデータを識別すると言える。ローカルＩＤに順番を表す番号を用いる理由は後述する。
【００３５】
選択装置２０は、グローバルＩＤを受け取ると、第１の抽出部２１が発行元ＩＤを用いて、記憶装置１０のグループを特定する。すなわち、データへのアクセスが選択装置２０に要求されると、第１の抽出部２１は、国番号と利用者番号とグループ番号とを用いて記憶装置１０のグループを識別し、該当するグループの記憶装置１０をターゲットとして絞り込む。その後、第２の抽出部２２がローカルＩＤを用いて、グループ内で所要のデータが格納されている場所を特定し、所要のデータにアクセスする。
【００３６】
以上のように、選択装置２０は、第１の抽出部２１と第２の抽出部２２とを用いた２段階の処理によって所要のデータが格納される場所を特定し、目的とするデータにアクセスすることになる。
【００３７】
ところで、上述のようなサービスを提供しようとすると、比較的短い時間間隔で大量のデータが発生するから、データの収集や提供のための入出力がボトルネックになる上に、排他制御が行われる頻度が高くなる。この種の問題に対処するために、分散データベースを用いることは有効である。分散データベースでは、複数の記憶装置１０にデータが分散して格納されるから、１つの記憶装置１０で構築されたデータベースにおけるボトルネックを回避することが可能になる。
【００３８】
しかしながら、分散データベースを構築している物理的実体としての記憶装置１０が複数存在している場合に、ハードウェア資源の異なる記憶装置１０が混在することがある。データベースでは、ハードウェア資源のうち、とくにＣＰＵ（Central Processing Unit）の性能と記憶容量との相違はスループットに大きく影響する。そのため、分散データベースを構成している記憶装置１０のハードウェア資源のばらつきに起因して、データを格納する際の書込時間やデータを提供する際の応答時間にばらつきが生じる。
【００３９】
また、分散データベースを構成している複数の記憶装置１０にデータを格納する際に、単一の記憶装置１０にアクセスが集中する場合があり、この場合には該当する記憶装置１０がボトルネックになる。すなわち、分散データベースの全体としてのスループットが低下する。
【００４０】
本実施形態は、分散データベースを構成している複数の記憶装置１０にハードウェア資源のばらつきがあってもボトルネックの発生が抑制されるように、以下の構成を採用している。すなわち、以下の構成を採用することによって、ハードウェア資源の劣る記憶装置１０が混在していてもスループットの低下が生じにくい分散データベースの提供が可能になる。
【００４１】
上述したように、分散データベースは複数台の記憶装置１０を備え、分散データベースと端末装置４３とがは電気通信回線３０を通して通信することにより、端末装置４３をクライアントとするクライアントサーバシステムを構築する。このクライアントサーバシステムは、プレゼンテーション層とアプリケーション層とデータ層とからなる３層アーキテクチャを有し、プレゼンテーション層は端末装置４３により実現されている。
【００４２】
記憶装置１０はデータ層に対応し、選択装置２０、データベースサーバ４１、サーバ４２はアプリケーション層に相当する。サーバ４２は、端末装置４３から要求された処理に対応した依頼をデータベースサーバ４１に対して行い、データベースサーバ４１の応答を端末装置４３に返す機能を備える。
【００４３】
ところで、記憶装置１０は、図４に示すように、複数台の仮想的なサーバとしてのプラットフォームモジュール（以下、「ＰＦモジュール」という）１１に分割されている。選択装置２０は、複数台の記憶装置１０を１つのデータベースとして扱う機能だけではなく、複数のＰＦモジュール１１を統合する機能を備える。この機能は、複数台の記憶装置１０を統合して１つのデータベースとして扱う機能と同様に、選択装置２０が備えるＡＰＩにより実現される。すなわち、選択装置２０のＡＰＩは、端末装置４３からの要求に対応するＰＦモジュール１１を選択する機能を実現するための関数ないし命令を備える。
【００４４】
選択装置２０がＰＦモジュール１１を管理することにより、ＰＦモジュール１１は、サーバ４２から見ると、個別のサーバと等価に機能する。すなわち、個々のＰＦモジュール１１は、見かけ上では、データを格納する機能と、データベース管理システムの機能とを備えていることになる。また、個々のＰＦモジュール１１は、記憶容量が等しくなるように構築されている。つまり、実体である記憶装置１０の記憶容量にかかわらず、ＰＦモジュール１１は互いに記憶容量が等しくなっている。言い換えると、分散データベースは、記憶容量が等しい複数個のＰＦモジュール１１を組み合わせて構成されていると言える。
【００４５】
いま、ボトルネックの発生を抑制するために、分散データベースに１００個のＰＦモジュール１１を用いて負荷を分散させる場合を想定する。分散データベースの導入時には、記憶容量が５０ギガバイトの記憶装置１０を１台だけ用いているとすれば、１００個のＰＦモジュール１１は１台の記憶装置１０に設けなければならないから、１個のＰＦモジュール１１の記憶容量は５００メガバイトになる。
【００４６】
ここで、格納すべきデータの量が増加するのに伴って、１５０ギガバイトの記憶装置１０を新たに導入したとする。２台の記憶装置１０の記憶容量を合計すると２００ギガバイトであって、記憶装置１０が１台の場合と同様に、１００個のＰＦモジュール１１を構成すると、１個のＰＦモジュール１１の記憶容量はは２ギガバイトになる。１台目の記憶装置１０の記憶容量は５０ギガバイトであるから、２５個のＰＦモジュール１１を構成でき、２台目の記憶装置１０の記憶容量は１５０ギガバイトであるから、７５個のＰＦモジュール１１を構成できる。
【００４７】
さらに、格納すべきデータ同様にして、格納すべきデータの量が増加するのに伴って、記憶装置１０の台数を増加させたとする。ここで、記憶容量が５０ギガバイトである記憶装置１０を１００台設ける場合を想定する。この場合、分散データベースの全体では５テラバイトになるから、ＰＦモジュール１１を１００個設けるのであれば、１個のＰＦモジュール１１は５０ギガバイトの記憶容量を持つことになる。また、ＰＦモジュール１１を１００個必要とするのであれば、１台の記憶装置１０が１個のＰＦモジュール１１に対応する。
【００４８】
なお、一般的な傾向として、記憶装置１０は、処理能力が高いほど記憶容量が大きくなる。ここでは、ＰＦモジュール１１の記憶容量を等しくしているから、記憶装置１０の処理能力にかかわらずＰＦモジュール１１のスループットはほぼ等しくなる。ＰＦモジュール１１の記憶領域はさらに分割されるが、要旨ではないのでここでは説明しない。
【００４９】
選択装置２０に設けられた第２の抽出部２２が抽出するローカルＩＤ（第２の識別情報）は、ＰＦモジュール１１を特定する識別情報であってもよい。この場合、所要のデータが格納されている場所を特定するには、ＰＦモジュール１１の中でデータが格納されている場所を示す識別情報が必要になる。
【００５０】
なお、データが複数のＰＦモジュール１１に分散して格納されるように負荷を分散させるには、たとえば、データに０を含む自然数によるデータＩＤを付与しておき、データＩＤをＰＦモジュール１１の個数で除したときの剰余をローカルＩＤに用いる。すなわち、データＩＤをＸとし、ＰＦモジュール１１の個数をＫとすると、ローカルＩＤは、ＸをＫで除した剰余になる（つまり、Ｘ  mod  Ｋ）。また、ローカルＩＤは、０から始まる数値とする。したがって、剰余が０になれば、ローカルＩＤが０であるＰＦモジュール１１が選択される。
【００５１】
この場合、同じグループの記憶装置１０に順に格納するデータのデータＩＤが１ずつ異なる場合、このようなデータは、異なるＰＦモジュール１１に順に格納される。したがって、あたかも複数台のハードディスクを用いてストライピングを行う場合のように、異なるＰＦモジュール１１にデータが振り分けて格納される。その結果、アクセスが単一のＰＦモジュール１１に集中しなくなり、データへのアクセスが平準化される。
【００５２】
以上説明したように、グローバルＩＤが、発行元ＩＤとローカルＩＤとにより構成されており、発行元ＩＤを用いてデータを格納する記憶装置１０のグループが求められ、次にローカルＩＤを用いてデータを格納するＰＦモジュール１１が求められる。したがって、所要のデータを抽出する際に、データの種類を指定することによって、記憶装置１０のグループが絞られ、グループ内でローカルＩＤを用いてＰＦモジュール１１を特定することができる。最終的には、１個のＰＦモジュール１１の範囲内でデータにアクセスすればよいから、データへのアクセスが容易である。
【００５３】
上述した構成例ではデータを格納するＰＦモジュール１１を決めるために、選択装置２０はデータＩＤの除算を行って剰余を求めているが、乱数などの他の関係を用いてデータを格納するＰＦモジュールを分散させてもよい。
【００５４】
上述した例からわかるように、実体としての記憶装置１０を用いて仮想的にＰＦモジュール１１を構成しているから、負荷が平準化されるだけではなく、記憶装置１０に格納するデータの量に応じて、記憶装置１０の台数を段階的に増加させることが可能である。すなわち、分散データベースのスループットと記憶容量とのスケーラビリティを確保することが可能になる。また、実施形態において説明した分散データベースは、構成する機材を専門業者に委託するか（ハウジング）、専門業者の機材を利用するか（ホスティング）によらず構築可能である。したがって、分散データベースは、サーバ４２が提供するサービスに適した環境で運用することができる。
【符号の説明】
【００５５】
１０  記憶装置
２０  選択装置
２１  第１の抽出部
２２  第２の抽出部
３０  電気通信回線
４１  データベースサーバ
４２  サーバ
４３  端末装置
４４  設備
Ｇ１，Ｇ２  グループ
【図１】
2015049542.tif 000003
【図２】
2015049542.tif 000004
【図３】
2015049542.tif 000005
【図４】
2015049542.tif 000006