JP5283675B2 - データベース管理システム及び方法 - Google Patents
データベース管理システム及び方法 Download PDFInfo
- Publication number
- JP5283675B2 JP5283675B2 JP2010214239A JP2010214239A JP5283675B2 JP 5283675 B2 JP5283675 B2 JP 5283675B2 JP 2010214239 A JP2010214239 A JP 2010214239A JP 2010214239 A JP2010214239 A JP 2010214239A JP 5283675 B2 JP5283675 B2 JP 5283675B2
- Authority
- JP
- Japan
- Prior art keywords
- task
- query
- database
- tasks
- data read
- 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
- 238000000034 method Methods 0.000 title claims description 62
- 238000007726 management method Methods 0.000 claims description 69
- 238000003860 storage Methods 0.000 claims description 59
- 238000005457 optimization Methods 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 22
- 238000004904 shortening Methods 0.000 claims description 5
- 230000007423 decrease Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 51
- 230000008569 process Effects 0.000 description 50
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000008707 rearrangement Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
(A)データ読出し処理に対して複数の独立したタスクを生成するステップ、
(B)該生成された複数のタスクのデータ読出し処理において、外部記憶装置からのデータ読出しが必要な場合、オペレーティングシステムにデータ読出し要求を発行するステップ、
(C)該データ読出しが完了したタスクから当該データベースオペレーションの実行を再開するステップ、
(D)該データベースオペレーションに依存した次のデータベースオペレーションがある場合、該次のデータベースオペレーションを実行するステップ、
を実行することができる。
(a)読出し要求に対するスケジューリングフラグを付与する処理、
(b)該スケジューリングフラグの値に応じて複数の読出し要求キューの中から一つの読出し要求キューを選択する処理、
(c)選択した読出し要求キューへ読出し要求を格納する処理、
を実行することができる。読出し最適化部では、データ読出し要求をキューに保管し続ける時間長を変更することができる。
Claims (73)
- 問合せを受け付ける受付部と、
前記受け付けた問合せを実行する実行部と
を備え、
前記実行部は、前記問合せの実行において、
(a) 前記問合せを実行するのに必要なオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行する場合には、そのために当該実行結果に基づく1以上のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、2以上の実行可能なタスクが存在する場合には、それら2以上のタスクのうちの少なくとも2つのタスクを並行して実行する、
コンピュータシステム。 - 前記実行部は、前記(c)において、所定の状況にあるタスクの現存数が所定数に達している場合には、新たなタスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記新たなタスクを生成する、
請求項1記載のコンピュータシステム。 - 前記実行部は、前記(c)におけるタスクの生成において、前記現存数が前記所定数より減り、かつ、生成が待たれているタスクより高い優先度を有するタスクの生成が待たれていない場合に、前記生成が待たれているタスクの生成を再開する、
請求項2に記載のコンピュータシステム。 - 前記2以上のタスクを並行して実行することにより、複数個のデータ読出し要求が前記実行部から発行されるようになっており、
前記実行部から発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求を、前記複数個のデータ読出し要求を受け付けた順序とは異なる順序であって全体としてのデータ読出し時間長を短縮化するための順序に並び替えて発行する読出し順序制御部を更に備え、
前記全体としてのデータ読出し時間長は、前記複数個のデータ読出し要求が前記実行部から前記読出し順序制御部に発行されてから前記複数個のデータ読出し要求に対応したデータが前記実行部に読出されるまでの時間長であり、
前記読出し順序制御部は、前記複数個のデータ読出し要求でそれぞれ指定されている複数の読出し元記憶位置に基づいて、前記複数個のデータ読出し要求を前記異なる順序に並び替える、
請求項1乃至3のうちのいずれか1項に記載のコンピュータシステム。 - 前記読出し順序制御部が、優先度の異なる複数のキューを更に備え、
前記実行部が、前記複数のキューのうち、前記受け付けた問合せが持つ入出力要求の緊急性を表す優先度に対応するキューに、前記複数のデータ読出し要求を格納し、
前記読出し順序制御部は、より高い優先度のキューに格納されたデータ読出し要求を、他のデータ読出し要求より優先的に発行する、
請求項4に記載のコンピュータシステム。 - 前記複数のキューは、スケジュール対象キューとスケジュール対象外キューであり、
前記実行部は、緊急性の低いデータ読み出し要求を前記スケジュール対象キューに格納し、緊急性が高いデータ読み出し要求を前記スケジュール対象外キューに格納し、
前記読み出し順序制御部は、前記スケジュール対象キューよりも前記スケジュール対象外キューのデータ読み出し要求を優先的に発行するようになっており、
前記実行部は、スケジュールキャンセルコマンドを発行し、
前記読出し順序制御部は、前記スケジュールキャンセルコマンドを受け付けた場合には、前記スケジュールキャンセルコマンドで指定されているデータ読み出し要求、又は、前記スケジュール対象外キューに残っている全てのデータ読み出し要求を、前記スケジュール対象外キューから取り出し、取り出されたデータ読み出し要求を、前記スケジュール対象キューに格納する、
請求項5に記載のコンピュータシステム。 - 前記実行部は、生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項1乃至6のうちのいずれか1項に記載のコンピュータシステム。 - データベースを管理するデータベース管理システムであって、
前記データベースへのクエリを受け付けるクエリ受付部と、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成部と、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行部と
を備え、
前記クエリ実行部は、前記クエリの実行において、
(a) データベースオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行する場合には、そのために当該実行結果に基づき複数のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、少なくとも2つのタスクを並行して実行し、
前記クエリ実行部は、前記(c)における前記タスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
データベース管理システム。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項8に記載のデータベース管理システム。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項8に記載のデータベース管理システム。 - 前記2以上のタスクを並行して実行することにより、複数個のデータ読出し要求が前記実行部から発行されるようになっており、
前記クエリ実行部から発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求を、前記複数個のデータ読出し要求を受け付けた順序とは異なる順序であって全体としてのデータ読出し時間長を短縮化するための順序に並び替えて発行する読出し順序制御部を更に備え、
前記全体としてのデータ読出し時間長は、前記複数個のデータ読出し要求が前記クエリ実行部から前記読出し順序制御部に発行されてから前記複数個のデータ読出し要求に対応したデータが前記クエリ実行部に読出されるまでの時間長であり、
前記読出し順序制御部は、前記複数個のデータ読出し要求でそれぞれ指定されている複数の読出し元記憶位置に基づいて、前記複数個のデータ読出し要求を前記異なる順序に並び替える、
請求項8乃至10のうちのいずれか1項に記載のデータベース管理システム。 - 前記クエリ実行部から発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求を前記データベースに発行する読出し最適化部を備え、
前記読出し順序制御部が、優先度の異なる複数のキューを更に備え、
前記クエリ実行部が、前記複数の生成されたタスクのうちの1つのタスクを実行する際に、前記複数のキューのうち、当該タスクの優先度に対応するキューに、前記複数のデータ読出し要求を格納し、
前記読出し最適化部は、より高い優先度のキューに格納されたデータ読出し要求を、他のデータ読出し要求より優先的に発行する、
請求項8乃至11のうちのいずれか1項に記載のデータベース管理システム。 - 前記複数のキューは、スケジュール対象キューとスケジュール対象外キューであり、
前記クエリ実行部は、緊急性の低いデータ読み出し要求を前記スケジュール対象キューに格納し、緊急性が高いデータ読み出し要求を前記スケジュール対象外キューに格納し、
前記読み出し順序制御部は、前記スケジュール対象キューよりも前記スケジュール対象外キューのデータ読み出し要求を優先的に発行するようになっており、
前記クエリ実行部は、スケジュールキャンセルコマンドを発行し、
前記読出し順序制御部は、前記スケジュールコマンドを受け付けた場合には、前記スケジュールキャンセルコマンドで指定されているデータ読み出し要求、又は、前記スケジュール対象外キューに残っている全てのデータ読み出し要求を、前記スケジュール対象外キューから取り出し、取り出されたデータ読み出し要求を、前記スケジュール対象キューに格納する、
請求項12に記載のデータベース管理システム。 - 前記クエリ実行部は、前記クエリプランを参照し、前記(b)で実行されるタスクに割り当てられているデータベースオペレーションが或る段階よりも後段のデータベースオペレーションであると認識された場合に、第1の優先度のキューにデータ読出し要求を格納することを決定し、前記(b)で実行されるタスクに割り当てられているデータベースオペレーションが或る段階よりも後段のデータベースオペレーションでないと認識された場合に、前記第1の優先度よりも高い第2の優先度のキューにデータ読出し要求を格納することを決定する、又は、
前記クエリ実行部は、前記(b)において緊急性の低いアクセス特性を有するデータベースアクセスのためのデータ読出し要求を発行する場合には、第3の優先度のキューにデータ読出し要求を格納することを決定し、前記(b)において緊急性の低いアクセス特性よりも緊急性の高いアクセス特定を有するデータベースアクセスのためのデータ読出し要求を発行する場合には、前記第3の優先度よりも低い第4の優先度のキューにデータ読出し要求を格納することを決定する、
請求項12に記載のデータベース管理システム。 - 前記クエリプランに基づき前記複数のデータベースオペレーションのうちの未実行のデータベースオペレーションの数である残存ステップ数を計算し、前記計算された残存ステップ数の少ないタスクの優先度を上げるタスク管理部、
を更に備える、
請求項8乃至14のうちのいずれか1項に記載のデータベース管理システム。 - 前記クエリ実行部は、前記タスク管理部によって前記上げられた優先度を有する前記タスクを実行することにより発行される前記データ読出し要求を、前記上げられた優先度に対応するキューに格納する、
請求項15に記載のデータベース管理システム。 - 前記クエリ実行部は、生成された各タスクの実行において、前記データベースのデータの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項8乃至16のうちのいずれか1項に記載のデータベース管理システム。 - データベースを管理するデータベース管理システムであって、
前記データベースへのクエリを受け付けるクエリ受付部と、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成部と、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行部と
を備え、
前記クエリ実行部は、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(1c) 前記(1a)における第一のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第一のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第一のタスクの生成を再開すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2c) 前記(2a)における第二のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第二のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第二のタスクの生成を再開すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3c) 前記(3a)における第三のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第三のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第三のタスクの生成を再開すること、
を行い、少なくとも2つのタスクを並行して実行する、
データベース管理システム。 - 前記第一、第二、第三のタスクのうちの1つのタスクで発行したデータ読出し要求のデータ読出しが完了すると、前記クエリ実行部が、前記1つのタスクで前記読み出したデータを以って前記対応したデータベースオペレーションを実行し、その後に前記1つのタスクを消滅させる、
請求項18に記載のデータベース管理システム。 - 前記より高い優先度を有するタスクは、後段のタスクである
請求項18又は19に記載のデータベース管理システム。 - 前記より高い優先度を有するタスクは、前記複数のデータベースオペレーションのうちの未実行のデータベースオペレーションの数である残存ステップ数の少ないタスクである
請求項18又は19に記載のデータベース管理システム。 - データベースを管理するデータベース管理システムと、
前記データベース管理システムから発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求の前記データベースへの発行順序を制御する読出し順序制御部と
を備え、
前記データベース管理システムは、
データベースを管理するデータベース管理システムであって、
前記データベースへのクエリを受け付けるクエリ受付部と、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成部と、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行部と
を備え、
前記クエリ実行部は、前記クエリの実行において、
(a) データベースオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行する場合には、そのために当該実行結果に基づき複数のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、少なくとも2つのタスクを並行して実行し、
前記クエリ実行部は、前記(c)における前記タスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
コンピュータシステム。 - データベースを管理するデータベース管理システムと、
前記データベース管理システムから発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求の前記データベースへの発行順序を制御する読出し順序制御部と
を備え、
前記データベース管理システムは、
前記データベースへのクエリを受け付けるクエリ受付部と、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成部と、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行部と
を備え、
前記クエリ実行部は、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(1c) 前記(1a)における第一のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第一のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第一のタスクの生成を再開すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2c) 前記(2a)における第二のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第二のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第二のタスクの生成を再開すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3c) 前記(3a)における第三のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第三のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第三のタスクの生成を再開すること、
を行い、少なくとも2つのタスクを並行して実行する、
コンピュータシステム。 - 問合せを受け付ける受付ステップと、
前記受け付けた問合せを実行する実行ステップと
を備え、
前記実行ステップでは、前記問合せの実行において、
(a) 前記問合せを実行するのに必要なオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行する場合には、そのために当該実行結果に基づく1以上のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、2以上の実行可能なタスクが存在する場合には、それら2以上のタスクのうちの少なくとも2つのタスクを並行して実行する、
問合せ実行方法。 - データベースへのクエリを受け付けるクエリ受付ステップと、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成ステップと、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行ステップと
を有し、
前記クエリ実行ステップでは、前記クエリの実行において、
(a) データベースオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行する場合には、そのために当該実行結果に基づき複数のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、少なくとも2つのタスクを並行して実行し、
前記(c)における前記タスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
データベース管理方法。 - データベースへのクエリを受け付けるクエリ受付ステップと、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成ステップと、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行ステップと
を有し、
前記クエリ実行ステップでは、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(1c) 前記(1a)における第一のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第一のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第一のタスクの生成を再開すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2c) 前記(2a)における第二のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第二のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第二のタスクの生成を再開すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3c) 前記(3a)における第三のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第三のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第三のタスクの生成を再開すること、
を行い、少なくとも2つのタスクを並行して実行する、
データベース管理方法。 - 問合せを受け付ける受付ステップと、
前記受け付けた問合せを実行する実行ステップと
をコンピュータに実行させ、
前記実行ステップでは、前記問合せの実行において、
(a) 前記問合せを実行するのに必要なオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行する場合には、そのために当該実行結果に基づく1以上のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、2以上の実行可能なタスクが存在する場合には、それら2以上のタスクのうちの少なくとも2つのタスクを並行して実行する、
ことを前記コンピュータに実行させるコンピュータプログラム。 - データベースへのクエリを受け付けるクエリ受付ステップと、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成ステップと、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行ステップと
をコンピュータに実行させ、
前記クエリ実行ステップでは、前記クエリの実行において、
(a) データベースオペレーションを実行するためのタスクを生成すること、
(b) 生成されたタスクを実行することで、当該タスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(c) (b)で実行されたタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行する場合には、そのために当該実行結果に基づき複数のタスクを新たに生成すること、及び、
(d) その新たに生成した各タスクについて(b)及び(c)を行うこと、
を行い、少なくとも2つのタスクを並行して実行し、
前記(c)における前記タスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
ことを前記コンピュータに実行させるコンピュータプログラム。 - データベースへのクエリを受け付けるクエリ受付ステップと、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成ステップと、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行ステップと
をコンピュータに実行させ、
前記クエリ実行ステップでは、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(1c) 前記(1a)における第一のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第一のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第一のタスクの生成を再開すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2c) 前記(2a)における第二のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第二のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第二のタスクの生成を再開すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3c) 前記(3a)における第三のタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記第三のタスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記第三のタスクの生成を再開すること、
を行い、少なくとも2つのタスクを並行して実行する、
ことを前記コンピュータに実行させるコンピュータプログラム。 - データベースを管理するデータベース管理システムであって、
前記データベースへのクエリを受け付けるクエリ受付部と、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成部と、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行部と
を備え、
前記クエリ実行部は、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
を行い、少なくとも2つのタスクを並行して実行する、
データベース管理システム。 - 前記クエリ実行部は、前記(1a)、(2a)及び(3a)のそれぞれにおける前記タスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
請求項30に記載のデータベース管理システム。 - 前記クエリ実行部は、前記(1a)、(2a)及び(3a)のそれぞれにおける前記タスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記タスクの生成を再開する、
請求項30に記載のデータベース管理システム。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項31又は32に記載のデータベース管理システム。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項31又は32に記載のデータベース管理システム。 - 前記2以上のタスクを並行して実行することにより、複数個のデータ読出し要求が前記実行部から発行されるようになっており、
前記クエリ実行部から発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求を、前記複数個のデータ読出し要求を受け付けた順序とは異なる順序であって全体としてのデータ読出し時間長を短縮化するための順序に並び替えて発行する読出し順序制御部を更に備え、
前記全体としてのデータ読出し時間長は、前記複数個のデータ読出し要求が前記クエリ実行部から前記読出し順序制御部に発行されてから前記複数個のデータ読出し要求に対応したデータが前記クエリ実行部に読出されるまでの時間長であり、
前記読出し順序制御部は、前記複数個のデータ読出し要求でそれぞれ指定されている複数の読出し元記憶位置に基づいて、前記複数個のデータ読出し要求を前記異なる順序に並び替える、
請求項30乃至34のうちのいずれか1項に記載のデータベース管理システム。 - 前記読出し順序制御部が、優先度の異なる複数のキューを更に備え、
前記クエリ実行部が、前記複数のキューのうち、前記受け付けた問合せが持つ入出力要求の緊急性を表す優先度に対応するキューに、前記複数のデータ読出し要求を格納し、
前記読出し順序制御部は、より高い優先度のキューに格納されたデータ読出し要求を、他のデータ読出し要求より優先的に発行する、
請求項35に記載のデータベース管理システム。 - 前記複数のキューは、スケジュール対象キューとスケジュール対象外キューであり、
前記クエリ実行部は、緊急性の低いデータ読み出し要求を前記スケジュール対象キューに格納し、緊急性が高いデータ読み出し要求を前記スケジュール対象外キューに格納し、
前記読み出し順序制御部は、前記スケジュール対象キューよりも前記スケジュール対象外キューのデータ読み出し要求を優先的に発行するようになっており、
前記クエリ実行部は、スケジュールキャンセルコマンドを発行し、
前記読出し順序制御部は、前記スケジュールコマンドを受け付けた場合には、前記スケジュールキャンセルコマンドで指定されているデータ読み出し要求、又は、前記スケジュール対象外キューに残っている全てのデータ読み出し要求を、前記スケジュール対象外キューから取り出し、取り出されたデータ読み出し要求を、前記スケジュール対象キューに格納する、
請求項36に記載のデータベース管理システム。 - 前記クエリ実行部は、前記クエリプランを参照し、前記(1b)、(2b)及び(3b)のそれぞれで実行されるタスクに割り当てられているデータベースオペレーションが或る段階よりも後段のデータベースオペレーションであると認識された場合に、第1の優先度のキューにデータ読出し要求を格納することを決定し、前記(1b)、(2b)及び(3b)のそれぞれで実行されるタスクに割り当てられているデータベースオペレーションが或る段階よりも後段のデータベースオペレーションでないと認識された場合に、前記第1の優先度よりも高い第2の優先度のキューにデータ読出し要求を格納することを決定する、又は、
前記クエリ実行部は、前記(1b)、(2b)及び(3b)のそれぞれにおいて緊急性の低いアクセス特性を有するデータベースアクセスのためのデータ読出し要求を発行する場合には、第3の優先度のキューにデータ読出し要求を格納することを決定し、前記(1b)、(2b)及び(3b)のそれぞれにおいて緊急性の低いアクセス特性よりも緊急性の高いアクセス特定を有するデータベースアクセスのためのデータ読出し要求を発行する場合には、前記第3の優先度よりも低い第4の優先度のキューにデータ読出し要求を格納することを決定する、
請求項36に記載のデータベース管理システム。 - 前記クエリプランに基づき前記複数のデータベースオペレーションのうちの未実行のデータベースオペレーションの数である残存ステップ数を計算し、前記計算された残存ステップ数の少ないタスクの優先度を上げるタスク管理部、
を更に備え、
前記クエリ実行部は、前記上げられた優先度を有する前記タスクを実行することにより発行される前記データ読出し要求を、前記上げられた優先度に対応するキューに格納する、
請求項36に記載のデータベース管理システム。 - 前記クエリ実行部は、生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項30乃至34のうちのいずれか1項に記載のデータベース管理システム。 - データベースへのクエリを受け付けるクエリ受付ステップと、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成ステップと、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行ステップと
を有し、
前記クエリ実行ステップでは、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
を行い、少なくとも2つのタスクを並行して実行する、
データベース管理方法。 - 前記クエリ実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
請求項41に記載のデータベース管理方法。 - 前記クエリ実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記タスクの生成を再開する、
請求項41に記載のデータベース管理方法。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項42又は43に記載のデータベース管理方法。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項42又は43に記載のデータベース管理方法。 - 前記クエリ実行ステップでは、生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項41乃至45のうちのいずれか1項に記載のデータベース管理方法。 - データベースへのクエリを受け付けるクエリ受付ステップと、
前記受け付けたクエリから、前記受け付けたクエリを実行するのに必要な複数のデータベースオペレーションを有するクエリプランを生成するクエリプラン生成ステップと、
前記生成したクエリプランに基づき前記受け付けたクエリを実行するクエリ実行ステップと
をコンピュータに実行させ、
前記クエリ実行ステップでは、前記クエリの実行において、
(1a) データベースオペレーションを実行するための第一のタスクを生成すること、
(1b) 前記生成された第一のタスクを実行することで、前記第一のタスクに対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(2a) 前記第一のタスクに対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 前記生成された第二のタスクの各々を実行することで、前記第二のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
(3a) 前記第二のタスクの各々に対応したデータベースオペレーションの実行結果に基づきさらに次のデータベースオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 前記生成された第三のタスクの各々を実行することで、前記第三のタスクの各々に対応したデータベースオペレーションに必要なデータを読み出すために前記データベースへデータ読出し要求を発行すること、
を行い、少なくとも2つのタスクを並行して実行する、
ことを前記コンピュータに実行させるコンピュータプログラム。 - 前記クエリ実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
請求項47に記載のコンピュータプログラム。 - 前記クエリ実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記タスクの生成を再開する、
請求項47に記載のコンピュータプログラム。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項48又は49に記載のコンピュータプログラム。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項48又は49に記載のコンピュータプログラム。 - 前記クエリ実行ステップでは、生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項47乃至51のうちのいずれか1項に記載のコンピュータプログラム。 - 問合せを受け付ける受付部と、
前記受け付けた問合せを実行する実行部と
を備え、
前記実行部は、前記問合せの実行において、
(1a) 前記問合せを実行するのに必要なオペレーションを実行するための第一のタスクを生成すること、
(1b) 生成された第一のタスクを実行することで、前記第一のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(2a) 前記第一のタスクに対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 生成された複数の第二のタスクの各々を実行することで、前記第二のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(3a) 前記第二のタスクの各々に対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 生成された複数の第三のタスクの各々を実行することで、前記第三のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
を行い、少なくとも2つのタスクを並行して実行する、
コンピュータシステム。 - 前記実行部は、前記(1a)、(2a)及び(3a)のそれぞれにおけるタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
請求項53に記載のコンピュータシステム。 - 前記実行部は、前記(1a)、(2a)及び(3a)のそれぞれにおけるタスクの生成において、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記タスクの生成を再開する、
請求項53に記載のコンピュータシステム。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項54又は55に記載のコンピュータシステム。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項54又は55に記載のコンピュータシステム。 - 前記2以上のタスクを並行して実行することにより、複数個のデータ読出し要求が前記実行部から発行されるようになっており、
前記実行部から発行された複数個のデータ読出し要求を受け付け、受け付けた複数個のデータ読出し要求を、前記複数個のデータ読出し要求を受け付けた順序とは異なる順序であって全体としてのデータ読出し時間長を短縮化するための順序に並び替えて発行する読出し順序制御部を更に備え、
前記全体としてのデータ読出し時間長は、前記複数個のデータ読出し要求が前記実行部から前記読出し順序制御部に発行されてから前記複数個のデータ読出し要求に対応したデータが前記実行部に読出されるまでの時間長であり、
前記読出し順序制御部は、前記複数個のデータ読出し要求でそれぞれ指定されている複数の読出し元記憶位置に基づいて、前記複数個のデータ読出し要求を前記異なる順序に並び替える、
請求項53乃至57のうちのいずれか1項に記載のコンピュータシステム。 - 前記読出し順序制御部が、優先度の異なる複数のキューを更に備え、
前記実行部が、前記複数のキューのうち、前記受け付けた問合せが持つ入出力要求の緊急性を表す優先度に対応するキューに、前記複数のデータ読出し要求を格納し、
前記読出し順序制御部は、より高い優先度のキューに格納されたデータ読出し要求を、他のデータ読出し要求より優先的に発行する、
請求項58に記載のコンピュータシステム。 - 前記複数のキューは、スケジュール対象キューとスケジュール対象外キューであり、
前記実行部は、緊急性の低いデータ読み出し要求を前記スケジュール対象キューに格納し、緊急性が高いデータ読み出し要求を前記スケジュール対象外キューに格納し、
前記読み出し順序制御部は、前記スケジュール対象キューよりも前記スケジュール対象外キューのデータ読み出し要求を優先的に発行するようになっており、
前記実行部は、スケジュールキャンセルコマンドを発行し、
前記読出し順序制御部は、前記スケジュールキャンセルコマンドを受け付けた場合には、前記スケジュールキャンセルコマンドで指定されているデータ読み出し要求、又は、前記スケジュール対象外キューに残っている全てのデータ読み出し要求を、前記スケジュール対象外キューから取り出し、取り出されたデータ読み出し要求を、前記スケジュール対象キューに格納する、
請求項59に記載のコンピュータシステム。 - 前記実行部は、前記(1b)、(2b)及び(3b)のそれぞれにおける生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項53乃至57のうちのいずれか1項に記載のコンピュータシステム。 - 問合せを受け付ける受付ステップと、
前記受け付けた問合せを実行する実行ステップと
を有し、
前記実行ステップでは、前記問合せの実行において、
(1a) 前記問合せを実行するのに必要なオペレーションを実行するための第一のタスクを生成すること、
(1b) 生成された第一のタスクを実行することで、前記第一のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(2a) 前記第一のタスクに対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 生成された複数の第二のタスクの各々を実行することで、前記第二のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(3a) 前記第二のタスクの各々に対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 生成された複数の第三のタスクの各々を実行することで、前記第三のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
を行い、少なくとも2つのタスクを並行して実行する、
問合せ実行方法。 - 前記実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
請求項62に記載の問合せ実行方法。 - 前記実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記タスクの生成を再開する、
請求項62に記載の問合せ実行方法。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項63又は64に記載の問合せ実行方法。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項63又は64に記載の問合せ実行方法。 - 前記実行ステップでは、前記(1b)、(2b)及び(3b)のそれぞれにおける生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項62乃至66のうちのいずれか1項に記載の問合せ実行方法。 - 問合せを受け付ける受付ステップと、
前記受け付けた問合せを実行する実行ステップと
をコンピュータに実行させ、
前記実行ステップでは、前記問合せの実行において、
(1a) 前記問合せを実行するのに必要なオペレーションを実行するための第一のタスクを生成すること、
(1b) 生成された第一のタスクを実行することで、前記第一のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(2a) 前記第一のタスクに対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行するために複数の第二のタスクを新たに生成すること、
(2b) 生成された複数の第二のタスクの各々を実行することで、前記第二のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
(3a) 前記第二のタスクの各々に対応したオペレーションの実行結果に基づきさらに次のオペレーションを実行するために複数の第三のタスクを新たに生成すること、及び、
(3b) 生成された複数の第三のタスクの各々を実行することで、前記第三のタスクに対応したオペレーションに必要なデータを記憶装置から読み出すためのデータ読出し要求を発行すること、
を行い、少なくとも2つのタスクを並行して実行する、
ことを前記コンピュータに実行させるコンピュータプログラム。 - 前記実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減り、かつ、より高い優先度を有するタスクの生成が待たれていない場合に、前記タスクの生成を再開する、
請求項68に記載のコンピュータプログラム。 - 前記実行ステップでは、前記(1a)、(2a)及び(3a)のそれぞれにおいて、所定の状況にあるタスクの現存数が所定数に達している場合には、前記タスクの生成を待ち、前記現存数が前記所定数より減った場合に、前記タスクの生成を再開する、
請求項68に記載のコンピュータプログラム。 - 前記所定の状況にあるタスクとは任意の状況にあるタスクである、
請求項69又は70に記載のコンピュータプログラム。 - 前記所定の状況にあるタスクとはデータ読出し要求の完了を待っているタスクである、
請求項69又は70に記載のコンピュータプログラム。 - 前記実行ステップでは、前記(1b)、(2b)及び(3b)のそれぞれにおける生成された各タスクの実行において、データの取得を待ち、該データを取得した後、データの取得待ちを開始した順序と同じ順序で、タスクの実行を再開する、
請求項68乃至72のうちのいずれか1項に記載のコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010214239A JP5283675B2 (ja) | 2010-09-24 | 2010-09-24 | データベース管理システム及び方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010214239A JP5283675B2 (ja) | 2010-09-24 | 2010-09-24 | データベース管理システム及び方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005213090A Division JP4611830B2 (ja) | 2005-07-22 | 2005-07-22 | データベース管理システム及び方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013080323A Division JP5674850B2 (ja) | 2013-04-08 | 2013-04-08 | データベース管理システム及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011034575A JP2011034575A (ja) | 2011-02-17 |
JP5283675B2 true JP5283675B2 (ja) | 2013-09-04 |
Family
ID=43763523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010214239A Active JP5283675B2 (ja) | 2010-09-24 | 2010-09-24 | データベース管理システム及び方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5283675B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11941029B2 (en) | 2022-02-03 | 2024-03-26 | Bank Of America Corporation | Automatic extension of database partitions |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3004102B2 (ja) * | 1991-10-04 | 2000-01-31 | 株式会社東芝 | データベース演算処理装置 |
JPH05324430A (ja) * | 1992-05-26 | 1993-12-07 | Toshiba Corp | データ処理装置 |
US6108653A (en) * | 1998-08-31 | 2000-08-22 | Platinum Technology Ip, Inc. | Method and apparatus for fast and comprehensive DBMS analysis |
JP4116413B2 (ja) * | 2002-12-11 | 2008-07-09 | 株式会社日立製作所 | プリフェッチアプライアンスサーバ |
US20050131893A1 (en) * | 2003-12-15 | 2005-06-16 | Sap Aktiengesellschaft | Database early parallelism method and system |
-
2010
- 2010-09-24 JP JP2010214239A patent/JP5283675B2/ja active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11941029B2 (en) | 2022-02-03 | 2024-03-26 | Bank Of America Corporation | Automatic extension of database partitions |
Also Published As
Publication number | Publication date |
---|---|
JP2011034575A (ja) | 2011-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4611830B2 (ja) | データベース管理システム及び方法 | |
KR101721892B1 (ko) | 쿼리 관리 | |
US9183234B2 (en) | Merge monitor for table delta partitions | |
US8510316B2 (en) | Database processing system and method | |
JP4612710B2 (ja) | トランザクション並行制御方法、データベース管理システム、およびプログラム | |
US9639576B2 (en) | Database management system, computer, and database management method | |
US10885030B2 (en) | Database management system and computer system having first and second query execution parts which execute database operations in parallel | |
JP5733680B2 (ja) | コマンド実行装置、コマンド実行システム、コマンド実行方法およびコマンド実行プログラム | |
US11636107B2 (en) | Database management system, computer, and database management method | |
JP5652480B2 (ja) | データベース更新通知方法 | |
EP3871106A1 (en) | Microservices data aggregation search engine updating | |
JP2018147301A (ja) | 計算機システム及び処理の割当方法 | |
JP6272556B2 (ja) | 共有リソース更新装置及び共有リソース更新方法 | |
JP5283675B2 (ja) | データベース管理システム及び方法 | |
JP5674850B2 (ja) | データベース管理システム及び方法 | |
JP6677605B2 (ja) | プログラム、ストレージシステム、およびストレージシステムの制御方法 | |
JP2015026396A (ja) | データベース管理システム及び方法 | |
JP5147296B2 (ja) | 計算機システム、データベース管理方法及びプログラム | |
JP4951326B2 (ja) | I/o要求の処理順序を最適化するためのコンピュータプログラム | |
JP2006209316A (ja) | データベースアクセス管理システム、管理方法及びそのプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101220 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120321 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130408 |
|
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: 20130430 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130528 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5283675 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 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313114 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |