データタイプの速度は、測定するのが少し難しいです。 32ビットのオペレーティングシステムまたは64ビットを使用している場合、大きな違いがあります。どうして?これは、このデータを処理できる速度を決定するためです。 一般に、32ビットシステムでは、32ビット(int16、int32、char、byte、ポインタ)に収まるすべてのデータ型が同じ速度として処理されます。多くのデータを処理する必要がある場合は、CPUで処理するために4バイト単位で分割することをお勧めします。
しかし、ディスクにデータを書き込む場合、データの速度はより多くの要因に依存する傾向があります。ディスクデバイスがUSBポートに接続されている場合、すべてのデータがシリアル化されます。したがって、バイト単位でバイト単位になります。その場合、サイズはあまり重要ではありませんが、最小のデータブロックは最小のギャップを残します。 (Pascalのような言語では、ストリーミングのパフォーマンスを最適化するために、この種のデータを圧縮したレコードを使用し、レコードのフィールドを4バイトの倍数に揃えてCPUのパフォーマンスを調整します)。 通常のディスクはデータをより大きなブロックに格納します。読み書き速度を上げるには、データ構造を可能な限りコンパクトにすることをお勧めします。しかし、パフォーマンスを処理するために、4バイトの境界にそろえて配置する方が効果的です。
私はかつてNTFSディスクで圧縮を使用することについて誰かと話し合ったことを思い出させる。 NTFSパーティションを圧縮すると、実際には同じデータブロックを解凍するためにさらに処理する必要があったとしても、データブロックの読み込みが少なくて済み、実際にはコンピュータのパフォーマンスが向上することが証明されました。
パフォーマンスを向上させるには、最も弱い(最も遅い)リンクを見つけてそこから開始するだけです。最適化されたら、別の弱いリンクがあります。
良い点。私は、テキストが同一のマッチではあるが、オーディオとビデオはまれに(もしそうであれば)出てくると思う。私はハッシュが高価だと思っていますが、テキストを少なくして処理していきたいと思います。 – nbdeveloper