複数のマシンに数ギガバイトのデータを格納する必要があります。ファイルはGuidによって一意に識別され、1つのファイルは1台のマシンでのみホストすることができます。私はパーティションキーとしてGuidを使用して、どのマシンをデータの保存に使うべきかを判断できるかどうか疑問に思っていました。もしそうなら、私のパーティション機能は何ですか?GUIDを良いパーティションキーにすることはできますか?
それ以外の場合、すべてのマシンが非常に似た負荷を得るようにデータをパーティション化するにはどうすればよいですか?
ありがとう!
P.S.私はSQL Server、Oracleまたは他のDBを使用していません。これはすべて社内コードです。 P.S.S. Guidは、.NET関数Guid.NewGuid()を使用して生成されます。
これはGuidの生成方法によって異なりますか?彼らは無作為であるか、世代をコントロールできますか?あなたがそれを制御できるなら、それが良いパーティションキーであることを保証することができます。ランダムな場合は、生成アルゴリズムのプロパティに依存します。 –
良い点。 Guidは、Guid.NewGuid()を使用して.NETによって生成されます。 – Martin
私は分かりません。あなたのデータは「複数のマシンにまたがって」保存されますが、「1台のマシンでのみホスト可能です」残りの部分は、あなたのプログラムが答えられることを知らない人にとってはあまりにも具体的に聞こえます。 – jalf