2016-09-21 1 views
0

上のSQL Serverのログドライブ上のキャッシュを無効にするためにあなたを教えてくださいSQL Serverログディスク用のプレミアムストレージディスク。しかし、私はなぜその理由を説明するのか分かりません。はなぜベストプラクティスは、私が見つけたこの記事や他のいくつかによるとAzureのVM

誰かに洞察力がありますか?

ログドライブ上の読み取り専用キャッシュを無効にする理由は、VM内の2つの独立したストレージプールを設定する必要があるためです。これによりVMのAzure内のアップグレード/ダウングレードが増えます問題を抱えており、かなりパフォーマンスが低い。

たとえば、ドライブの制限が16のDS V13から始めるとしますが、スロットルを行う前にスロット数を制限することができます(25000 IOP)。ベストプラクティスではデータの読み取り専用キャッシュとログのキャッシュがないので、それらのドライブのうち8つはデータに、8つはログに記録します。

これで、サーバーをアップグレードして、DS V14にアップグレードする必要があります。今では、スロットルされる前に最大12台のドライブを使用できます(50000 IOP)。ただし、データドライブのストレージスペースの列サイズはわずか8で、40000 IOPに制限されています。したがって、あなたはIOの完全な可能性を使用していません。

ただし、DS V13から開始して16台のドライブすべてを1つのストレージプールに割り当てることができれば、その上にログとデータの両方を入れることができます。あなたは完全なIOPの可能性を無駄にしないように心配することなく、DS V15までアップグレード/ダウングレードすることができます。

別の方法は次のとおりです。すべての16台のドライブに対して1つのストレージプールを作成する場合、VMのアップグレード/ダウングレードにかなりの柔軟性があります。 2つのストレージプールを作成する必要がある場合は、作成しないでください。

+0

は、私は背中にAzureストレージを追加しました。 –

答えて

2

我々は、プレミアムの「なし」のキャッシュを設定することを推奨しますログファイルをホストするストレージディスク。ログファイルは主に書き込みが重い操作であり、ReadOnlyキャッシュのメリットはありません。 2つの理由:

  1. 正当なキャッシュの内容は、ログから無駄なデータによって追い出されます。
  2. ログ書き込みもキャッシュBW/IOPSを消費します。キャッシュがディスク(ReadOnlyまたはReadWrite)で有効になっている場合、そのディスク上のすべての書き込みによってそのデータがキャッシュに書き込まれます。すべての読み取りは、キャッシュにデータをアクセス/配置します。したがって、キャッシュがONの場合、すべてのIOがキャッシュにヒットします。私はこの質問が何よりもそれを行うにはより多くを持っていると思うので

おかげで、 アウン

+0

「設定をお勧めします」の代わりに「無効にすることをおすすめします」という意味ですか?もしそうなら、正当な理由のように思えます。 –

+0

#2を明確にするために、ReadOnlyキャッシュを有効にしたとき(ReadWriteキャッシュではない)には、ディスクへのすべての* write *もReadOnlyキャッシュに書き込みますか? –

+0

ありがとうございました。私の返信を編集しました。ログのキャッシュ設定を「なし」に設定することをお勧めします。 –

1

ログファイルはリカバリの一部として使用され、特定の時点にデータベースを復元するのに役立ちます。停電やハードリブートによるログファイルの破損データはMSSQLでは良くありません。 MSの以下の記事を参照してください。古いバージョンのSQLに関連していますが、ログファイルの目的は変更されていません。

すべてのデータベース管理者がSQL Serverでキャッシュディスクコントローラの
https://support.microsoft.com/en-us/kb/234656

説明を知っている必要がありますSQL Serverとディスクドライブのキャッシュを使用する方法について

情報
https://support.microsoft.com/en-us/kb/86903

+0

これは、書き込みキャッシュを有効にしたくない理由を説明していますが、読み取り専用キャッシュについては何も表示されません。 –

+0

私はログが読み取られることはないと考えています。変更データキャプチャ機能を照会したときにのみ見られるので、ログドライブにキャッシュを許可しない方が安全です。書き込みを確認した後、書き込みが発生した後に同期が外れる可能性のあるコードがあります。 – Josh

+0

レプリケーションはログも使用しますが、忘れてしまいました。ログドライブをキャッシュすると、障害が発生した場合にデータが失われる可能性がありますが、書き込みが発生し、最後の読み取りトランザクションは読み取りキャッシュから100ms先です。 – Josh

関連する問題