JPAオブジェクトのIDとしてUUIDを使用したいと考えています。JPA IDとしてUUIDに使用するベスト(最も効率的な)データタイプ
現在、UUIDを格納するためにStringを使用しています。もっと効率的なものは何でしょうか?
JPAオブジェクトのIDとしてUUIDを使用したいと考えています。JPA IDとしてUUIDに使用するベスト(最も効率的な)データタイプ
現在、UUIDを格納するためにStringを使用しています。もっと効率的なものは何でしょうか?
どのように効率を測定していますか?あるString
比較よりもはるかに早く、あなたが64ビットアーキテクチャ(上非常に迅速にそれらを比較することができますlong
値のカップルとして(byte[]
のテキストエンコーディングである)UUIDを格納例えば
、 1文字ずつ)。ただし、カスタムタイプを記述する必要があるため、コーディング効率が低下します。
あなたのケースでは何が重要ですか?
データベース内のパフォーマンスに興味がある場合は、パフォーマンスは、選択したが、すべては基本的にバイトごとのUUIDを比較するデータベースに多少依存します。重要なのは、キーの違いをキーの先頭に近づけることです。
この点でUUIDはうまく設計されています。最高のUUIDは「ランダム」スタイルです。彼らはどこにでも共通の部分文字列を何も持っていません、そして、それらを生成したマシンに関する情報は漏れません。しかし、UUIDの「タイムスタンプ」スタイルは、下位のビット(すぐに変化する)が最初の文字列であり、上位ビット(連続するUUIDの場合は変化しない)が来るので、良い鍵となります後で。
結合と索引の効率 – systemoutprintln