B+ツリーのノードサイズを学んでいますが、保存速度が非常に重要なようです。あちこちを見て使ってみました。
sudo hdparm -Tt /dev/sda
出力
/dev/sda:
Timing cached reads: 11956 MB in 1.99 seconds = 5993.51 MB/sec
Timing buffered disk reads: 818 MB in 3.00 seconds = 272.52 MB/sec
キャッシュタイミングとはどういう意味ですか?誰かがそれを説明できればいいでしょう。
hdparam
オプションを見ました。
sudo hdparm -f /dev/sda
/dev/sda:
代替は何ですか?
答え1
最新のシステムには、自動的に最適な設定を選択するドライバがあることがよくあります。したがって、現在hdparmを使用して大幅な改善を達成する可能性はありません。これらの設定を使用するには広範囲の現場知識が必要です。そうしないと損傷する可能性が高くなります。自分が投資したハードウェアに投資すると、良い結果が得られます。特に磁気ディスク(HDD)の代わりにソリッドステートドライブ(SSD)を使用し、途方もない発展がなされた。より良いインターフェイスカードも多くの助けになります。その後、RAIDアレイからディスクを複数の物理ディスクに分割して構成すると、より良いIO値を提供できます。
hdparmテスト結果関連:Linuxは可能な限り利用可能なRAMを使用してIO操作をキャッシュします。たとえば、「top」を「buff / cache」に設定すると、このキャッシュのサイズを確認できます。これは、一般的なIO操作の場合、データがメモリに保存されてからディスク(書き込み操作の場合)または要求プロセス(読み取りの場合)に転送されることを意味します。同じデータを読み取る次の操作は、ストレージにアクセスせずにメモリから直接データを渡します。
hdparm -t はリポジトリから一定量のデータを読み込みます。次に、このデータをバッファリングしたキャッシュ領域を消去してから再度読み込みます。このタイプのジョブに対して測定されたスループットは、「Timed Buffered Disk Reads」と表示されます。これは、ディスクからデータを新しくインポートする際の一般的な読み取りスループットを反映しています。たとえば、初めてディスクから大容量のビデオをストリーミングする場合です。
hdparm -Tは同様の操作を実行しますが、バッファキャッシュをフラッシュしません。したがって、最初の操作でのみデータをバッファにロードし、繰り返し読み取ると、ディスク操作なしでメモリからデータを渡します。測定されたスループットは「Timed Cache Reads」と表示されます。これは、同じ画像が連続して複数回表示されたときの経過時間を反映する可能性があります。
「ハードドライブの速度を確認する方法」というタイトルの質問に答えるのは難しいです。経験豊富なディスク速度は、ジョブの種類によって大きく異なります。その違いは途方もないかもしれません。たとえば、データベースプロセスによる大容量ファイルの順次読み取りと4Kページのランダム読み取りを比較する場合です。したがって、私は通常、保存された運用プロファイルを使用し、IOzone(www.iozone.org)を使用してこれらの負荷をシミュレートする必要性を識別します。
答え2
ハードドライブに隠れ家。
6GB/sは無理な速度のようです。ディスクキャッシュアクセス。たとえば、SATAは6GBを提供します。少し毎秒理論的帯域幅、約600メガビットに対応バイト毎秒。でもサムスン970evo請求される最大容量は3.5 GBです。少し/秒読み取り速度。 「キャッシュ読み取り」番号は、OSキャッシュ(RAM、ディスクにアクセスしないなど)からデータを再読み込みするようです。
b+ツリーを使用するアプリケーションでは、シーケンシャル/バッチI / O速度よりもランダムアクセス速度が重要です。さまざまなディスクベンチマークソフトウェアが作成されています。ボニー++ランダムアクセスをテストできます。