【手続補正書】
【提出日】令和3年7月20日(2021.7.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データベースシステムが、該データベースシステムの現在の状態を、分散ストレージに格納された前記データベースシステムのデータについての要求を処理するように構成される複数のデータベースノードの間で同期させるための方法であって、前記複数のデータベースノードのうちの１つが現在アクティブであり、前記複数のデータベースノードのうちの他のデータベースノードが現在のスタンバイデータベースノードであり、当該方法は、
アクティブデータベースノードにおいて、前記分散ストレージにデータをコミットすることを含む第１トランザクションを実行する要求を受け取るステップと、
前記要求を受け取ったことに応答して、
前記アクティブデータベースノードによって、前記分散ストレージに前記データをコミットして、前記データベースシステムの前記現在の状態を更新するステップと、
前記アクティブデータベースノードによって、トランザクションログに、コミットの指示を提供する第１メタデータを格納させることにより、前記分散ストレージに格納されたトランザクションログを修正するステップであり、前記トランザクションログは、前記スタンバイデータベースノードに対して、前記スタンバイデータベースノードが前記データベースシステムの前記現在の状態を知るための情報を識別する、ステップと、
前記第１メタデータを格納させることに応じて、前記アクティブデータベースノードによって、前記第１メタデータを識別するために、前記データベースシステムのメタデータサーバによって維持されているカタログを更新するステップであり、前記カタログは、前記第１メタデータを見つけるためにスタンバイデータベースノードによって使用可能であり、前記メタデータサーバは、前記カタログが更新されことを前記スタンバイデータベースノードに通知するように動作可能である、ステップと、
を含む、方法。
【請求項２】
前記スタンバイデータベースノードのうちの１つにおいて、前記トランザクションログが修正されたことの通知を受け取るステップと、
前記通知を受け取ったことに応答して、前記１つのスタンバイデータベースノードによって、該スタンバイデータベースノードで維持されている第２メタデータを更新してクライアントの要求に対応するステップであって、前記の更新は、前記トランザクションログに格納されている前記第１メタデータを読み出すことを含む、ステップと、
を更に含む、請求項１に記載の方法。
【請求項３】
前記１つのスタンバイデータベースノードによって、前記分散ストレージにも格納されているデータを維持しているエントリを含むキャッシュを維持するステップを更に含み、
前記第２メタデータを更新することは、前記第１メタデータが、前記エントリ内のデータが前記コミットされたデータで置き換えられたことを示すことに応答して、前記１つのスタンバイデータベースノードが前記キャッシュ内のエントリを無効にすることを含む、
請求項２に記載の方法。
【請求項４】
前記スタンバイデータベースノードのうちの１つは、前記分散ストレージのデータを格納するキャッシュを含み、当該方法は、
前記トランザクションログから、前記１つのスタンバイデータベースノードによって、前記第１トランザクションに関連付けられるキー値ペアのキーを取り出すステップと、
前記１つのスタンバイデータベースノードによって、前記キーに関連付けられる、前記キャッシュ内のエントリを識別するステップと、
前記キー値ペアの前記キーに対応する値で前記エントリを更新するステップと、
を更に含む、請求項１に記載の方法。
【請求項５】
前記のコミットすることは、前記データを前記分散ストレージ内の前記トランザクションログの外部に格納するステップを含む、
請求項１乃至４のいずれか一項に記載の方法。
【請求項６】
前記複数のデータベースノードは、前記スタンバイデータベースノードのうちの１つが新たなアクティブデータベースノードになることを可能にするように動作可能な高可用性（ＨＡ）アプリケーションを実行するように構成され、当該方法は：
前記１つのスタンバイデータベースノードが前記新たなアクティブデータベースノードになったことに応答して、
前記新たなアクティブデータベースノードによって、第２トランザクションのために、前記分散ストレージにデータをコミットするステップと；
前記新たなアクティブデータベースノードによって、前記トランザクションログに前記第２トランザクションの指示を提供するメタデータを格納させるステップと；
を更に含む、請求項１に記載の方法。
【請求項７】
前記分散ストレージによって、前記トランザクションログ内の複数のトランザクションについての指示を提供するメタデータのキーを、該指示を提供する第１メタデータが格納されている前記分散ストレージ内の物理的な位置に関連付けるマッピングを維持するステップ、
を更に含む、請求項１乃至６のいずれか一項に記載の方法。
【請求項８】
データベースシステムであって、
データベースを実装するよう構成される複数のデータベースノードと、
前記複数のデータベースノードに対してアクセス可能であり、前記データベースのデータを格納するように構成される分散ストレージと、
前記複数のデータベースノードのスタンバイノードによってアクセス可能であり、かつ、前記分散ストレージに書き込まれたメタデータを識別するために使用可能であるカタログを維持するように構成されるメタデータサーバと、
を備え、前記複数のデータベースノードのうちの第１データベースノードは、現在アクティブなノードであり、
前記分散ストレージにデータをコミットすることを含む第１トランザクションを実行する要求を受け取り、
前記第１トランザクションについて、前記分散ストレージに第１データセットを格納し、
前記分散ストレージによって維持されるトランザクションログに前記第１トランザクションの第１レコードを格納し、前記トランザクションログは、前記データベースに関してトランザクションが実行される順序を定義し、かつ、
前記第１トランザクションを識別するための前記カタログを更新させる、
ように構成されており、
前記メタデータサーバは、前記カタログが更新されことを前記スタンバイノードに通知するように動作可能である、
データベースシステム。
【請求項９】
前記複数のデータベースノードのうちの第２データベースノードは、
前記分散ストレージから、前記第１レコードを含む前記トランザクションログを読み出し、
前記トランザクションログを読み出したことに基づいて、前記第２データベースノードによって維持されているメタデータを更新することであって、該メタデータは、前記データベースの現在の状態を示す、
ように構成される、請求項８に記載のデータベースシステム。
【請求項１０】
前記第２データベースノードは、
前記メタデータサーバによって維持される前記カタログにアクセスして、前記第１データベースノードによって前記トランザクションログに追加されたレコードを識別し、
前記分散ストレージから前記追加されたレコードを読み出し、
前記読み出したレコードに基づいて、前記維持されているメタデータを更新する、
ように構成される、請求項８または９に記載のデータベースシステム。
【請求項１１】
前記第２データベースノードは、
第２データセットを書き込むことを含む第２トランザクションを実行する要求を受け取り、
該要求に応答して、
前記分散ストレージに第２データセットを格納し、
前記第２トランザクションの第２レコードを、前記分散ストレージによって維持される前記トランザクションログに格納する、
ように構成される、請求項８または９に記載のデータベースシステム。
【請求項１２】
当該データベースシステムは、前記複数のデータベースノードのうちの１つのみを、所与の時点で、前記データベースシステムのアクティブデータベースノードとして動作するように選択するよう構成される、
請求項８乃至１１のいずれか一項に記載のデータベースシステム。
【請求項１３】
前記複数のデータベースノードは、高可用性（ＨＡ）クラスタを実装するように構成され、前記分散ストレージは、ネットワークを介して前記複数のデータベースノードに結合される複数のストレージデバイスを含む、
請求項８乃至１２のいずれか一項に記載のデータベースシステム。
【請求項１４】
請求項１乃至７のいずれか一項に記載の方法を実施するために１つ以上のプロセッサによって実行可能なプログラム命令を有する、非一時的なコンピュータ読取可能媒体。