1

Hz PredicateBuilder を使用して、ネストされたオブジェクトの属性に対するクエリで Hz マップをクエリしています。構成ファイルのネストされたフィールドにもインデックスを作成しました。

EntryObject e = new PredicateBuilder().getEntryObject();
Predicate idPredicate = e.get( "id" ).equal( id );
Predicate predicate = e.get( "rel.id" ).equal( rel.id).and(idPredicate);
return personMap.values( predicate );

rel は id 属性を持つオブジェクトであり、Person オブジェクトの属性です。

 indexes = [
            {
              attribute = id
              isOrdered = false
            },
            {
              attribute = rel.id
              isOrdered = false
            }
          ]

正しいレコードが返されていますが、このクエリがインデックスを使用しているかどうかを確認したいと考えています。このクエリがインデックスを使用していることを確認する方法はありますか? (情報メッセージか何か)。以前は DB2 を使用していましたが、デバッグ レベルでこれらのメッセージが表示されます。どんな助けでも大歓迎です!前もって感謝します。

4

2 に答える 2

1

Hazelcast のドキュメント - 管理セクションによると。インデックスの統計オブジェクトは表示されません。リストされている統計 MBean は、さまざまな分散オブジェクトです。

同時に、インデックスがヒットしない場合、キーの順次逆シリアル化が発生し、値もキューに入れている場合は値も潜在的に逆シリアル化されます。メモリに十分なレコードが 100,000 以上あると、おそらくさらに少なくても、パフォーマンスの違いは顕著になります。

于 2016-07-18T21:27:51.313 に答える