JP6376947B2 - 仮想データベースシステム管理装置、管理方法及び管理プログラム - Google Patents
仮想データベースシステム管理装置、管理方法及び管理プログラム Download PDFInfo
- Publication number
- JP6376947B2 JP6376947B2 JP2014226050A JP2014226050A JP6376947B2 JP 6376947 B2 JP6376947 B2 JP 6376947B2 JP 2014226050 A JP2014226050 A JP 2014226050A JP 2014226050 A JP2014226050 A JP 2014226050A JP 6376947 B2 JP6376947 B2 JP 6376947B2
- Authority
- JP
- Japan
- Prior art keywords
- database
- subquery
- statement
- query
- execution result
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
しかしながら、問合せ文の残りの処理を実行するに際し、各データベースシステムにて実行する副問合せ文の結果によっては、仮想データベースシステムで処理すべきデータ量が膨大となり処理時間が長くなる、又は、リソース不足により処理を完了できずに異常終了することが起こり得るという問題があった。
前記データベースシステム単位に副問合せ文の生成及び副問合せ文によるデータ再配置に伴う前記問合せ文の変換を行う問合せ文生成部。
前記問合せ文生成部が生成した副問合せ文の実行結果サイズを推定する実行結果推定部。
前記問合せ文生成部が生成した副問合せ文及び変換した問合せ文に対して、前記実行結果推定部が推定した実行結果サイズに基づいて副問合せ文及び変換した問合せ文の実行順序並びに副問合せ文の実行結果のデータ配置を決定する問合せ入力解析部。
前記問合せ入力解析部が決定した実行順序に基づいて副問合せ文及び変換した問合せ文を実行する問合せ実行部。
更に、前記データベースシステムに関連付けたエントリ番号を管理する物理データベース管理情報と、前記ユーザシステムからの問合せ対象となる論理データベース情報を定義し、前記物理データベース管理情報に対して、対応する前記各エントリ番号を紐付けて管理する論理データベース管理情報とが記憶されたデータベース管理部とを備え、
前記問合せ入力解析部は、前記副問合せ文の実行順序及び実行結果のデータ配置を決定して前記論理データベース管理情報を更新するとともに、
前記問合せ入力解析部は、
前記ユーザシステムからの問合せ文に対して、前記各データベースシステムの各データベースで閉じられる複数の単独データベース副問合せ文を生成し、前記各単独データベース副問合せ文から推定される実行結果サイズについて、予め決められた基準により「十分大きい」及び「ほぼ等しい」で区別される順序で整列させる機能を備え、
前記実行結果サイズの整列結果に「十分大きい」が1つ以上存在する場合で前記問合せ文において前記各データベースシステムの複数のデータベースで閉じられる複数データベース副問合せ文を生成し、
前記単独データベース副問合せ文から推定される実行結果サイズが前記複数データベース副問合せ文から推定される実行結果サイズに対して「十分大きい」場合に、
実行結果サイズが十分大きい方でない単独データベース副問合せ文に対する単独データベース副問合せ文の実行結果にリンクするテーブルを、前記論理データベース管理情報の実行結果サイズが十分大きい方に対応するデータベースに追加する機能を備え、
前記問合せ実行部は、
前記問合せ入力解析部が決定した実行順序に基づいて前記単独データベース副問合せ文の実行結果となるテーブルを前記物理データベース管理情報に追加するデータ再配置を行う機能を備えたことを特徴としている。
前記「十分大きい」は、前記実行結果サイズの相違が二桁以上である場合であり、
前記「ほぼ等しい」は、前記実行結果サイズの相違が一桁以下である場合である
ことを特徴としている。
前記データベースシステムに関連付けたエントリ番号を管理する物理データベース管理情報と、前記ユーザシステムからの問合せ対象となる論理データベース情報を定義し、前記物理データベース管理情報に対して、対応する前記各エントリ番号を紐付けて管理する論理データベース管理情報とを記憶する手順と、
前記ユーザシステムからの問合せ文に対して、前記各データベースシステムの各データベースで閉じられる複数の単独データベース副問合せ文を生成し、前記各単独データベース副問合せ文から推定される実行結果サイズについて、予め決められた基準により「十分大きい」及び「ほぼ等しい」で区別される順序で整列させる機能を備えて、前記実行結果サイズの整列結果に「十分大きい」が1つ以上存在する場合で前記問合せ文において前記各データベースシステムの複数のデータベースで閉じられる複数データベース副問合せ文を生成し、前記単独データベース副問合せ文から推定される実行結果サイズが前記複数データベース副問合せ文から推定される実行結果サイズに対して「十分大きい」場合に、実行結果サイズが十分大きい方でない単独データベース副問合せ文に対する単独データベース副問合せ文の実行結果にリンクするテーブルを、前記論理データベース管理情報の実行結果サイズが十分大きい方に対応するデータベースに追加する一方、前記副問合せ文の実行順序及び実行結果のデータ配置を決定して前記論理データベース管理情報を更新する手順と、
前記問合せ入力解析部が決定した実行順序に基づいて前記単独データベース副問合せ文の実行結果となるテーブルを前記物理データベース管理情報に追加するデータ再配置を行う手順と、
を含むことを特徴としている。
仮想データベースシステムは、同一データを保有する複数のデータベースシステムが存在する環境において、ユーザの問合せ内容に応じてデータベースシステムを選択して問合せ内容を実行可能とするシステムであり、図1に示すように、ユーザが問合せ文の投稿を行うユーザシステム1と、仮想データシステム管理装置2と、仮想データシステム管理装置2が利用する1つ以上のデータベースシステム3から構成されている。ユーザシステム1、仮想データシステム管理装置2及びデータベースシステム3は、ネットワークを介して接続されている。仮想データシステム管理装置2は、仮想データベースシステム管理プログラムが格納された記録媒体やインターネットを介してソフトウエアのダウンロードによりインストールすることで、コンピュータ上に構築されている。
本実施形態の仮想データベースシステム管理装置2では、仮想データベースシステム管理プログラムがシリアル/パラレルI/Fから入力、またはメディアドライブ装置で読み取られてHDDに予め記憶される。仮想データベースシステム管理プログラムは記憶媒体に記憶され、メディアドライブ装置で読み取られてHDDにインストールされる。
仮想データベースシステム管理装置2に対して2つのデータベース31(Da及びDb)が接続され、データベースDaはテーブルlineitemを、データベースDbはテーブルcustomer及びordersを有している。
物理データベース管理テーブル221では、紐付けを行うためのエントリ番号(P1〜P3)、データベースの種別(Da又はDb)、データベースにおけるテーブルの種別(lineitem、customer、orders)がデータベース情報として管理されている。論理データベース管理テーブル222では、ユーザシステム1からアクセス対象となる論理データベース情報(データベース、テーブル)が管理され、物理データベース管理テーブル221のデータに対して、対応する各エントリ番号を紐付けて管理する情報としてリンク項目(P1〜P3)が設定されている。
実行結果推定部26は、問合せ入力解析部24から呼び出され、与えられた副問合せ文の実行結果サイズを推定する。
実行計画生成部27は、問合せ入力解析部24により決定された一連の問合せ文(副問合せ文と変換した問合せ文)の実行計画を生成する。
データベースシステムリスト{Di}の要素数iが1より大きいか否かを判断する(ステップ102)。
要素数iが1より大きい場合、データベースシステムリスト{Di}の各要素Diについて、問合せ文生成部25により問合せ文QにおいてDiに対応する単独データベース副問合せ文Qiを生成する(ステップ103)。「QにおいてDiに対応する」とは、問合せ文QにおいてDiに閉じた選択/射影/結合の演算を意味する。
実行結果サイズ{Si}の要素について、「≫(十分大きい)」、「≒(ほぼ等しい)」による順序を付けて整列する(ステップ105)。したがって、A≫Bは、「AはBより十分大きい」を意味し、A≒Bは、「AはBとほぼ等しい(A≫BでもB≫Aでもない)」を意味する。
なお、「≫(十分大きい)」及び「≒(ほぼ等しい)」は、予め決められた基準により分類される。例えば、「≫(十分大きい)」は、実行結果サイズがそれぞれ1MB以上で、2桁程度の違いを意味する。例えば、一方の実行結果サイズが1MBの時、他方の実行結果サイズが100MBである場合は、「十分大きい」と判断する。また、実行結果サイズがそれぞれ1MBより小さい、あるいは実行結果サイズの相違が1桁以下である場合は、「ほぼ等しい」に分類する。
また、実行結果サイズによっては、「≫(十分大きい)」が3桁程度の違いを意味し、「ほぼ等しい」が2桁以下の違いを意味する場合もある。
(1)問合せ文生成部25により、問合せ文QにおいてデータベースDa及びデータベースDbに対応(問合せ文QにおいてDa及びDbに閉じた選択/射影/結合の演算のみを対象とする)する複数データベース副問合せ文Qabを生成する。
(2)実行結果推定部26により、複数データベース副問合せ文Qabの実行結果サイズSabを推定する。
(3)Sa≫Sabであれば、「Qb→a」を問合せ文リスト{ }に追加する。「Qb→a」は、データベースDbにおける単独データベース副問合せ文Qbの実行結果をデータベースDaに追加することを意味し、データベース管理部22の論理データベース管理テーブル222に項目を追加する。
図3に、仮想データベースシステム管理装置2におけるデータベース管理部22の物理データベース管理テーブル221及び論理データベース管理テーブル222の構成を示す。図4に、ユーザシステム1から入力される問合せ文Qを示す。データベースシステムリストは、仮想データベースシステム管理装置2に接続されたデータベースの種類となる{Da、Db}とする。
ステップ103において、単独データベース副問合せ文Qa、Qbの実行結果サイズを推定してSa、Sbとした時に、Sa≫Sbの関係が成り立つとする。Sa≫Sbの関係が成り立つ場合、副問合せ文Qaの実行結果が副問合せ文Qbに比べて十分大きく、仮想データベースシステム管理装置2の処理におけるボトルネックになり得ることを示している。
Sa≫Sabの関係が成り立つ場合、データベースDa及びDbを対象とする複数データベース問合せ文の実行結果サイズが、データベースDaのみを対象とする単独データベース問合せ文の結果よりも十分小さいことを示しているので、単独データベース副問合せ文Qbの結果をデータベースDaに移して複数データベース副問合せ文Qabを実行することにより、仮想データベースシステム管理装置2への負担を大幅に削減できる。
問合せ文リストよりデータベースシステムリストを更新して{Da}となり、新たな問合せ文Q(Q1)は、図9のようになり、データベースDaからのみデータを取得する。
次に、図1の問合せ入力解析部24における処理概要について、データベースシステム3が3個の場合について説明する。ユーザシステム1から入力される問合せ文Qについては、実施例1の場合と同じ図4に示されたものが使用される。
ステップ102におけるデータベースDa、Db又はDcに対する単独データベース副問合せ文Qa、Qb、Qcは、図4の問合せ文Qに対してデータベース毎に分解することで、それぞれ図12、図13、図14となる。
ステップ107における複数データベース副問合せ文Qabは、図15のようになり、複数データベース副問合せ文Qabの実行結果サイズをSabとした時に、Sa≫Sabの関係が成り立つとする。
問合せ文リストよりデータベースシステムリストを更新し、Dbが削除された{Da、Dc}となり、新たな問合せ文Q(Q1)は図17となる。
問合せ文リストは{Qb→a、Qa→c}となり、単独データベース副問合せ文Qaの実行結果をデータベースDcに追加するため、論理データベース管理テーブルのデータベースDcに「TBL_Qa」を追加し、図20のようになる。
問合せ文リストよりデータベースシステムリストを更新し、Daが削除された{Dc}となり、新たな問合せ文Q(Q2)は図21となる。
その結果、仮想データベースシステム管理装置2における問合せ処理が効率化され、処理に長時間を要していた事態、又は、リソース不足により異常終了するような事態を回避して問合せ結果を取得することが可能となる。
Claims (5)
- 複数のデータベースシステムが接続され、ユーザシステムからの問合せ文に応じてデータが出力される仮想データベースシステム管理装置において、
前記データベースシステム単位に副問合せ文の生成及び副問合せ文によるデータ再配置に伴う前記問合せ文の変換を行う問合せ文生成部と、
前記問合せ文生成部が生成した副問合せ文の実行結果サイズを推定する実行結果推定部と、
前記問合せ文生成部が生成した副問合せ文及び変換した問合せ文に対して、前記実行結果推定部が推定した実行結果サイズに基づいて副問合せ文及び変換した問合せ文の実行順序並びに副問合せ文の実行結果のデータ配置を決定する問合せ入力解析部と、
前記問合せ入力解析部が決定した実行順序に基づいて副問合せ文及び変換した問合せ文を実行する問合せ実行部と、
前記データベースシステムに関連付けたエントリ番号を管理する物理データベース管理情報と、前記ユーザシステムからの問合せ対象となる論理データベース情報を定義し、前記物理データベース管理情報に対して、対応する前記各エントリ番号を紐付けて管理する論理データベース管理情報とが記憶されたデータベース管理部とを備え、
前記問合せ入力解析部は、前記副問合せ文の実行順序及び実行結果のデータ配置を決定して前記論理データベース管理情報を更新するとともに、
前記問合せ入力解析部は、
前記ユーザシステムからの問合せ文に対して、前記各データベースシステムの各データベースで閉じられる複数の単独データベース副問合せ文を生成し、前記各単独データベース副問合せ文から推定される実行結果サイズについて、予め決められた基準により「十分大きい」及び「ほぼ等しい」で区別される順序で整列させる機能を備え、
前記実行結果サイズの整列結果に「十分大きい」が1つ以上存在する場合で前記問合せ文において前記各データベースシステムの複数のデータベースで閉じられる複数データベース副問合せ文を生成し、
前記単独データベース副問合せ文から推定される実行結果サイズが前記複数データベース副問合せ文から推定される実行結果サイズに対して「十分大きい」場合に、
実行結果サイズが十分大きい方でない単独データベース副問合せ文に対する単独データベース副問合せ文の実行結果にリンクするテーブルを、前記論理データベース管理情報の実行結果サイズが十分大きい方に対応するデータベースに追加する機能を備え、
前記問合せ実行部は、
前記問合せ入力解析部が決定した実行順序に基づいて前記単独データベース副問合せ文の実行結果となるテーブルを前記物理データベース管理情報に追加するデータ再配置を行う機能を備えた
ことを特徴とする仮想データベースシステム管理装置。 - 前記「十分大きい」は、前記実行結果サイズの相違が二桁以上である場合であり、
前記「ほぼ等しい」は、前記実行結果サイズの相違が一桁以下である場合である
請求項1に記載の仮想データベースシステム管理装置。 - 複数のデータベースシステムが接続され、ユーザシステムからの問合せ文に応じてデータが出力される仮想データベースシステム管理方法において、
前記データベースシステムに関連付けたエントリ番号を管理する物理データベース管理情報と、前記ユーザシステムからの問合せ対象となる論理データベース情報を定義し、前記物理データベース管理情報に対して、対応する前記各エントリ番号を紐付けて管理する論理データベース管理情報とを記憶する手順と、
前記ユーザシステムからの問合せ文に対して、前記各データベースシステムの各データベースで閉じられる複数の単独データベース副問合せ文を生成し、前記各単独データベース副問合せ文から推定される実行結果サイズについて、予め決められた基準により「十分大きい」及び「ほぼ等しい」で区別される順序で整列させる機能を備えて、前記実行結果サイズの整列結果に「十分大きい」が1つ以上存在する場合で前記問合せ文において前記各データベースシステムの複数のデータベースで閉じられる複数データベース副問合せ文を生成し、前記単独データベース副問合せ文から推定される実行結果サイズが前記複数データベース副問合せ文から推定される実行結果サイズに対して「十分大きい」場合に、実行結果サイズが十分大きい方でない単独データベース副問合せ文に対する単独データベース副問合せ文の実行結果にリンクするテーブルを、前記論理データベース管理情報の実行結果サイズが十分大きい方に対応するデータベースに追加する一方、前記副問合せ文の実行順序及び実行結果のデータ配置を決定して前記論理データベース管理情報を更新する手順と、
前記問合せ入力解析部が決定した実行順序に基づいて前記単独データベース副問合せ文の実行結果となるテーブルを前記物理データベース管理情報に追加するデータ再配置を行う手順と、
を含むことを特徴とする仮想データベースシステム管理方法。 - 請求項3に記載の各手順は、前記データベースシステム単位が一つになるまで繰り返して行う仮想データベースシステム管理方法。
- 請求項1に記載の各部をコンピュータ上に構築し、問合せ文実行時に中間データサイズを推定してデータベースシステム間での適切なデータ配置を決定し、前記データ配置に合わせて問合せ文を変更して実行計画を生成する処理を行う仮想データベースシステム管理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014226050A JP6376947B2 (ja) | 2014-11-06 | 2014-11-06 | 仮想データベースシステム管理装置、管理方法及び管理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014226050A JP6376947B2 (ja) | 2014-11-06 | 2014-11-06 | 仮想データベースシステム管理装置、管理方法及び管理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016091356A JP2016091356A (ja) | 2016-05-23 |
JP6376947B2 true JP6376947B2 (ja) | 2018-08-22 |
Family
ID=56018721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014226050A Active JP6376947B2 (ja) | 2014-11-06 | 2014-11-06 | 仮想データベースシステム管理装置、管理方法及び管理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6376947B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018005822A (ja) * | 2016-07-08 | 2018-01-11 | Kddi株式会社 | 仮想データベースシステム管理装置、管理方法及び管理プログラム |
JP6898215B2 (ja) * | 2017-12-13 | 2021-07-07 | Kddi株式会社 | データベース管理装置、データベース管理方法及びデータベース管理プログラム |
JP6971929B2 (ja) * | 2018-07-20 | 2021-11-24 | Kddi株式会社 | 問合せ文出力装置及び問合せ文出力方法 |
CN109240901B (zh) * | 2018-08-28 | 2023-01-17 | 北京星选科技有限公司 | 性能分析方法、性能分析装置、存储介质和电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03208143A (ja) * | 1990-01-11 | 1991-09-11 | Oki Electric Ind Co Ltd | 分散データベース処理装置 |
US5596744A (en) * | 1993-05-20 | 1997-01-21 | Hughes Aircraft Company | Apparatus and method for providing users with transparent integrated access to heterogeneous database management systems |
JPH1196055A (ja) * | 1997-09-19 | 1999-04-09 | Hitachi Ltd | データベースの結合処理最適化方法及び装置 |
JP4552242B2 (ja) * | 1999-10-06 | 2010-09-29 | 株式会社日立製作所 | 仮想表インタフェースと該インタフェースを用いた問合せ処理システム及び方法 |
JP2001331485A (ja) * | 2000-05-22 | 2001-11-30 | Mitsubishi Electric Corp | 分散データベース演算処理装置 |
-
2014
- 2014-11-06 JP JP2014226050A patent/JP6376947B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016091356A (ja) | 2016-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6578333B2 (ja) | データクエリの管理 | |
US10521427B2 (en) | Managing data queries | |
JP6376947B2 (ja) | 仮想データベースシステム管理装置、管理方法及び管理プログラム | |
JP6157004B2 (ja) | 仮想データベースシステム管理装置、管理方法及び管理プログラム | |
Sharma et al. | Stochastic Analysis of DSS Queries for a Distributed Database Design | |
Azez et al. | JOUM: an indexing methodology for improving join in hive star schema | |
JP6523823B2 (ja) | 仮想データベースシステム管理装置、管理方法及び管理プログラム | |
Hüske | Specification and optimization of analytical data flows | |
AU2017202899B2 (en) | Managing data queries |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20160823 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170906 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180416 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180530 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180709 |
|
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: 20180718 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180724 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6376947 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |