JP6112440B2 - データ区分方法および装置 - Google Patents

データ区分方法および装置 Download PDF

Info

Publication number
JP6112440B2
JP6112440B2 JP2016517131A JP2016517131A JP6112440B2 JP 6112440 B2 JP6112440 B2 JP 6112440B2 JP 2016517131 A JP2016517131 A JP 2016517131A JP 2016517131 A JP2016517131 A JP 2016517131A JP 6112440 B2 JP6112440 B2 JP 6112440B2
Authority
JP
Japan
Prior art keywords
tuple
information
partitioning
load
tuples
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
Application number
JP2016517131A
Other languages
English (en)
Other versions
JP2016520938A (ja
Inventor
雨 文
雨 文
皓▲陽▼ ▲車▼
皓▲陽▼ ▲車▼
勇 ▲張▼
勇 ▲張▼
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2016520938A publication Critical patent/JP2016520938A/ja
Application granted granted Critical
Publication of JP6112440B2 publication Critical patent/JP6112440B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データベース技術の分野に関し、詳細には、データ区分方法および装置に関する。
旧来のリレーショナルデータベースシステムは、それらが指向する異なる負荷に従って、オンライントランザクション処理(on-line transaction processing、OLTP)のために使用されるデータベースシステムと、オンライン分析処理(on-line analytical processing、OLAP)のために使用されるデータベースシステムとに分類される。OLTPのために使用されるデータベースシステムが指向する負荷はトランザクション負荷と呼ばれ、OLAPのために使用されるデータベースシステムが指向される負荷は分析負荷と呼ばれる。対応して、これらの2つの異なるデータベースシステムは異なる様式でデータベース中のデータを管理する。具体的には、トランザクション負荷が関与するアクセスタイプは、(データ更新、修正、挿入、削除などを含む)データクエリおよびデータ修正を含むので、トランザクション負荷を指向するデータベースシステムは、データベースの異なる領域中にデータを分配しデータアクセス効率に影響を及ぼすのを回避するために、関係するデータ上で集中型制御を実施すべきである。分析負荷が関与するアクセスタイプは主に読取り専用クエリ要求であり、各クエリ要求は大量のデータの走査、統計、および分析を通常伴う。したがって、分析負荷を指向するデータベースシステムは、データアクセスが複数の領域中で並列に実施され、それによってデータアクセス効率が改善され得るように、データを異なるパーティションに記憶すべきである。ユーザは、これらの2つのデータベースシステムを同時に保守する必要がある。しかしながら、データ量とシステムの複雑さとの継続的増加とともに、2つのシステムの同時保守はユーザへの負担を増す。したがって、ユーザの要求に応答して、混合負荷を指向し得る(すなわち、トランザクション負荷と分析負荷を同時に指向し得る)データベースシステムが開発される。
混合負荷を指向するデータベースシステムにおけるデータアクセス効率を保証するために、データベース中のデータは、トランザクション負荷と分析負荷の両方の特徴に従って区分される必要がある。従来技術では、データベースシステムにおけるデータ区分方法はオンライン分析処理システムによって主に実施され、例えば、データ区分は、データベースのリレーショナルテーブル中の1つまたは複数のフィールドのhash値に従ってハッシュ(hash)関数を使用することによって実施される。
上記の方法を使用することによって取得されるデータ区分方式は分析負荷の処理を可能にするが、このデータ区分方式はトランザクション負荷では不満足であり、トランザクション負荷の処理効率に影響を及ぼし、それにより、混合負荷を指向するデータベースシステムの動作性能が低減する。
本発明は、混合負荷を指向するデータベースの動作性能を改善するためのデータ区分方法および装置を提供する。
第1の態様によれば、本発明の一実施形態はデータ区分方法を提供し、本方法は、
ユーザによって入力される混合負荷とデータベースの構造情報とを受信するステップであって、混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含み、データベースの構造情報は、混合負荷に関連する少なくとも1つのタプルを含む、ステップと、
混合負荷とデータベースの構造情報とに従ってタプル関係情報を決定するステップであって、タプル関係情報は、データベースの構造情報においていずれかの2つのタプル間のトランザクション相関を含む、ステップと、
混合負荷が並列に実行可能であるかどうかに関する特徴とタプル関係情報とに従ってタプルスプリットコスト情報を決定するステップであって、タプルスプリットコスト情報は、データベースの構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、スプリットコストは、トランザクション相関を有する2つのタプルが異なるパーティションに記憶されるとき、トランザクション相関を有する2つのタプルにアクセスすることにおける混合負荷の効率への影響の程度を示すために使用される、ステップと、
タプルスプリットコスト情報に従って複数の区分方式を取得して、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定するステップであって、各区分方式の総コスト値は、区分方式が使用されるときの、データベースの構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である、ステップと、
データベースに記憶されたデータ上で区分処理を最適区分方式に従って実施するステップと
を含む。
第1の態様に関して、第1の実装様式では、混合負荷とデータベースの構造情報とに従ってタプル関係情報を決定するステップは、
混合負荷中に含まれる各負荷に従って順に、データベースの構造情報において、各負荷に関連するすべてのタプルを別々に決定するステップと、
各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、負荷に関連するタプル間の関係サブ情報を決定するステップと、
タプル関係情報を取得するために、混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集するステップと
を含む。
第1の態様の第1の実装様式に関して、第2の実装様式では、混合負荷が並列に実行可能であるかどうかに関する特徴とタプル関係情報とに従ってタプルスプリットコスト情報を決定するステップは、
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能でないというものである場合、2つのタプル間のスプリットコストがプリセット正値であると決定するステップと、
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能であるというものである場合、2つのタプル間のスプリットコストがプリセット負値であると決定するステップと
を含む。
第1の態様の第2の実装様式に関して、第3の実装様式では、タプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、タプルスプリットコスト情報に従って複数の区分方式を取得して、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定するステップは、
複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって関係図上で複数のタイプのセグメント化処理を実施するステップであって、各タイプのセグメント化処理は1つの区分方式に対応する、ステップと、
各タイプのセグメント化処理が関係図上で実施されるとき、このタイプのセグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストを累積するステップと、
最小総コスト値に対応する区分方式を最適区分方式として決定するステップと
を含む。
第1の態様の第2の実装様式に関して、第4の実装様式では、最適区分方式に従ってデータベース中のデータ上で区分処理が実施された後に、本方法は、タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって、調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値を決定し、調整されたタプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続される、ステップと
最小総コスト値に対応する区分方式を第1の区分方式として決定するステップと、
最適区分方式と第1の区分方式とに従ってタプル移動コスト情報を生成し、タプル移動コスト情報に従って、調整された区分方式を決定する、ステップと
をさらに含む。
第1の態様の第4の実装様式に関して、第5の実装様式では、最適区分方式と第1の区分方式とに従ってタプル移動コスト情報を生成し、タプル移動コスト情報に従って、調整された区分方式を決定する、ステップは、
第1の区分方式に従って最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルを決定するステップであって、最適パーティションは、最適区分方式に従って決定される記憶領域である、ステップと、
移動されるべきタプルと最適パーティションとの間の調整関係に従って、移動されるべきタプルと最適パーティションとの間の移動コストを決定するステップと、
調整されたタプルスプリットコスト情報に従って、移動されるべきタプルと最適パーティションとの間のスプリットコストを決定するステップと、
移動コストとスプリットコストとに従ってタプル移動コスト情報を生成するステップと、
複数のプリセット移動区分方式を取得するためにタプル移動コスト情報に従って最適区分方式を調整するステップと、
イメージセグメント化アルゴリズムを使用することによってプリセット移動区分方式の各々に対応する調整された総コスト値を取得するステップと、
複数のプリセット移動区分方式から、最小の調整された総コスト値をもつプリセット移動区分方式を調整された区分方式として決定するステップと
を含む。
第1の態様、または第1の態様の第1の実装様式から第3の実装様式のいずれか1つに関して、第6の実装様式では、最適区分方式に従うデータベース中のデータ上での区分処理が失敗した場合、本方法は、
オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つのオンライン分析処理モードを使用することによってデータ区分を実施するステップと、
各候補区分方式と最適区分方式との間の差分値を決定するステップと、
最小差分値をもつ候補区分方式を現在の区分方式として決定し、現在の区分方式に従ってデータ上で区分を実施するステップと
をさらに含む。
第1の態様の第6の実装様式に関して、第7の実装様式では、少なくとも2つのオンライン分析処理モードは、以下のオンライン分析処理モード、
ハッシュ関数処理、置換関数処理、ラウンドロビンアルゴリズム処理、およびレプリカ管理処理
のうちの少なくとも2つを含む。
第2の態様によれば、本発明の一実施形態はデータ区分装置を提供し、本装置は、
ユーザによって入力される混合負荷とデータベースの構造情報とを受信するように構成される、受信モジュールであって、混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含むことと、データベースの構造情報は、混合負荷に関連する少なくとも1つのタプルを含む、受信モジュールと、
混合負荷とデータベースの構造情報とに従ってタプル関係情報を決定するように構成される、関係決定モジュール、関係決定モジュールであって、タプル関係情報は、データベースの構造情報においていずれかの2つのタプル間のトランザクション相関を含む、関係決定モジュールと、
混合負荷が並列に実行可能であるかどうかに関する特徴とタプル関係情報とに従ってタプルスプリットコスト情報を決定するように構成される、コスト決定モジュールであって、タプルスプリットコスト情報は、データベースの構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、スプリットコストは、トランザクション相関を有する2つのタプルが異なるパーティションに記憶されるとき、トランザクション相関を有する2つのタプルにアクセスすることにおける混合負荷の効率への影響の程度を示すために使用される、コスト決定モジュールと、
タプルスプリットコスト情報に従って複数の区分方式を取得し、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定するように構成される、最適選択モジュールであって、各区分方式の総コスト値は、区分方式が使用されるときの、データベースの構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である、最適選択モジュールと、
データベースに記憶されたデータ上で区分処理を最適区分方式に従って実施するように構成される、区分モジュールと
を含む。
第2の態様に関して、第1の実装様式では、関係決定モジュールは、
混合負荷中に含まれる各負荷に従って順に、データベースの構造情報において、各負荷に関連するすべてのタプルを別々に決定し、
各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、負荷に関連するタプル間の関係サブ情報を決定し、
タプル関係情報を取得するために、混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集する
ように特に構成される。
第2の態様の第1の実装様式に関して、第2の実装様式では、コスト決定モジュールは、特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能でないというものである場合、2つのタプル間のスプリットコストがプリセット正値であると決定し、
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能であるというものである場合、2つのタプル間のスプリットコストがプリセット負値であると決定する
ように特に構成される。
第2の態様の第2の実装様式に関して、第3の実装様式では、タプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、最適選択モジュールは、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって関係図上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、
各タイプのセグメント化処理が関係図上で実施されるとき、このタイプのセグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストを累積し、
最小総コスト値に対応する区分方式を最適区分方式として決定する
ように特に構成される。
第2の態様の第2の実装様式に関して、第4の実装様式では、本装置は調整選択モジュールをさらに含み、調整選択モジュールは、区分モジュールが最適区分方式に従ってデータベース中のデータ上で区分処理を実施した後に、タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって、調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値を決定し、調整されたタプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、
最小総コスト値に対応する区分方式を第1の区分方式として決定し、
最適区分方式と第1の区分方式とに従ってタプル移動コスト情報を生成し、タプル移動コスト情報に従って、調整された区分方式を決定する
ように構成される。
第2の態様の第4の実装様式に関して、第5の実装様式では、調整選択モジュールは、第1の区分方式に従って最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルを決定し、最適パーティションは、最適区分方式に従って決定される記憶領域であり、
移動されるべきタプルと最適パーティションとの間の調整関係に従って、移動されるべきタプルと最適パーティションとの間の移動コストを決定し、
タプルスプリットコスト情報に従って、移動されるべきタプルと最適パーティションとの間のスプリットコストを決定し、
移動コストとスプリットコストとに従ってタプル移動コスト情報を生成し、
複数のプリセット移動区分方式を取得するためにタプル移動コスト情報に従って最適区分方式を調整し、
イメージセグメント化アルゴリズムを使用することによってプリセット移動区分方式の各々に対応する調整された総コスト値を取得し、
複数のプリセット移動区分方式から、最小の調整された総コスト値をもつプリセット移動区分方式を調整された区分方式として決定する
ように特に構成される。
第2の態様、または第2の態様の第1の実装様式から第3の実装様式のいずれか1つに関して、第6の実装様式では、本装置は、
区分モジュールが最適区分方式に従ってデータベース中のデータ上で区分処理を実施することに失敗したとき、オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つのオンライン分析処理モードを使用することによってデータ区分を実施し、
各候補区分方式と最適区分方式との間の差分値を決定し、
最小差分値をもつ候補区分方式を現在の区分方式として決定し、現在の区分方式に従ってデータ上で区分を実施する
ように構成される、差分選択モジュール
をさらに含む。
本実施形態では、混合負荷が並列に実行可能であるかどうかに関する特徴に従って、データベース中の混合負荷に関連するデータ上で最適区分が実施され、混合負荷中のトランザクション負荷と分析負荷との特徴は、区分されたデータ中で考慮され、したがって、異なる負荷がデータベースシステム中のデータにアクセスするとき、それらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
本発明の実施形態または従来技術における技術的解決策についてより明らかに説明するために、以下で、本実施形態または従来技術について説明するために必要とされる添付の図面を手短に紹介する。明らかに、以下の説明における添付の図面は本発明のいくつかの実施形態を示すものであり、当業者なら、創造的な取り組みなしにこれらの添付の図面から他の図面をさらに導出するであろう。
本発明によるデータ区分方法の実施形態1のフローチャートである。 本発明の実施形態1によるタプル関係情報の概略図である。 本発明の実施形態1によるタプルスプリットコスト情報の概略図である。 本発明によるデータ区分方法の実施形態2のフローチャートである。 本発明の実施形態2による負荷1に対応するタプル関係サブ情報の概略図である。 本発明の実施形態2による負荷2に対応するタプル関係サブ情報の概略図である。 本発明によるデータ区分方法の実施形態3のフローチャートである。 本発明の実施形態3によるタプル移動コスト情報の概略図である。 本発明によるデータ区分方法の実施形態4のフローチャートである。 本発明によるデータ区分装置の実施形態1の構造図である。 本発明によるデータ区分装置の実施形態2の構造図である。 本発明によるデータベース管理デバイスの実施形態1の構造図である。
本発明の実施形態の目的、技術的解決策、および利点をより明らかにするために、以下で、本発明の実施形態における添付の図面を参照しながら、本発明の実施形態における技術的解決策について明確に説明する。説明する実施形態は、本発明の実施形態のすべてではなく一部である。創造的な取り組みなしに本発明の実施形態に基づいて当業者によって取得されるすべての他の実施形態は、本発明の保護範囲内に入る。
図1は、本発明のデータ区分方法の実施形態1のフローチャートである。この実施形態によって提供される方法はデータ区分装置によって実装され得、ここで、本装置は、ハードウェアおよび/またはソフトウェアを使用することによって実装され得る。図1に示されているように、本方法は以下を含む。
S101.ユーザによって入力される混合負荷とデータベースの構造情報とを受信する。
データベースの構造情報は、データ管理のために使用されるデータベースシステムに事前に入力されており、ここで、データベースの構造情報は、大量のデータ情報とデータ間のリレーショナル構造とを含む。データ情報は、教育制度における学生の各科目の試験点数であるか、または病院における患者の臨床情報であり得る。一例として学生の試験点数を使用すると、試験点数を記録するデータは、データ間のいくつかのリレーショナル構造に従って記憶され、これらの構造は、表1に示されたリレーショナル構造「名前−番号」、表2に示されたリレーショナル構造「番号−科目−点数」などを含む。
Figure 0006112440
Figure 0006112440
上記の表1および表2中のエントリ、例えば、表1中の「張興−001」および表2中の「001−数学−A」は両方とも、データベースの構造情報を構成するタプルであり、すなわち、タプルは、データベースに記憶されたデータであり、これらのタプルは、データベースによって受信される負荷によってアクセスされる。例えば、受信された負荷が「張興の数学の点数を照会する」である場合、表1中で負荷に従って、張興に対応する番号が001であることが見つけられ、次いで、表2中でエントリ「001−数学−A」に従って、張興の数学の点数がAであることが見つけられる。
異なるタイプの負荷があるので、データベースシステム中で上記のタプルが区分されるとき、異なるタイプの負荷の特徴は、様々な負荷がデータベースシステムにアクセスするのが便利になるように考慮される必要がある。
様々な負荷によるアクセスを容易にするデータ区分方式を取得するために、この実施形態では、データ区分装置は、事前にユーザによって入力される混合負荷、またはある時間期間内にユーザによって入力される混合負荷を受信する必要がある。混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含み、上記のデータベースの構造情報は、混合負荷に関連する少なくとも1つのタプルを特に含む。トランザクション負荷によってアクセスされるタプルが集中型様式でデータベースに記憶されるとき、トランザクション負荷は、データベースにアクセスするのにより高い効率を有し得る。一方、分析負荷については、分析負荷によってアクセスされるタプルが異なるパーティションに記憶される場合、分析負荷はより高いアクセス効率を有し得る。
S102.混合負荷とデータベースの構造情報とに従ってタプル関係情報を決定する。
ユーザが「張興の数学の点数と歴史の点数とを照会する」およぼ「Bと点数を付けられた科目の統計値を作る」を入力したとき、負荷1「張興の数学の点数と歴史の点数とについて照会する」はほんの少しのデータのクエリに関与するので、負荷1はトランザクション負荷であり、負荷2「Bと点数を付けられた科目の統計値を作る」は大量のデータの分析と処理とに関与するので、負荷2は分析負荷である。すなわち、データ区分装置は、トランザクション負荷と分析負荷とを含む混合負荷を受信する。
説明しやすいように、表1において、タプル「張興−001」はS1によって表され、タプル「趙一−002」はS2によって表される。表2において、「001−数学−A」はC1によって表され、「001−歴史−B」はC2によって表され、「002−数学−B」はC3によって表される。この場合、負荷1がアクセスする必要があるタプルは、表1中のS1「張興−001」と、表2中のC1「001−数学−A」およびC2「001−歴史−B」とを含み、負荷2は、表2中のC2「001−歴史−B」およびC3「002−数学−B」をふるい落とす必要があり、ここで、負荷1に基づくと、トランザクション相関がS1とC1との間におよびS1とC2との間に存在し、負荷2に基づくと、トランザクション相関がC2とC3との間に存在する。このようにして、タプル関係情報が決定され得、すなわち、タプル関係情報は、いずれかの2つのタプル間のトランザクション相関を含む。
図2Aは、本発明の実施形態1におけるタプル関係情報の概略図である。図2Aに示されているように、タプル関係情報は関係図によって表される。タプル関係情報における各ノードは1つのタプルを表し、タプル間の接続関係はトランザクション相関を表す。例えば、負荷1について、C1とC2とに従って張興の数学の点数と歴史の点数とを知るために、張興に対応する番号がS1に従って取得される必要がある。すなわち、タプル関係情報において、トランザクション相関がS1とC1との間におよびS1とC2との間に存在し、これは、接続関係がS1とC1との間におよびS1とC2との間に存在することを示す。負荷2については、点数Bをもつ各タプルが照会される必要があり、したがって、トランザクション相関はC2とC3との間に存在し、これは、接続関係が2つのノードC2およびC3の間に存在することを表す。
S103.タプル関係情報と混合負荷が並列に実行可能であるかどうかに関する特徴とに従ってタプルスプリットコスト情報を決定する。
上記のタプルスプリットコスト情報は、データベースの構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、スプリットコストは、トランザクション相関を有する2つのタプルが異なるパーティションに記憶されるとき、トランザクション相関を有する2つのタプルにアクセスすることにおける混合負荷の効率への影響の程度を示すために使用される。
例えば、S1とC1が異なるパーティションに記憶されると仮定すると、S1とC1とにアクセスする負荷1の場合、最初に1つの記憶領域において、張興に対応する番号が知られる必要があり、次いで、別の記憶領域において、その番号に対応する点数が照会され得、すなわち、混合負荷中の負荷1は並列に実行可能でなく、異なるパーティションに記憶することは負荷のアクセス効率に影響を及ぼす。負荷2の場合、点数Bをもつタプルのみがアクセスされる必要がある。負荷2がデータベースにアクセスするとき、C2とC3が異なるパーティションに記憶される場合でも、負荷2は、1つの記憶領域において、点数BをもつタプルC2を照会し得、一方、別の記憶領域において、点数BをもつタプルC3を照会し得、すなわち、混合負荷中の負荷2は並列に実行可能である。
図2Bは、本発明の実施形態1におけるタプルスプリットコスト情報の概略図である。図2Bに示されているように、図2Aに示されたタプル関係情報に基づいて、混合負荷が並列に実行可能であるかどうかに関する特徴に従ってタプル関係情報においていずれかの2つのタプル間のスプリットコストが決定され、タプルスプリットコスト情報は完全な関係図によって表される。例えば、S1とC1との間のスプリットコストが1である場合、それは、S1とC1を異なるパーティションに記憶することが、負荷によるアクセスを可能にしないことを示し、C2とC3との間のスプリットコストが−1である場合、それは、C2とC3を異なるパーティションに記憶することが、負荷によるアクセスを可能にすることを示す。
この実施形態におけるスプリットコストの値は1または−1に限定されず、混合負荷中の負荷の比率に従って設定され得ることに留意されたい。例えば、負荷1のアクセス時間の量が負荷2のアクセス時間の量よりもはるかに大きいとき、並列に実行可能でない負荷1について、集中型様式で記憶される必要があるタプルが異なるパーティションに記憶された場合、データベースにアクセスすることにおける負荷1の効率は深刻に影響を受ける。適切な区分方式を取得するために、負荷1に関連するタプル間のスプリットコストの値は、負荷2に関連するタプル間のスプリットコストの値よりも大きくなり得、例えば、5、10、および他のより大きい値になり得る。
S104.タプルスプリットコスト情報に従って複数の区分方式を取得し、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定する。
各区分方式の総コスト値は、区分方式が使用されるときの、データベースの構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である。具体的には、上記の区分方式において、いくつかのタプルは同じ領域に記憶されるべきでないことが示されており、トランザクション相関を有するいずれかの2つのタプルが、区分方式に従って異なるパーティションに記憶されるとき、区分方式に対応する総コスト値を取得するために、トランザクション相関を有するタプル間のスプリットコストが合計される。詳細は表3に示されている。
Figure 0006112440
一例として方式1を使用すると、データベース中のデータが方式1に従って区分される場合、S1およびC1は第1の領域P1に記憶される必要があるが、C2およびC3は第2の領域P2に記憶される必要があり、したがって、C2とS1は異なるパーティションに記憶され、スプリットコスト値1が生成される。区分方式に従って区分が実施されるとき、トランザクション相関を有するタプル間のスプリットコストの和が計算されて、区分方式に対応する総コスト値が取得される。その後、方式1の総コスト値を取得するプロセスと同様のプロセスを使用することによって、方式2と方式3とに対応する総コスト値がそれぞれ取得される。理解できるように、総コスト値は、トランザクション相関を有するタプル間のスプリットコストの和であり、スプリットコストは、トランザクション相関を有する2つのタプルが異なるパーティションに記憶されるとき、トランザクション相関を有する2つのタプルにアクセスすることにおける混合負荷の効率への影響の程度を示すために使用される。したがって、総コスト値がより大きくなる場合、区分方式は、データベースにアクセスすることにおける負荷の効率に対してより大きい悪影響を及ぼす。したがって、最小総コスト値をもつ区分方式が最適区分方式として選択される。
S105.データベース中のデータ上で区分処理を最適区分方式に従って実施する。
この実施形態では、混合負荷が並列に実行可能であるかどうかに関する特徴に従って、データベース中の混合負荷に関連するデータ上で最適区分が実施され、区分の後に、データは、混合負荷中にトランザクション負荷と分析負荷との特徴を有し、したがって、異なる負荷がデータベースシステム中のデータにアクセスするとき、それらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
図3は、本発明のデータ区分方法の実施形態2のフローチャートである。図3に示されているように、この実施形態は、実施形態1に基づいてデータ区分方法についてさらに説明し、本方法は以下を含む。
S201.ユーザによって入力される混合負荷とデータベースの構造情報とを受信する。
本発明の実施形態1におけるS102の例において、混合負荷は複数の異なる負荷を含み、受信される混合負荷は経験的モデルであり、すなわち、経験に従って予測される混合負荷であり、例えば、学生の点数を記憶するデータベースでは、負荷によるデータベースへの通例のアクセスは、点数の充填、分析、およびすべての学生の平均点の計算などを含む。
S202.混合負荷中に含まれる各負荷に従って順に、データベースの構造情報において、各負荷に関連するすべてのタプルを別々に決定する。
データ区分装置は、受信された混合負荷を分析し、混合負荷中に含まれる各負荷に従って順に、負荷に関連するすべてのタプルを決定する。具体的には、実施形態1の例において説明したように、データ区分装置は、混合負荷中に含まれる2つの負荷、すなわち、負荷1および負荷2を分析し、負荷1に関連するすべてのタプルがS1、C1、およびC2であることと、負荷2に関連するすべてのタプルがC2およびC3であることとを別々に決定する。
S203.各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、負荷に関連するタプル間の関係サブ情報を決定する。
図4Aは、本発明の実施形態2における負荷1に対応するタプル関係サブ情報の概略図である。図4Bは、本発明の実施形態2における負荷2に対応するタプル関係サブ情報の概略図である。図4Aに示されているように、負荷1に関連するタプルはS1、C1、およびC2である。負荷1に関連するタプル間のタプル関係サブ情報が、タプル間のトランザクション相関に従って決定される。同様に、図4Bに示されているように、負荷2に関連するタプル間のタプル関係サブ情報が決定される。
この実施形態は、一例としてただ2つの負荷を含む混合負荷を使用する。ただし、実際の適用例では、混合負荷中に含まれる負荷の量はより大きく、したがって、複数のタプル関係サブ情報が決定され得る。
S204.タプル関係情報を取得するために、混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集する。
各負荷に関連するタプル間のタプル関係サブ情報上で分析が実施される。一例として図4Aおよび図4Bに示された2つのタプル関係サブ情報を使用すると、図4Aおよび図4Bにおける2つのタプル関係サブ情報は、図2Aに示された1つの完全なタプル関係情報に組み合わされる。
S205.混合負荷が並列に実行可能であるかどうかに関する特徴とタプル関係情報とに従ってタプルスプリットコスト情報を決定する。
具体的には、特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能でないというものである場合、2つのタプル間のスプリットコストがプリセット正値であると決定される。
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能であるというものである場合、2つのタプル間のスプリットコストがプリセット負値であると決定される。
例えば、図2Bに示されているように、負荷1が並列に実行可能でない場合、負荷1に関連するS1とC1との間のスプリットコストは正値1である。負荷2が並列に実行可能である場合、負荷2に関連するC2とC3との間のスプリットコストは負値−1である。実際の適用例では、負荷のアクセス頻度に従って特定の値がプリセットされ得る。
S206.タプルスプリットコスト情報に従って複数の区分方式を取得し、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定する。
S206において決定される区分方式の量は少なくとも2つの方式であり、例えば、表3に示された複数の方式である。
S207.イメージセグメント化アルゴリズムを使用することによって各区分方式の総コスト値を決定する。
上記のタプルスプリットコスト情報は、関係図によって、例えば、図2Bに示された関係図によって表され得る。関係図では、トランザクション相関を有するいずれかの2つのタプルが接続ラインによって接続され、ここで、接続ラインは、トランザクション相関を有する2つのタプル間のスプリットコストに対応する。この場合、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって関係図上で複数のタイプのセグメント化処理が実施され得、各タイプのセグメント化処理は1つの区分方式に対応し、各タイプのセグメント化処理が上記の関係図上で実施されるとき、セグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストが累積される。例えば、上記の表3において方式1を取得するために、図2Bに示されたS1とC2との間の接続ラインがセグメント化される必要があり、複数の接続ラインによって接続される2つのタプル間のスプリットコストの和を計算するために、接続ラインによって接続される2つのタプル間のスプリットコストが累積される。方式1を取得するためにS1とC2との間の接続ラインのみがセグメント化される必要があるので、方式1に対応する総コスト値は、S1とC2との間のスプリットコストである。
S208.最小総コスト値に対応する区分方式を最適区分方式として決定する。
この実施形態では、混合負荷が並列に実行可能であるかどうかに関する特徴に従って、およびイメージセグメント化アルゴリズムを使用することによって、データベース中の混合負荷に関連するデータ上で最適区分が実施され、区分の後に、データは、混合負荷中にトランザクション負荷と分析負荷との特徴を有し、したがって、異なる負荷がデータベースシステム中のデータにアクセスするとき、それらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
データベースの使用中に、ユーザの要件は変化することがあり、すなわち、入力負荷が変更される。例えば、新しい負荷3が入力され、負荷3に関連するタプルはS2およびC3であり得、1つのタプル関係サブ情報が追加される。したがって、混合負荷に従って決定されるタプル関係情報も変更される必要があり、データは再区分される必要がある。または、いくつかの負荷のアクセス頻度が変更され、例えば、前の時間において最適区分方式が決定されたとき、負荷1のアクセス頻度が比較的高いので、最適区分方式は、データベースにアクセスすることにおける混合負荷の効率が改善されるように、負荷1によるアクセスを一層可能にする。しかしながら、ユーザがある時間期間の間データベースを使用した後に、および様々な理由により、ユーザが負荷2を入力する頻度は、ユーザが負荷1を入力する頻度よりもはるかに高いが、最適データ区分方式は負荷2によるアクセスを可能にしない。したがって、データベースの区分方式は調整される必要があり、すなわち、上記の最適区分方式に従ってデータベース中のデータ上で区分処理が実施された後に、タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、データベース中のデータパーティションは調整される必要がある。
図5は、本発明のデータ区分方法の実施形態3のフローチャートである。図5に示されているように、データ区分方法は、上記の実施形態1または実施形態2に基づいてさらに最適化される。具体的には、本方法は以下を含む。
S301.ユーザによって入力される混合負荷を受信する。
この実施形態では、データ区分装置によって受信される混合負荷は、ユーザがデータベースシステムを使用するとき、ある時間期間内にユーザによって入力される負荷である。
S302.受信された混合負荷に従って、調整されたタプルスプリットコスト情報を決定する。
調整されたタプルスプリットコスト情報は、ある時間期間内にデータ区分装置によって受信される混合負荷に従って、およびデータベース中のタプルを参照して取得される。
S303.調整されたタプルスプリットコスト情報に従って少なくとも2つの区分方式を決定する。
上記の調整されたタプルスプリットコスト情報は関係図によって表される。この関係図において、トランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、すなわち、調整されたタプルスプリットコスト情報は、図2Bに示された関係図によっても表され得る。この場合、複数の区分方式を決定するために、イメージセグメント化アルゴリズムを使用することによって、調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理が実施され得、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値が決定される。上記のS302およびS303の特定の実装プロセスについては、S201からS206の参照が行われ得、これらについて本明細書ではさらに説明しない。
S304.最小総コスト値に対応する区分方式を第1の区分方式として決定する。
第1の区分方式は、最小総コスト値をもつ区分方式であり、現在の時間期間内に受信される混合負荷に従って決定される。第1の区分方式は、現在の混合負荷によるアクセスを完全に可能にすることを理解されよう。
S305.最適区分方式と第1の区分方式とに従ってタプル移動コスト情報を生成する。
第1の区分方式に従って最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルが決定され、最適パーティションは、上記の最適区分方式に従って決定される記憶領域である。最適区分方式は、一例としてP1(S1およびC3)とP2(C1およびC2)とを使用し、ただし、P1およびP2は、最適区分方式に従って決定される2つの記憶領域であり、決定された第1の区分方式は、一例としてP1'(S1およびC2)とP2'(C1およびC3)とを使用する。最適区分方式が第1の区分方式に従って調整されるとき、最適区分方式と第1の区分方式とを分析および比較することによって、タプルC2およびC3が移動される必要があること、すなわち、C2およびC3が移動されるべきタプルであることが知られ得る。次いで、移動されるべきタプルと最適パーティションとの間の調整関係に従って、移動されるべきタプルと最適パーティションとの間の移動コストが決定される。例えば、第1の区分方式を取得するために最適区分方式が調整されるとき、C2は最適パーティションP2から出される必要があり、C3は最適パーティションP1から出される必要がある。この場合、調整関係がP2とC2との間におよびP1とC3との間にあり、移動コストの特定の値がプリセットされ得る。例えば、タプルC2は多くのデータを含み、C2中のデータを移動することは高いリソースコストを必要とする。したがって、C2の移動コストの値は、調整プロセスによって必要とされるリソースコストに対応するためにより大きい値に設定され得る。
移動コストが決定された後に、上記の調整されたタプルスプリットコスト情報に従って、移動されるべきタプルと最適パーティションとの間のスプリットコストも決定される必要があり、移動コストとスプリットコストとに従ってタプル移動コスト情報が生成される。
具体的には、図6は、本発明の実施形態3におけるタプル移動コスト情報の概略図である。図6に示されているように、第1の区分方式は、P2からC2を出すこととP1からC3を出すこととによってのみ取得され得、その場合、C2とP2との間のおよびC3とP1との間の接続関係は移動コストを表すが、C2とP1中のS1との間にスプリットコストがある。この場合、C2とP1中のS1との間のスプリットコストは、移動されるべきタプルC2と最適パーティションP1との間のスプリットコストである。
S306.調整されたタプル移動コスト情報に従って、調整された区分方式を決定する。
上記のタプル移動コスト情報は関係図によっても表され得る。この関係図において、移動されるべきタプルと最適パーティションとの間の調整関係、および移動されるべきタプルと最適パーティション中のタプルとの間のトランザクション相関は、接続ラインによって表される。この場合、複数のプリセット移動区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによってタプル移動コスト情報上で複数のタイプのセグメント化処理が実施され得る。具体的には、どの1つの区分方式にも、スプリットコスト値が常にある。例えば、現在受信される混合負荷について、最適区分方式のスプリットコスト値は10であるが、第1の区分方式のスプリットコスト値は4である。この場合、最適区分方式は、スプリットコスト値を低減するために第1の区分方式に調整される。しかしながら、移動コスト情報によって、第1の区分方式を取得するために最適区分方式が調整される場合、5の移動コストが支払われる必要があることが知られ得る。10−4+5=11によれば、第1の区分方式上での調整プロセスにおいて起こる総コスト値は11である。分析によって、4のスプリットコスト値を低減するために5の移動コストが支払われる必要があることが知られ得、これはリソースを浪費する調整である。しかしながら、データベースの区分方式が現在の混合負荷に適用可能であるように、最適区分方式はプリセット移動区分方式に調整され得る。
具体的には、複数のプリセット移動区分方式を決定するために、イメージセグメント化アルゴリズムを使用することによって、タプル移動コスト情報上で複数のタイプのセグメント化処理が実施され得、複数のプリセット移動区分方式は、最適区分方式(すなわち、調整は実施されず、上記の最適区分方式が使用され続ける)、いくつかのタプル、例えば、P1"(S1)ならびにP2"(C1、C2、およびC3)を調整することによって取得される第1の区分方式または複数の区分方式を含む。
複数のプリセット移動区分方式が取得された後に、複数のプリセット移動区分方式から、最小の調整された総コスト値をもつプリセット移動区分方式が決定され、最適区分方式として使用される必要がある。具体的には、イメージセグメント化アルゴリズムを使用することによって、複数のプリセット移動方式に対応する調整された総コスト値が取得され、すなわち、プリセット移動区分方式において起こる調整された総コスト値は、調整された最適区分方式をプリセット移動区分方式になるように調整するプロセスにおいて計算される。最後に、複数のプリセット移動区分方式から、最小の調整された総コスト値をもつプリセット移動区分方式が決定され、調整された区分方式として使用される。
この実施形態では、データベースシステム上で最適区分が実施された後に、ユーザによって入力される負荷がデータベースシステムの使用中に変更された場合、データベースシステム中の既存のパーティションは、ユーザによって入力される負荷に従って調整され、最適区分方式が最小移動コストで取得されることを保証するために、調整によって必要とされる移動コストも調整中に考慮される。このようにして、異なる負荷がデータベースシステム中のデータにアクセスするとき、これらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
実際の適用例では、上記の方法は、いくつかの客観的要因により、データベース中のデータを区分するために使用され得ない。しかしながら、データベースシステムの区分方式が混合負荷に適用可能であるように、混合負荷に適用可能な区分方式は、データベースシステムによって使用される既存の区分方式から、および上記の方法を使用することによって決定される区分方式を参照して決定され得る。
図7は、本発明のデータ区分方法の実施形態4のフローチャートである。図7に示すように、この実施形態は、データベース中のデータ上で実施形態1または実施形態2において決定される最適区分方式に従う区分処理が失敗した後に実装されるデータ区分方法を提供する。本方法は以下を含む。
S401.最適区分方式を取得する。
いくつかのデバイスでは、S201からS209において説明する方法は、場合によってはサポートされない。デバイスにおけるデータパーティションを合理化するために、実施形態2を実行するデータ区分装置は、デバイスに外部的に接続され得る。データ区分装置は、デバイスによって受信される混合負荷とデバイスのデータ構造情報とに従って最適区分方式を取得する。特定のプロセスはS201からS209に一致し、それらについて本明細書ではさらに説明しない。
S402.オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つのオンライン分析処理モードを使用することによってデータ区分を実施する。
上記のオンライン分析処理モードは、例えば、従来技術に関連しているハッシュ関数処理、置換関数処理、ラウンドロビンアルゴリズム処理、およびレプリカ管理処理であり、オンライン分析処理モードは、オンライン分析処理モードの各々に対応する候補区分方式を取得するために上記のデバイスにおいて使用され得る。
S403.各候補区分方式と最適区分方式との間の差分値を決定する。
上記の最適区分方式はSによって表され、その場合、S=(P1, P2, P3,...Pj...)であり、ただし、Pjは、最適区分方式におけるj番目のパーティションを表す。
候補区分方式はSiによって表され、ただし、iは複数の候補区分方式のうちの1つの区分方式の番号を表し、その場合、Si=(Pi,1, Pi,2, Pi,3, ...Pi,j...)であり、ただし、Pi,jは区分方式iのj番目のパーティションを表し、i∈Mであり、ただし、Mは候補区分方式の総量を表す。
上記のパーティションPj中のタプルは(t1 t2 ...tj...)によって表され、Pi,j中のタプルは(ti,1 ti,2 ...ti,j...)によって表される。
Sと各候補区分方式Siとの間の差分値が計算され、ただし、差分値はDiによって表され、その場合、
Figure 0006112440
である。
S404.最小差分値をもつ候補区分方式を現在の区分方式として決定し、現在の区分方式に従ってデータ上で区分を実施する。
最適区分方式と各候補区分方式との間の差分値Diが計算された後に、デバイスによって選択され得る最適区分方式として、最小差分値をもつ区分方式が決定される。
この実施形態では、実際の状況に関して、データベースシステム中のデータが区分されるとき、イメージセグメント化アルゴリズムを使用することによって取得される最適区分方式は、参照規格としてフレキシブルに使用され得る。参照規格に最も近い候補区分方式は、既存の方法を使用することによって取得される候補区分方式から選択され、したがって、データベースシステムが既存の方法を使用することができるとき、混合負荷はより高いアクセス効率を有することができる。したがって、デバイスの非サポートなどの客観的要因により、既存の方法を使用することによって、混合負荷によるアクセスを可能にする区分方式が取得され得ない場合が回避される。
図8は、本発明のデータ区分装置の実施形態1の構造図である。図8に示されているように、データ区分装置は、
ユーザによって入力される混合負荷とデータベースの構造情報とを受信するように構成される、受信モジュール501であって、混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含み、データベースの構造情報は、混合負荷に関連する少なくとも1つのタプルを含む、受信モジュール501と、
混合負荷とデータベースの構造情報とに従ってタプル関係情報を決定するように構成される、関係決定モジュール502であって、タプル関係情報は、データベースの構造情報においていずれかの2つのタプル間のトランザクション相関を含む、関係決定モジュール502と、
混合負荷が並列に実行可能であるかどうかに関する特徴とタプル関係情報とに従ってタプルスプリットコスト情報を決定するように構成される、コスト決定モジュール502であって、タプルスプリットコスト情報は、データベースの構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、スプリットコストは、トランザクション相関を有する2つのタプルが異なるパーティションに記憶されるとき、トランザクション相関を有する2つのタプルにアクセスすることにおける混合負荷の効率への影響の程度を示すために使用される、コスト決定モジュール502と、
タプルスプリットコスト情報に従って複数の区分方式を取得し、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定するように構成される、最適選択モジュール504であって、各区分方式の総コスト値は、区分方式が使用されるときの、データベースの構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である、最適選択モジュール504と、
データベースに記憶されたデータ上で区分処理を最適区分方式に従って実施するように構成される、区分モジュール505と
を含む。
この実施形態では、混合負荷が並列に実行可能であるかどうかに関する特徴に従って、およびイメージセグメント化アルゴリズムを使用することによって、データベース中の混合負荷に関連するデータ上で最適区分が実施され、区分の後に、データは、混合負荷中にトランザクション負荷と分析負荷との特徴を有し、したがって、異なる負荷がデータベースシステム中のデータにアクセスするとき、それらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
図9は、本発明のデータ区分装置の実施形態2の構造図である。図9に示されているように、関係決定モジュール502は、混合負荷中に含まれる各負荷に従って順に、データベースの構造情報において、各負荷に関連するすべてのタプルを別々に決定し、
各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、負荷に関連するタプル間の関係サブ情報を決定し、
タプル関係情報を取得するために、混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集する
ように特に構成される。
コスト決定モジュール503は、特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能でないというものである場合、2つのタプル間のスプリットコストがプリセット正値であると決定し、
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能であるというものである場合、2つのタプル間のスプリットコストがプリセット負値であると決定する
ように特に構成される。
タプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、上記の最適選択モジュール504は、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって関係図上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、
各タイプのセグメント化処理が関係図上で実施されるとき、このタイプのセグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストを累積し、
最小総コスト値に対応する区分方式を最適区分方式として決定する
ように構成される。
さらに、本装置は調整選択モジュール506をさらに含み、調整選択モジュール506は、区分モジュール505が最適区分方式に従ってデータベース中のデータ上で区分処理を実施した後に、タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって、調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値を決定し、調整されたタプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、
最小総コスト値に対応する区分方式を第1の区分方式として決定し、
最適区分方式と第1の区分方式とに従ってタプル移動コスト情報を生成し、タプル移動コスト情報に従って、調整された区分方式を決定する
ように構成される。
さらに、調整選択モジュール506は、第1の区分方式に従って最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルを決定するように特に構成され、最適パーティションは、最適区分方式に従って決定される記憶領域であり、移動されるべきタプルと最適パーティションとの間の調整関係に従って、移動されるべきタプルと最適パーティションとの間の移動コストを決定し、
タプルスプリットコスト情報に従って、移動されるべきタプルと最適パーティションとの間のスプリットコストを決定し、
移動コストとスプリットコストとに従ってタプル移動コスト情報を生成し、
複数のプリセット移動区分方式を取得するためにタプル移動コスト情報に従って最適区分方式を調整し、
イメージセグメント化アルゴリズムを使用することによってプリセット移動区分方式の各々に対応する調整された総コスト値を取得し、
複数のプリセット移動区分方式から、最小の調整された総コスト値をもつプリセット移動区分方式を調整された区分方式として決定する
ようにさらに構成される。
よりフレキシブルには、本装置は差分選択モジュール507をさらに含み得、差分選択モジュール507は、区分モジュール505が最適区分方式に従ってデータベース中のデータ上で区分処理を実施することに失敗したとき、オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つのオンライン分析処理モードを使用することによってデータ区分を実施し、上記のオンライン分析処理モードは従来技術であり、例えば、ハッシュ関数処理、置換関数処理、ラウンドロビンアルゴリズム処理、およびレプリカ管理処理であり、
各候補区分方式と最適区分方式との間の差分値を決定し、
最小差分値をもつ候補区分方式を現在の区分方式として決定し、現在の区分方式に従ってデータ上で区分を実施する
ように構成される。
この実施形態では、混合負荷が並列に実行可能であるかどうかに関する特徴に従って、およびイメージセグメント化アルゴリズムを使用することによって、データベース中の混合負荷に関連するデータ上で最適区分が実施され、区分の後に、データは、混合負荷中にトランザクション負荷と分析負荷との特徴を有し、したがって、異なる負荷がデータベースシステム中のデータにアクセスするとき、それらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
上記の装置実施形態の各々の中の各モジュールは各方法実施形態に対応し、これらについて本明細書ではさらに説明しない。
さらに、実際の適用例では、上記のデータ区分装置はデータベース管理デバイスであり得る。図10は、本発明のデータベース管理デバイスの実施形態1の構造図である。図10に示されているように、データベース管理デバイスは、プロセッサ601と、受信機602と、メモリ603と、バス604とを含む。
プロセッサ601と、受信機602と、メモリ603とは、バス604を使用することによって相互に接続される。バス604は業界標準アーキテクチャ(ISA)バス、周辺構成要素相互接続(PCI)バス、拡張ISA(EISA)バスなどであり得る。バスはアドレスバス、データバス、制御バスなどにカテゴリー分類され得る。表現を簡単にするために、図10のバスはただ1つの実線によって表されているが、それは、1つのバスまたは1つのタイプのバスのみがあることを示すものではない。
メモリ603は、プログラムとデータとを記憶するように構成される。具体的には、プログラムはプログラムコードを含み得、プログラムコードはコンピュータ演算命令を含む。メモリ603は、高速ランダムアクセスメモリ(RAM)メモリを含み得、不揮発性メモリ、例えば、少なくとも1つの磁気ディスクメモリをも含み得る。プロセッサ601は、メモリ603に記憶されたプログラムを実行する。具体的には、データベース管理デバイスにおいて、受信機602は、ユーザによって入力される混合負荷とデータベースの構造情報とを受信するように構成され、混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含み、データベースの構造情報は、メモリ603によって記憶される、混合負荷に関連する少なくとも1つのタプルを含む。
プロセッサ601は、混合負荷とデータベースの構造情報とに従ってタプル関係情報を決定するように構成され、タプル関係情報は、データベースの構造情報においていずれかの2つのタプル間のトランザクション相関を含む。
プロセッサ601は、混合負荷が並列に実行可能であるかどうかに関する特徴とタプル関係情報とに従ってタプルスプリットコスト情報を決定するように構成され、タプルスプリットコスト情報は、データベースの構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、スプリットコストは、トランザクション相関を有する2つのタプルが異なるパーティションに記憶されるとき、トランザクション相関を有する2つのタプルにアクセスすることにおける混合負荷の効率への影響の程度を示すために使用される。
プロセッサ601は、タプルスプリットコスト情報に従って複数の区分方式を取得し、これらの区分方式から、最小総コスト値をもつ区分方式を最適区分方式として決定するように構成され、各区分方式の総コスト値は、区分方式が使用されるときの、データベースの構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である。
プロセッサ601は、データベースに記憶されたデータ上で区分処理を最適区分方式に従って実施するように構成される。
さらに、プロセッサ601は、混合負荷中に含まれる各負荷に従って順に、データベースの構造情報において、各負荷に関連するすべてのタプルを別々に決定する。
プロセッサ601は、各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、負荷に関連するタプル間の関係サブ情報を決定する。
プロセッサ601は、タプル関係情報を取得するために、混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集する。
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能でないというものである場合、プロセッサ601は、2つのタプル間のスプリットコストがプリセット正値であると決定する。
特徴が、タプル関係情報においてトランザクション相関を有する2つのタプルに関連する混合負荷が並列に実行可能であるというものである場合、プロセッサ601は、2つのタプル間のスプリットコストがプリセット負値であると決定する。
タプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続される。
さらに、プロセッサ601は、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって関係図上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応する。
関係図上で各タイプのセグメント化処理を実施するとき、プロセッサ601は、このタイプのセグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストを累積する。
プロセッサ601は、最小総コスト値に対応する区分方式を最適区分方式として決定する。
さらに、最適区分方式に従ってデータベース中のデータ上で区分処理が実施された後に、タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、プロセッサ601は、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって、調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値を決定し、調整されたタプルスプリットコスト情報は関係図によって表され、関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続される。
プロセッサ601は、最小総コスト値に対応する区分方式を第1の区分方式として決定する。
プロセッサ601は、最適区分方式と第1の区分方式とに従ってタプル移動コスト情報を生成し、タプル移動コスト情報に従って、調整された区分方式を決定する。
さらに、データベース管理デバイスのプロセッサ601は、第1の区分方式に従って最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルを決定するように構成され、最適パーティションは、最適区分方式に従って決定される記憶領域である。
プロセッサ601は、移動されるべきタプルと最適パーティションとの間の調整関係に従って、移動されるべきタプルと最適パーティションとの間の移動コストを決定するようにさらに構成される。
プロセッサ601は、タプルスプリットコスト情報に従って、移動されるべきタプルと最適パーティションとの間のスプリットコストを決定する。
プロセッサ601は、移動コストとスプリットコストとに従ってタプル移動コスト情報を生成する。
プロセッサ601は、複数のプリセット移動区分方式を取得するためにタプル移動コスト情報に従って最適区分方式を調整する。
プロセッサ601は、イメージセグメント化アルゴリズムを使用することによってプリセット移動区分方式の各々に対応する調整された総コスト値を取得する。
プロセッサ601は、複数のプリセット移動区分方式から、最小の調整された総コスト値をもつプリセット移動区分方式を調整された区分方式として決定する。
プロセッサ601は、最適区分方式に従ってデータベース中のデータ上で区分処理を実施することが失敗したとき、オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つのオンライン分析処理モードを使用することによってデータ区分を実施し、
各候補区分方式と最適区分方式との間の差分値を決定し、
最小差分値をもつ候補区分方式を現在の区分方式として決定し、現在の区分方式に従ってデータ上で区分を実施し、上記のオンライン分析処理モードは従来技術であり、例えば、ハッシュ関数処理、置換関数処理、ラウンドロビンアルゴリズム処理、およびレプリカ管理処理である
ようにさらに構成される。
この実施形態では、混合負荷が並列に実行可能であるかどうかに関する特徴に従って、およびイメージセグメント化アルゴリズムを使用することによって、データベース管理デバイスは、データベース中の混合負荷に関連するデータ上で最適区分を実施し、区分の後に、データは、混合負荷中にトランザクション負荷と分析負荷との特徴を有し、したがって、異なる負荷がデータベースシステム中のデータにアクセスするとき、それらの負荷はより高いアクセス効率を取得することができ、それにより、混合負荷を指向するデータベースシステムの動作性能が改善される。
当業者は、本方法実施形態のステップの全部または一部が、関連するハードウェアに命令するプログラムによって実装され得ることを理解されよう。プログラムはコンピュータ可読記憶媒体に記憶され得る。プログラムが動作すると、本方法実施形態のステップが実施される。上記の記憶媒体は、読み出し専用メモリ(ROM)、RAM、磁気ディスク、または光ディスクなど、プログラムコードを記憶することができる任意の媒体を含む。
最後に、上記の実施形態は、本発明を限定するためではなく、本発明の技術的解決策について説明するためのものにすぎないものであることに留意されたい。上記の実施形態に関して本発明について詳細に説明したが、当業者は、本発明の実施形態の技術的解決策の範囲から逸脱することなく、上記の実施形態で説明した技術的解決策に修正をさらに加えるか、あるいはそれらの一部または全部の技術的特徴と等価な置換を製作し得ることを理解されたい。
501 受信モジュール
502 関係決定モジュール
503 コスト決定モジュール
504 最適選択モジュール
505 区分モジュール
506 調整選択モジュール
507 差分選択モジュール
601 プロセッサ
602 受信機
603 メモリ
604 バス

Claims (15)

  1. データ区分方法であって、
    受信機が、ユーザによって入力される混合負荷とデータベースの構造情報とを受信するステップであって、前記混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含み、前記データベースの前記構造情報は、前記混合負荷に関連する少なくとも1つのタプルを含む、ステップと、
    プロセッサが、前記混合負荷と前記データベースの前記構造情報とに従ってタプル関係情報を決定するステップであって、前記タプル関係情報は、前記データベースの前記構造情報においていずれかの2つのタプル間のトランザクション相関を含む、ステップと、
    前記プロセッサが、前記タプル関係情報と前記混合負荷が並列に実行可能であるかどうかに関する特徴とに従ってタプルスプリットコスト情報を決定するステップであって、前記タプルスプリットコスト情報は、前記データベースの前記構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、前記スプリットコストは、前記トランザクション相関を有する前記2つのタプルが異なるパーティションに記憶されるとき、前記トランザクション相関を有する前記2つのタプルにアクセスすることにおける前記混合負荷の効率への影響の程度を示すために使用される、ステップと、
    前記プロセッサが、前記タプルスプリットコスト情報に従って複数の区分方式を取得して、前記区分方式から、最小総コスト値をもつ区分方式が最適区分方式であると決定するステップであって、各区分方式の総コスト値は、前記区分方式が使用されるときの、前記データベースの前記構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である、ステップと、
    前記プロセッサが、前記データベースに記憶されたデータ上で区分処理を前記最適区分方式に従って実施するステップと
    を含む、データ区分方法。
  2. 前記混合負荷と前記データベースの前記構造情報とに従って前記タプル関係情報を決定するステップは、
    前記プロセッサが、前記混合負荷中に含まれる各負荷に従って、前記データベースの前記構造情報において、前記各負荷に関連するタプルを別々に決定するステップと、
    前記プロセッサが、前記各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、前記各負荷に関連するタプル間の関係サブ情報を決定するステップと、
    前記タプル関係情報を取得するために、前記混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集するステップと
    を含む、請求項1に記載のデータ区分方法。
  3. 前記タプル関係情報と前記混合負荷が並列に実行可能であるかどうかに関する特徴とに従ってタプルスプリットコスト情報を決定する前記ステップは、
    前記特徴が、前記タプル関係情報においてトランザクション相関を有する2つのタプルに関連する前記混合負荷が並列に実行可能でないというものであるとき、前記2つのタプル間のスプリットコストがプリセット正値であると決定するステップと、
    前記特徴が、前記タプル関係情報においてトランザクション相関を有する2つのタプルに関連する前記混合負荷が並列に実行可能であるというものであるとき、前記2つのタプル間のスプリットコストがプリセット負値であると決定するステップと
    を含む、請求項1または2に記載のデータ区分方法。
  4. 前記タプルスプリットコスト情報は関係図によって表され、前記関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、前記タプルスプリットコスト情報に従って複数の区分方式を取得して、前記区分方式から、最小総コスト値をもつ区分方式が最適区分方式であると決定する前記ステップは、
    複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって前記関係図上で複数のタイプのセグメント化処理を実施するステップであって、各タイプのセグメント化処理は1つの区分方式に対応する、ステップと、
    各タイプのセグメント化処理が前記関係図上で実施されるとき、各タイプのセグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストを累積するステップと、
    最小総コスト値に対応する区分方式が最適区分方式であると決定するステップと
    を含む、請求項1〜3のいずれか一項に記載のデータ区分方法。
  5. 前記最適区分方式に従って前記データベース中の前記データ上で区分処理が実施された後に、前記方法は、前記タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、前記プロセッサが、複数の区分方式を決定するために前記イメージセグメント化アルゴリズムを使用することによって前記調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値を決定し、前記調整されたタプルスプリットコスト情報は関係図によって表され、前記関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続される、ステップと、
    前記プロセッサが、最小総コスト値に対応する区分方式が第1の区分方式であると決定するステップと、
    前記プロセッサが、前記最適区分方式と前記第1の区分方式とに従ってタプル移動コスト情報を生成し、前記タプル移動コスト情報に従って、調整された区分方式を決定する、ステップと
    を含む、請求項1〜4のいずれか一項に記載のデータ区分方法。
  6. 前記最適区分方式と前記第1の区分方式とに従ってタプル移動コスト情報を生成し、前記タプル移動コスト情報に従って、調整された区分方式を決定する、ステップは、
    前記第1の区分方式に従って前記最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルを決定するステップであって、前記最適パーティションは、前記最適区分方式に従って決定される記憶領域である、ステップと、
    移動されるべき前記タプルと前記最適パーティションとの間の調整関係に従って、移動されるべき前記タプルと前記最適パーティションとの間の移動コストを決定するステップと、
    前記調整されたタプルスプリットコスト情報に従って、移動されるべき前記タプルと前記最適パーティションとの間のスプリットコストを決定するステップと、
    前記移動コストと前記スプリットコストとに従ってタプル移動コスト情報を生成するステップと、
    複数の移動区分方式を取得するために前記タプル移動コスト情報に従って前記最適区分方式を調整するステップと、
    前記イメージセグメント化アルゴリズムを使用することによって前記移動区分方式の各々に対応する調整された総コスト値を取得するステップと、
    前記複数の移動区分方式から、最小の調整された総コスト値をもつ移動区分方式が前記調整された区分方式であると決定するステップと
    を含む、請求項5に記載のデータ区分方法。
  7. 前記最適区分方式に従う前記データベース中の前記データ上での区分処理が失敗したとき、前記方法は、
    前記プロセッサが、オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つの前記オンライン分析処理モードを使用することによってデータ区分を実施するステップと、
    前記プロセッサが、各候補区分方式と前記最適区分方式との間の差分値を決定するステップと、
    前記プロセッサが、最小差分値をもつ候補区分方式が現在の区分方式であると決定し、前記現在の区分方式に従って前記データ上で区分処理を実施するステップと
    をさらに含む、請求項1から6のいずれか一項に記載のデータ区分方法。
  8. 前記少なくとも2つのオンライン分析処理モードは、以下のオンライン分析処理モード、
    ハッシュ関数処理、置換関数処理、ラウンドロビンアルゴリズム処理、およびレプリカ管理処理
    のうちの少なくとも2つを含む、請求項7に記載のデータ区分方法。
  9. データ区分装置であって、
    ユーザによって入力される混合負荷とデータベースの構造情報とを受信する、受信モジュールであって、前記混合負荷は、少なくとも1つのトランザクション負荷および/または少なくとも1つの分析負荷を含むことと、前記データベースの前記構造情報は、前記混合負荷に関連する少なくとも1つのタプルを含む、受信モジュールと、
    前記混合負荷と前記データベースの前記構造情報とに従ってタプル関係情報を決定する、関係決定モジュールであって、前記タプル関係情報は、前記データベースの前記構造情報においていずれかの2つのタプル間のトランザクション相関を含む、関係決定モジュールと、
    前記タプル関係情報と前記混合負荷が並列に実行可能であるかどうかに関する特徴とに従ってタプルスプリットコスト情報を決定する、コスト決定モジュールであって、前記タプルスプリットコスト情報は、前記データベースの前記構造情報においてトランザクション相関を有するいずれかの2つのタプル間のスプリットコストを含み、前記スプリットコストは、前記トランザクション相関を有する前記2つのタプルが異なるパーティションに記憶されるとき、前記トランザクション相関を有する前記2つのタプルにアクセスすることにおける前記混合負荷の効率への影響の程度を示すために使用される、コスト決定モジュールと、
    前記タプルスプリットコスト情報に従って複数の区分方式を取得し、前記区分方式から、最小総コスト値をもつ区分方式が最適区分方式であると決定する、最適選択モジュールであって、各区分方式の総コスト値は、前記区分方式が使用されるときの、前記データベースの前記構造情報においてトランザクション相関を有するタプル間のスプリットコストの和である、最適選択モジュールと、
    前記データベースに記憶されたデータ上で区分処理を前記最適区分方式に従って実施する、区分モジュールと
    を備える、データ区分装置。
  10. 前記関係決定モジュールは、
    前記混合負荷中に含まれる各負荷に従って、前記データベースの前記構造情報において、前記各負荷に関連するタプルを別々に決定し、
    前記各負荷に関連するすべてのタプルのうちのいずれかの2つのタプル間のトランザクション相関に従って、前記各負荷に関連するタプル間の関係サブ情報を決定し、
    前記タプル関係情報を取得するために、前記混合負荷中の各負荷に関連するタプル間の関係サブ情報を収集する
    ように特に構成される、請求項9に記載のデータ区分装置。
  11. 前記コスト決定モジュールは、前記特徴が、前記タプル関係情報においてトランザクション相関を有する2つのタプルに関連する前記混合負荷が並列に実行可能でないというものであるとき、前記2つのタプル間のスプリットコストがプリセット正値であると決定し、
    前記特徴が、前記タプル関係情報においてトランザクション相関を有する2つのタプルに関連する前記混合負荷が並列に実行可能であるというものであるとき、前記2つのタプル間のスプリットコストがプリセット負値であると決定する
    ように特に構成される、請求項9または10に記載のデータ区分装置。
  12. 前記タプルスプリットコスト情報は関係図によって表され、前記関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、前記最適選択モジュールは、複数の区分方式を決定するためにイメージセグメント化アルゴリズムを使用することによって前記関係図上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、
    各タイプのセグメント化処理が前記関係図上で実施されるとき、各タイプのセグメント化処理に対応する区分方式の総コスト値を取得するために、各セグメント化された接続ラインによって接続される2つのタプル間のスプリットコストを累積し、
    最小総コスト値に対応する区分方式が最適区分方式であると決定する
    ように特に構成される、請求項9〜11のいずれか一項に記載のデータ区分装置。
  13. 前記装置は、前記区分モジュールが前記最適区分方式に従って前記データベース中の前記データ上で区分処理を実施した後に、前記タプルスプリットコスト情報が、調整されたタプルスプリットコスト情報に更新されるとき、複数の区分方式を決定するために前記イメージセグメント化アルゴリズムを使用することによって調整されたタプルスプリットコスト情報上で複数のタイプのセグメント化処理を実施し、各タイプのセグメント化処理は1つの区分方式に対応し、各区分方式の総コスト値を決定し、前記調整されたタプルスプリットコスト情報は関係図によって表され、前記関係図においてトランザクション相関を有するいずれかの2つのタプルは接続ラインによって接続され、
    最小総コスト値に対応する区分方式が第1の区分方式であると決定し、
    前記最適区分方式と前記第1の区分方式とに従ってタプル移動コスト情報を生成し、前記タプル移動コスト情報に従って、調整された区分方式を決定する
    調整選択モジュールをさらに備える、請求項9〜12のいずれか一項に記載のデータ区分装置。
  14. 前記調整選択モジュールは、前記第1の区分方式に従って前記最適区分方式が調整されるとき、各最適パーティションにおいて移動されるべきタプルを決定し、前記最適パーティションは、前記最適区分方式に従って決定される記憶領域であり、
    移動されるべき前記タプルと前記最適パーティションとの間の調整関係に従って、移動されるべき前記タプルと前記最適パーティションとの間の移動コストを決定し、
    前記調整されたタプルスプリットコスト情報に従って、移動されるべき前記タプルと前記最適パーティションとの間のスプリットコストを決定し、
    前記移動コストと前記スプリットコストとに従ってタプル移動コスト情報を生成し、
    複数の移動区分方式を取得するために前記タプル移動コスト情報に従って前記最適区分方式を調整し、
    前記イメージセグメント化アルゴリズムを使用することによって前記移動区分方式の各々に対応する調整された総コスト値を取得し、
    前記複数の移動区分方式から、最小の調整された総コスト値をもつ移動区分方式を前記調整された区分方式として決定する
    ように特に構成される、請求項13に記載のデータ区分装置。
  15. 前記装置は、
    前記区分モジュールが前記最適区分方式に従って前記データベース中の前記データ上で区分処理を実施することに失敗したとき、オンライン分析処理モードの各々に対応する候補区分方式を取得するために少なくとも2つの前記オンライン分析処理モードを使用してデータ区分を実施し、
    各候補区分方式と前記最適区分方式との間の差分値を決定し、
    最小差分値をもつ候補区分方式を現在の区分方式として決定し、前記現在の区分方式に従って前記データ上で区分処理を実施する、差分選択モジュール
    をさらに備える、請求項9から14のいずれか一項に記載のデータ区分装置。
JP2016517131A 2013-06-07 2014-01-22 データ区分方法および装置 Active JP6112440B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310226045.6A CN103336792B (zh) 2013-06-07 2013-06-07 数据分区方法和装置
CN201310226045.6 2013-06-07
PCT/CN2014/071039 WO2014194679A1 (zh) 2013-06-07 2014-01-22 数据分区方法和装置

Publications (2)

Publication Number Publication Date
JP2016520938A JP2016520938A (ja) 2016-07-14
JP6112440B2 true JP6112440B2 (ja) 2017-04-12

Family

ID=49244957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016517131A Active JP6112440B2 (ja) 2013-06-07 2014-01-22 データ区分方法および装置

Country Status (6)

Country Link
EP (1) EP2998883B1 (ja)
JP (1) JP6112440B2 (ja)
KR (1) KR101653776B1 (ja)
CN (1) CN103336792B (ja)
TW (1) TWI503679B (ja)
WO (1) WO2014194679A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103336792B (zh) * 2013-06-07 2016-11-23 华为技术有限公司 数据分区方法和装置
CN103661495B (zh) * 2014-01-07 2015-12-30 北京全路通信信号研究设计院集团有限公司 线路数据的处理方法及装置
US9875263B2 (en) * 2014-10-21 2018-01-23 Microsoft Technology Licensing, Llc Composite partition functions
WO2017209788A1 (en) * 2016-06-03 2017-12-07 Google Llc Weighted auto-sharding
KR101951999B1 (ko) 2016-08-31 2019-05-10 재단법인대구경북과학기술원 낮은 데이터 중복으로 빠른 쿼리 처리를 지원하는 관계형 데이터베이스 저장 시스템, 저장 방법 및 관계형 데이터베이스 저장 방법에 기초한 쿼리를 처리하는 방법
WO2018043843A1 (ko) * 2016-08-31 2018-03-08 재단법인대구경북과학기술원 낮은 데이터 중복으로 빠른 쿼리 처리를 지원하는 관계형 데이터베이스 저장 시스템, 저장 방법 및 관계형 데이터베이스 저장 방법에 기초한 쿼리를 처리하는 방법
CN106777230B (zh) * 2016-12-26 2020-01-07 东软集团股份有限公司 一种分区系统、分区方法及装置
CN107515899B (zh) * 2017-07-24 2020-05-22 北京中电普华信息技术有限公司 数据库联合分片方法、装置以及存储介质
CN108287868B (zh) * 2017-12-19 2019-02-26 北京国电通网络技术有限公司 一种数据库查询、数据块划分方法和装置
CN111198872B (zh) * 2020-01-06 2021-06-11 中科驭数(北京)科技有限公司 数据库处理事务的方法及装置
US11016969B1 (en) 2020-11-25 2021-05-25 Coupang Corp. Systems and methods for managing a highly available distributed hybrid transactional and analytical database

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3183736B2 (ja) * 1992-12-28 2001-07-09 富士通株式会社 データベース論理データ構造の動的変更方式
CA2150745C (en) * 1995-06-01 2001-05-01 Chaitanya K. Baru Method and apparatus for implementing partial declustering in a parallel database system
CA2159269C (en) * 1995-09-27 2000-11-21 Chaitanya K. Baru Method and apparatus for achieving uniform data distribution in a parallel database system
US7010521B2 (en) * 2002-05-13 2006-03-07 Netezza Corporation Optimized database appliance
US7043621B2 (en) * 2003-05-16 2006-05-09 Hewlett-Packard Development Company, L.P. Sharding method and apparatus using directed graphs
ATE376167T1 (de) * 2003-08-05 2007-11-15 Harman Becker Automotive Sys Verfahren zum verarbeiten von digitalen kartendaten
US7814080B1 (en) * 2003-10-27 2010-10-12 Teradata Us, Inc. Grouping database queries and/or transactions
US7574424B2 (en) * 2004-10-13 2009-08-11 Sybase, Inc. Database system with methodology for parallel schedule generation in a query optimizer
TW200636511A (en) * 2005-02-15 2006-10-16 Infomato Crosslink data structure, crosslink database, and system and method of organizing and retrieving information
US8005836B2 (en) * 2006-01-13 2011-08-23 Teradata Us, Inc. Method and system for performing logical partial declustering
KR100678123B1 (ko) * 2006-02-10 2007-02-02 삼성전자주식회사 관계형 데이터베이스에서의 xml 데이터 저장 방법
US7792822B2 (en) * 2007-03-02 2010-09-07 Microsoft Corporation Systems and methods for modeling partitioned tables as logical indexes
CN101145158A (zh) * 2007-06-06 2008-03-19 中兴通讯股份有限公司 一种数据库表分区的方法
US8150850B2 (en) * 2008-01-07 2012-04-03 Akiban Technologies, Inc. Multiple dimensioned database architecture
CN101876983B (zh) * 2009-04-30 2012-11-28 国际商业机器公司 数据库分区方法与系统
US8849749B2 (en) * 2010-05-14 2014-09-30 Oracle International Corporation Load balancing in parallel database systems using multi-reordering
US9740762B2 (en) * 2011-04-01 2017-08-22 Mongodb, Inc. System and method for optimizing data migration in a partitioned database
CN102799628B (zh) * 2012-06-21 2015-10-07 新浪网技术(中国)有限公司 在key-value数据库中进行数据分区的方法和装置
CN103336792B (zh) * 2013-06-07 2016-11-23 华为技术有限公司 数据分区方法和装置

Also Published As

Publication number Publication date
EP2998883A1 (en) 2016-03-23
CN103336792B (zh) 2016-11-23
KR20150010694A (ko) 2015-01-28
TWI503679B (zh) 2015-10-11
CN103336792A (zh) 2013-10-02
EP2998883B1 (en) 2018-09-12
WO2014194679A1 (zh) 2014-12-11
EP2998883A4 (en) 2016-06-29
JP2016520938A (ja) 2016-07-14
KR101653776B1 (ko) 2016-09-02
TW201510754A (zh) 2015-03-16

Similar Documents

Publication Publication Date Title
JP6112440B2 (ja) データ区分方法および装置
US8082234B2 (en) Closed-loop system management method and process capable of managing workloads in a multi-system database environment
CN108628986A (zh) 数据查询方法、装置、计算机设备和存储介质
US20160147837A1 (en) Multisource semantic partitioning
EP2990962A1 (en) Database management method and system
Liu et al. Consensus model based on probability K-means clustering algorithm for large scale group decision making
US11182370B2 (en) Reorganizing a data table to improve analytical database performance
CN111966495B (zh) 数据处理方法和装置
US9323796B2 (en) Data partitioning method and apparatus
US9483377B2 (en) Apparatus and method for enabling a user to monitor skew of resource usage across different components of a large database system
JP2008158748A (ja) 変数選択装置、方法およびプログラム
CN104809210B (zh) 一种基于分布式计算框架下海量数据加权top‑k查询方法
US9898518B2 (en) Computer system, data allocation management method, and program
US10558633B1 (en) Hash-value-based single-pass data store statistics collection
CN109101621A (zh) 一种数据的批量处理方法及系统
Sun et al. Mapreduce based location selection algorithm for utility maximization with capacity constraints
JPH11232278A (ja) 情報源推薦装置
Seo et al. DARK: Deep automatic Redis knobs tuning system depending on the persistence method
CN115061663A (zh) 基于客户需求的微服务划分方法、装置、电子设备及介质
Le et al. Dynamic estimation and Grid partitioning approach for Multi-Objective Optimization Problems in medical cloud federations
US11620271B2 (en) Relationship analysis using vector representations of database tables
CN117971888B (zh) 数据引擎的确定方法、装置、设备、存储介质及程序产品
Kobashi et al. Cerise: an RDF store with adaptive data reallocation
CN116881230A (zh) 一种基于云平台的关系数据库自动优化方法
Siviero et al. Towards a Memory-Adaptive Hybrid Hash Join Design

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170302

R150 Certificate of patent or registration of utility model

Ref document number: 6112440

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250