ログアーカイブのディレクトリ構造
ログアーカイブは、ユーザーが PIECE_SWITCH_INTERVAL パラメータで指定した時間間隔で分割されます。デフォルトでは1日ごとにディレクトリが分割されます。つまり、毎日のログデータディレクトリが1つのbackup_pieceに対応します。
NFS、OSS、Azure Blobなどのバックアップ媒体の場合、ログアーカイブのディレクトリ構造は次のとおりです:
log_archive_dest
├── check_file
│ └── 1002_connect_file_20230111T193049.obbak // 接続性チェックファイル
├── format.obbak // バックアップパスのフォーマット情報
├── rounds // Roundsプレースホルダーディレクトリ
│ └── round_d1002r1_start.obarc // Round開始プレースホルダー
├── pieces // Pieceプレースホルダーディレクトリ
│ ├── piece_d1002r1p1_start_20230111T193049.obarc // Piece開始プレースホルダー、piece_destID_roundID_PIECEID_start_DATE
│ └── piece_d1002r1p1_end_20230111T193249.obarc // Piece終了プレースホルダー、piece_destID_roundID_PIECEID_end_DATE
└── piece_d1002r1p1 // Pieceディレクトリ、ディレクトリ名の形式は piece_destID_roundID_PIECEID
├── piece_d1002r1p1_20230111T193049_20230111T193249.obarc // Pieceの連続区間を記録
├── checkpoint
├── single_piece_info.obarc // そのPieceのメタ情報を記録
├── tenant_archive_pieceinfos.obarc // そのPieceの前のすべてのfrozen Pieceのメタ情報を記録
├── file_info.obarc // すべてのログストリームファイルリスト
├── logstream_1 // 1号ログストリーム
└── logstream_1001 // 1001号ログストリーム
上記のディレクトリ構造において、トップレベルディレクトリには以下の3種類のデータが含まれます:
format.obbak:アーカイブパスのメタ情報を記録するファイルで、使用しているパスのテナントなどの情報が含まれます。check_file:ユーザーのログアーカイブディレクトリの接続性チェックに使用されます。rounds:ログアーカイブのRoundの集計リストで、すべてのRoundの一覧が記録されています。pieces:ログアーカイブのPieceの集計リストで、すべてのPieceの一覧が記録されています。piece_d1002r1p1:ログアーカイブのPieceディレクトリで、ディレクトリ名の形式はpiece_destID_roundID_PIECEIDです。ここで、DESTIDはlog_archive_destに対応するIDを指し、ROUNDIDはログアーカイブのRoundのIDであり、単調増加する整数を指します。PIECEIDはログアーカイブのPieceのIDであり、同様に単調増加する整数を指します。1つのログアーカイブのPieceディレクトリには、さらに以下のデータが含まれます:
piece_d1002r1p1_20230111T193049_20230111T193249.obarc:このファイルには、現在のPieceのID、開始時刻、終了時刻が表示されており、情報表示のみを目的としています。checkpoint:このディレクトリは、ActiveなPieceのアーカイブポイントを記録するディレクトリで、ObArchiveSchedulerモジュールが定期的にこのディレクトリのポイント情報を更新します。single_piece_info.obarc:このファイルには、現在のPieceのメタ情報が記録されています。tenant_archive_pieceinfos.obarc:このファイルには、現在のテナント内のすべてのFrozen Piecesのメタ情報が記録されています。file_info.obarc:このファイルには、Piece内のログストリームリストが記録されています。logstream_1:このディレクトリには、1号ログストリームのログファイルが記録されています。1号ログストリームはOceanBaseデータベーステナントのシステムログストリームです。logstream_1001:このディレクトリには、1001号ログストリームのログファイルが記録されています。1000番以降のログストリームはOceanBaseデータベーステナントのユーザーログストリームです。
データバックアップのディレクトリ構造
単一のデータバックアップは、1つのbackup_setに対応します。ユーザーがALTER SYSTEM BACKUP DATABASEを実行するたびに、新しいbackup_setのディレクトリが作成され、そのディレクトリにはそのバックアップのすべてのデータが含まれます。
データバックアップのディレクトリ構造は以下のとおりです:
data_backup_dest
├── format.obbak // バックアップパスのフォーマット情報
├── check_file
│ └── 1002_connect_file_20230111T193020.obbak // 接続性チェックファイル
├── backup_sets // データバックアップリストの集約ディレクトリで、すべてのデータバックアップセットリストを記録
│ ├── backup_set_1_full_end_success_20230111T193420.obbak // フルバックアップ終了のプレースホルダー
│ ├── backup_set_1_full_start.obbak // フルバックアップ開始のプレースホルダー
│ ├── backup_set_2_inc_start.obbak // 増分バックアップ開始のプレースホルダー
│ └── backup_set_2_inc_end_success_20230111T194420.obbak // 増分バックアップ終了のプレースホルダー
└── backup_set_1_full // フルバックアップセット。ファイル名の末尾がfullはフルバックアップ、incは増分バックアップを表す
├── backup_set_1_full_20230111T193330_20230111T193420.obbak //プレースホルダーで、フルバックアップの開始時刻と終了時刻を表示する
├── single_backup_set_info.obbak // 現在のバックアップセットのメタ情報
├── tenant_backup_setInfos.obbak // 現在のテナントのフルバックアップセット情報
├── infos
├── logstream_1 // 1号ログストリーム
└── logstream_1001 // 1001号ログストリーム
データバックアップディレクトリでは、最上位ディレクトリには以下の3種類のデータが含まれます:
format.obbak:バックアップパスのメタ情報を記録します。check_file:ユーザーデータバックアップディレクトリの接続性チェックに使用されます。backup_sets:データバックアップリストの集約ディレクトリで、すべてのデータバックアップセットリストを記録します。backup_set_1_full:このディレクトリはデータバックアップセットを表します。ディレクトリ名の末尾がfullの場合はフルバックアップ、incの場合は増分バックアップを表します。データバックアップごとに対応するバックアップセットが生成され、バックアップ終了後はそのバックアップセットは変更されません。1つのデータバックアップセットには、主に以下のデータが含まれます:
backup_set_1_full_20230111T193330_20230111T193420.obbak:このファイルには、現在のバックアップセットのID、開始時刻、終了時刻が表示されます。このファイルは情報表示のみに使用されます。single_backup_set_info.obbak:このファイルには、現在のバックアップセットのメタ情報が記録されており、バックアップのポイント、依存するログなどの情報が含まれます。tenant_backup_set_infos.obbak:このファイルには、現在のテナントが持つすべてのバックアップセットのメタ情報が記録されています。infos:このディレクトリには、データバックアップセットのメタ情報が記録されています。logstream_1:このディレクトリには、1号ログストリームのすべてのデータが記録されています。1号ログストリームはOceanBaseデータベーステナントのシステムログストリームです。logstream_1001:このディレクトリには、1001号ログストリームのすべてのデータが記録されています。1000番以降のログストリームはOceanBaseデータベーステナントのユーザーログストリームです。
クラスタレベル構成パラメータのバックアップディレクトリ
クラスタレベル構成パラメータのバックアップが実行されるたびに、システムは指定されたディレクトリにクラスタレベル構成パラメータのバックアップファイルを生成します。具体的なディレクトリ構造は以下のとおりです。
cluster_parameters_backup_dest
├── cluster_parameter.20240710T103610.obbak # デフォルト設定以外のクラスタレベル構成パラメータ情報。ファイル名の形式:`cluster_parameter.[timestamp]`
└── cluster_parameter.20241018T140609.obbak