TiFlashデータ検証

このドキュメントでは、 TiFlashのデータ検証メカニズムとツールについて説明します。

データの破損は通常、重大なハードウェア障害によって発生します。このような場合、手動でデータを回復しようとしても、データの信頼性は低下します。

データの整合性を確保するために、デフォルトでは、 TiFlash はCity128アルゴリズムを使用してデータ ファイルに対して基本的なデータ検証を実行します。データ検証に失敗した場合、 TiFlash は直ちにエラーを報告して終了し、不整合なデータによる二次災害を回避します。この時点で、 TiFlashノードを復元する前に、手動で介入してデータを再度複製する必要があります。

v5.4.0 以降、 TiFlashより高度なデータ検証機能が導入されています。TiFlashはデフォルトでXXH3アルゴリズムを使用し、検証フレームとアルゴリズムをカスタマイズできます。

検証メカニズム

検証メカニズムは DeltaTree ファイル (DTFile) に基づいて構築されます。DTFile はTiFlashデータを永続化するstorageファイルです。DTFile には 3 つの形式があります。

バージョン検証メカニズム注記
V1非推奨ハッシュはデータ ファイルに埋め込まれます。
V2バージョン 6.0.0 未満のデフォルトハッシュはデータ ファイルに埋め込まれます。V1 と比較して、V2 では列データの統計が追加されます。
V3バージョン >= v6.0.0 のデフォルトV3 にはメタデータとトークン データ チェックサムが含まれており、複数のハッシュ アルゴリズムをサポートします。v5.4.0 の新機能。

DTFile は、データ ファイル ディレクトリのstableフォルダーに保存されます。現在有効な形式はすべてフォルダー形式です。つまり、データはdmf_<file id>のような名前のフォルダーの下の複数のファイルに保存されます。

データ検証を使用する

TiFlash は自動と手動の両方のデータ検証をサポートしています。

  • 自動データ検証:
    • v6.0.0 以降のバージョンでは、デフォルトで V3 検証メカニズムが使用されます。
    • v6.0.0 より前のバージョンでは、デフォルトで V2 検証メカニズムが使用されます。
    • 検証メカニズムを手動で切り替えるには、 TiFlash構成ファイルを参照してください。ただし、デフォルト構成はテストによって検証されているため、推奨されます。
  • 手動データ検証DTTool inspectを参照してください。

検証ツール

TiFlashがデータを読み取る際に実行される自動データ検証に加えて、v5.4.0ではデータの整合性を手動でチェックするツールが導入されました。詳細については、 DTツールを参照してください。

このページは役に立ちましたか?