(57)【特許請求の範囲】
【請求項１】
データベースサーバによって実行される、データベースにおいてホットページを決定するための方法であって、
前記データベースがアクセスされる場合、前記データベースにおけるＮのページの各々に関するカウンタを構成するステップであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数をカウントするのに使用され、前記カウンタの初期値は等しく、Ｎは正の整数である、ステップと、
第Ｋのページに対する並行アクセスの前記回数、および前記第Ｋのページに対する前記並行アクセスが生じる時間間隔に基づいて、前記第Ｋのページに対する並行アクセスの頻度を計算するステップであって、Ｋは、Ｎ以下の正の整数である、ステップと、
前記第Ｋのページに対する並行アクセスの前記頻度が事前設定された第１の閾値以上である場合、前記第Ｋのページがホットページであると決定するステップとを備えることを特徴とする方法。
【請求項２】
前記第Ｋのページに対する並行アクセスの前記回数、および前記第Ｋのページに対する前記並行アクセスが生じる前記時間間隔に基づいて、前記第Ｋのページに対する並行アクセスの頻度を計算するステップは、
前記第Ｋのページが並行にアクセスされる場合、前記第Ｋのページに対応する第Ｋのカウンタに１を足し、前記第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用するステップと、
前記第Ｋのページが第Ｍ回に並行にアクセスされる場合、前記第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用するステップであって、Ｍは正の整数である、ステップと、
前記第Ｋのページの前記カウント開始時点および前記カウント終了時点、ならびにＭにより、前記第Ｋのページに対する並行アクセスの前記頻度を計算するステップとを備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記第Ｋのページに対する並行アクセスの前記回数、および前記第Ｋのページに対する前記並行アクセスが生じる前記時間間隔に基づいて、前記第Ｋのページに対する並行アクセスの頻度を計算するステップは、
事前設定されたカウント周期Ｔ０により、前記第Ｋのページに対応する第Ｋのカウンタの値インクリメントを周期的にカウントするステップと、
前記Ｔ０、および前記第Ｋのページに対応する前記カウンタの前記値インクリメントにより、前記第Ｋのページに対する並行アクセスの前記頻度を計算するステップとを備えることを特徴とする請求項１に記載の方法。
【請求項４】
前記第Ｋのページに対する並行アクセスの前記回数、および前記第Ｋのページに対する前記並行アクセスが生じる前記時間間隔に基づいて、前記第Ｋのページに対する並行アクセスの頻度を計算するステップは、
事前設定されたカウント周期Ｔ０により、前記第Ｋのページに対応する第ＫのカウンタからＪを周期的に減算するステップであって、Ｊは正の整数であり、Ｊは前記第Ｋのページに対する並行アクセスの前記回数未満である、ステップと、
前記周期Ｔ０により、前記第Ｋのページに対応する前記カウンタからＪが減算された後に得られた値を周期的にカウントするステップとを備える方法であって、
前記得られた値は、前記第Ｋのページに対する並行アクセスの前記頻度であることを特徴とする請求項１に記載の方法。
【請求項５】
データベースにおいてホットページを決定するための装置であって、
前記データベースがアクセスされる場合、前記データベースにおけるＮのページの各々に関するカウンタを構成するように構成された処理モジュールであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数をカウントするのに使用され、前記カウンタの初期値は等しく、Ｎは正の整数である、処理モジュールを備え、
前記処理モジュールは、第Ｋのページに対する並行アクセスの前記回数、および前記第Ｋのページに対する前記並行アクセスが生じる時間間隔に基づいて、前記第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成され、Ｋは、Ｎ以下の正の整数であり、
前記処理モジュールは、前記第Ｋのページに対する並行アクセスの前記頻度が事前設定された第１の閾値以上である場合、前記第Ｋのページがホットページであると決定するようにさらに構成され、さらに装置は、
前記データベースを記憶するように構成されたストレージモジュールを備えることを特徴とする装置。
【請求項６】
前記処理モジュールは、
前記第Ｋのページが並行にアクセスされる場合、前記第Ｋのページに対応する第Ｋのカウンタに１を足し、前記第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、
前記第Ｋのページが第Ｍ回に並行にアクセスされる場合、前記第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
前記第Ｋのページの前記カウント開始時点および前記カウント終了時点、ならびにＭにより、前記第Ｋのページに対する並行アクセスの前記頻度を計算することを行うように特に構成されることを特徴とする請求項５に記載の装置。
【請求項７】
前記処理モジュールは、
事前設定されたカウント周期Ｔ０により、前記第Ｋのページに対応する第Ｋのカウンタの値インクリメントを周期的にカウントすることを行い、
前記Ｔ０、および前記第Ｋのページに対応する前記カウンタの前記値インクリメントにより、前記第Ｋのページに対する並行アクセスの前記頻度を計算することを行うように特に構成されることを特徴とする請求項５に記載の装置。
【請求項８】
前記処理モジュールは、
事前設定されたカウント周期Ｔ０により、前記第Ｋのページに対応する第ＫのカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、
前記周期Ｔ０により、前記第Ｋのページに対応する前記カウンタからＪが減算された後に得られた値を周期的にカウントすることを行うように特に構成され、
前記得られた値は、前記第Ｋのページに対する並行アクセスの前記頻度であることを特徴とする請求項５に記載の装置。
【請求項９】
データベースにおいてホットページを決定するための装置であって、
前記データベースがアクセスされる場合、前記データベースにおけるＮのページの各々に関するカウンタを構成するように構成されたプロセッサであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数をカウントするのに使用され、前記カウンタの初期値は等しく、Ｎは正の整数である、プロセッサを備え、
前記プロセッサは、第Ｋのページに対する並行アクセスの前記回数、および前記第Ｋのページに対する前記並行アクセスが生じる時間間隔に基づいて、前記第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成され、Ｋは、Ｎ以下の正の整数であり、
前記プロセッサは、前記第Ｋのページに対する並行アクセスの前記頻度が事前設定された第１の閾値以上である場合、前記第Ｋのページがホットページであると決定するようにさらに構成され、さらに装置は、
前記データベースを記憶するように構成されたメモリを備えることを特徴とする装置。
【請求項１０】
前記プロセッサは、
前記第Ｋのページが並行にアクセスされる場合、前記第Ｋのページに対応する第Ｋのカウンタに１を足し、前記第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、
前記第Ｋのページが第Ｍ回に並行にアクセスされる場合、前記第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
前記第Ｋのページの前記カウント開始時点および前記カウント終了時点、ならびにＭにより、前記第Ｋのページに対する並行アクセスの前記頻度を計算することを行うように特に構成されることを特徴とする請求項９に記載の装置。
【請求項１１】
前記プロセッサは、
事前設定されたカウント周期Ｔ０により、前記第Ｋのページに対応する第Ｋのカウンタの値インクリメントを周期的にカウントすることを行い、
前記Ｔ０、および前記第Ｋのページに対応する前記カウンタの前記値インクリメントにより、前記第Ｋのページに対する並行アクセスの前記頻度を計算することを行うように特に構成されることを特徴とする請求項９に記載の装置。
【請求項１２】
前記プロセッサは、
事前設定されたカウント周期Ｔ０により、前記第Ｋのページに対応する第ＫのカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、
前記周期Ｔ０により、前記第Ｋのページに対応する前記カウンタからＪが減算された後に得られた値を周期的にカウントすることを行うように特に構成され、
前記得られた値は、前記第Ｋのページに対する並行アクセスの前記頻度であることを特徴とする請求項９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子通信技術の分野に関し、詳細には、データベースにおいてホットページを決定するための方法および装置に関する。
【背景技術】
【０００２】
データベースシステムにおいて、データは、ページの形態で記憶される。ページが並行にアクセスされる場合、ロック機構が、整合性を確実にするのに使用される必要がある。読取りロックが、ページに対する書込み操作を阻止する。書込みロックが、ページに対する読取り動作および書込み動作を阻止する。阻止することが生じた場合、それは、ページに対する競合と呼ばれる。ページに対する競合は、スリープ状態とも呼ばれるデータアクセス待ち時間をもたらし、したがって、データベースの総合的なパフォーマンスが深刻に影響される。ページに対する競合をもたらす重要な要因は、１．同一のページ上に複数のラインのデータが存在すること、２．書込み操作が、少なくとも１つのラインに対して頻繁に実行されること、３．読取り操作および書込み操作が、少なくとも別のラインに対して頻繁に実行されることである。
【０００３】
ホットページを識別すること、および、一般に、ホットページ上のコンテンツを分割して複数のページにすることである、対応する措置をとることが、ページに対する競合を低減し、データベースシステムの総合的なパフォーマンスを向上させることができる。
【０００４】
現在、ページに対する競合、すなわち、ページに対するアクセスの回数の数量の絶対値だけが、従来技術において考慮され、現実のホットページが識別され得ず、アクセスの回数の最大数量を有するページだけしか識別され得ない。
【発明の概要】
【０００５】
本発明の実施形態が、データベースにおいてホットページを決定するための方法および装置を提供する。データベースにおける競合しているページに対するアクセスの頻度が計算され、競合しているページに対するアクセスの回数の数量の絶対値が考慮されるだけでなく、アクセスの回数の数量の小さい絶対値を有するが、非常に高い競合アクセス頻度を有するページが識別されることができ、したがって、データベースにおけるホットページがより正確に決定されることができる。
【０００６】
第１の態様によれば、データベースにおいてホットページを決定するための方法が提供され、この方法は、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するステップであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、ステップと、
第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップであって、Ｋは、Ｎ以下の正の整数である、ステップと、
第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するステップであって、ホットページは、事前設定された第１の閾値以上である頻度で並行にアクセスされるページを含むステップとを含む。
【０００７】
第１の態様の第１の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップは、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用するステップであって、Ｋは、１以上であるが、Ｎ以下である正の整数である、ステップと、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用するステップであって、Ｍは正の整数である、ステップと、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算するステップとを特に含む。
【０００８】
第１の態様の第２の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントするステップと、
Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算するステップとを特に含む。
【０００９】
第１の態様の第３の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算するステップであって、Ｊは正の整数である、ステップと、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントするステップと、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用するステップとを特に含む。
【００１０】
第２の態様によれば、データベースにおいてホットページを決定するための装置が提供され、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するように構成された処理モジュールであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、処理モジュールを含み、
処理モジュールは、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成され、Ｋは、Ｎ以下の正の整数であり、
処理モジュールは、第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するようにさらに構成され、ホットページは、事前設定された第１の閾値以上である頻度で並行にアクセスされるページを含み、さらに装置は、
データベースを記憶するように構成されたストレージモジュールを含む。
【００１１】
第２の態様の第１の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成されることの態様において、処理モジュールは、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、Ｋは、１以上であるが、Ｎ以下である正の整数であり、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００１２】
第２の態様の第２の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、処理モジュールは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントすることを行い、Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００１３】
第２の態様の第３の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、処理モジュールは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントすることを行い、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用することを行うように特に構成される。
【００１４】
第３の態様によれば、データベースにおいてホットページを決定するための装置が提供され、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するように構成されたプロセッサであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数であるプロセッサを含み、
プロセッサは、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うようにさらに構成され、Ｋは、Ｎ以下の正の整数であり、
プロセッサは、第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するようにさらに構成され、ホットページは、事前設定された第１の閾値以上である頻度で並行にアクセスされるページを含み、さらに装置は、
データベースを記憶するように構成されたメモリを含む。
【００１５】
第３の態様の第１の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、プロセッサは、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、Ｋは、１以上であるが、Ｎ以下である正の整数であり、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００１６】
第３の態様の第２の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、プロセッサは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントすることを行い、
Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００１７】
第３の態様の第３の可能な実施様態において、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、プロセッサは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントすることを行い、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用することを行うように特に構成される。
【００１８】
カウンタが、データベースにおけるＮのページの各々に関して構成され、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用される。第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度が計算され、したがって、データベースにおけるホットページが決定される。したがって、ホットページが、単に並行アクセスの回数の数量により決定されるのではなく、データベースにおける現実のホットページが決定される。
【図面の簡単な説明】
【００１９】
本発明の実施形態における技術的ソリューションをより明確に説明するのに、以下に、実施形態を説明するために要求される添付の図面を簡単に説明する。明らかに、以下の説明における添付の図面は、本発明のいくつかの実施形態を示し、当業者は、それでも、独創的な取組みなしにこれらの添付の図面から他の図面を導き出すことがあり得る。
【図１】本発明の実施形態によるデータベースにおいてホットページを決定するための方法についてのフローチャートである。
【図２】本発明の実施形態によるデータベースにおいてホットページを決定するための別の方法についてのフローチャートである。
【図３】本発明の実施形態によるデータベースにおいてホットページを決定するための別の方法についてのフローチャートである。
【図４】本発明の実施形態によるデータベースにおいてホットページを決定するための別の方法についてのフローチャートである。
【図５】本発明の実施形態によるデータベースにおいてホットページを決定するための装置についての構造図である。
【図６】本発明の実施形態によるデータベースにおいてホットページを決定するための別の装置についての構造図である。
【図７】本発明の実施形態によるデータベースにおいてホットページを決定するための別の装置についての構造図である。
【図８】本発明の実施形態によるデータベースにおいてホットページを決定するための別の装置についての構造図である。
【発明を実施するための形態】
【００２０】
本発明の実施形態の目的、技術的ソリューション、および利点をより明確にするのに、以下に、本発明の実施形態における技術的ソリューションを、本発明の実施形態における添付の図面を参照して明確に説明する。明らかに、説明される実施形態は、本発明の実施形態のいくつかであるが、すべてではない。
【００２１】
図１に示されるとおり、本発明の実施形態によるデータベースにおいてホットページを決定するための方法は、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するステップであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、ステップと、
第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップであって、Ｋは、Ｎ以下の正の整数である、ステップと、
第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するステップであって、特に、事前設定された第１の閾値は、実際の要件による事前設定された絶対値であることがあり、またはパーセンテージの形態で表現された事前設定された相対値であることがある、ステップとを含む。
【００２２】
カウンタが、データベースにおけるＮのページの各々に関して構成され、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用される。第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度が計算され、したがって、データベースにおけるホットページが決定される。したがって、ホットページが、単に並行アクセスの回数の数量により決定されるのではなく、データベースにおける現実のホットページが決定される。
【００２３】
図２に示されるとおり、本発明の実施形態によるデータベースにおいてホットページを決定するための別の方法は、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するステップであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、ステップと、
第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップであって、Ｋは、Ｎ以下の正の整数である、ステップと、
第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するステップであって、特に、事前設定された第１の閾値は、実際の要件による事前設定された絶対値であることがあり、またはパーセンテージの形態で表現された事前設定された相対値であることがある、ステップとを含む。
【００２４】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップは、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用するステップであって、Ｋは、１以上であるが、Ｎ以下である正の整数である、ステップと、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用するステップであって、Ｍは正の整数である、ステップと、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算するステップであって、以下の式、すなわち、頻度＝（カウント終了時点−カウント開始時点）／Ｍを使用することによって行う、ステップとを特に含む。
【００２５】
さらに、並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味することは、
並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページ上の第Ｎのラインのデータにアクセスすることを待つ必要があり、Ｎは正の整数であることを意味すること、または
並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページ上のデータにアクセスすることを待つ必要があることを意味することを特に含む。
【００２６】
カウンタが、データベースにおけるＮのページの各々に関して構成され、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用される。第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度が計算され、したがって、データベースにおけるホットページが決定される。したがって、ホットページが、単に並行アクセスの回数の数量により決定されるのではなく、データベースにおける現実のホットページが決定される。
【００２７】
図３に示されるとおり、本発明の実施形態によるデータベースにおいてホットページを決定するための別の方法は、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するステップであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、ステップと、
第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップであって、Ｋは、Ｎ以下の正の整数である、ステップと、
第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するステップであって、特に、事前設定された第１の閾値は、実際の要件による事前設定された絶対値であることがあり、またはパーセンテージの形態で表現された事前設定された相対値であることがある、ステップとを含む。
【００２８】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントするステップであって、Ｔ０は、実際のシナリオ、または履歴上のレコード、または現在の要件により特に設定されることがある、ステップと、
Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算するステップとを特に含む。
【００２９】
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントが周期的にカウントされ、第Ｋのページに対する並行アクセスの頻度が得られ、したがって、データベースにおけるホットページが決定される。したがって、ホットページが、単に並行アクセスの回数の数量により決定されるのではなく、データベースにおける現実のホットページが決定される。
【００３０】
さらに、並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味することは、
並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページ上の第Ｎのラインのデータにアクセスすることを待つ必要があり、Ｎは正の整数であることを意味すること、または
並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページ上のデータにアクセスすることを待つ必要があることを意味することを特に含む。
【００３１】
図４に示されるとおり、本発明の実施形態によるデータベースにおいてホットページを決定するための別の方法は、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するステップであって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、ステップと、
第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップであって、Ｋは、Ｎ以下の正の整数である、ステップと、
第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するステップであって、特に、事前設定された第１の閾値は、実際の要件による事前設定された絶対値であることがあり、またはパーセンテージの形態で表現された事前設定された相対値であることがある、ステップとを含む。
【００３２】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するステップは、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算するステップであって、Ｔ０は、実際のシナリオ、または履歴上のレコード、または現在の要件により特に設定されることがある、ステップと、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントするステップであって、Ｊは正の整数であり、Ｊは第Ｋのページに対する並行アクセスの回数の数量未満である、ステップと、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用するステップとを特に含む。
【００３３】
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値が周期的にカウントされ、第Ｋのページに対応するカウンタからＪが減算された後に得られた値が、第Ｋのページに対する並行アクセスの頻度として使用され、したがって、データベースにおけるホットページが決定される。したがって、ホットページが、単に並行アクセスの回数の数量により決定されるのではなく、データベースにおける現実のホットページが決定される。
【００３４】
さらに、並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味することは、
並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページ上の第Ｎのラインのデータにアクセスすることを待つ必要があり、Ｎは正の整数であることを意味すること、または
並行アクセスが、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページ上のデータにアクセスすることを待つ必要があることを意味することを特に含む。
【００３５】
図５は、本発明の実施形態によるデータベースにおいてホットページを決定するための装置の構造図である。この装置は、
データベースがアクセスされる場合においてデータベースにおけるＮのページの各々に関するカウンタを構成するように構成された処理モジュール５０１であって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である、処理モジュール５０１を特に含み、
処理モジュール５０１は、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成され、Ｋは、Ｎ以下の正の整数であり、
処理モジュール５０１は、第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するようにさらに構成され、さらに装置は、
データベースを記憶するように構成されたストレージモジュール５０２を特に含む。
【００３６】
処理モジュール５０１は、バス５０３を使用することによってストレージモジュール５０２と通信する。
【００３７】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、処理モジュール５０１は、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、Ｋは、１以上であるが、Ｎ以下である正の整数であり、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００３８】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、処理モジュール５０１は、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントすることを行い、Ｔ０は、実際のシナリオ、または履歴上のレコード、または現在の要件により特に設定されることがあり、
Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００３９】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、処理モジュール５０１は、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、Ｊは第Ｋのページに対する並行アクセスの回数の数量未満であり、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントすることを行い、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用することを行うように特に構成される。
【００４０】
図６は、本発明の実施形態によるデータベースにおいてホットページを決定するための別の装置の構造図である。装置は、
データベースがアクセスされる場合において、データベースにおけるＮのページの各々に関するカウンタを構成するように構成されたプロセッサ６０１であって、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数であるプロセッサ６０１を含み、
プロセッサ６０１は、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うようにさらに構成され、Ｋは、Ｎ以下の正の整数であり、
プロセッサ６０１は、第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するようにさらに構成され、さらに装置は、
データベースを記憶するように構成されたメモリ６０２を含む。
【００４１】
プロセッサ６０１は、バス６０３を使用することによってメモリ６０２と通信する。
【００４２】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成されることの態様において、プロセッサ６０１は、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、Ｋは、１以上であるが、Ｎ以下である正の整数であり、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００４３】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、プロセッサ６０１は、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントすることを行い、Ｔ０は、実際のシナリオ、または履歴上のレコード、または現在の要件により特に設定されることがあり、
Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００４４】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、プロセッサ６０１は、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、Ｊは第Ｋのページに対する並行アクセスの回数の数量未満であり、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントすることを行い、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用することを行うように特に構成される。
【００４５】
図７は、本発明の実施形態によるデータベースにおいてホットページを決定するための別の装置の構造図である。クラスタ化されたデータベースシステムの場合において、装置は、データベースサーバ７１と、ストレージアレイもしくはストレージサーバ７２とを含む。
【００４６】
データベースサーバ７１は、データベースがアクセスされる場合においてデータベースにおけるＮのページの各々に関するカウンタを構成するように構成され、各カウンタは、そのカウンタに対応するページに対する並行アクセスの回数の数量をカウントするのに使用され、カウンタの初期値は等しく、並行アクセスは、ページにアクセスする少なくとも１つの読取りコマンドまたは書込みコマンドが、ページにアクセスすることを待つ必要があることを意味し、Ｎのページは、データベースにおけるすべてのページ、またはデータベースにおけるＮのページであり、Ｎは正の整数である。特に、データベースサーバ７１は、サーバ１、サーバ２、．．．、サーバｎであるｎのサーバを含み、ｎは、２以上の自然数である。ｎのサーバの間でプライベートネットワークを使用することによって通信が実行される。ｎのサーバは、プライベートネットワークを使用することによって互いに通信して、データベースにおけるページにアクセスする順序を調整する。すべての制御ファイル、オンラインログ、およびデータファイルは、ストレージアレイもしくはストレージサーバ７２の共有されるデバイス上に記憶され、クラスタにおけるすべてのノードによって同時に読み取られること、および書き込まれることが可能である。
【００４７】
データベースサーバ７１は、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成され、Ｋは、Ｎ以下の正の整数である。
【００４８】
データベースサーバ７１は、第Ｋのページに対する並行アクセスの頻度が事前設定された第１の閾値以上である場合において、第Ｋのページがホットページであると決定するようにさらに構成される。
【００４９】
ストレージアレイもしくはストレージサーバ７２は、データベースを記憶するように構成される。ストレージアレイもしくはストレージサーバ７２は、特に、ストレージデバイス１、ストレージデバイス２、．．．、ストレージデバイスｎであるｎのストレージデバイスを含み、ｎは、２以上の自然数である。
【００５０】
データベースサーバ７１は、ストレージエリアネットワーク７３を使用することによってストレージアレイもしくはストレージサーバ７２と通信する。
【００５１】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成されることの態様において、データベースサーバ７１は、
第Ｋのページが並行にアクセスされる場合において、第Ｋのページに対応する第Ｋのカウンタに１を足し、第Ｋのページが初回に並行にアクセスされる時点をカウント開始時点として使用することを行い、Ｋは、１以上であるが、Ｎ以下である正の整数であり、
第Ｋのページが第Ｍ回に並行にアクセスされる場合において、第Ｋのページが第Ｍ回に並行にアクセスされる時点をカウント終了時点として使用することを行い、Ｍは正の整数であり、
第Ｋのページのカウント開始時点およびカウント終了時点、ならびにＭにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００５２】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、データベースサーバ７１は、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタの値インクリメントを周期的にカウントすることを行い、Ｔ０は、実際のシナリオ、または履歴上のレコード、または現在の要件により特に設定されることがあり、
Ｔ０、および第Ｋのページに対応するカウンタの値インクリメントにより、第Ｋのページに対する並行アクセスの頻度を計算することを行うように特に構成される。
【００５３】
任意選択で、第Ｋのページに対する並行アクセスの回数の数量、およびアクセス時間パラメータにより、第Ｋのページに対する並行アクセスの頻度を計算するようにさらに構成される態様において、データベースサーバ７１は、
事前設定されたカウント周期Ｔ０により、第Ｋのページに対応するカウンタからＪを周期的に減算することを行い、Ｊは正の整数であり、Ｊは第Ｋのページに対する並行アクセスの回数の数量未満であり、
周期Ｔ０により、第Ｋのページに対応するカウンタからＪが減算された後に得られた値を周期的にカウントすることを行い、
第Ｋのページに対応するカウンタからＪが減算された後に得られた値を、第Ｋのページに対する並行アクセスの頻度として使用することを行うように特に構成される。
【００５４】
任意選択で、図８は、本発明の実施形態によるデータベースにおいてホットページを決定するための別の装置の構造図を示す。クラスタ化されたデータベースシステムの場合において、データベースサーバ７１が、ストレージエリアネットワーク７３を使用することによってストレージアレイもしくはストレージサーバ７２と通信する図７におけるシステムアーキテクチャは、以下のアーキテクチャで置き換えられる。すなわち、図８に対応する実施形態におけるデータベースサーバ８１における各データベースサーバが、全機能データベースエンジンを有し、データ処理タスクを完了し、中央ノード８３が、すべてのデータベースサーバ８１の作業を調整して、すべてのデータベースサーバ８１のデータベース整合性を確実にするように構成されたグローバルバッファおよびグローバルロックマネージャを主に含む。同一のデータが、データベースサーバ８１における各データベースサーバ上のデータベースレプリカにおいて同時に読み取られること、および書き込まれることがある。
【００５５】
本発明は、複数の実施様態において実施されてよい。本発明の実施形態は、特定のソフトウェア構成要素またはハードウェア構成要素によって実行されてよい。当業者は、異なるソフトウェア組合せまたはハードウェア組合せが、本発明の実施形態を実施するように適用されてもまたよいこと、およびハードウェアによって実行される特定の操作がソフトウェアによって実施されてもまたよいことを考慮する。
【００５６】
最後に、前述の実施形態は、単に本発明の技術的ソリューションを説明することが意図されているが、本発明を限定することは意図されていないことに留意されたい。本発明は、前述の実施形態を参照して詳細に説明されるものの、当業者は、当業者が、それでも、本発明の実施形態の技術的ソリューションの範囲を逸脱することなく、前述の実施形態において説明される技術的ソリューションに変形を行うこと、または前述の実施形態のいくつかの技術的特徴もしくはすべての技術的特徴に対して均等の置換を行うことがあり得ることを理解すべきである。
【図１】
0006378289.tif 000002
【図２】
0006378289.tif 000003
【図３】
0006378289.tif 000004
【図４】
0006378289.tif 000005
【図５】
0006378289.tif 000006
【図６】
0006378289.tif 000007
【図７】
0006378289.tif 000008
【図８】
0006378289.tif 000009