データ・キャッシュの構成

DataStax Enterpriseのパーティション・キー・キャッシュ、行キャッシュ、および行レベルのパーミッションに関する情報。

DataStax Enterpriseには、統合キャッシング機能が含まれており、クラスター全体にキャッシュ・データを分散します。

ノードがダウンすると、クライアントは、キャッシュされた別のデータ・レプリカから読み取ることができます。また、データベース・アーキテクチャーにより、別のキャッシング階層がないため、トラブルシューティングが容易になります。キャッシュされたデータは、データベース内にあるものと厳密に一致します。統合キャッシュは、キャッシュを定期的にディスクに保存してコールド・スタートの問題を緩和します。データベースは、再起動時にコンテンツをキャッシュに読み込み直して、このデータを分散させます。クラスタは、コールド・キャッシュから開始されません。

保存されているキー・キャッシュ・ファイルの名前にテーブルのIDが含まれます。mykeyspaceキースペースのusersテーブルの、保存されているキー・キャッシュ・ファイルの名前は、以下のようになります。

mykeyspace-users.users_name_idx-19bd7f80352c11e4aa6a57448213f97f-KeyCache-b.db2046071785672832311.tmp

行キャッシュについて

注: 適切なOSページ・キャッシュを利用することで、行キャッシングを使用するよりもパフォーマンスが向上します。DataStax Enterpriseがホストされているオペレーティング・システムのページ・キャッシングのリソースを確認してください。

rows_per_partitionテーブル・オプションを設定して、パーティションでキャッシュする行の数を構成します。行をキャッシュするには、行キーがキャッシュにまだ存在しない場合、データベースはパーティションの最初の部分を読み取り、キャッシュにデータを格納します。新しくキャッシュされたデータに、ユーザーが構成したセルの一部が含まれない場合、データベースは別の読み取りを実行します。行キャッシュの実際のサイズは、ワークロードによって異なります。アプリケーションのベンチマークを適切に行って、「最適な」行キャッシュ・サイズを構成してください。

2つの行キャッシュ・オプション、古いキャッシュ・プロバイダーと新しいオフヒープ・キャッシュ(OHC)プロバイダーのシリアライズがあります。新しいOHCプロバイダーは、古いオプションより15%パフォーマンスが優れているため、ベンチマークされています。

行キャッシュの使用

行キャッシュは、読み取り数が書き込み数よりもかなり多い(目安としては95%)場合にのみ、有効にします。パーティションへの書き込みによってキャッシュのパーティション全体が無効になるため、行キャッシュの代わりにチャンク・キャッシュを使用することを検討してください。
ヒント: 読み取り頻度の低いアーカイブ・テーブルのキャッシングは、完全に無効にしてください。